Skip to content

@gala-chain/testAPI


API > fixture

Function: fixture()

fixture\<Ctx, T>(contractClass): Fixture\<Ctx, T>

Factory function for creating test fixtures for GalaChain contracts.

Provides a fluent interface for setting up comprehensive unit tests with mock blockchain state, user context, and contract execution environment.

Type parameters

Ctx extends TestGalaChainContext

The GalaChain context type

T extends GalaContract\<Ctx>

The contract type being tested

Parameters

contractClass: ClassConstructor\<T>

Constructor of the contract class to test

Returns

A new Fixture instance for the specified contract

Example

// Basic fixture setup
const testFixture = fixture(TokenContract)
  .callingUser(curator)
  .registeredUsers(user1, user2, user3);

// Test contract methods
const response = await testFixture.contract.CreateTokenClass(
  testFixture.ctx,
  createTokenClassDto
);

// Advanced setup with pre-existing state
const advancedFixture = fixture(MarketplaceContract)
  .savedState(existingTokenClass, initialBalance)
  .callingUser(marketplaceOwner)
  .caClientIdentity(\"admin\", \"MarketplaceOrg\");

Source

chain-test/src/unit/fixture.ts:406