YaciTestContext

scalus.testing.integration.YaciTestContext
class YaciTestContext(val cardanoInfo: CardanoInfo, val provider: BlockchainProvider, val parties: IndexedSeq[TestParty]) extends IntegrationTestContext

Integration test context for YaciDevKit.

Uses system time for slot calculation and Thread.sleep for time advancement. YaciDevKit uses 1-second slots starting from zero time.

Access test parties via alice, bob, eve. For full HD account access (stake, drep, change keys), use Party.Alice.account directly.

Value parameters

cardanoInfo

Cardano network information

parties

Available test parties

provider

BlockfrostProvider connected to YaciDevKit

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

override def awaitSlots(n: Long)(using ExecutionContext): Future[Unit]

Advance time by n slots (async).

Advance time by n slots (async).

  • Emulator: Directly sets slot to currentSlot + n (instant)
  • Yaci/Real networks: Waits for ~n seconds (1 slot = 1 sec in Yaci)

Value parameters

n

Number of slots to advance

Attributes

Definition Classes
override def currentSlot: SlotNo

Current slot number.

Current slot number.

Attributes

Definition Classes
override def envName: String

Environment name for logging (e.g., "Emulator", "YaciDevKit", "Preprod").

Environment name for logging (e.g., "Emulator", "YaciDevKit", "Preprod").

Attributes

Definition Classes
override def submit(tx: Transaction)(using ExecutionContext): Future[Either[SubmitError, TransactionHash]]

Submit transaction and wait for confirmation (async).

Submit transaction and wait for confirmation (async).

Value parameters

tx

Transaction to submit

Attributes

Returns

Either an error or the transaction hash

Definition Classes
def submitTx(tx: Transaction): Either[String, String]

Submit a transaction synchronously and wait for confirmation.

Submit a transaction synchronously and wait for confirmation.

Value parameters

tx

Transaction to submit

Attributes

Returns

Right(txHash) on success, Left(error) on failure

def waitForBlock(): Unit

Wait for the next block to be produced (synchronous).

Wait for the next block to be produced (synchronous).

Yaci DevKit produces blocks every ~2 seconds.

Attributes

Inherited methods

Convenience accessor for Alice (first party).

Convenience accessor for Alice (first party).

Attributes

Inherited from:
IntegrationTestContext
def bob: TestParty

Convenience accessor for Bob (second party).

Convenience accessor for Bob (second party).

Attributes

Inherited from:
IntegrationTestContext
def eve: TestParty

Convenience accessor for Eve (eavesdropper party).

Convenience accessor for Eve (eavesdropper party).

Attributes

Inherited from:
IntegrationTestContext

Concrete fields

Cardano network information (protocol params, network, slot config).

Cardano network information (protocol params, network, slot config).

Attributes

val parties: IndexedSeq[TestParty]

All available test parties.

All available test parties.

Attributes

Provider for blockchain queries and transaction submission.

Provider for blockchain queries and transaction submission.

Attributes