@hyperlane-xyz/sdk
Version:
The official SDK for the Hyperlane Network
37 lines • 1.39 kB
JavaScript
import { expect } from 'chai';
import { CallDataSchema } from './types.js';
describe('transactions schemas', () => {
const ADDRESS_MOCK = '0x1234567890123456789012345678901234567890';
const DATA_MOCK = '0xabcdef';
const VALUE_MOCK = '100';
const INVALID_ADDRESS = '0x1';
describe('CallDataSchema', () => {
it('should parse valid CallData', () => {
const validCallData = {
to: ADDRESS_MOCK,
data: DATA_MOCK,
value: VALUE_MOCK,
};
const result = CallDataSchema.safeParse(validCallData);
expect(result.success).to.be.true;
});
it('should parse CallData without optional value', () => {
const validCallDataWithoutValue = {
to: ADDRESS_MOCK,
data: DATA_MOCK,
};
const result = CallDataSchema.safeParse(validCallDataWithoutValue);
expect(result.success).to.be.true;
});
it('should fail parsing invalid CallData', () => {
const invalidCallData = {
to: INVALID_ADDRESS,
data: DATA_MOCK,
value: VALUE_MOCK,
};
const result = CallDataSchema.safeParse(invalidCallData);
expect(result.success).to.be.false;
});
});
});
//# sourceMappingURL=types.test.js.map