diff options
Diffstat (limited to 'packages/connect/test')
18 files changed, 0 insertions, 654 deletions
diff --git a/packages/connect/test/fixtures/standard_relayer_api/asset_pairs.json b/packages/connect/test/fixtures/standard_relayer_api/asset_pairs.json deleted file mode 100644 index 603e9f67e..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/asset_pairs.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "total": 43, - "page": 1, - "perPage": 100, - "records": [ - { - "assetDataA": { - "minAmount": "0", - "maxAmount": "10000000000000000000", - "precision": 5, - "assetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d" - }, - "assetDataB": { - "minAmount": "0", - "maxAmount": "50000000000000000000", - "precision": 5, - "assetData": "0x0257179264389b814a946f3e92105513705ca6b990" - } - } - ] -} diff --git a/packages/connect/test/fixtures/standard_relayer_api/asset_pairs.ts b/packages/connect/test/fixtures/standard_relayer_api/asset_pairs.ts deleted file mode 100644 index 3ceeffdc8..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/asset_pairs.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { BigNumber } from '@0x/utils'; - -import { AssetPairsResponse } from '@0x/types'; - -export const assetDataPairsResponse: AssetPairsResponse = { - total: 43, - page: 1, - perPage: 100, - records: [ - { - assetDataA: { - minAmount: new BigNumber('0'), - maxAmount: new BigNumber('10000000000000000000'), - precision: 5, - assetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', - }, - assetDataB: { - minAmount: new BigNumber('0'), - maxAmount: new BigNumber('50000000000000000000'), - precision: 5, - assetData: '0x0257179264389b814a946f3e92105513705ca6b990', - }, - }, - ], -}; diff --git a/packages/connect/test/fixtures/standard_relayer_api/fee_recipients.json b/packages/connect/test/fixtures/standard_relayer_api/fee_recipients.json deleted file mode 100644 index b1d570b03..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/fee_recipients.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "total": 3, - "page": 1, - "perPage": 10, - "records": [ - "0x6ec92694ea172ebc430c30fa31de87620967a082", - "0x9e56625509c2f60af937f23b7b532600390e8c8b", - "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32" - ] -} diff --git a/packages/connect/test/fixtures/standard_relayer_api/fee_recipients.ts b/packages/connect/test/fixtures/standard_relayer_api/fee_recipients.ts deleted file mode 100644 index 694433128..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/fee_recipients.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { FeeRecipientsResponse } from '@0x/types'; - -export const feeRecipientsResponse: FeeRecipientsResponse = { - total: 3, - page: 1, - perPage: 10, - records: [ - '0x6ec92694ea172ebc430c30fa31de87620967a082', - '0x9e56625509c2f60af937f23b7b532600390e8c8b', - '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - ], -}; diff --git a/packages/connect/test/fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json b/packages/connect/test/fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json deleted file mode 100644 index 8d2cdd8ed..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "order": { - "makerAddress": "0x9e56625509c2f60af937f23b7b532600390e8c8b", - "takerAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "feeRecipientAddress": "0xb046140686d052fff581f63f8136cce132e857da", - "senderAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "makerAssetAmount": "10000000000000000", - "takerAssetAmount": "20000000000000000", - "makerFee": "100000000000000", - "takerFee": "200000000000000", - "expirationTimeSeconds": "1532560590", - "salt": "1532559225", - "makerAssetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d", - "takerAssetData": "0x0257179264389b814a946f3e92105513705ca6b990", - "exchangeAddress": "0x12459c951127e0c374ff9105dda097662a027093", - "signature": "0x012761a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc33" - }, - "metaData": {} -} diff --git a/packages/connect/test/fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.ts b/packages/connect/test/fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.ts deleted file mode 100644 index 3d2fbdba8..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { BigNumber } from '@0x/utils'; - -export const orderResponse = { - order: { - makerAddress: '0x9e56625509c2f60af937f23b7b532600390e8c8b', - takerAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - feeRecipientAddress: '0xb046140686d052fff581f63f8136cce132e857da', - senderAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - makerAssetAmount: new BigNumber('10000000000000000'), - takerAssetAmount: new BigNumber('20000000000000000'), - makerFee: new BigNumber('100000000000000'), - takerFee: new BigNumber('200000000000000'), - expirationTimeSeconds: new BigNumber('1532560590'), - salt: new BigNumber('1532559225'), - makerAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', - takerAssetData: '0x0257179264389b814a946f3e92105513705ca6b990', - exchangeAddress: '0x12459c951127e0c374ff9105dda097662a027093', - signature: '0x012761a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc33', - }, - metaData: {}, -}; diff --git a/packages/connect/test/fixtures/standard_relayer_api/order_config.json b/packages/connect/test/fixtures/standard_relayer_api/order_config.json deleted file mode 100644 index 39da91e6d..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/order_config.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "senderAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "feeRecipientAddress": "0xb046140686d052fff581f63f8136cce132e857da", - "makerFee": "100000000000000", - "takerFee": "200000000000000" -} diff --git a/packages/connect/test/fixtures/standard_relayer_api/order_config.ts b/packages/connect/test/fixtures/standard_relayer_api/order_config.ts deleted file mode 100644 index 2290c39c0..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/order_config.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { BigNumber } from '@0x/utils'; - -import { OrderConfigResponse } from '@0x/types'; - -export const orderConfigResponse: OrderConfigResponse = { - senderAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - feeRecipientAddress: '0xb046140686d052fff581f63f8136cce132e857da', - makerFee: new BigNumber('100000000000000'), - takerFee: new BigNumber('200000000000000'), -}; diff --git a/packages/connect/test/fixtures/standard_relayer_api/orderbook.json b/packages/connect/test/fixtures/standard_relayer_api/orderbook.json deleted file mode 100644 index 5206c2217..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/orderbook.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "bids": { - "total": 325, - "page": 2, - "perPage": 100, - "records": [ - { - "order": { - "makerAddress": "0x9e56625509c2f60af937f23b7b532600390e8c8b", - "takerAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "feeRecipientAddress": "0xb046140686d052fff581f63f8136cce132e857da", - "senderAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "makerAssetAmount": "10000000000000000", - "takerAssetAmount": "20000000000000000", - "makerFee": "100000000000000", - "takerFee": "200000000000000", - "expirationTimeSeconds": "1532560590", - "salt": "1532559225", - "makerAssetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d", - "takerAssetData": "0x0257179264389b814a946f3e92105513705ca6b990", - "exchangeAddress": "0x12459c951127e0c374ff9105dda097662a027093", - "signature": "0x012761a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc33" - }, - "metaData": {} - } - ] - }, - "asks": { - "total": 500, - "page": 2, - "perPage": 100, - "records": [ - { - "order": { - "makerAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "takerAddress": "0x9e56625509c2f60af937f23b7b532600390e8c8b", - "feeRecipientAddress": "0xb046140686d052fff581f63f8136cce132e857da", - "senderAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "makerAssetAmount": "20000000000000000", - "takerAssetAmount": "10000000000000000", - "makerFee": "200000000000000", - "takerFee": "100000000000000", - "expirationTimeSeconds": "1532560590", - "salt": "1532559225", - "makerAssetData": "0x0257179264389b814a946f3e92105513705ca6b990", - "takerAssetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d", - "exchangeAddress": "0x12459c951127e0c374ff9105dda097662a027093", - "signature": "0x013842a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b3518891" - }, - "metaData": {} - } - ] - } -} diff --git a/packages/connect/test/fixtures/standard_relayer_api/orderbook.ts b/packages/connect/test/fixtures/standard_relayer_api/orderbook.ts deleted file mode 100644 index de2d4eaea..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/orderbook.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { BigNumber } from '@0x/utils'; - -import { OrderbookResponse } from '@0x/types'; - -export const orderbookResponse: OrderbookResponse = { - bids: { - total: 325, - page: 2, - perPage: 100, - records: [ - { - order: { - makerAddress: '0x9e56625509c2f60af937f23b7b532600390e8c8b', - takerAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - feeRecipientAddress: '0xb046140686d052fff581f63f8136cce132e857da', - senderAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - makerAssetAmount: new BigNumber('10000000000000000'), - takerAssetAmount: new BigNumber('20000000000000000'), - makerFee: new BigNumber('100000000000000'), - takerFee: new BigNumber('200000000000000'), - expirationTimeSeconds: new BigNumber('1532560590'), - salt: new BigNumber('1532559225'), - makerAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', - takerAssetData: '0x0257179264389b814a946f3e92105513705ca6b990', - exchangeAddress: '0x12459c951127e0c374ff9105dda097662a027093', - signature: '0x012761a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc33', - }, - metaData: {}, - }, - ], - }, - asks: { - total: 500, - page: 2, - perPage: 100, - records: [ - { - order: { - makerAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - takerAddress: '0x9e56625509c2f60af937f23b7b532600390e8c8b', - feeRecipientAddress: '0xb046140686d052fff581f63f8136cce132e857da', - senderAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - makerAssetAmount: new BigNumber('20000000000000000'), - takerAssetAmount: new BigNumber('10000000000000000'), - makerFee: new BigNumber('200000000000000'), - takerFee: new BigNumber('100000000000000'), - expirationTimeSeconds: new BigNumber('1532560590'), - salt: new BigNumber('1532559225'), - makerAssetData: '0x0257179264389b814a946f3e92105513705ca6b990', - takerAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', - exchangeAddress: '0x12459c951127e0c374ff9105dda097662a027093', - signature: '0x013842a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b3518891', - }, - metaData: {}, - }, - ], - }, -}; diff --git a/packages/connect/test/fixtures/standard_relayer_api/orders.json b/packages/connect/test/fixtures/standard_relayer_api/orders.json deleted file mode 100644 index 683612071..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/orders.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "total": 984, - "page": 1, - "perPage": 100, - "records": [ - { - "order": { - "makerAddress": "0x9e56625509c2f60af937f23b7b532600390e8c8b", - "takerAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "feeRecipientAddress": "0xb046140686d052fff581f63f8136cce132e857da", - "senderAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", - "makerAssetAmount": "10000000000000000", - "takerAssetAmount": "20000000000000000", - "makerFee": "100000000000000", - "takerFee": "200000000000000", - "expirationTimeSeconds": "1532560590", - "salt": "1532559225", - "makerAssetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d", - "takerAssetData": "0x0257179264389b814a946f3e92105513705ca6b990", - "exchangeAddress": "0x12459c951127e0c374ff9105dda097662a027093", - "signature": "0x012761a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc33" - }, - "metaData": {} - } - ] -} diff --git a/packages/connect/test/fixtures/standard_relayer_api/orders.ts b/packages/connect/test/fixtures/standard_relayer_api/orders.ts deleted file mode 100644 index ed1f588df..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/orders.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { BigNumber } from '@0x/utils'; - -import { OrdersResponse } from '@0x/types'; - -export const ordersResponse: OrdersResponse = { - total: 984, - page: 1, - perPage: 100, - records: [ - { - order: { - makerAddress: '0x9e56625509c2f60af937f23b7b532600390e8c8b', - takerAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - feeRecipientAddress: '0xb046140686d052fff581f63f8136cce132e857da', - senderAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - makerAssetAmount: new BigNumber('10000000000000000'), - takerAssetAmount: new BigNumber('20000000000000000'), - makerFee: new BigNumber('100000000000000'), - takerFee: new BigNumber('200000000000000'), - expirationTimeSeconds: new BigNumber('1532560590'), - salt: new BigNumber('1532559225'), - makerAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', - takerAssetData: '0x0257179264389b814a946f3e92105513705ca6b990', - exchangeAddress: '0x12459c951127e0c374ff9105dda097662a027093', - signature: '0x012761a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc33', - }, - metaData: {}, - }, - ], -}; diff --git a/packages/connect/test/fixtures/standard_relayer_api/unknown_orders_channel_message.ts b/packages/connect/test/fixtures/standard_relayer_api/unknown_orders_channel_message.ts deleted file mode 100644 index b6c0cd50c..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/unknown_orders_channel_message.ts +++ /dev/null @@ -1,10 +0,0 @@ -import * as orderResponseJSON from './order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json'; - -const orderJSONString = JSON.stringify(orderResponseJSON); - -export const unknownOrdersChannelMessage = `{ - "type": "superGoodUpdate", - "channel": "orderbook", - "requestId": "6ce8c5a6-5c46-4027-a44a-51831c77b8a1", - "payload": [${orderJSONString}] -}`; diff --git a/packages/connect/test/fixtures/standard_relayer_api/update_orders_channel_message.ts b/packages/connect/test/fixtures/standard_relayer_api/update_orders_channel_message.ts deleted file mode 100644 index c18a2c789..000000000 --- a/packages/connect/test/fixtures/standard_relayer_api/update_orders_channel_message.ts +++ /dev/null @@ -1,17 +0,0 @@ -import * as apiOrderJSON from './order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json'; - -const apiOrderJSONString = JSON.stringify(apiOrderJSON); - -export const updateOrdersChannelMessage = `{ - "type": "update", - "channel": "orders", - "requestId": "5a1ce3a2-22b9-41e6-a615-68077512e9e2", - "payload": [${apiOrderJSONString}] -}`; - -export const malformedUpdateOrdersChannelMessage = `{ - "type": "update", - "channel": "orders", - "requestId": "4d8efcee-adde-4475-9601-f0b30962ca2b", - "payload": {} -}`; diff --git a/packages/connect/test/http_client_test.ts b/packages/connect/test/http_client_test.ts deleted file mode 100644 index f799ca849..000000000 --- a/packages/connect/test/http_client_test.ts +++ /dev/null @@ -1,193 +0,0 @@ -import { BigNumber } from '@0x/utils'; -import * as chai from 'chai'; -import * as chaiAsPromised from 'chai-as-promised'; -import * as dirtyChai from 'dirty-chai'; -import * as fetchMock from 'fetch-mock'; -import 'mocha'; - -import { HttpClient } from '../src/index'; - -import { assetDataPairsResponse } from './fixtures/standard_relayer_api/asset_pairs'; -import * as assetDataPairsResponseJSON from './fixtures/standard_relayer_api/asset_pairs.json'; -import { feeRecipientsResponse } from './fixtures/standard_relayer_api/fee_recipients'; -import * as feeRecipientsResponseJSON from './fixtures/standard_relayer_api/fee_recipients.json'; -import { orderResponse } from './fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f'; -import * as orderResponseJSON from './fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json'; -import { orderConfigResponse } from './fixtures/standard_relayer_api/order_config'; -import * as orderConfigResponseJSON from './fixtures/standard_relayer_api/order_config.json'; -import { orderbookResponse } from './fixtures/standard_relayer_api/orderbook'; -import * as orderbookJSON from './fixtures/standard_relayer_api/orderbook.json'; -import { ordersResponse } from './fixtures/standard_relayer_api/orders'; -import * as ordersResponseJSON from './fixtures/standard_relayer_api/orders.json'; - -chai.config.includeStack = true; -chai.use(dirtyChai); -chai.use(chaiAsPromised); -const expect = chai.expect; - -describe('HttpClient', () => { - const relayUrl = 'https://example.com'; - const relayerClient = new HttpClient(relayUrl); - beforeEach(() => { - fetchMock.restore(); - }); - describe('#constructor', () => { - it('should remove trailing slashes from api url', async () => { - const urlWithTrailingSlash = 'https://slash.com/'; - const urlWithoutTrailingSlash = 'https://slash.com'; - const client = new HttpClient(urlWithTrailingSlash); - const sanitizedUrl = (client as any)._apiEndpointUrl; - expect(sanitizedUrl).to.be.deep.equal(urlWithoutTrailingSlash); - }); - }); - describe('#getAssetPairsAsync', () => { - const url = `${relayUrl}/asset_pairs`; - it('gets assetData pairs with default options when none are provided', async () => { - fetchMock.get(url, assetDataPairsResponseJSON); - const assetDataPairs = await relayerClient.getAssetPairsAsync(); - expect(assetDataPairs).to.be.deep.equal(assetDataPairsResponse); - }); - it('gets assetData pairs with specified request options', async () => { - const assetData = '0xf47261b04c32345ced77393b3530b1eed0f346429d'; - const assetPairsRequestOpts = { - assetDataA: assetData, - page: 3, - perPage: 50, - networkdId: 42, - }; - const urlWithQuery = `${url}?assetDataA=${assetData}&networkdId=42&page=3&perPage=50`; - fetchMock.get(urlWithQuery, assetDataPairsResponseJSON); - const assetDataPairs = await relayerClient.getAssetPairsAsync(assetPairsRequestOpts); - expect(assetDataPairs).to.be.deep.equal(assetDataPairsResponse); - }); - it('throws an error for invalid JSON response', async () => { - fetchMock.get(url, { test: 'dummy' }); - expect(relayerClient.getAssetPairsAsync()).to.be.rejected(); - }); - }); - describe('#getOrdersAsync', () => { - const url = `${relayUrl}/orders`; - it('gets orders with default options when none are provided', async () => { - fetchMock.get(url, ordersResponseJSON); - const orders = await relayerClient.getOrdersAsync(); - expect(orders).to.be.deep.equal(ordersResponse); - }); - it('gets orders with specified request options', async () => { - const assetDataAddress = '0x323b5d4c32345ced77393b3530b1eed0f346429d'; - const ordersRequest = { - assetDataAddress, - page: 3, - perPage: 50, - networkdId: 42, - }; - const urlWithQuery = `${url}?assetDataAddress=${assetDataAddress}&networkdId=42&page=3&perPage=50`; - fetchMock.get(urlWithQuery, ordersResponseJSON); - const orders = await relayerClient.getOrdersAsync(ordersRequest); - expect(orders).to.be.deep.equal(ordersResponse); - }); - it('throws an error for invalid JSON response', async () => { - fetchMock.get(url, { test: 'dummy' }); - expect(relayerClient.getOrdersAsync()).to.be.rejected(); - }); - }); - describe('#getOrderAsync', () => { - const orderHash = '0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f'; - const url = `${relayUrl}/order/${orderHash}`; - it('gets order', async () => { - fetchMock.get(url, orderResponseJSON); - const order = await relayerClient.getOrderAsync(orderHash); - expect(order).to.be.deep.equal(orderResponse); - }); - it('throws an error for invalid JSON response', async () => { - fetchMock.get(url, { test: 'dummy' }); - expect(relayerClient.getOrderAsync(orderHash)).to.be.rejected(); - }); - }); - describe('#getOrderBookAsync', () => { - const request = { - baseAssetData: '0x323b5d4c32345ced77393b3530b1eed0f346429d', - quoteAssetData: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - }; - const url = `${relayUrl}/orderbook`; - it('gets orderbook with default page options when none are provided', async () => { - const urlWithQuery = `${url}?baseAssetData=${request.baseAssetData}"eAssetData=${ - request.quoteAssetData - }`; - fetchMock.get(urlWithQuery, orderbookJSON); - const orderbook = await relayerClient.getOrderbookAsync(request); - expect(orderbook).to.be.deep.equal(orderbookResponse); - }); - it('gets orderbook with specified page options', async () => { - const urlWithQuery = `${url}?baseAssetData=${ - request.baseAssetData - }&networkId=42&page=3&perPage=50"eAssetData=${request.quoteAssetData}`; - fetchMock.get(urlWithQuery, orderbookJSON); - const pagedRequestOptions = { - page: 3, - perPage: 50, - networkId: 42, - }; - const orderbook = await relayerClient.getOrderbookAsync(request, pagedRequestOptions); - expect(orderbook).to.be.deep.equal(orderbookResponse); - }); - it('throws an error for invalid JSON response', async () => { - fetchMock.get(url, { test: 'dummy' }); - expect(relayerClient.getOrderbookAsync(request)).to.be.rejected(); - }); - }); - describe('#getOrderConfigAsync', () => { - const request = { - makerAddress: '0x9e56625509c2f60af937f23b7b532600390e8c8b', - takerAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', - makerAssetAmount: new BigNumber('10000000000000000'), - takerAssetAmount: new BigNumber('20000000000000000'), - expirationTimeSeconds: new BigNumber('1532560590'), - makerAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', - takerAssetData: '0x0257179264389b814a946f3e92105513705ca6b990', - exchangeAddress: '0x12459c951127e0c374ff9105dda097662a027093', - }; - const url = `${relayUrl}/order_config`; - it('gets order config', async () => { - fetchMock.post(url, orderConfigResponseJSON); - const fees = await relayerClient.getOrderConfigAsync(request); - expect(fees).to.be.deep.equal(orderConfigResponse); - }); - it('does not mutate input', async () => { - fetchMock.post(url, orderConfigResponseJSON); - const makerAssetAmountBefore = request.makerAssetAmount; - const takerAssetAmountBefore = request.takerAssetAmount; - const expirationTimeSecondsBefore = request.expirationTimeSeconds; - await relayerClient.getOrderConfigAsync(request); - expect(makerAssetAmountBefore).to.be.deep.equal(request.makerAssetAmount); - expect(takerAssetAmountBefore).to.be.deep.equal(request.takerAssetAmount); - expect(expirationTimeSecondsBefore).to.be.deep.equal(request.expirationTimeSeconds); - }); - it('throws an error for invalid JSON response', async () => { - fetchMock.post(url, { test: 'dummy' }); - expect(relayerClient.getOrderConfigAsync(request)).to.be.rejected(); - }); - }); - describe('#getFeeRecipientsAsync', () => { - const url = `${relayUrl}/fee_recipients`; - it('gets fee recipients with default page options when none are provided', async () => { - fetchMock.get(url, feeRecipientsResponseJSON); - const feeRecipients = await relayerClient.getFeeRecipientsAsync(); - expect(feeRecipients).to.be.deep.equal(feeRecipientsResponse); - }); - it('gets fee recipient with specified page options', async () => { - const urlWithQuery = `${url}?networkId=42&page=3&perPage=50`; - fetchMock.get(urlWithQuery, feeRecipientsResponseJSON); - const pagedRequestOptions = { - page: 3, - perPage: 50, - networkId: 42, - }; - const feeRecipients = await relayerClient.getFeeRecipientsAsync(pagedRequestOptions); - expect(feeRecipients).to.be.deep.equal(feeRecipientsResponse); - }); - it('throws an error for invalid JSON response', async () => { - fetchMock.get(url, { test: 'dummy' }); - expect(relayerClient.getFeeRecipientsAsync()).to.be.rejected(); - }); - }); -}); diff --git a/packages/connect/test/orders_channel_factory_test.ts b/packages/connect/test/orders_channel_factory_test.ts deleted file mode 100644 index 29aa87c65..000000000 --- a/packages/connect/test/orders_channel_factory_test.ts +++ /dev/null @@ -1,34 +0,0 @@ -import * as chai from 'chai'; -import * as dirtyChai from 'dirty-chai'; -import * as _ from 'lodash'; - -import 'mocha'; - -import { ordersChannelFactory } from '../src/orders_channel_factory'; - -chai.config.includeStack = true; -chai.use(dirtyChai); -const expect = chai.expect; -const emptyOrdersChannelHandler = { - onUpdate: _.noop.bind(_), - onError: _.noop.bind(_), - onClose: _.noop.bind(_), -}; - -describe('ordersChannelFactory', () => { - const websocketUrl = 'ws://localhost:8080'; - describe('#createWebSocketOrdersChannelAsync', () => { - it('throws when input is not a url', () => { - const badUrlInput = 54; - expect( - ordersChannelFactory.createWebSocketOrdersChannelAsync(badUrlInput as any, emptyOrdersChannelHandler), - ).to.be.rejected(); - }); - it('throws when handler has the incorrect members', () => { - const badHandlerInput = {}; - expect( - ordersChannelFactory.createWebSocketOrdersChannelAsync(websocketUrl, badHandlerInput as any), - ).to.be.rejected(); - }); - }); -}); diff --git a/packages/connect/test/orders_channel_message_parsers_test.ts b/packages/connect/test/orders_channel_message_parsers_test.ts deleted file mode 100644 index 4d4a2d23f..000000000 --- a/packages/connect/test/orders_channel_message_parsers_test.ts +++ /dev/null @@ -1,59 +0,0 @@ -import * as chai from 'chai'; -import * as dirtyChai from 'dirty-chai'; -import 'mocha'; - -import { ordersChannelMessageParser } from '../src/utils/orders_channel_message_parser'; - -import { orderResponse } from './fixtures/standard_relayer_api/order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f'; -import { unknownOrdersChannelMessage } from './fixtures/standard_relayer_api/unknown_orders_channel_message'; -import { - malformedUpdateOrdersChannelMessage, - updateOrdersChannelMessage, -} from './fixtures/standard_relayer_api/update_orders_channel_message'; - -chai.config.includeStack = true; -chai.use(dirtyChai); -const expect = chai.expect; - -describe('ordersChannelMessageParser', () => { - describe('#parser', () => { - it('parses update messages', () => { - const updateMessage = ordersChannelMessageParser.parse(updateOrdersChannelMessage); - expect(updateMessage.type).to.be.equal('update'); - expect(updateMessage.payload).to.be.deep.equal([orderResponse]); - }); - it('returns unknown message for messages with unsupported types', () => { - const unknownMessage = ordersChannelMessageParser.parse(unknownOrdersChannelMessage); - expect(unknownMessage.type).to.be.equal('unknown'); - expect(unknownMessage.payload).to.be.undefined(); - }); - it('throws when message does not include a type', () => { - const typelessMessage = `{ - "channel": "orders", - "requestId": "4d8efcee-adde-4475-9601-f0b30962ca2b", - "payload": [] - }`; - const badCall = () => ordersChannelMessageParser.parse(typelessMessage); - expect(badCall).throws(`Message is missing a type parameter: ${typelessMessage}`); - }); - it('throws when type is not a string', () => { - const messageWithBadType = `{ - "type": 1, - "channel": "orders", - "requestId": "4d8efcee-adde-4475-9601-f0b30962ca2b", - "payload": [] - }`; - const badCall = () => ordersChannelMessageParser.parse(messageWithBadType); - expect(badCall).throws('Expected type to be of type string, encountered: 1'); - }); - it('throws when update message has malformed payload', () => { - const badCall = () => ordersChannelMessageParser.parse(malformedUpdateOrdersChannelMessage); - expect(badCall).throws(/^Expected message to conform to schema/); - }); - it('throws when input message is not valid JSON', () => { - const nonJsonString = 'h93b{sdfs9fsd f'; - const badCall = () => ordersChannelMessageParser.parse(nonJsonString); - expect(badCall).throws('Unexpected token h in JSON at position 0'); - }); - }); -}); diff --git a/packages/connect/test/ws_orders_channel_test.ts b/packages/connect/test/ws_orders_channel_test.ts deleted file mode 100644 index df30bc41d..000000000 --- a/packages/connect/test/ws_orders_channel_test.ts +++ /dev/null @@ -1,49 +0,0 @@ -import * as chai from 'chai'; -import * as dirtyChai from 'dirty-chai'; -import * as _ from 'lodash'; -import 'mocha'; -import * as Sinon from 'sinon'; -import * as WebSocket from 'websocket'; - -import { WebSocketOrdersChannel } from '../src/ws_orders_channel'; - -chai.config.includeStack = true; -chai.use(dirtyChai); -const expect = chai.expect; -const emptyOrdersChannelHandler = { - onUpdate: _.noop.bind(_), - onError: _.noop.bind(_), - onClose: _.noop.bind(_), -}; - -describe('WebSocketOrdersChannel', () => { - const websocketUrl = 'ws://localhost:8080'; - const openClient = new WebSocket.w3cwebsocket(websocketUrl); - Sinon.stub(openClient, 'readyState').get(() => WebSocket.w3cwebsocket.OPEN); - Sinon.stub(openClient, 'send').callsFake(_.noop.bind(_)); - const openOrdersChannel = new WebSocketOrdersChannel(openClient, emptyOrdersChannelHandler); - const subscriptionOpts = { - baseAssetData: '0x323b5d4c32345ced77393b3530b1eed0f346429d', - quoteAssetData: '0xef7fff64389b814a946f3e92105513705ca6b990', - limit: 100, - }; - describe('#subscribe', () => { - it('throws when subscriptionOpts does not conform to schema', () => { - const badSubscribeCall = openOrdersChannel.subscribe.bind(openOrdersChannel, { - makerAssetData: 5, - }); - expect(badSubscribeCall).throws(); - }); - it('does not throw when inputs are of correct types', () => { - const goodSubscribeCall = openOrdersChannel.subscribe.bind(openOrdersChannel, subscriptionOpts); - expect(goodSubscribeCall).to.not.throw(); - }); - it('throws when client is closed', () => { - const closedClient = new WebSocket.w3cwebsocket(websocketUrl); - Sinon.stub(closedClient, 'readyState').get(() => WebSocket.w3cwebsocket.CLOSED); - const closedOrdersChannel = new WebSocketOrdersChannel(closedClient, emptyOrdersChannelHandler); - const badSubscribeCall = closedOrdersChannel.subscribe.bind(closedOrdersChannel, subscriptionOpts); - expect(badSubscribeCall).throws('WebSocket connection is closed'); - }); - }); -}); |