sealed class EnforceVerifyOrFail
If you jumped here from a compiler error make sure the last line of your test tests for a transaction verify or fail. This is a dummy type that can only be instantiated by functions in this module. This way we can ensure that all tests will have as the last line either an accept or a failure test. The name is deliberately long to help make sense of the triggered diagnostic. |
|
class LedgerDSL<out T : TransactionDSLInterpreter, out L : LedgerDSLInterpreter<T>> : LedgerDSLInterpreter<TransactionDSLInterpreter>
This is the class that defines the syntactic sugar of the ledger Test DSL and delegates to the contained interpreter,
and what is actually used in |
|
interface LedgerDSLInterpreter<out T : TransactionDSLInterpreter> : Verifies, OutputStateLookup
This interface defines the bare bone functionality that a Ledger DSL interpreter should implement. |
|
interface OutputStateLookup
This interface defines output state lookup by label. It is split from the interpreter interfaces so that outputs may be looked up both in ledger{..} and transaction{..} blocks. |
|
data class TestLedgerDSLInterpreter : LedgerDSLInterpreter<TestTransactionDSLInterpreter> |
|
data class TestTransactionDSLInterpreter : TransactionDSLInterpreter, OutputStateLookup
This interpreter builds a transaction, and TransactionDSL.verifies that the resolved transaction is correct. Note that transactions corresponding to input states are not verified. Use LedgerDSL.verifies for that. |
|
class TransactionDSL<out T : TransactionDSLInterpreter> : TransactionDSLInterpreter
Underlying class for the transaction DSL. Do not instantiate directly, instead use the transaction function. |
|
interface TransactionDSLInterpreter : Verifies, OutputStateLookup
This interface defines the bare bone functionality that a Transaction DSL interpreter should implement. |
|
interface Verifies
This interface asserts that the DSL at hand is capable of verifying its underlying construct(ledger/transaction). |
class AttachmentResolutionException : FlowException |
|
class DoubleSpentInputs : FlowException |
|
class DuplicateOutputLabel : FlowException |