|
3 | 3 |
|
4 | 4 | const assert = require('assert') |
5 | 5 | const CRC = require('crc-32') |
| 6 | +const { RESTv2 } = require('bfx-api-node-rest') |
6 | 7 | const { OrderBook } = require('../../../lib') |
7 | 8 |
|
8 | 9 | describe('OrderBook model', () => { |
@@ -742,4 +743,52 @@ describe('OrderBook model', () => { |
742 | 743 | assert.deepEqual(entryA, expA) |
743 | 744 | assert.deepEqual(entryB, expB) |
744 | 745 | }) |
| 746 | + |
| 747 | + it('unserializes live trading data correctly', async () => { |
| 748 | + const rest = new RESTv2() |
| 749 | + const book = await rest.orderBook('tBTCUSD', 'P0') |
| 750 | + const obj = new OrderBook(book) |
| 751 | + let firstAsk = -1 |
| 752 | + |
| 753 | + book.forEach((entry, i) => { |
| 754 | + if (entry[2] < 0) { |
| 755 | + if (firstAsk === -1) { |
| 756 | + firstAsk = i |
| 757 | + } |
| 758 | + |
| 759 | + assert.equal(obj.asks[i - firstAsk][0], entry[0]) |
| 760 | + assert.equal(obj.asks[i - firstAsk][1], entry[1]) |
| 761 | + assert.equal(obj.asks[i - firstAsk][2], entry[2]) |
| 762 | + } else { |
| 763 | + assert.equal(obj.bids[i][0], entry[0]) |
| 764 | + assert.equal(obj.bids[i][1], entry[1]) |
| 765 | + assert.equal(obj.bids[i][2], entry[2]) |
| 766 | + } |
| 767 | + }) |
| 768 | + }) |
| 769 | + |
| 770 | + it('unserializes live funding data correctly', async () => { |
| 771 | + const rest = new RESTv2() |
| 772 | + const book = await rest.orderBook('fUSD', 'P0') |
| 773 | + const obj = new OrderBook(book) |
| 774 | + let firstAsk = -1 |
| 775 | + |
| 776 | + book.forEach((entry, i) => { |
| 777 | + if (entry[3] > 0) { |
| 778 | + if (firstAsk === -1) { |
| 779 | + firstAsk = i |
| 780 | + } |
| 781 | + |
| 782 | + assert.equal(obj.asks[i - firstAsk][0], entry[0]) |
| 783 | + assert.equal(obj.asks[i - firstAsk][1], entry[1]) |
| 784 | + assert.equal(obj.asks[i - firstAsk][2], entry[2]) |
| 785 | + assert.equal(obj.asks[i - firstAsk][3], entry[3]) |
| 786 | + } else { |
| 787 | + assert.equal(obj.bids[i][0], entry[0]) |
| 788 | + assert.equal(obj.bids[i][1], entry[1]) |
| 789 | + assert.equal(obj.bids[i][2], entry[2]) |
| 790 | + assert.equal(obj.bids[i][3], entry[3]) |
| 791 | + } |
| 792 | + }) |
| 793 | + }) |
745 | 794 | }) |
0 commit comments