Test results for hydra-cluster
Test.OfflineChain
- does derive head id from node id
- does start on slot 0 with no genesis
- does not start on slot 0 with real genesis file
Test.HydraExplorer
- can observe hydra transactions created by multiple hydra-nodes
- can query for all hydra heads observed
- can query for latest point in time observed on chain
Test.Hydra.Cluster.Mithril
downloadLatestSnapshotTo
- invokes mithril-client correctly (Preview)
- invokes mithril-client correctly (Preproduction)
- invokes mithril-client correctly (Mainnet)
- invokes mithril-client correctly (Sanchonet)
Test.Hydra.Cluster.Faucet
returnFundsToFaucet
does nothing if nothing to return
seedFromFaucet and returnFundsToFaucet should work together
Details
+++ OK, passed 10 tests.
seedFromFaucet
- should work concurrently when called multiple times with the same amount of lovelace
Test.Hydra.Cluster.CardanoCli
cardano-cli
- cardano-cli can accept a draft commit tx in text-envelope format
- has expected cardano-cli version available
- query protocol-parameters is compatible with our FromJSON instance
- query protocol-parameters matches our schema
Test.Generator
JSON encoding of Dataset
allows to encode values with aeson and read them back
Details
+++ OK, passed 100 tests.
generates a Dataset that keeps UTXO constant
Details
+++ OK, passed 100 tests.
Test.EndToEnd
- End-to-end offline mode
End-to-end on Cardano devnet
hydra-node executable
- logs its command line arguments
- logs to a logfile
Monitoring
- Node exposes Prometheus metrics on port 6001
two hydra heads scenario
- two heads on the same network do not conflict
- alice inits a Head with incorrect keys preventing bob from observing InitTx
- bob cannot abort alice's head
restarting nodes
- can abort head after restart
- can observe a commit tx after a restart, even when a tx happened while down
- prevent resuming a head after reconfiguring a peer
- can start chain from the past and replay on-chain events
- close of an initial snapshot from re-initialized node is contested
three hydra nodes scenario
- does not error when all nodes open the head concurrently
- inits a Head, processes a single Cardano transaction and closes it again
- inits a Head and closes it immediately
single party hydra head
- full head life-cycle
- can close with long deadline
- can submit a timed tx
- commits from external with utxo
- can submit a signed user transaction
- commits from external with tx blueprint
- can decommit utxo
- can incrementally commit
- can recover deposit
- can see pending deposits
- incrementally commit script using blueprint tx
Test.DirectChain
- can init and abort a head given nothing has been committed
- can init and abort a 2-parties head after one party has committed
- cannot abort a non-participating head
- can commit using external wallet
- can commit using internal hydra-node wallet
- can commit empty UTxO
- can commit with multiple required signatures
- can open, close & fanout a Head
- can restart head to point in the past and replay on-chain events
- cannot restart head to an unknown point
- can publish and query reference scripts in a timely manner
- can only contest once
Test.ChainObserver
- can observe hydra transactions created by hydra-nodes
Test.CardanoNode
- has expected cardano-node version available
- withCardanoNodeDevnet does start a block-producing devnet within 5 seconds
findRunningCardanoNode
returns Nothing on non-matching network
returns Just running node on matching network
withCardanoNodeOnKnownNetwork starts synchronizing within 10 seconds (Preview)
withCardanoNodeOnKnownNetwork starts synchronizing within 10 seconds (Preproduction)
withCardanoNodeOnKnownNetwork starts synchronizing within 10 seconds (Mainnet)
withCardanoNodeOnKnownNetwork starts synchronizing within 10 seconds (Sanchonet)
Test.CardanoClient
- queryGenesisParameters works as expected