com.r3corda.core.testing / TransactionDSL

# TransactionDSL

`class TransactionDSL<out T : TransactionDSLInterpreter> : TransactionDSLInterpreter`

### Constructors

<init> | `TransactionDSL(interpreter: T)`

### Properties

interpreter | `val interpreter: T`

### Functions

command | `fun command(vararg signers: PublicKey, commandDataClosure: () -> CommandData): Unit` `fun command(signer: PublicKey, commandData: CommandData): Unit`
input | `fun input(stateLabel: String): <ERROR CLASS>` Looks up the output label and adds the found state as an input. `fun input(state: ContractState): Unit` Creates an LedgerDSLInterpreter._unverifiedTransaction with a single output state and adds its reference as an input to the current transaction. `fun input(stateClosure: () -> ContractState): Unit`
output | `fun output(label: String? = null, notary: Party = DUMMY_NOTARY, contractStateClosure: () -> ContractState): Unit` `fun output(label: String, contractState: ContractState): Unit` `fun output(contractState: ContractState): Unit`
timestamp | `fun timestamp(time: Instant, tolerance: Duration = 30.seconds): Unit` Adds a timestamp command to the transaction.

### Extension Functions

ledger | `fun TransactionDSLInterpreter.ledger(dsl: LedgerDSL<TestTransactionDSLInterpreter, TestLedgerDSLInterpreter>.() -> Unit): Unit` Here follows implementations of the LedgerDSLInterpreter and TransactionDSLInterpreter interfaces to be used in tests. Top level primitives ledger and transaction that bind the interpreter types are also defined here.
transaction | `fun TransactionDSLInterpreter.transaction(dsl: TransactionDSL<TransactionDSLInterpreter>.() -> EnforceVerifyOrFail): Unit`