@@ -318,14 +318,17 @@ nodeReObservesOnChainTxs tracer workDir cardanoNode hydraScriptsTxId = do
318
318
refuelIfNeeded tracer cardanoNode Bob 100_000_000
319
319
-- Start hydra-node on chain tip
320
320
tip <- queryTip networkId nodeSocket
321
- let contestationPeriod = 2
321
+
322
+ -- NOTE: Adapt periods to block times
323
+ let contestationPeriod = truncate $ 10 * blockTime
324
+ depositPeriod = truncate $ 50 * blockTime
322
325
aliceChainConfig <-
323
326
chainConfigFor Alice workDir nodeSocket hydraScriptsTxId [Bob ] contestationPeriod
324
- <&> modifyConfig (\ config -> config{startChainFrom = Nothing })
327
+ <&> modifyConfig (\ config -> config{startChainFrom = Nothing , depositPeriod })
325
328
326
329
bobChainConfig <-
327
330
chainConfigFor Bob workDir nodeSocket hydraScriptsTxId [Alice ] contestationPeriod
328
- <&> modifyConfig (\ config -> config{startChainFrom = Nothing })
331
+ <&> modifyConfig (\ config -> config{startChainFrom = Nothing , depositPeriod })
329
332
330
333
(aliceCardanoVk, aliceCardanoSk) <- keysFor Alice
331
334
commitUTxO <- seedFromFaucet cardanoNode aliceCardanoVk 5_000_000 (contramap FromFaucet tracer)
@@ -355,10 +358,10 @@ nodeReObservesOnChainTxs tracer workDir cardanoNode hydraScriptsTxId = do
355
358
356
359
submitTx cardanoNode tx
357
360
358
- waitFor hydraTracer 10 [n1, n2] $
361
+ waitFor hydraTracer ( 2 * realToFrac depositPeriod) [n1, n2] $
359
362
output " CommitApproved" [" headId" .= headId, " utxoToCommit" .= commitUTxO]
360
363
361
- waitFor hydraTracer 10 [n1, n2] $
364
+ waitFor hydraTracer ( 20 * blockTime) [n1, n2] $
362
365
output " CommitFinalized" [" headId" .= headId, " depositTxId" .= getTxId (getTxBody tx)]
363
366
364
367
getSnapshotUTxO n1 `shouldReturn` commitUTxO
@@ -781,8 +784,12 @@ singlePartyCommitsScriptBlueprint ::
781
784
singlePartyCommitsScriptBlueprint tracer workDir node hydraScriptsTxId =
782
785
(`finally` returnFundsToFaucet tracer node Alice ) $ do
783
786
refuelIfNeeded tracer node Alice 20_000_000
784
- let contestationPeriod = 100
785
- aliceChainConfig <- chainConfigFor Alice workDir nodeSocket hydraScriptsTxId [] contestationPeriod
787
+ -- NOTE: Adapt periods to block times
788
+ let contestationPeriod = truncate $ 10 * blockTime
789
+ depositPeriod = truncate $ 50 * blockTime
790
+ aliceChainConfig <-
791
+ chainConfigFor Alice workDir nodeSocket hydraScriptsTxId [] contestationPeriod
792
+ <&> modifyConfig (\ c -> c{depositPeriod})
786
793
let hydraNodeId = 1
787
794
let hydraTracer = contramap FromHydraNode tracer
788
795
(_, walletSk) <- keysFor AliceFunds
@@ -826,9 +833,9 @@ singlePartyCommitsScriptBlueprint tracer workDir node hydraScriptsTxId =
826
833
827
834
submitTx node tx
828
835
829
- waitFor hydraTracer 10 [n1] $
836
+ waitFor hydraTracer ( 2 * realToFrac depositPeriod) [n1] $
830
837
output " CommitApproved" [" headId" .= headId, " utxoToCommit" .= scriptUTxO']
831
- waitFor hydraTracer 10 [n1] $
838
+ waitFor hydraTracer ( 20 * blockTime) [n1] $
832
839
output " CommitFinalized" [" headId" .= headId, " depositTxId" .= getTxId (getTxBody tx)]
833
840
834
841
getSnapshotUTxO n1 `shouldReturn` scriptUTxO <> scriptUTxO'
@@ -1172,9 +1179,9 @@ canCommit tracer workDir node hydraScriptsTxId =
1172
1179
(`finally` returnFundsToFaucet tracer node Bob ) $ do
1173
1180
refuelIfNeeded tracer node Alice 30_000_000
1174
1181
refuelIfNeeded tracer node Bob 30_000_000
1175
- -- NOTE: Deliberately low periods to speed up happy path test
1176
- let contestationPeriod = truncate $ 3 * blockTime
1177
- depositPeriod = truncate $ 5 * blockTime
1182
+ -- NOTE: Adapt periods to block times
1183
+ let contestationPeriod = truncate $ 10 * blockTime
1184
+ depositPeriod = truncate $ 50 * blockTime
1178
1185
aliceChainConfig <-
1179
1186
chainConfigFor Alice workDir nodeSocket hydraScriptsTxId [Bob ] contestationPeriod
1180
1187
<&> setNetworkId networkId
@@ -1186,12 +1193,12 @@ canCommit tracer workDir node hydraScriptsTxId =
1186
1193
withHydraNode hydraTracer aliceChainConfig workDir 1 aliceSk [bobVk] [2 ] $ \ n1 -> do
1187
1194
withHydraNode hydraTracer bobChainConfig workDir 2 bobSk [aliceVk] [1 ] $ \ n2 -> do
1188
1195
send n1 $ input " Init" []
1189
- headId <- waitMatch (2 * blockTime) n2 $ headIsInitializingWith (Set. fromList [alice, bob])
1196
+ headId <- waitMatch (10 * blockTime) n2 $ headIsInitializingWith (Set. fromList [alice, bob])
1190
1197
1191
1198
-- Commit nothing
1192
1199
requestCommitTx n1 mempty >>= submitTx node
1193
1200
requestCommitTx n2 mempty >>= submitTx node
1194
- waitFor hydraTracer (2 * blockTime) [n1, n2] $
1201
+ waitFor hydraTracer (20 * blockTime) [n1, n2] $
1195
1202
output " HeadIsOpen" [" utxo" .= object mempty , " headId" .= headId]
1196
1203
1197
1204
-- Get some L1 funds
@@ -1211,7 +1218,7 @@ canCommit tracer workDir node hydraScriptsTxId =
1211
1218
1212
1219
waitFor hydraTracer (2 * realToFrac depositPeriod) [n1, n2] $
1213
1220
output " CommitApproved" [" headId" .= headId, " utxoToCommit" .= commitUTxO]
1214
- waitFor hydraTracer (2 * blockTime) [n1, n2] $
1221
+ waitFor hydraTracer (20 * blockTime) [n1, n2] $
1215
1222
output " CommitFinalized" [" headId" .= headId, " depositTxId" .= getTxId (getTxBody tx)]
1216
1223
1217
1224
getSnapshotUTxO n1 `shouldReturn` commitUTxO
@@ -1228,22 +1235,22 @@ canCommit tracer workDir node hydraScriptsTxId =
1228
1235
1229
1236
waitFor hydraTracer (2 * realToFrac depositPeriod) [n1, n2] $
1230
1237
output " CommitApproved" [" headId" .= headId, " utxoToCommit" .= commitUTxO2]
1231
- waitFor hydraTracer (2 * blockTime) [n1, n2] $
1238
+ waitFor hydraTracer (20 * blockTime) [n1, n2] $
1232
1239
output " CommitFinalized" [" headId" .= headId, " depositTxId" .= getTxId (getTxBody tx')]
1233
1240
1234
1241
getSnapshotUTxO n1 `shouldReturn` commitUTxO <> commitUTxO2
1235
1242
1236
1243
send n2 $ input " Close" []
1237
1244
1238
- deadline <- waitMatch (2 * blockTime) n2 $ \ v -> do
1245
+ deadline <- waitMatch (10 * blockTime) n2 $ \ v -> do
1239
1246
guard $ v ^? key " tag" == Just " HeadIsClosed"
1240
1247
v ^? key " contestationDeadline" . _JSON
1241
1248
1242
1249
remainingTime <- diffUTCTime deadline <$> getCurrentTime
1243
1250
waitFor hydraTracer (remainingTime + 3 * blockTime) [n1, n2] $
1244
1251
output " ReadyToFanout" [" headId" .= headId]
1245
1252
send n2 $ input " Fanout" []
1246
- waitMatch (2 * blockTime) n2 $ \ v ->
1253
+ waitMatch (10 * blockTime) n2 $ \ v ->
1247
1254
guard $ v ^? key " tag" == Just " HeadIsFinalized"
1248
1255
1249
1256
-- Assert final wallet balance
@@ -1359,9 +1366,9 @@ canSeePendingDeposits tracer workDir node hydraScriptsTxId =
1359
1366
(`finally` returnFundsToFaucet tracer node Bob ) $ do
1360
1367
refuelIfNeeded tracer node Alice 30_000_000
1361
1368
refuelIfNeeded tracer node Bob 30_000_000
1362
- -- NOTE: Directly expire deposits
1363
- contestationPeriod <- CP. fromNominalDiffTime 1
1364
- let depositPeriod = 1
1369
+ -- NOTE: Adapt periods to block times
1370
+ let contestationPeriod = truncate $ 10 * blockTime
1371
+ depositPeriod = truncate $ 50 * blockTime
1365
1372
aliceChainConfig <-
1366
1373
chainConfigFor Alice workDir nodeSocket hydraScriptsTxId [Bob ] contestationPeriod
1367
1374
<&> setNetworkId networkId
@@ -1418,7 +1425,7 @@ canSeePendingDeposits tracer workDir node hydraScriptsTxId =
1418
1425
let path = BSC. unpack $ urlEncode False $ encodeUtf8 $ T. pack $ show deposit
1419
1426
-- XXX: should know the deadline from the query above
1420
1427
-- NOTE: we need to wait for the deadline to pass before we can recover the deposit
1421
- threadDelay $ realToFrac (toNominalDiffTime depositPeriod * 2 )
1428
+ threadDelay $ realToFrac (toNominalDiffTime depositPeriod * 4 )
1422
1429
1423
1430
(`shouldReturn` " OK" ) $
1424
1431
parseUrlThrow (" DELETE " <> hydraNodeBaseUrl n1 <> " /commits/" <> path)
0 commit comments