cardano-ledger-test-9.9.9.9: Testing harness, tests and benchmarks for Shelley style cardano ledgers
Safe HaskellSafe-Inferred
LanguageHaskell2010

Test.Cardano.Ledger.Constrained.Scripts

Synopsis

Documentation

genKeyMapEra era ⇒ Proof era → Gen (KeyMap era) Source #

genMultiSig ∷ ∀ era. Era era ⇒ KeyMap era → Proof era → Gen (MultiSig era) Source #

genTimelock ∷ ∀ era. Era era ⇒ KeyMap era → ValidityIntervalProof era → Gen (Timelock era) Source #

genPlutusScript ∷ ∀ era. PlutusPurposeTagProof era → Gen (Bool, Script era) Source #

genCoreScript ∷ ∀ era. Proof era → PlutusPurposeTagKeyMap era → ValidityIntervalGen (Script era) Source #

allPlutusScriptsReflect era ⇒ Proof era → Map (ScriptHash (EraCrypto era)) (IsValid, Script era) Source #

For any given Era, there are only a finite number of Plutus scripts. This function computes all of them. There will be two failing scripts One for the Spend Tag, and another for all other Tags (Mint, Cert, Rewrd). The non-failing Spend scripts have varying number of arguments (0, 1, 2, 3) The non-failing (Mint Cert Rewrd) scripts are identical. Any Plutus script generated by genCoreScript will be in this Map.

spendPlutusScriptsReflect era ⇒ Proof era → Map (ScriptHash (EraCrypto era)) (IsValid, Script era) Source #

There are only 5 plutus scripts that can be used in a Spend context

smallest ∷ [Set x] → Set x Source #

sufficientTimelockEra era ⇒ Timelock era → Set (KeyHash 'Witness (EraCrypto era)) Source #

Return sufficient KeyHash to make the Timelock succeed. Note that some Timelock scripts need no KeyHashes to succeed (RequireTimeExpire, RequireTimeStart)