aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--packages/pipeline/test/data-sources/etherscan/events_test.ts90
-rw-r--r--packages/pipeline/test/data_types/events/event_utils_test.ts87
-rw-r--r--packages/pipeline/test/data_types/events/exchange_events_test.ts77
3 files changed, 164 insertions, 90 deletions
diff --git a/packages/pipeline/test/data-sources/etherscan/events_test.ts b/packages/pipeline/test/data-sources/etherscan/events_test.ts
deleted file mode 100644
index b0f8c7d1c..000000000
--- a/packages/pipeline/test/data-sources/etherscan/events_test.ts
+++ /dev/null
@@ -1,90 +0,0 @@
-// import { BigNumber } from '@0xproject/utils';
-// import * as chai from 'chai';
-// import { DecodedLogArgs, LogEntry, LogWithDecodedArgs } from 'ethereum-types';
-// import 'mocha';
-
-// import { artifacts } from '../../../src/artifacts';
-
-// import {
-// _convertResponseToLogEntry,
-// _decodeLogEntry,
-// EventsResponseResult,
-// } from '../../../src/data-sources/etherscan/events';
-// import { chaiSetup } from '../../utils/chai_setup';
-
-// chaiSetup.configure();
-// const expect = chai.expect;
-
-// describe('etherscan#events', () => {
-// describe('_convertResponseToLogEntry', () => {
-// it('converts EventsResponseResult to LogEntry', () => {
-// const input: EventsResponseResult = {
-// address: '0x4f833a24e1f95d70f028921e27040ca56e09ab0b',
-// topics: [
-// '0x82af639571738f4ebd4268fb0363d8957ebe1bbb9e78dba5ebd69eed39b154f0',
-// '0x00000000000000000000000067032ef7be8fa07c4335d0134099db0f3875e930',
-// '0x0000000000000000000000000000000000000000000000000000000000000000',
-// ],
-// data: '0x00000000000000000000000000000000000000000000000000000165f2d3f94d',
-// blockNumber: '0x61127b',
-// timeStamp: '0x5ba2878e',
-// gasPrice: '0x1a13b8600',
-// gasUsed: '0xd9dc',
-// logIndex: '0x63',
-// transactionHash: '0xa3f71931ddab6e758b9d1755b2715b376759f49f23fff60755f7e073367d61b5',
-// transactionIndex: '0x35',
-// };
-// const expected: LogEntry = {
-// logIndex: 99,
-// transactionIndex: 53,
-// transactionHash: input.transactionHash,
-// blockHash: '',
-// blockNumber: 6361723,
-// address: input.address,
-// data: input.data,
-// topics: input.topics,
-// };
-// const actual = _convertResponseToLogEntry(input);
-// expect(actual).deep.equal(expected);
-// });
-// });
-// describe('_decodeLogEntry', () => {
-// it('decodes LogEntry into LogWithDecodedArgs', () => {
-// const input: LogEntry = {
-// logIndex: 96,
-// transactionIndex: 52,
-// transactionHash: '0x02b59043e9b38b430c8c66abe67ab4a9e5509def8f8552b54231e88db1839831',
-// blockHash: '',
-// blockNumber: 6361723,
-// address: '0x4f833a24e1f95d70f028921e27040ca56e09ab0b',
-// data:
-// '0x00000000000000000000000067032ef7be8fa07c4335d0134099db0f3875e93000000000000000000000000067032ef7be8fa07c4335d0134099db0f3875e930000000000000000000000000000000000000000000000000000000174876e8000000000000000000000000000000000000000000000000000000000013ab668000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000000',
-// topics: [
-// '0x0bcc4c97732e47d9946f229edb95f5b6323f601300e4690de719993f3c371129',
-// '0x0000000000000000000000003f7f832abb3be28442c0e48b7222e02b322c78f3',
-// '0x000000000000000000000000a258b39954cef5cb142fd567a46cddb31a670124',
-// '0x523404b4e6f847d9aefcf5be024be396449b4635590291fd7a28a8c940843858',
-// ],
-// };
-// const expected: LogWithDecodedArgs<DecodedLogArgs> = {
-// ...input,
-// event: 'Fill',
-// args: {
-// makerAddress: '0x3f7f832abb3be28442c0e48b7222e02b322c78f3',
-// feeRecipientAddress: '0xa258b39954cef5cb142fd567a46cddb31a670124',
-// takerAddress: '0x67032ef7be8fa07c4335d0134099db0f3875e930',
-// senderAddress: '0x67032ef7be8fa07c4335d0134099db0f3875e930',
-// makerAssetFilledAmount: new BigNumber('100000000000'),
-// takerAssetFilledAmount: new BigNumber('330000000'),
-// makerFeePaid: new BigNumber('0'),
-// takerFeePaid: new BigNumber('0'),
-// orderHash: '0x523404b4e6f847d9aefcf5be024be396449b4635590291fd7a28a8c940843858',
-// makerAssetData: '0xf47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498',
-// takerAssetData: '0xf47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
-// },
-// };
-// const actual = _decodeLogEntry(artifacts.Exchange.compilerOutput.abi, input);
-// expect(actual).deep.equal(expected);
-// });
-// });
-// });
diff --git a/packages/pipeline/test/data_types/events/event_utils_test.ts b/packages/pipeline/test/data_types/events/event_utils_test.ts
new file mode 100644
index 000000000..91a73c47d
--- /dev/null
+++ b/packages/pipeline/test/data_types/events/event_utils_test.ts
@@ -0,0 +1,87 @@
+import { BigNumber } from '@0xproject/utils';
+import * as chai from 'chai';
+import { DecodedLogArgs, LogEntry, LogWithDecodedArgs } from 'ethereum-types';
+import 'mocha';
+
+import { artifacts } from '../../../src/artifacts';
+
+import { EventsResponseResult } from '../../../src/data_sources/etherscan';
+import { convertResponseToLogEntry, decodeLogEntry } from '../../../src/data_types/events/event_utils';
+import { chaiSetup } from '../../utils/chai_setup';
+
+chaiSetup.configure();
+const expect = chai.expect;
+
+describe('event_utils', () => {
+ describe('convertResponseToLogEntry', () => {
+ it('converts EventsResponseResult to LogEntry', () => {
+ const input: EventsResponseResult = {
+ address: '0x4f833a24e1f95d70f028921e27040ca56e09ab0b',
+ topics: [
+ '0x82af639571738f4ebd4268fb0363d8957ebe1bbb9e78dba5ebd69eed39b154f0',
+ '0x00000000000000000000000067032ef7be8fa07c4335d0134099db0f3875e930',
+ '0x0000000000000000000000000000000000000000000000000000000000000000',
+ ],
+ data: '0x00000000000000000000000000000000000000000000000000000165f2d3f94d',
+ blockNumber: '0x61127b',
+ timeStamp: '0x5ba2878e',
+ gasPrice: '0x1a13b8600',
+ gasUsed: '0xd9dc',
+ logIndex: '0x63',
+ transactionHash: '0xa3f71931ddab6e758b9d1755b2715b376759f49f23fff60755f7e073367d61b5',
+ transactionIndex: '0x35',
+ };
+ const expected: LogEntry = {
+ logIndex: 99,
+ transactionIndex: 53,
+ transactionHash: input.transactionHash,
+ blockHash: '',
+ blockNumber: 6361723,
+ address: input.address,
+ data: input.data,
+ topics: input.topics,
+ };
+ const actual = convertResponseToLogEntry(input);
+ expect(actual).deep.equal(expected);
+ });
+ });
+ describe('decodeLogEntry', () => {
+ it('decodes LogEntry into LogWithDecodedArgs', () => {
+ const input: LogEntry = {
+ logIndex: 96,
+ transactionIndex: 52,
+ transactionHash: '0x02b59043e9b38b430c8c66abe67ab4a9e5509def8f8552b54231e88db1839831',
+ blockHash: '',
+ blockNumber: 6361723,
+ address: '0x4f833a24e1f95d70f028921e27040ca56e09ab0b',
+ data:
+ '0x00000000000000000000000067032ef7be8fa07c4335d0134099db0f3875e93000000000000000000000000067032ef7be8fa07c4335d0134099db0f3875e930000000000000000000000000000000000000000000000000000000174876e8000000000000000000000000000000000000000000000000000000000013ab668000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000000',
+ topics: [
+ '0x0bcc4c97732e47d9946f229edb95f5b6323f601300e4690de719993f3c371129',
+ '0x0000000000000000000000003f7f832abb3be28442c0e48b7222e02b322c78f3',
+ '0x000000000000000000000000a258b39954cef5cb142fd567a46cddb31a670124',
+ '0x523404b4e6f847d9aefcf5be024be396449b4635590291fd7a28a8c940843858',
+ ],
+ };
+ const expected: LogWithDecodedArgs<DecodedLogArgs> = {
+ ...input,
+ event: 'Fill',
+ args: {
+ makerAddress: '0x3f7f832abb3be28442c0e48b7222e02b322c78f3',
+ feeRecipientAddress: '0xa258b39954cef5cb142fd567a46cddb31a670124',
+ takerAddress: '0x67032ef7be8fa07c4335d0134099db0f3875e930',
+ senderAddress: '0x67032ef7be8fa07c4335d0134099db0f3875e930',
+ makerAssetFilledAmount: new BigNumber('100000000000'),
+ takerAssetFilledAmount: new BigNumber('330000000'),
+ makerFeePaid: new BigNumber('0'),
+ takerFeePaid: new BigNumber('0'),
+ orderHash: '0x523404b4e6f847d9aefcf5be024be396449b4635590291fd7a28a8c940843858',
+ makerAssetData: '0xf47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498',
+ takerAssetData: '0xf47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
+ },
+ };
+ const actual = decodeLogEntry(artifacts.Exchange.compilerOutput.abi, input);
+ expect(actual).deep.equal(expected);
+ });
+ });
+});
diff --git a/packages/pipeline/test/data_types/events/exchange_events_test.ts b/packages/pipeline/test/data_types/events/exchange_events_test.ts
new file mode 100644
index 000000000..f1432892d
--- /dev/null
+++ b/packages/pipeline/test/data_types/events/exchange_events_test.ts
@@ -0,0 +1,77 @@
+import { ExchangeFillEventArgs } from '@0xproject/contract-wrappers';
+import { BigNumber } from '@0xproject/utils';
+import * as chai from 'chai';
+import { LogWithDecodedArgs } from 'ethereum-types';
+import 'mocha';
+
+import { _convertToEntity } from '../../../src/data_types/events/exchange_events';
+import { ExchangeFillEvent } from '../../../src/entities/ExchangeFillEvent';
+import { chaiSetup } from '../../utils/chai_setup';
+
+chaiSetup.configure();
+const expect = chai.expect;
+
+// tslint:disable:custom-no-magic-numbers
+describe('exchange_events', () => {
+ describe('_convertToEntity', () => {
+ it('converts LogWithDecodedArgs to ExchangeFillEvent entity', () => {
+ const input: LogWithDecodedArgs<ExchangeFillEventArgs> = {
+ logIndex: 102,
+ transactionIndex: 38,
+ transactionHash: '0x6dd106d002873746072fc5e496dd0fb2541b68c77bcf9184ae19a42fd33657fe',
+ blockHash: '',
+ blockNumber: 6276262,
+ address: '0x4f833a24e1f95d70f028921e27040ca56e09ab0b',
+ data:
+ '0x000000000000000000000000f6da68519f78b0d0bc93c701e86affcb75c92428000000000000000000000000f6da68519f78b0d0bc93c701e86affcb75c92428000000000000000000000000000000000000000000000000002386f26fc10000000000000000000000000000000000000000000000000000016345785d8a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f49800000000000000000000000000000000000000000000000000000000',
+ topics: [
+ '0x0bcc4c97732e47d9946f229edb95f5b6323f601300e4690de719993f3c371129',
+ '0x000000000000000000000000f6da68519f78b0d0bc93c701e86affcb75c92428',
+ '0x000000000000000000000000c370d2a5920344aa6b7d8d11250e3e861434cbdd',
+ '0xab12ed2cbaa5615ab690b9da75a46e53ddfcf3f1a68655b5fe0d94c75a1aac4a',
+ ],
+ event: 'Fill',
+ args: {
+ makerAddress: '0xf6da68519f78b0d0bc93c701e86affcb75c92428',
+ feeRecipientAddress: '0xc370d2a5920344aa6b7d8d11250e3e861434cbdd',
+ takerAddress: '0xf6da68519f78b0d0bc93c701e86affcb75c92428',
+ senderAddress: '0xf6da68519f78b0d0bc93c701e86affcb75c92428',
+ makerAssetFilledAmount: new BigNumber('10000000000000000'),
+ takerAssetFilledAmount: new BigNumber('100000000000000000'),
+ makerFeePaid: new BigNumber('0'),
+ takerFeePaid: new BigNumber('0'),
+ orderHash: '0xab12ed2cbaa5615ab690b9da75a46e53ddfcf3f1a68655b5fe0d94c75a1aac4a',
+ makerAssetData: '0xf47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
+ takerAssetData: '0xf47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498',
+ },
+ };
+ const expected = new ExchangeFillEvent();
+ expected.contractAddress = '0x4f833a24e1f95d70f028921e27040ca56e09ab0b';
+ expected.blockNumber = 6276262;
+ expected.logIndex = 102;
+ expected.rawData =
+ '0x000000000000000000000000f6da68519f78b0d0bc93c701e86affcb75c92428000000000000000000000000f6da68519f78b0d0bc93c701e86affcb75c92428000000000000000000000000000000000000000000000000002386f26fc10000000000000000000000000000000000000000000000000000016345785d8a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024f47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f49800000000000000000000000000000000000000000000000000000000';
+ expected.makerAddress = '0xf6da68519f78b0d0bc93c701e86affcb75c92428';
+ expected.takerAddress = '0xf6da68519f78b0d0bc93c701e86affcb75c92428';
+ expected.feeRecepientAddress = '0xc370d2a5920344aa6b7d8d11250e3e861434cbdd';
+ expected.senderAddress = '0xf6da68519f78b0d0bc93c701e86affcb75c92428';
+ expected.makerAssetFilledAmount = '10000000000000000';
+ expected.takerAssetFilledAmount = '100000000000000000';
+ expected.makerFeePaid = '0';
+ expected.takerFeePaid = '0';
+ expected.orderHash = '0xab12ed2cbaa5615ab690b9da75a46e53ddfcf3f1a68655b5fe0d94c75a1aac4a';
+ expected.rawMakerAssetData = '0xf47261b0000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2';
+ expected.makerAssetType = 'erc20';
+ expected.makerAssetProxyId = '0xf47261b0';
+ expected.makerTokenAddress = '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2';
+ expected.makerTokenId = null;
+ expected.rawTakerAssetData = '0xf47261b0000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f498';
+ expected.takerAssetType = 'erc20';
+ expected.takerAssetProxyId = '0xf47261b0';
+ expected.takerTokenAddress = '0xe41d2489571d322189246dafa5ebde1f4699f498';
+ expected.takerTokenId = null;
+ const actual = _convertToEntity(input);
+ expect(actual).deep.equal(expected);
+ });
+ });
+});