aiken/examples/acceptance_tests/script_context/v3/README.md

192 lines
3.7 KiB
Markdown

# V3 Script Context Tests
This project contains a few handcrafted Plutus V3 validators and transactions
whose sole purpose is to test the interpretation of the `ScriptContext` from
within an Aiken's validators.
So validators are meant to work hand-in-hand with an associated context.
Because we can't have fully static context (since they contain the validator
and its hash), we define _templates_.
Everything is a bit clunky, but steps have been captured in a `test.sh` script
for convenience.
## How to use
```
./test.sh [VALIDATOR_TITLE]
```
## Test Coverage
- Purpose
- [x] spend
- [ ] mint
- [ ] withdraw
- [ ] publish
- [ ] voting
- [ ] proposing
- Transaction body
- [x] inputs
- reference inputs
- [x] none
- [ ] some
- outputs
- [ ] none
- [ ] some
- [x] fee
- [ ] mint
- certificates
- [ ] none
- some
- Register credential
- [ ] no deposit
- [ ] with deposit
- Unregister credential
- [ ] no deposit
- [ ] with deposit
- [ ] Delegate
- [ ] Register & delegate credential
- [ ] Register drep
- [ ] Unregister drep
- [ ] Update drep
- [ ] Register pool
- [ ] Retire pool
- [ ] Delegate CC
- [ ] Retire CC
- withdrawals
- [ ] none
- [ ] some
- [ ] validity range
- extra signatories
- [x] none
- [ ] some
- [ ] redeemers
- [ ] datums
- votes
- [ ] none
- [ ] some
- proposal procedures
- [ ] none
- [ ] some
- current treasury
- [ ] with
- [ ] without
- treasury donation
- [ ] with
- [ ] without
- Address
- [ ] type-0 (key | key)
- [ ] type-1 (script | key)
- [ ] type-2 (key | script)
- [ ] type-3 (script | script)
- [ ] type-4 (key | ptr)
- [ ] type-5 (script | ptr)
- [ ] type-6 (key | ø)
- [x] type-7 (key | ø)
- Value
- [x] only ada
- [ ] multi-assets
- Output datum
- [ ] none
- [ ] hash
- [x] inline
- Output script
- [x] none
- [ ] inline
- Governance Action
- parameter change
- [ ] with action id
- [ ] without action id
- hardfork initiation
- [ ] with action id
- [ ] without action id
- treasuryWithdrawals
- [ ] with constitution
- [ ] without constitution
- no confidence
- [ ] with action id
- [ ] without action id
- update committee
- [ ] with action id
- [ ] without action id
- new constitution
- [ ] with action id
- [ ] without action id
- [ ] info action
- Vote
- [ ] No
- [ ] Yes
- [ ] Abstain
- Voter
- [ ] CC
- [ ] DRep
- [ ] SPO
- ChangedParameters
- [ ] 0: coin
- [ ] 1 : coin
- [ ] 2 : uint .size 4
- [ ] 3 : uint .size 4
- [ ] 4 : uint .size 2
- [ ] 5 : coin
- [ ] 6 : coin
- [ ] 7 : epoch_interval
- [ ] 8 : uint .size 2
- [ ] 9 : nonnegative_interval
- [ ] 10 : unit_interval
- [ ] 11 : unit_interval
- [ ] 16 : coin
- [ ] 17 : coin
- [ ] 18 : costmdls
- [ ] 19 : ex_unit_prices
- [ ] 20 : ex_units
- [ ] 21 : ex_units
- [ ] 22 : uint .size 4
- [ ] 23 : uint .size 2
- [ ] 24 : uint .size 2
- [ ] 25 : pool_voting_thresholds
- [ ] 26 : drep_voting_thresholds
- [ ] 27 : uint .size 2
- [ ] 28 : epoch_interval
- [ ] 29 : epoch_interval
- [ ] 30 : coin
- [ ] 31 : coin
- [ ] 32 : epoch_interval
- [ ] 33 : nonnegative_interval}
- Constitution
- [ ] with guardrail script
- [ ] without guardrail script
- Value
- [x] pure ada
- [ ] native assets
- Credential
- [ ] key
- [x] script
- Delegatee
- [ ] pool
- [ ] drep
- [ ] pool + drep
- DRep
- [ ] key
- [ ] script
- [ ] abstain
- [ ] no confidence
- Boundary
- [ ] closed
- [ ] open