UNPKG

solana-token-list

Version:

Homebrew Solana Token Registry with Coingecko data

63 lines 6.69 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const fs_1 = __importDefault(require("fs")); const ava_1 = __importDefault(require("ava")); const _1 = require("."); (0, ava_1.default)('Token list is filterable by a tag', async (t) => { const list = (await new _1.TokenListProvider().resolve(_1.Strategy.Static)) .filterByChainId(_1.ENV.MainnetBeta) .filterByTag('nft') .getList(); t.false(list.some((item) => item.symbol === 'SOL')); }); (0, ava_1.default)('Token list can exclude by a tag', async (t) => { const list = (await new _1.TokenListProvider().resolve(_1.Strategy.Static)) .filterByChainId(_1.ENV.MainnetBeta) .excludeByTag('nft') .getList(); // @ts-ignore t.false(list.some((item) => item.tags === ['nft'])); }); (0, ava_1.default)('Token list can exclude by a chain', async (t) => { const list = (await new _1.TokenListProvider().resolve(_1.Strategy.Static)) .excludeByChainId(_1.ENV.MainnetBeta) .getList(); t.false(list.some((item) => item.chainId === _1.ENV.MainnetBeta)); }); (0, ava_1.default)('Token list returns new object upon filter', async (t) => { const list = await new _1.TokenListProvider().resolve(_1.Strategy.Static); const filtered = list.filterByChainId(_1.ENV.MainnetBeta); t.true(list !== filtered); t.true(list.getList().length !== filtered.getList().length); }); (0, ava_1.default)('Token list throws error when calling filterByClusterSlug with slug that does not exist', async (t) => { const list = await new _1.TokenListProvider().resolve(_1.Strategy.Static); const error = await t.throwsAsync(async () => list.filterByClusterSlug('whoop'), { instanceOf: Error }); t.is(error === null || error === void 0 ? void 0 : error.message, `Unknown slug: whoop, please use one of ${Object.keys(_1.CLUSTER_SLUGS)}`); }); (0, ava_1.default)('Token list is a valid json', async (t) => { t.notThrows(() => { const content = fs_1.default .readFileSync('./src/tokens/solana.tokenlist.json') .toString(); JSON.parse(content.toString()); }); }); (0, ava_1.default)('Token list does not have duplicate entries', async (t) => { const list = await new _1.TokenListProvider().resolve(_1.Strategy.Static); list .filterByChainId(_1.ENV.MainnetBeta) .getList() .reduce((agg, item) => { if (agg.has(item.address)) { console.log(item.address); } t.false(agg.has(item.address)); agg.set(item.address, item); return agg; }, new Map()); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5saXN0LnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Rva2VubGlzdC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNENBQW9CO0FBRXBCLDhDQUF1QjtBQUV2Qix3QkFBK0U7QUFFL0UsSUFBQSxhQUFJLEVBQUMsbUNBQW1DLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFO0lBQ3BELE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLG9CQUFpQixFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNsRSxlQUFlLENBQUMsTUFBRyxDQUFDLFdBQVcsQ0FBQztTQUNoQyxXQUFXLENBQUMsS0FBSyxDQUFDO1NBQ2xCLE9BQU8sRUFBRSxDQUFDO0lBRWIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDdEQsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFBLGFBQUksRUFBQyxpQ0FBaUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7SUFDbEQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksb0JBQWlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsV0FBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2xFLGVBQWUsQ0FBQyxNQUFHLENBQUMsV0FBVyxDQUFDO1NBQ2hDLFlBQVksQ0FBQyxLQUFLLENBQUM7U0FDbkIsT0FBTyxFQUFFLENBQUM7SUFFYixhQUFhO0lBQ2IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3RELENBQUMs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