UNPKG

@lukasrosario/account

Version:

Base Account SDK

49 lines (39 loc) 1.83 kB
import { standardErrorCodes } from './constants.js'; import { standardErrors } from './errors.js'; import { getErrorCode, getMessageFromCode } from './utils.js'; describe('errors', () => { test('getErrorCode', () => { expect(getErrorCode(4137)).toEqual(4137); expect(getErrorCode({ code: 4137 })).toEqual(4137); expect(getErrorCode({ errorCode: 4137 })).toEqual(4137); expect(getErrorCode({ code: 4137, errorCode: 4137 })).toEqual(4137); expect(getErrorCode({ code: '4137' })).toEqual(undefined); expect(getErrorCode({ code: undefined })).toEqual(undefined); expect(getErrorCode({ errorCode: '4137' })).toEqual(undefined); expect(getErrorCode({ errorCode: undefined })).toEqual(undefined); expect(getErrorCode({})).toEqual(undefined); expect(getErrorCode('4137')).toEqual(undefined); expect(getErrorCode(new Error('generic error'))).toEqual(undefined); expect(getErrorCode(null)).toEqual(undefined); expect(getErrorCode(undefined)).toEqual(undefined); const errorResponse = { method: 'generic', errorMessage: 'test error message', errorCode: 4137, }; expect(getErrorCode(errorResponse)).toEqual(4137); }); test('standardErrorMessage', () => { // default error message expect(getMessageFromCode(standardErrorCodes.provider.userRejectedRequest)).toEqual( expect.stringContaining('rejected') ); // non-standard error code expect(getMessageFromCode(0)).toEqual('Unspecified error message.'); }); test('unsupportedChain error', () => { const errorWithoutChainID = standardErrors.provider.unsupportedChain(); expect(errorWithoutChainID.code).toEqual(standardErrorCodes.provider.unsupportedChain); expect(errorWithoutChainID.message).toEqual(expect.stringContaining('Unrecognized chain ID')); }); });