UNPKG

@reown/appkit-common

Version:

The full stack toolkit to build onchain app UX.

50 lines 2.61 kB
import { describe, expect, test } from 'vitest'; import { ParseUtil } from '../src/utils/ParseUtil'; describe('ParseUtil', () => { describe('parseCaipAddress', () => { test('parses valid CAIP-10 address', () => { const caipAddress = 'eip155:1:0x742d35Cc6634C0532925a3b844Bc454e4438f44e'; const result = ParseUtil.parseCaipAddress(caipAddress); expect(result).toEqual({ chainNamespace: 'eip155', chainId: '1', address: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e' }); }); test('throws error for invalid CAIP-10 address with missing parts', () => { const invalidAddress = 'eip155:1'; expect(() => ParseUtil.parseCaipAddress(invalidAddress)).toThrow('Invalid CAIP-10 address'); }); test('throws error for invalid CAIP-10 address with empty parts', () => { const invalidAddress = 'eip155::0x742d35Cc6634C0532925a3b844Bc454e4438f44e'; expect(() => ParseUtil.parseCaipAddress(invalidAddress)).toThrow('Invalid CAIP-10 address'); }); test('throws error for invalid CAIP-10 address with too many parts', () => { const invalidAddress = 'eip155:1:0x742d35Cc6634C0532925a3b844Bc454e4438f44e:extra'; expect(() => ParseUtil.parseCaipAddress(invalidAddress)).toThrow('Invalid CAIP-10 address'); }); }); describe('parseCaipNetworkId', () => { test('parses valid CAIP-2 network id', () => { const caipNetworkId = 'eip155:1'; const result = ParseUtil.parseCaipNetworkId(caipNetworkId); expect(result).toEqual({ chainNamespace: 'eip155', chainId: '1' }); }); test('throws error for invalid CAIP-2 network id with missing parts', () => { const invalidNetworkId = 'eip155'; expect(() => ParseUtil.parseCaipNetworkId(invalidNetworkId)).toThrow('Invalid CAIP-2 network id'); }); test('throws error for invalid CAIP-2 network id with empty parts', () => { const invalidNetworkId = 'eip155:'; expect(() => ParseUtil.parseCaipNetworkId(invalidNetworkId)).toThrow('Invalid CAIP-2 network id'); }); test('throws error for invalid CAIP-2 network id with too many parts', () => { const invalidNetworkId = 'eip155:1:extra'; expect(() => ParseUtil.parseCaipNetworkId(invalidNetworkId)).toThrow('Invalid CAIP-2 network id'); }); }); }); //# sourceMappingURL=ParseUtil.test.js.map