genius-intents 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/LICENSE +21 -0
- package/README.md +376 -0
- package/dist/src/index.d.ts +27 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +62 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/intents-protocols.d.ts +69 -0
- package/dist/src/intents-protocols.d.ts.map +1 -0
- package/dist/src/intents-protocols.js +371 -0
- package/dist/src/intents-protocols.js.map +1 -0
- package/dist/src/interfaces/intent-protocol.d.ts +21 -0
- package/dist/src/interfaces/intent-protocol.d.ts.map +1 -0
- package/dist/src/interfaces/intent-protocol.js +3 -0
- package/dist/src/interfaces/intent-protocol.js.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.service.d.ts +28 -0
- package/dist/src/protocols/aftermath/aftermath.service.d.ts.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.service.js +162 -0
- package/dist/src/protocols/aftermath/aftermath.service.js.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.types.d.ts +100 -0
- package/dist/src/protocols/aftermath/aftermath.types.d.ts.map +1 -0
- package/dist/src/protocols/aftermath/aftermath.types.js +3 -0
- package/dist/src/protocols/aftermath/aftermath.types.js.map +1 -0
- package/dist/src/protocols/aftermath/index.d.ts +3 -0
- package/dist/src/protocols/aftermath/index.d.ts.map +1 -0
- package/dist/src/protocols/aftermath/index.js +7 -0
- package/dist/src/protocols/aftermath/index.js.map +1 -0
- package/dist/src/protocols/debridge/debridge.service.d.ts +157 -0
- package/dist/src/protocols/debridge/debridge.service.d.ts.map +1 -0
- package/dist/src/protocols/debridge/debridge.service.js +462 -0
- package/dist/src/protocols/debridge/debridge.service.js.map +1 -0
- package/dist/src/protocols/debridge/debridge.types.d.ts +82 -0
- package/dist/src/protocols/debridge/debridge.types.d.ts.map +1 -0
- package/dist/src/protocols/debridge/debridge.types.js +3 -0
- package/dist/src/protocols/debridge/debridge.types.js.map +1 -0
- package/dist/src/protocols/debridge/index.d.ts +3 -0
- package/dist/src/protocols/debridge/index.d.ts.map +1 -0
- package/dist/src/protocols/debridge/index.js +7 -0
- package/dist/src/protocols/debridge/index.js.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.d.ts +36 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.d.ts.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.js +312 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.service.js.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.d.ts +100 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.d.ts.map +1 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.js +3 -0
- package/dist/src/protocols/genius-bridge/genius-bridge.types.js.map +1 -0
- package/dist/src/protocols/genius-bridge/index.d.ts +3 -0
- package/dist/src/protocols/genius-bridge/index.d.ts.map +1 -0
- package/dist/src/protocols/genius-bridge/index.js +7 -0
- package/dist/src/protocols/genius-bridge/index.js.map +1 -0
- package/dist/src/protocols/jupiter/index.d.ts +3 -0
- package/dist/src/protocols/jupiter/index.d.ts.map +1 -0
- package/dist/src/protocols/jupiter/index.js +7 -0
- package/dist/src/protocols/jupiter/index.js.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.service.d.ts +37 -0
- package/dist/src/protocols/jupiter/jupiter.service.d.ts.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.service.js +188 -0
- package/dist/src/protocols/jupiter/jupiter.service.js.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.types.d.ts +272 -0
- package/dist/src/protocols/jupiter/jupiter.types.d.ts.map +1 -0
- package/dist/src/protocols/jupiter/jupiter.types.js +3 -0
- package/dist/src/protocols/jupiter/jupiter.types.js.map +1 -0
- package/dist/src/protocols/kyberswap/index.d.ts +3 -0
- package/dist/src/protocols/kyberswap/index.d.ts.map +1 -0
- package/dist/src/protocols/kyberswap/index.js +7 -0
- package/dist/src/protocols/kyberswap/index.js.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.d.ts +34 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.d.ts.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.js +218 -0
- package/dist/src/protocols/kyberswap/kyberswap.service.js.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.d.ts +114 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.d.ts.map +1 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.js +3 -0
- package/dist/src/protocols/kyberswap/kyberswap.types.js.map +1 -0
- package/dist/src/protocols/odos/index.d.ts +3 -0
- package/dist/src/protocols/odos/index.d.ts.map +1 -0
- package/dist/src/protocols/odos/index.js +7 -0
- package/dist/src/protocols/odos/index.js.map +1 -0
- package/dist/src/protocols/odos/odos.service.d.ts +39 -0
- package/dist/src/protocols/odos/odos.service.d.ts.map +1 -0
- package/dist/src/protocols/odos/odos.service.js +207 -0
- package/dist/src/protocols/odos/odos.service.js.map +1 -0
- package/dist/src/protocols/odos/odos.types.d.ts +114 -0
- package/dist/src/protocols/odos/odos.types.d.ts.map +1 -0
- package/dist/src/protocols/odos/odos.types.js +3 -0
- package/dist/src/protocols/odos/odos.types.js.map +1 -0
- package/dist/src/protocols/okx/index.d.ts +3 -0
- package/dist/src/protocols/okx/index.d.ts.map +1 -0
- package/dist/src/protocols/okx/index.js +7 -0
- package/dist/src/protocols/okx/index.js.map +1 -0
- package/dist/src/protocols/okx/okx.service.d.ts +36 -0
- package/dist/src/protocols/okx/okx.service.d.ts.map +1 -0
- package/dist/src/protocols/okx/okx.service.js +281 -0
- package/dist/src/protocols/okx/okx.service.js.map +1 -0
- package/dist/src/protocols/okx/okx.types.d.ts +119 -0
- package/dist/src/protocols/okx/okx.types.d.ts.map +1 -0
- package/dist/src/protocols/okx/okx.types.js +4 -0
- package/dist/src/protocols/okx/okx.types.js.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.d.ts +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.d.ts.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.js +2 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.service.js.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.d.ts +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.d.ts.map +1 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.js +2 -0
- package/dist/src/protocols/okx-bridge/okx-bridge.types.js.map +1 -0
- package/dist/src/protocols/openocean/index.d.ts +3 -0
- package/dist/src/protocols/openocean/index.d.ts.map +1 -0
- package/dist/src/protocols/openocean/index.js +7 -0
- package/dist/src/protocols/openocean/index.js.map +1 -0
- package/dist/src/protocols/openocean/openocean.service.d.ts +29 -0
- package/dist/src/protocols/openocean/openocean.service.d.ts.map +1 -0
- package/dist/src/protocols/openocean/openocean.service.js +181 -0
- package/dist/src/protocols/openocean/openocean.service.js.map +1 -0
- package/dist/src/protocols/openocean/openocean.types.d.ts +68 -0
- package/dist/src/protocols/openocean/openocean.types.d.ts.map +1 -0
- package/dist/src/protocols/openocean/openocean.types.js +3 -0
- package/dist/src/protocols/openocean/openocean.types.js.map +1 -0
- package/dist/src/protocols/pumpfun/index.d.ts +3 -0
- package/dist/src/protocols/pumpfun/index.d.ts.map +1 -0
- package/dist/src/protocols/pumpfun/index.js +7 -0
- package/dist/src/protocols/pumpfun/index.js.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.d.ts +45 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.d.ts.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.js +217 -0
- package/dist/src/protocols/pumpfun/pumpfun.service.js.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.d.ts +14 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.d.ts.map +1 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.js +3 -0
- package/dist/src/protocols/pumpfun/pumpfun.types.js.map +1 -0
- package/dist/src/protocols/raydium/index.d.ts +3 -0
- package/dist/src/protocols/raydium/index.d.ts.map +1 -0
- package/dist/src/protocols/raydium/index.js +7 -0
- package/dist/src/protocols/raydium/index.js.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.service.d.ts +35 -0
- package/dist/src/protocols/raydium/raydium-v2.service.d.ts.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.service.js +301 -0
- package/dist/src/protocols/raydium/raydium-v2.service.js.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.types.d.ts +96 -0
- package/dist/src/protocols/raydium/raydium-v2.types.d.ts.map +1 -0
- package/dist/src/protocols/raydium/raydium-v2.types.js +3 -0
- package/dist/src/protocols/raydium/raydium-v2.types.js.map +1 -0
- package/dist/src/protocols/zeroX/index.d.ts +3 -0
- package/dist/src/protocols/zeroX/index.d.ts.map +1 -0
- package/dist/src/protocols/zeroX/index.js +7 -0
- package/dist/src/protocols/zeroX/index.js.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.service.d.ts +37 -0
- package/dist/src/protocols/zeroX/zeroX.service.d.ts.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.service.js +209 -0
- package/dist/src/protocols/zeroX/zeroX.service.js.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.types.d.ts +120 -0
- package/dist/src/protocols/zeroX/zeroX.types.d.ts.map +1 -0
- package/dist/src/protocols/zeroX/zeroX.types.js +3 -0
- package/dist/src/protocols/zeroX/zeroX.types.js.map +1 -0
- package/dist/src/types/enums.d.ts +42 -0
- package/dist/src/types/enums.d.ts.map +1 -0
- package/dist/src/types/enums.js +49 -0
- package/dist/src/types/enums.js.map +1 -0
- package/dist/src/types/intents-protocols.d.ts +89 -0
- package/dist/src/types/intents-protocols.d.ts.map +1 -0
- package/dist/src/types/intents-protocols.js +3 -0
- package/dist/src/types/intents-protocols.js.map +1 -0
- package/dist/src/types/price-response.d.ts +26 -0
- package/dist/src/types/price-response.d.ts.map +1 -0
- package/dist/src/types/price-response.js +3 -0
- package/dist/src/types/price-response.js.map +1 -0
- package/dist/src/types/quote-response.d.ts +31 -0
- package/dist/src/types/quote-response.d.ts.map +1 -0
- package/dist/src/types/quote-response.js +3 -0
- package/dist/src/types/quote-response.js.map +1 -0
- package/dist/src/utils/address-validation.d.ts +9 -0
- package/dist/src/utils/address-validation.d.ts.map +1 -0
- package/dist/src/utils/address-validation.js +42 -0
- package/dist/src/utils/address-validation.js.map +1 -0
- package/dist/src/utils/address.d.ts +9 -0
- package/dist/src/utils/address.d.ts.map +1 -0
- package/dist/src/utils/address.js +74 -0
- package/dist/src/utils/address.js.map +1 -0
- package/dist/src/utils/base64-to-base58.d.ts +2 -0
- package/dist/src/utils/base64-to-base58.d.ts.map +1 -0
- package/dist/src/utils/base64-to-base58.js +22 -0
- package/dist/src/utils/base64-to-base58.js.map +1 -0
- package/dist/src/utils/chain-id-name.d.ts +3 -0
- package/dist/src/utils/chain-id-name.d.ts.map +1 -0
- package/dist/src/utils/chain-id-name.js +23 -0
- package/dist/src/utils/chain-id-name.js.map +1 -0
- package/dist/src/utils/check-vm.d.ts +8 -0
- package/dist/src/utils/check-vm.d.ts.map +1 -0
- package/dist/src/utils/check-vm.js +39 -0
- package/dist/src/utils/check-vm.js.map +1 -0
- package/dist/src/utils/constants.d.ts +7 -0
- package/dist/src/utils/constants.d.ts.map +1 -0
- package/dist/src/utils/constants.js +10 -0
- package/dist/src/utils/constants.js.map +1 -0
- package/dist/src/utils/create-error-message.d.ts +5 -0
- package/dist/src/utils/create-error-message.d.ts.map +1 -0
- package/dist/src/utils/create-error-message.js +42 -0
- package/dist/src/utils/create-error-message.js.map +1 -0
- package/dist/src/utils/fetch-spl-metadata.d.ts +4 -0
- package/dist/src/utils/fetch-spl-metadata.d.ts.map +1 -0
- package/dist/src/utils/fetch-spl-metadata.js +108 -0
- package/dist/src/utils/fetch-spl-metadata.js.map +1 -0
- package/dist/src/utils/is-native.d.ts +2 -0
- package/dist/src/utils/is-native.d.ts.map +1 -0
- package/dist/src/utils/is-native.js +23 -0
- package/dist/src/utils/is-native.js.map +1 -0
- package/dist/src/utils/logger.d.ts +56 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/logger.js +108 -0
- package/dist/src/utils/logger.js.map +1 -0
- package/dist/src/utils/throw-error.d.ts +3 -0
- package/dist/src/utils/throw-error.d.ts.map +1 -0
- package/dist/src/utils/throw-error.js +8 -0
- package/dist/src/utils/throw-error.js.map +1 -0
- package/dist/tests/core/intent-protocol-suite.test.d.ts +2 -0
- package/dist/tests/core/intent-protocol-suite.test.d.ts.map +1 -0
- package/dist/tests/core/intent-protocol-suite.test.js +485 -0
- package/dist/tests/core/intent-protocol-suite.test.js.map +1 -0
- package/dist/tests/core/intents-protocols.test.d.ts +2 -0
- package/dist/tests/core/intents-protocols.test.d.ts.map +1 -0
- package/dist/tests/core/intents-protocols.test.js +307 -0
- package/dist/tests/core/intents-protocols.test.js.map +1 -0
- package/dist/tests/core/protocol-test-runner.d.ts +62 -0
- package/dist/tests/core/protocol-test-runner.d.ts.map +1 -0
- package/dist/tests/core/protocol-test-runner.js +260 -0
- package/dist/tests/core/protocol-test-runner.js.map +1 -0
- package/dist/tests/core/setup.test.d.ts +1 -0
- package/dist/tests/core/setup.test.d.ts.map +1 -0
- package/dist/tests/core/setup.test.js +13 -0
- package/dist/tests/core/setup.test.js.map +1 -0
- package/dist/tests/fixtures/test-data.d.ts +84 -0
- package/dist/tests/fixtures/test-data.d.ts.map +1 -0
- package/dist/tests/fixtures/test-data.js +142 -0
- package/dist/tests/fixtures/test-data.js.map +1 -0
- package/dist/tests/integration/cross-chain.test.d.ts +2 -0
- package/dist/tests/integration/cross-chain.test.d.ts.map +1 -0
- package/dist/tests/integration/cross-chain.test.js +44 -0
- package/dist/tests/integration/cross-chain.test.js.map +1 -0
- package/dist/tests/protocols/simple-protocol.test.d.ts +2 -0
- package/dist/tests/protocols/simple-protocol.test.d.ts.map +1 -0
- package/dist/tests/protocols/simple-protocol.test.js +77 -0
- package/dist/tests/protocols/simple-protocol.test.js.map +1 -0
- package/dist/tests/setup.d.ts +24 -0
- package/dist/tests/setup.d.ts.map +1 -0
- package/dist/tests/setup.js +48 -0
- package/dist/tests/setup.js.map +1 -0
- package/dist/tests/utils/test-generator.d.ts +30 -0
- package/dist/tests/utils/test-generator.d.ts.map +1 -0
- package/dist/tests/utils/test-generator.js +153 -0
- package/dist/tests/utils/test-generator.js.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol-test-runner.js","sourceRoot":"","sources":["../../../tests/core/protocol-test-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=setup.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.test.d.ts","sourceRoot":"","sources":["../../../tests/core/setup.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
describe('Test Setup Validation', () => {
|
|
3
|
+
test('should validate Jest configuration', () => {
|
|
4
|
+
expect(true).toBe(true);
|
|
5
|
+
});
|
|
6
|
+
test('should have access to global test utilities', () => {
|
|
7
|
+
expect(jest).toBeDefined();
|
|
8
|
+
expect(describe).toBeDefined();
|
|
9
|
+
expect(test).toBeDefined();
|
|
10
|
+
expect(expect).toBeDefined();
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=setup.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.test.js","sourceRoot":"","sources":["../../../tests/core/setup.test.ts"],"names":[],"mappings":";AAAA,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { ChainIdEnum } from '../../src/types/enums';
|
|
2
|
+
import { IntentPriceParams } from '../../src/types/price-params';
|
|
3
|
+
import { IntentQuoteParams } from '../../src/types/quote-params';
|
|
4
|
+
export declare const TEST_TOKENS: {
|
|
5
|
+
readonly 1: {
|
|
6
|
+
readonly ETH: "0x0000000000000000000000000000000000000000";
|
|
7
|
+
readonly USDC: "0xa0b86a33e6c3b3f4ac24b8b6e95e80e1e5c2d68e";
|
|
8
|
+
readonly WETH: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2";
|
|
9
|
+
};
|
|
10
|
+
readonly 1399811149: {
|
|
11
|
+
readonly SOL: "So11111111111111111111111111111111111111112";
|
|
12
|
+
readonly USDC: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v";
|
|
13
|
+
readonly WRAPPED_SOL: "So11111111111111111111111111111111111111112";
|
|
14
|
+
};
|
|
15
|
+
readonly 56: {
|
|
16
|
+
readonly BNB: "0x0000000000000000000000000000000000000000";
|
|
17
|
+
readonly USDT: "0x55d398326f99059ff775485246999027b3197955";
|
|
18
|
+
};
|
|
19
|
+
readonly 101: {
|
|
20
|
+
readonly USDC: "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC";
|
|
21
|
+
readonly WAL: "0x356a26eb9e012a68958082340d4c4116e7f55615cf27affcff209cf0ae544f59::wal::WAL";
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
export declare const TEST_WALLETS: {
|
|
25
|
+
readonly EVM: "0x742d35cc6641c2344c2db5c9c7db0e5d5b0f7e2b";
|
|
26
|
+
readonly SOLANA: "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM";
|
|
27
|
+
readonly SUI: "0x1234567890abcdef1234567890abcdef12345678";
|
|
28
|
+
};
|
|
29
|
+
export declare const createPriceParams: (overrides?: Partial<IntentPriceParams>) => IntentPriceParams;
|
|
30
|
+
export declare const createQuoteParams: (overrides?: Partial<IntentQuoteParams>) => IntentQuoteParams;
|
|
31
|
+
export declare const CROSS_CHAIN_SCENARIOS: readonly [{
|
|
32
|
+
readonly name: "ETH to BSC USDT";
|
|
33
|
+
readonly params: IntentPriceParams;
|
|
34
|
+
}, {
|
|
35
|
+
readonly name: "SOL to ETH USDC";
|
|
36
|
+
readonly params: IntentPriceParams;
|
|
37
|
+
}];
|
|
38
|
+
export declare const PROTOCOL_EXPECTATIONS: {
|
|
39
|
+
readonly jupiter: {
|
|
40
|
+
readonly supportedChains: readonly [ChainIdEnum.SOLANA];
|
|
41
|
+
readonly singleChain: true;
|
|
42
|
+
readonly multiChain: false;
|
|
43
|
+
readonly requiresApprovals: false;
|
|
44
|
+
};
|
|
45
|
+
readonly odos: {
|
|
46
|
+
readonly supportedChains: readonly [ChainIdEnum.ETHEREUM, ChainIdEnum.ARBITRUM, ChainIdEnum.OPTIMISM, ChainIdEnum.POLYGON, ChainIdEnum.BSC, ChainIdEnum.AVALANCHE, ChainIdEnum.BASE, ChainIdEnum.SONIC];
|
|
47
|
+
readonly singleChain: true;
|
|
48
|
+
readonly multiChain: false;
|
|
49
|
+
readonly requiresApprovals: true;
|
|
50
|
+
};
|
|
51
|
+
readonly OpenOcean: {
|
|
52
|
+
readonly supportedChains: readonly [ChainIdEnum.ETHEREUM, ChainIdEnum.ARBITRUM, ChainIdEnum.OPTIMISM, ChainIdEnum.POLYGON, ChainIdEnum.BSC, ChainIdEnum.AVALANCHE, ChainIdEnum.BASE, ChainIdEnum.SOLANA, ChainIdEnum.SONIC];
|
|
53
|
+
readonly singleChain: true;
|
|
54
|
+
readonly multiChain: false;
|
|
55
|
+
readonly requiresApprovals: true;
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
export declare const MOCK_RESPONSES: {
|
|
59
|
+
readonly JUPITER_PRICE: {
|
|
60
|
+
readonly inputMint: "So11111111111111111111111111111111111111112";
|
|
61
|
+
readonly inAmount: "1000000000";
|
|
62
|
+
readonly outputMint: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v";
|
|
63
|
+
readonly outAmount: "180000000";
|
|
64
|
+
readonly otherAmountThreshold: "178200000";
|
|
65
|
+
readonly swapMode: "ExactIn";
|
|
66
|
+
readonly slippageBps: 100;
|
|
67
|
+
readonly platformFee: null;
|
|
68
|
+
readonly priceImpactPct: "0.01";
|
|
69
|
+
readonly routePlan: readonly [];
|
|
70
|
+
};
|
|
71
|
+
readonly ODOS_PRICE: {
|
|
72
|
+
readonly pathId: "test-path-id-123";
|
|
73
|
+
readonly inAmounts: readonly ["1000000000000000000"];
|
|
74
|
+
readonly outAmounts: readonly ["1800000000"];
|
|
75
|
+
readonly gasEstimate: 150000;
|
|
76
|
+
readonly dataGasEstimate: 21000;
|
|
77
|
+
readonly gweiPerGas: 20;
|
|
78
|
+
readonly gasEstimateValue: 0.00003;
|
|
79
|
+
readonly inTokens: readonly ["0x0000000000000000000000000000000000000000"];
|
|
80
|
+
readonly outTokens: readonly ["0xa0b86a33e6c3b3f4ac24b8b6e95e80e1e5c2d68e"];
|
|
81
|
+
readonly netOutValue: 1800;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=test-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-data.d.ts","sourceRoot":"","sources":["../../../tests/fixtures/test-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAGjE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;CAmBd,CAAC;AAGX,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAGX,eAAO,MAAM,iBAAiB,GAAI,YAAW,OAAO,CAAC,iBAAiB,CAAM,KAAG,iBAS7E,CAAC;AAGH,eAAO,MAAM,iBAAiB,GAAI,YAAW,OAAO,CAAC,iBAAiB,CAAM,KAAG,iBAM7E,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;EAoBxB,CAAC;AAGX,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CAsCxB,CAAC;AAGX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;CAyBjB,CAAC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOCK_RESPONSES = exports.PROTOCOL_EXPECTATIONS = exports.CROSS_CHAIN_SCENARIOS = exports.createQuoteParams = exports.createPriceParams = exports.TEST_WALLETS = exports.TEST_TOKENS = void 0;
|
|
4
|
+
const enums_1 = require("../../src/types/enums");
|
|
5
|
+
// Common token addresses for testing
|
|
6
|
+
exports.TEST_TOKENS = {
|
|
7
|
+
[enums_1.ChainIdEnum.ETHEREUM]: {
|
|
8
|
+
ETH: '0x0000000000000000000000000000000000000000',
|
|
9
|
+
USDC: '0xa0b86a33e6c3b3f4ac24b8b6e95e80e1e5c2d68e',
|
|
10
|
+
WETH: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
|
11
|
+
},
|
|
12
|
+
[enums_1.ChainIdEnum.SOLANA]: {
|
|
13
|
+
SOL: 'So11111111111111111111111111111111111111112',
|
|
14
|
+
USDC: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
|
|
15
|
+
WRAPPED_SOL: 'So11111111111111111111111111111111111111112',
|
|
16
|
+
},
|
|
17
|
+
[enums_1.ChainIdEnum.BSC]: {
|
|
18
|
+
BNB: '0x0000000000000000000000000000000000000000',
|
|
19
|
+
USDT: '0x55d398326f99059ff775485246999027b3197955',
|
|
20
|
+
},
|
|
21
|
+
[enums_1.ChainIdEnum.SUI]: {
|
|
22
|
+
USDC: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC',
|
|
23
|
+
WAL: '0x356a26eb9e012a68958082340d4c4116e7f55615cf27affcff209cf0ae544f59::wal::WAL',
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
// Test wallets (non-private, for testing only)
|
|
27
|
+
exports.TEST_WALLETS = {
|
|
28
|
+
EVM: '0x742d35cc6641c2344c2db5c9c7db0e5d5b0f7e2b',
|
|
29
|
+
SOLANA: '9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM',
|
|
30
|
+
SUI: '0x1234567890abcdef1234567890abcdef12345678',
|
|
31
|
+
};
|
|
32
|
+
// Standard test parameters for price requests
|
|
33
|
+
const createPriceParams = (overrides = {}) => ({
|
|
34
|
+
networkIn: enums_1.ChainIdEnum.ETHEREUM,
|
|
35
|
+
networkOut: enums_1.ChainIdEnum.ETHEREUM,
|
|
36
|
+
tokenIn: exports.TEST_TOKENS[enums_1.ChainIdEnum.ETHEREUM].ETH,
|
|
37
|
+
tokenOut: exports.TEST_TOKENS[enums_1.ChainIdEnum.ETHEREUM].USDC,
|
|
38
|
+
amountIn: '1000000000000000000', // 1 ETH in wei
|
|
39
|
+
slippage: 100, // 1% in BPS
|
|
40
|
+
from: exports.TEST_WALLETS.EVM,
|
|
41
|
+
...overrides,
|
|
42
|
+
});
|
|
43
|
+
exports.createPriceParams = createPriceParams;
|
|
44
|
+
// Standard test parameters for quote requests
|
|
45
|
+
const createQuoteParams = (overrides = {}) => ({
|
|
46
|
+
...(0, exports.createPriceParams)(),
|
|
47
|
+
from: exports.TEST_WALLETS.EVM,
|
|
48
|
+
receiver: exports.TEST_WALLETS.EVM,
|
|
49
|
+
priceResponse: undefined,
|
|
50
|
+
...overrides,
|
|
51
|
+
});
|
|
52
|
+
exports.createQuoteParams = createQuoteParams;
|
|
53
|
+
// Cross-chain test scenarios
|
|
54
|
+
exports.CROSS_CHAIN_SCENARIOS = [
|
|
55
|
+
{
|
|
56
|
+
name: 'ETH to BSC USDT',
|
|
57
|
+
params: (0, exports.createPriceParams)({
|
|
58
|
+
networkIn: enums_1.ChainIdEnum.ETHEREUM,
|
|
59
|
+
networkOut: enums_1.ChainIdEnum.BSC,
|
|
60
|
+
tokenIn: exports.TEST_TOKENS[enums_1.ChainIdEnum.ETHEREUM].ETH,
|
|
61
|
+
tokenOut: exports.TEST_TOKENS[enums_1.ChainIdEnum.BSC].USDT,
|
|
62
|
+
}),
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
name: 'SOL to ETH USDC',
|
|
66
|
+
params: (0, exports.createPriceParams)({
|
|
67
|
+
networkIn: enums_1.ChainIdEnum.SOLANA,
|
|
68
|
+
networkOut: enums_1.ChainIdEnum.ETHEREUM,
|
|
69
|
+
tokenIn: exports.TEST_TOKENS[enums_1.ChainIdEnum.SOLANA].SOL,
|
|
70
|
+
tokenOut: exports.TEST_TOKENS[enums_1.ChainIdEnum.ETHEREUM].USDC,
|
|
71
|
+
from: exports.TEST_WALLETS.SOLANA,
|
|
72
|
+
}),
|
|
73
|
+
},
|
|
74
|
+
];
|
|
75
|
+
// Protocol-specific expected behaviors
|
|
76
|
+
exports.PROTOCOL_EXPECTATIONS = {
|
|
77
|
+
[enums_1.ProtocolEnum.JUPITER]: {
|
|
78
|
+
supportedChains: [enums_1.ChainIdEnum.SOLANA],
|
|
79
|
+
singleChain: true,
|
|
80
|
+
multiChain: false,
|
|
81
|
+
requiresApprovals: false,
|
|
82
|
+
},
|
|
83
|
+
[enums_1.ProtocolEnum.ODOS]: {
|
|
84
|
+
supportedChains: [
|
|
85
|
+
enums_1.ChainIdEnum.ETHEREUM,
|
|
86
|
+
enums_1.ChainIdEnum.ARBITRUM,
|
|
87
|
+
enums_1.ChainIdEnum.OPTIMISM,
|
|
88
|
+
enums_1.ChainIdEnum.POLYGON,
|
|
89
|
+
enums_1.ChainIdEnum.BSC,
|
|
90
|
+
enums_1.ChainIdEnum.AVALANCHE,
|
|
91
|
+
enums_1.ChainIdEnum.BASE,
|
|
92
|
+
enums_1.ChainIdEnum.SONIC,
|
|
93
|
+
],
|
|
94
|
+
singleChain: true,
|
|
95
|
+
multiChain: false,
|
|
96
|
+
requiresApprovals: true,
|
|
97
|
+
},
|
|
98
|
+
[enums_1.ProtocolEnum.OPEN_OCEAN]: {
|
|
99
|
+
supportedChains: [
|
|
100
|
+
enums_1.ChainIdEnum.ETHEREUM,
|
|
101
|
+
enums_1.ChainIdEnum.ARBITRUM,
|
|
102
|
+
enums_1.ChainIdEnum.OPTIMISM,
|
|
103
|
+
enums_1.ChainIdEnum.POLYGON,
|
|
104
|
+
enums_1.ChainIdEnum.BSC,
|
|
105
|
+
enums_1.ChainIdEnum.AVALANCHE,
|
|
106
|
+
enums_1.ChainIdEnum.BASE,
|
|
107
|
+
enums_1.ChainIdEnum.SOLANA,
|
|
108
|
+
enums_1.ChainIdEnum.SONIC,
|
|
109
|
+
],
|
|
110
|
+
singleChain: true,
|
|
111
|
+
multiChain: false,
|
|
112
|
+
requiresApprovals: true,
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
// Mock API responses for different protocols
|
|
116
|
+
exports.MOCK_RESPONSES = {
|
|
117
|
+
JUPITER_PRICE: {
|
|
118
|
+
inputMint: 'So11111111111111111111111111111111111111112',
|
|
119
|
+
inAmount: '1000000000',
|
|
120
|
+
outputMint: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
|
|
121
|
+
outAmount: '180000000',
|
|
122
|
+
otherAmountThreshold: '178200000',
|
|
123
|
+
swapMode: 'ExactIn',
|
|
124
|
+
slippageBps: 100,
|
|
125
|
+
platformFee: null,
|
|
126
|
+
priceImpactPct: '0.01',
|
|
127
|
+
routePlan: [],
|
|
128
|
+
},
|
|
129
|
+
ODOS_PRICE: {
|
|
130
|
+
pathId: 'test-path-id-123',
|
|
131
|
+
inAmounts: ['1000000000000000000'],
|
|
132
|
+
outAmounts: ['1800000000'],
|
|
133
|
+
gasEstimate: 150000,
|
|
134
|
+
dataGasEstimate: 21000,
|
|
135
|
+
gweiPerGas: 20,
|
|
136
|
+
gasEstimateValue: 0.00003,
|
|
137
|
+
inTokens: ['0x0000000000000000000000000000000000000000'],
|
|
138
|
+
outTokens: ['0xa0b86a33e6c3b3f4ac24b8b6e95e80e1e5c2d68e'],
|
|
139
|
+
netOutValue: 1800,
|
|
140
|
+
},
|
|
141
|
+
};
|
|
142
|
+
//# sourceMappingURL=test-data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-data.js","sourceRoot":"","sources":["../../../tests/fixtures/test-data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-chain.test.d.ts","sourceRoot":"","sources":["../../../tests/integration/cross-chain.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const enums_1 = require("../../src/types/enums");
|
|
4
|
+
const test_data_1 = require("../fixtures/test-data");
|
|
5
|
+
describe('Cross-Chain Integration Tests', () => {
|
|
6
|
+
describe('Bridge Protocol Compatibility', () => {
|
|
7
|
+
// These tests would be implemented once bridge protocols are added
|
|
8
|
+
test.skip('should handle cross-chain swaps via bridges', async () => {
|
|
9
|
+
// Test cross-chain functionality when bridge protocols are implemented
|
|
10
|
+
const scenario = test_data_1.CROSS_CHAIN_SCENARIOS[0];
|
|
11
|
+
// This would test that multi-chain protocols can handle cross-chain swaps
|
|
12
|
+
expect(scenario.params.networkIn).not.toBe(scenario.params.networkOut);
|
|
13
|
+
});
|
|
14
|
+
test.skip('should validate cross-chain parameters', async () => {
|
|
15
|
+
// Test parameter validation for cross-chain scenarios
|
|
16
|
+
const params = (0, test_data_1.createPriceParams)({
|
|
17
|
+
networkIn: enums_1.ChainIdEnum.ETHEREUM,
|
|
18
|
+
networkOut: enums_1.ChainIdEnum.BSC,
|
|
19
|
+
});
|
|
20
|
+
expect(params.networkIn).toBe(enums_1.ChainIdEnum.ETHEREUM);
|
|
21
|
+
expect(params.networkOut).toBe(enums_1.ChainIdEnum.BSC);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
describe('Multi-Chain Protocol Support', () => {
|
|
25
|
+
test.skip('should identify multi-chain protocols', () => {
|
|
26
|
+
// Test protocols that support multiple chains
|
|
27
|
+
// This will be useful when OpenOcean, OKX, etc. are fully tested
|
|
28
|
+
});
|
|
29
|
+
test.skip('should handle chain-specific token formats', () => {
|
|
30
|
+
// Test that protocols handle different token address formats correctly
|
|
31
|
+
// EVM: 0x addresses
|
|
32
|
+
// Solana: Base58 addresses
|
|
33
|
+
// Sui: 0x with longer format
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
describe('Fee Estimation Across Chains', () => {
|
|
37
|
+
test.skip('should estimate gas costs for different chains', () => {
|
|
38
|
+
// Test gas estimation for EVM chains
|
|
39
|
+
// Test transaction fees for Solana
|
|
40
|
+
// Test gas costs for Move-based chains
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=cross-chain.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-chain.test.js","sourceRoot":"","sources":["../../../tests/integration/cross-chain.test.ts"],"names":[],"mappings":";;AAAA,iDAAoD;AACpD,qDAAiF;AAEjF,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,mEAAmE;QACnE,IAAI,CAAC,IAAI,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YAClE,uEAAuE;YACvE,MAAM,QAAQ,GAAG,iCAAqB,CAAC,CAAC,CAAC,CAAC;YAE1C,0EAA0E;YAC1E,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;YAC7D,sDAAsD;YACtD,MAAM,MAAM,GAAG,IAAA,6BAAiB,EAAC;gBAC/B,SAAS,EAAE,mBAAW,CAAC,QAAQ;gBAC/B,UAAU,EAAE,mBAAW,CAAC,GAAG;aAC5B,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,mBAAW,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,IAAI,CAAC,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;YACtD,8CAA8C;YAC9C,iEAAiE;QACnE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;YAC3D,uEAAuE;YACvE,oBAAoB;YACpB,2BAA2B;YAC3B,6BAA6B;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,IAAI,CAAC,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;YAC/D,qCAAqC;YACrC,mCAAmC;YACnC,uCAAuC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simple-protocol.test.d.ts","sourceRoot":"","sources":["../../../tests/protocols/simple-protocol.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const jupiter_service_1 = require("../../src/protocols/jupiter/jupiter.service");
|
|
4
|
+
const test_data_1 = require("../fixtures/test-data");
|
|
5
|
+
const enums_1 = require("../../src/types/enums");
|
|
6
|
+
describe('Protocol Interface Tests', () => {
|
|
7
|
+
let jupiterService;
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
jupiterService = new jupiter_service_1.JupiterService();
|
|
10
|
+
});
|
|
11
|
+
describe('Interface Compliance', () => {
|
|
12
|
+
test('should implement IIntentProtocol interface', () => {
|
|
13
|
+
expect(jupiterService).toBeDefined();
|
|
14
|
+
expect(typeof jupiterService.fetchPrice).toBe('function');
|
|
15
|
+
expect(typeof jupiterService.fetchQuote).toBe('function');
|
|
16
|
+
});
|
|
17
|
+
test('should have required protocol properties', () => {
|
|
18
|
+
expect(jupiterService.protocol).toBe(enums_1.ProtocolEnum.JUPITER);
|
|
19
|
+
expect(Array.isArray(jupiterService.chains)).toBe(true);
|
|
20
|
+
expect(typeof jupiterService.singleChain).toBe('boolean');
|
|
21
|
+
expect(typeof jupiterService.multiChain).toBe('boolean');
|
|
22
|
+
});
|
|
23
|
+
test('should have correct chain configuration', () => {
|
|
24
|
+
const expectedBehavior = test_data_1.PROTOCOL_EXPECTATIONS[enums_1.ProtocolEnum.JUPITER];
|
|
25
|
+
expect(jupiterService.singleChain).toBe(expectedBehavior.singleChain);
|
|
26
|
+
expect(jupiterService.multiChain).toBe(expectedBehavior.multiChain);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
describe('Chain Support', () => {
|
|
30
|
+
test('should support expected chains', () => {
|
|
31
|
+
const expectedChains = test_data_1.PROTOCOL_EXPECTATIONS[enums_1.ProtocolEnum.JUPITER].supportedChains;
|
|
32
|
+
expectedChains.forEach(chain => {
|
|
33
|
+
expect(jupiterService.chains).toContain(chain);
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
test('should only support Solana', () => {
|
|
37
|
+
expect(jupiterService.chains).toEqual([enums_1.ChainIdEnum.SOLANA]);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
describe('Configuration', () => {
|
|
41
|
+
test('should allow price parameter overrides', () => {
|
|
42
|
+
const configuredService = new jupiter_service_1.JupiterService({});
|
|
43
|
+
expect(configuredService).toBeDefined();
|
|
44
|
+
});
|
|
45
|
+
test('should handle private URL configuration', () => {
|
|
46
|
+
const jupiterPrivateUrl = 'https://private-jupiter-api.example.com';
|
|
47
|
+
const configuredService = new jupiter_service_1.JupiterService({
|
|
48
|
+
jupiterPrivateUrl,
|
|
49
|
+
});
|
|
50
|
+
expect(configuredService.baseUrl).toBe(jupiterPrivateUrl);
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
describe('Parameter Validation', () => {
|
|
54
|
+
test('should reject non-Solana networks without making API calls', async () => {
|
|
55
|
+
const params = (0, test_data_1.createPriceParams)({
|
|
56
|
+
networkIn: enums_1.ChainIdEnum.ETHEREUM,
|
|
57
|
+
networkOut: enums_1.ChainIdEnum.ETHEREUM,
|
|
58
|
+
});
|
|
59
|
+
await expect(jupiterService.fetchPrice(params)).rejects.toThrow('Jupiter only supports Solana network');
|
|
60
|
+
});
|
|
61
|
+
test('should create valid Solana price parameters', () => {
|
|
62
|
+
const params = (0, test_data_1.createPriceParams)({
|
|
63
|
+
networkIn: enums_1.ChainIdEnum.SOLANA,
|
|
64
|
+
networkOut: enums_1.ChainIdEnum.SOLANA,
|
|
65
|
+
tokenIn: test_data_1.TEST_TOKENS[enums_1.ChainIdEnum.SOLANA].SOL,
|
|
66
|
+
tokenOut: test_data_1.TEST_TOKENS[enums_1.ChainIdEnum.SOLANA].USDC,
|
|
67
|
+
from: test_data_1.TEST_WALLETS.SOLANA,
|
|
68
|
+
});
|
|
69
|
+
expect(params.networkIn).toBe(enums_1.ChainIdEnum.SOLANA);
|
|
70
|
+
expect(params.networkOut).toBe(enums_1.ChainIdEnum.SOLANA);
|
|
71
|
+
expect(params.tokenIn).toBe(test_data_1.TEST_TOKENS[enums_1.ChainIdEnum.SOLANA].SOL);
|
|
72
|
+
expect(params.tokenOut).toBe(test_data_1.TEST_TOKENS[enums_1.ChainIdEnum.SOLANA].USDC);
|
|
73
|
+
expect(params.from).toBe(test_data_1.TEST_WALLETS.SOLANA);
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=simple-protocol.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simple-protocol.test.js","sourceRoot":"","sources":["../../../tests/protocols/simple-protocol.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
declare const mockAxios: {
|
|
2
|
+
get: import("jest-mock").Mock<import("jest-mock").UnknownFunction>;
|
|
3
|
+
post: import("jest-mock").Mock<import("jest-mock").UnknownFunction>;
|
|
4
|
+
};
|
|
5
|
+
export declare const mockAxiosResponse: <T>(data: T) => {
|
|
6
|
+
data: T;
|
|
7
|
+
status: number;
|
|
8
|
+
statusText: string;
|
|
9
|
+
headers: {};
|
|
10
|
+
config: {};
|
|
11
|
+
};
|
|
12
|
+
export declare const mockAxiosError: (message: string, status?: number) => {
|
|
13
|
+
response: {
|
|
14
|
+
data: {
|
|
15
|
+
error: string;
|
|
16
|
+
};
|
|
17
|
+
status: number;
|
|
18
|
+
statusText: string;
|
|
19
|
+
};
|
|
20
|
+
message: string;
|
|
21
|
+
isAxiosError: boolean;
|
|
22
|
+
};
|
|
23
|
+
export { mockAxios };
|
|
24
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../tests/setup.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,SAAS;;;CAGd,CAAC;AAyBF,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,MAAM,CAAC;;;;;;CAM1C,CAAC;AAEH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,EAAE,SAAQ,MAAY;;;;;;;;;;CAQlE,CAAC;AAGH,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mockAxios = exports.mockAxiosError = exports.mockAxiosResponse = void 0;
|
|
4
|
+
const globals_1 = require("@jest/globals");
|
|
5
|
+
// Mock axios at the module level first
|
|
6
|
+
const mockAxios = {
|
|
7
|
+
get: globals_1.jest.fn(),
|
|
8
|
+
post: globals_1.jest.fn(),
|
|
9
|
+
};
|
|
10
|
+
exports.mockAxios = mockAxios;
|
|
11
|
+
globals_1.jest.mock('axios', () => ({
|
|
12
|
+
default: mockAxios,
|
|
13
|
+
}));
|
|
14
|
+
// Global test setup
|
|
15
|
+
beforeAll(() => {
|
|
16
|
+
// Set test timeout
|
|
17
|
+
globals_1.jest.setTimeout(30000);
|
|
18
|
+
// Suppress console logs during tests unless debugging
|
|
19
|
+
if (!process.env['DEBUG_TESTS']) {
|
|
20
|
+
console.log = globals_1.jest.fn();
|
|
21
|
+
console.warn = globals_1.jest.fn();
|
|
22
|
+
console.error = globals_1.jest.fn();
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
// Global test teardown
|
|
26
|
+
afterAll(() => {
|
|
27
|
+
// Clean up any resources
|
|
28
|
+
});
|
|
29
|
+
// Export commonly used test utilities
|
|
30
|
+
const mockAxiosResponse = (data) => ({
|
|
31
|
+
data,
|
|
32
|
+
status: 200,
|
|
33
|
+
statusText: 'OK',
|
|
34
|
+
headers: {},
|
|
35
|
+
config: {},
|
|
36
|
+
});
|
|
37
|
+
exports.mockAxiosResponse = mockAxiosResponse;
|
|
38
|
+
const mockAxiosError = (message, status = 400) => ({
|
|
39
|
+
response: {
|
|
40
|
+
data: { error: message },
|
|
41
|
+
status,
|
|
42
|
+
statusText: 'Error',
|
|
43
|
+
},
|
|
44
|
+
message,
|
|
45
|
+
isAxiosError: true,
|
|
46
|
+
});
|
|
47
|
+
exports.mockAxiosError = mockAxiosError;
|
|
48
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../tests/setup.ts"],"names":[],"mappings":";;;AAAA,2CAAqC;AAErC,uCAAuC;AACvC,MAAM,SAAS,GAAG;IAChB,GAAG,EAAE,cAAI,CAAC,EAAE,EAAE;IACd,IAAI,EAAE,cAAI,CAAC,EAAE,EAAE;CAChB,CAAC;AA4CO,8BAAS;AA1ClB,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;IACxB,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC,CAAC;AAEJ,oBAAoB;AACpB,SAAS,CAAC,GAAG,EAAE;IACb,mBAAmB;IACnB,cAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAEvB,sDAAsD;IACtD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,GAAG,cAAI,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,GAAG,cAAI,CAAC,EAAE,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,GAAG,cAAI,CAAC,EAAE,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,uBAAuB;AACvB,QAAQ,CAAC,GAAG,EAAE;IACZ,yBAAyB;AAC3B,CAAC,CAAC,CAAC;AAEH,sCAAsC;AAC/B,MAAM,iBAAiB,GAAG,CAAI,IAAO,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI;IACJ,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,EAAE;CACX,CAAC,CAAC;AANU,QAAA,iBAAiB,qBAM3B;AAEI,MAAM,cAAc,GAAG,CAAC,OAAe,EAAE,SAAiB,GAAG,EAAE,EAAE,CAAC,CAAC;IACxE,QAAQ,EAAE;QACR,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QACxB,MAAM;QACN,UAAU,EAAE,OAAO;KACpB;IACD,OAAO;IACP,YAAY,EAAE,IAAI;CACnB,CAAC,CAAC;AARU,QAAA,cAAc,kBAQxB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ChainIdEnum } from '../../src/types/enums';
|
|
2
|
+
import { IIntentProtocol } from '../../src/interfaces/intent-protocol';
|
|
3
|
+
export type ProtocolTestTemplate = {
|
|
4
|
+
protocolName: string;
|
|
5
|
+
className: string;
|
|
6
|
+
supportedChains: ChainIdEnum[];
|
|
7
|
+
singleChain: boolean;
|
|
8
|
+
multiChain: boolean;
|
|
9
|
+
requiresApprovals?: boolean;
|
|
10
|
+
customTestCases?: string[];
|
|
11
|
+
};
|
|
12
|
+
export declare class TestGenerator {
|
|
13
|
+
/**
|
|
14
|
+
* Generates a test file template for a new protocol
|
|
15
|
+
*/
|
|
16
|
+
static generateProtocolTest(template: ProtocolTestTemplate): string;
|
|
17
|
+
/**
|
|
18
|
+
* Generates test expectations for protocol expectations fixture
|
|
19
|
+
*/
|
|
20
|
+
static generateProtocolExpectations(template: ProtocolTestTemplate): string;
|
|
21
|
+
/**
|
|
22
|
+
* Analyzes a protocol implementation to suggest test templates
|
|
23
|
+
*/
|
|
24
|
+
static analyzeProtocol(protocol: IIntentProtocol): ProtocolTestTemplate;
|
|
25
|
+
/**
|
|
26
|
+
* Generates a complete test suite for all protocols
|
|
27
|
+
*/
|
|
28
|
+
static generateTestSuite(protocols: IIntentProtocol[]): string;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=test-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../../tests/utils/test-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,WAAW,EAAE,CAAC;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM;IAkHnE;;OAEG;IACH,MAAM,CAAC,4BAA4B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM;IAW3E;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,QAAQ,EAAE,eAAe,GAAG,oBAAoB;IAiBvE;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM;CAQ/D"}
|