Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Mutation-based script validator tests for the abort transaction where a
healthyAbortTx
gets mutated by an arbitrary AbortMutation
.
Documentation
healthyAbortTx :: HasCallStack => (Tx, UTxO) Source #
healthyHeadInput :: TxIn Source #
healthyHeadParameters :: HeadParameters Source #
healthyInitials :: [(TxIn, TxOut CtxUTxO)] Source #
healthyCommits :: [(TxIn, TxOut CtxUTxO, UTxO)] Source #
healthyParties :: [Party] Source #
propHasInitial :: (Tx, UTxO) -> Property Source #
propHasCommit :: (Tx, UTxO) -> Property Source #
data AbortMutation Source #
MutateParties | Add one more party to the hydra keys. This is essentialy the same as not collecting all inputs. |
DropCollectedInput | Not collect one committed UTxO by removing the input and not burn the corresponding PT. |
DropOneCommitOutput | Not reimburse one of the parties. |
BurnOneTokenMore | Burning one PT more. This should be an impossible situation, but it is tested nontheless. |
MutateThreadTokenQuantity | Meant to test that the minting policy is burning all PTs present in tx |
MutateRequiredSigner | Check an arbitrary key cannot authenticate abort. |
MutateUseDifferentHeadToAbort | Use a different head output to abort. |
UseInputFromOtherHead | Spend some abortable output from a different Head e.g. replace a commit by another commit from a different Head. |
ReorderCommitOutputs | Re-ordering outputs would not be a big deal, but it is still prevented. |
MintOnAbort | Only burning should be allowed in abort (by the minting policy). |
ExtractValue | Not spend from v_head and also not burn anything to extract value. |
DoNotBurnST | State token is not burned |
DoNotBurnSTInitial | Here we want to check that the initial validator also fails on abort. |
Instances
genAbortMutation :: (Tx, UTxO) -> Gen SomeMutation Source #