Update tests for optional feeRate
This commit is contained in:
@@ -23,12 +23,18 @@ describe('rateUtils', () => {
|
||||
'Expected feeRate: -1 to be greater than or equal to 0',
|
||||
);
|
||||
});
|
||||
it('correctly calculates fee adjusted rate', async () => {
|
||||
it('correctly calculates fee adjusted rate when feeRate is provided', async () => {
|
||||
const feeRate = new BigNumber(2); // ZRX costs 2 units of takerAsset per 1 unit of ZRX
|
||||
const feeAdjustedRate = rateUtils.getFeeAdjustedRateOfOrder(testOrder, feeRate);
|
||||
// the order actually takes 100 + (2 * 20) takerAsset units to fill 100 units of makerAsset
|
||||
expect(feeAdjustedRate).to.bignumber.equal(new BigNumber(1.4));
|
||||
});
|
||||
it('correctly calculates fee adjusted rate when no feeRate is provided', async () => {
|
||||
const feeAdjustedRate = rateUtils.getFeeAdjustedRateOfOrder(testOrder);
|
||||
// because no feeRate was provided we just assume 0 fees
|
||||
// the order actually takes 100 takerAsset units to fill 100 units of makerAsset
|
||||
expect(feeAdjustedRate).to.bignumber.equal(new BigNumber(1));
|
||||
});
|
||||
});
|
||||
describe('#getFeeAdjustedRateOfFeeOrder', () => {
|
||||
it('throws when takerFee exceeds makerAssetAmount', async () => {
|
||||
|
||||
@@ -13,6 +13,7 @@ const expect = chai.expect;
|
||||
|
||||
describe('sortingUtils', () => {
|
||||
describe('#sortOrdersByFeeAdjustedRate', () => {
|
||||
const feeRate = new BigNumber(1); // ZRX costs 1 unit of takerAsset per 1 unit of ZRX
|
||||
// rate: 2 takerAsset / makerAsset
|
||||
const testOrder1 = testOrderFactory.generateTestSignedOrder({
|
||||
makerAssetAmount: new BigNumber(100),
|
||||
@@ -29,8 +30,7 @@ describe('sortingUtils', () => {
|
||||
takerAssetAmount: new BigNumber(200),
|
||||
takerFee: new BigNumber(50),
|
||||
});
|
||||
it('correctly sorts by fee adjusted rate', async () => {
|
||||
const feeRate = new BigNumber(1); // ZRX costs 1 unit of takerAsset per 1 unit of ZRX
|
||||
it('correctly sorts by fee adjusted rate when feeRate is Provided', async () => {
|
||||
const orders = [testOrder1, testOrder2, testOrder3];
|
||||
const sortedOrders = sortingUtils.sortOrdersByFeeAdjustedRate(
|
||||
[testOrder1, testOrder2, testOrder3],
|
||||
@@ -38,6 +38,11 @@ describe('sortingUtils', () => {
|
||||
);
|
||||
expect(sortedOrders).to.deep.equal([testOrder2, testOrder1, testOrder3]);
|
||||
});
|
||||
it('correctly sorts by fee adjusted rate when no feeRate is Provided', async () => {
|
||||
const orders = [testOrder1, testOrder2, testOrder3];
|
||||
const sortedOrders = sortingUtils.sortOrdersByFeeAdjustedRate([testOrder1, testOrder2, testOrder3]);
|
||||
expect(sortedOrders).to.deep.equal([testOrder2, testOrder1, testOrder3]);
|
||||
});
|
||||
});
|
||||
describe('#sortFeeOrdersByFeeAdjustedRate', () => {
|
||||
// rate: 200 takerAsset / makerAsset
|
||||
|
||||
Reference in New Issue
Block a user