diff --git a/contracts/staking/test/math_test.ts b/contracts/staking/test/math_test.ts index 59f644ea7b..876640e780 100644 --- a/contracts/staking/test/math_test.ts +++ b/contracts/staking/test/math_test.ts @@ -71,20 +71,20 @@ describe('Math Libraries', () => { it('nth root #3 with fixed point', async () => { const decimals = 18; - const base = stakingWrapper.toFixedPoint(4.234, decimals); + const base = StakingWrapper.toFixedPoint(4.234, decimals); const n = new BigNumber(2); const root = await stakingWrapper.nthRootFixedPointAsync(base, n); - const rootAsFloatingPoint = stakingWrapper.toFloatingPoint(root, decimals); + const rootAsFloatingPoint = StakingWrapper.toFloatingPoint(root, decimals); const expectedResult = new BigNumber(2.057668584); expect(rootAsFloatingPoint).to.be.bignumber.equal(expectedResult); }); it('nth root #3 with fixed point (integer nth root would fail here)', async () => { const decimals = 18; - const base = stakingWrapper.toFixedPoint(5429503678976, decimals); + const base = StakingWrapper.toFixedPoint(5429503678976, decimals); const n = new BigNumber(9); const root = await stakingWrapper.nthRootFixedPointAsync(base, n); - const rootAsFloatingPoint = stakingWrapper.toFloatingPoint(root, decimals); + const rootAsFloatingPoint = StakingWrapper.toFloatingPoint(root, decimals); const expectedResult = new BigNumber(26); expect(rootAsFloatingPoint).to.be.bignumber.equal(expectedResult); }); @@ -92,20 +92,20 @@ describe('Math Libraries', () => { it.skip('nth root #4 with fixed point (integer nth root would fail here) (max number of decimals - currently does not retain)', async () => { // @TODO This is the gold standard for nth root. Retain all these decimals :) const decimals = 18; - const base = stakingWrapper.toFixedPoint(new BigNumber('5429503678976.295036789761543678', 10), decimals); + const base = StakingWrapper.toFixedPoint(new BigNumber('5429503678976.295036789761543678', 10), decimals); const n = new BigNumber(9); const root = await stakingWrapper.nthRootFixedPointAsync(base, n); - const rootAsFloatingPoint = stakingWrapper.toFloatingPoint(root, decimals); + const rootAsFloatingPoint = StakingWrapper.toFloatingPoint(root, decimals); const expectedResult = new BigNumber(26); expect(rootAsFloatingPoint).to.be.bignumber.equal(expectedResult); }); it('cobb douglas - approximate', async () => { - const totalRewards = stakingWrapper.toBaseUnitAmount(57.154398); - const ownerFees = stakingWrapper.toBaseUnitAmount(5.64375); - const totalFees = stakingWrapper.toBaseUnitAmount(29.00679); - const ownerStake = stakingWrapper.toBaseUnitAmount(56); - const totalStake = stakingWrapper.toBaseUnitAmount(10906); + const totalRewards = StakingWrapper.toBaseUnitAmount(57.154398); + const ownerFees = StakingWrapper.toBaseUnitAmount(5.64375); + const totalFees = StakingWrapper.toBaseUnitAmount(29.00679); + const ownerStake = StakingWrapper.toBaseUnitAmount(56); + const totalStake = StakingWrapper.toBaseUnitAmount(10906); const alphaNumerator = new BigNumber(3); const alphaDenominator = new BigNumber(7); // create expected output @@ -121,8 +121,8 @@ describe('Math Libraries', () => { alphaNumerator, alphaDenominator, ); - const ownerRewardFloatingPoint = stakingWrapper.trimFloat( - stakingWrapper.toFloatingPoint(ownerReward, 18), + const ownerRewardFloatingPoint = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(ownerReward, 18), 4, ); // validation @@ -131,11 +131,11 @@ describe('Math Libraries', () => { it('cobb douglas - simplified (alpha = 1/x)', async () => { // setup test parameters - const totalRewards = stakingWrapper.toBaseUnitAmount(57.154398); - const ownerFees = stakingWrapper.toBaseUnitAmount(5.64375); - const totalFees = stakingWrapper.toBaseUnitAmount(29.00679); - const ownerStake = stakingWrapper.toBaseUnitAmount(56); - const totalStake = stakingWrapper.toBaseUnitAmount(10906); + const totalRewards = StakingWrapper.toBaseUnitAmount(57.154398); + const ownerFees = StakingWrapper.toBaseUnitAmount(5.64375); + const totalFees = StakingWrapper.toBaseUnitAmount(29.00679); + const ownerStake = StakingWrapper.toBaseUnitAmount(56); + const totalStake = StakingWrapper.toBaseUnitAmount(10906); const alphaDenominator = new BigNumber(3); // create expected output // https://www.wolframalpha.com/input/?i=57.154398+*+(5.64375%2F29.00679)+%5E+(1%2F3)+*+(56+%2F+10906)+%5E+(1+-+1%2F3) @@ -149,8 +149,8 @@ describe('Math Libraries', () => { totalStake, alphaDenominator, ); - const ownerRewardFloatingPoint = stakingWrapper.trimFloat( - stakingWrapper.toFloatingPoint(ownerReward, 18), + const ownerRewardFloatingPoint = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(ownerReward, 18), 14, ); // validation @@ -158,11 +158,11 @@ describe('Math Libraries', () => { }); it('cobb douglas - simplified inverse (1 - alpha = 1/x)', async () => { - const totalRewards = stakingWrapper.toBaseUnitAmount(57.154398); - const ownerFees = stakingWrapper.toBaseUnitAmount(5.64375); - const totalFees = stakingWrapper.toBaseUnitAmount(29.00679); - const ownerStake = stakingWrapper.toBaseUnitAmount(56); - const totalStake = stakingWrapper.toBaseUnitAmount(10906); + const totalRewards = StakingWrapper.toBaseUnitAmount(57.154398); + const ownerFees = StakingWrapper.toBaseUnitAmount(5.64375); + const totalFees = StakingWrapper.toBaseUnitAmount(29.00679); + const ownerStake = StakingWrapper.toBaseUnitAmount(56); + const totalStake = StakingWrapper.toBaseUnitAmount(10906); const inverseAlphaDenominator = new BigNumber(3); // create expected output // https://www.wolframalpha.com/input/?i=57.154398+*+(5.64375%2F29.00679)+%5E+(2%2F3)+*+(56+%2F+10906)+%5E+(1+-+2%2F3) @@ -176,8 +176,8 @@ describe('Math Libraries', () => { totalStake, inverseAlphaDenominator, ); - const ownerRewardFloatingPoint = stakingWrapper.trimFloat( - stakingWrapper.toFloatingPoint(ownerReward, 18), + const ownerRewardFloatingPoint = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(ownerReward, 18), 12, ); // validation diff --git a/contracts/staking/test/simulations_test.ts b/contracts/staking/test/simulations_test.ts index 57aa26eee4..c9a2e449f1 100644 --- a/contracts/staking/test/simulations_test.ts +++ b/contracts/staking/test/simulations_test.ts @@ -68,22 +68,22 @@ describe('End-To-End Simulations', () => { numberOfPools: 3, poolOperatorShares: [100, 100, 100], stakeByPoolOperator: [ - stakingWrapper.toBaseUnitAmount(42), - stakingWrapper.toBaseUnitAmount(84), - stakingWrapper.toBaseUnitAmount(97), + StakingWrapper.toBaseUnitAmount(42), + StakingWrapper.toBaseUnitAmount(84), + StakingWrapper.toBaseUnitAmount(97), ], numberOfMakers: 6, numberOfMakersPerPool: [1, 2, 3], protocolFeesByMaker: [ // pool 1 - stakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(0.304958), // pool 2 - stakingWrapper.toBaseUnitAmount(3.2), - stakingWrapper.toBaseUnitAmount(12.123258), + StakingWrapper.toBaseUnitAmount(3.2), + StakingWrapper.toBaseUnitAmount(12.123258), // pool 3 - stakingWrapper.toBaseUnitAmount(23.577), - stakingWrapper.toBaseUnitAmount(4.54522236), - stakingWrapper.toBaseUnitAmount(0), + StakingWrapper.toBaseUnitAmount(23.577), + StakingWrapper.toBaseUnitAmount(4.54522236), + StakingWrapper.toBaseUnitAmount(0), ], numberOfDelegators: 0, numberOfDelegatorsPerPool: [0, 0, 0], @@ -91,9 +91,9 @@ describe('End-To-End Simulations', () => { delegateInNextEpoch: false, // no shadow eth withdrawByUndelegating: false, // profits are withdrawn without undelegating expectedFeesByPool: [ - stakingWrapper.toBaseUnitAmount(0.304958), - stakingWrapper.toBaseUnitAmount(15.323258), - stakingWrapper.toBaseUnitAmount(28.12222236), + StakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(15.323258), + StakingWrapper.toBaseUnitAmount(28.12222236), ], expectedPayoutByPool: [ new BigNumber('4.75677'), // 4.756772362932728793619590327361600155564384201215274334070 @@ -132,36 +132,36 @@ describe('End-To-End Simulations', () => { numberOfPools: 3, poolOperatorShares: [39, 59, 43], stakeByPoolOperator: [ - stakingWrapper.toBaseUnitAmount(42), - stakingWrapper.toBaseUnitAmount(84), - stakingWrapper.toBaseUnitAmount(97), + StakingWrapper.toBaseUnitAmount(42), + StakingWrapper.toBaseUnitAmount(84), + StakingWrapper.toBaseUnitAmount(97), ], numberOfMakers: 6, numberOfMakersPerPool: [1, 2, 3], protocolFeesByMaker: [ // pool 1 - stakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(0.304958), // pool 2 - stakingWrapper.toBaseUnitAmount(3.2), - stakingWrapper.toBaseUnitAmount(12.123258), + StakingWrapper.toBaseUnitAmount(3.2), + StakingWrapper.toBaseUnitAmount(12.123258), // pool 3 - stakingWrapper.toBaseUnitAmount(23.577), - stakingWrapper.toBaseUnitAmount(4.54522236), - stakingWrapper.toBaseUnitAmount(0), + StakingWrapper.toBaseUnitAmount(23.577), + StakingWrapper.toBaseUnitAmount(4.54522236), + StakingWrapper.toBaseUnitAmount(0), ], numberOfDelegators: 3, numberOfDelegatorsPerPool: [0, 0, 3], stakeByDelegator: [ - stakingWrapper.toBaseUnitAmount(17), - stakingWrapper.toBaseUnitAmount(75), - stakingWrapper.toBaseUnitAmount(90), + StakingWrapper.toBaseUnitAmount(17), + StakingWrapper.toBaseUnitAmount(75), + StakingWrapper.toBaseUnitAmount(90), ], delegateInNextEpoch: false, // delegated stake is included in payout computation + no shadow ether withdrawByUndelegating: false, // profits are withdrawn without undelegating expectedFeesByPool: [ - stakingWrapper.toBaseUnitAmount(0.304958), - stakingWrapper.toBaseUnitAmount(15.323258), - stakingWrapper.toBaseUnitAmount(28.12222236), + StakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(15.323258), + StakingWrapper.toBaseUnitAmount(28.12222236), ], expectedPayoutByPool: [ new BigNumber('2.89303'), // 2.8930364057678784829875695710382241749912199174798475 @@ -214,36 +214,36 @@ describe('End-To-End Simulations', () => { numberOfPools: 3, poolOperatorShares: [39, 59, 43], stakeByPoolOperator: [ - stakingWrapper.toBaseUnitAmount(42), - stakingWrapper.toBaseUnitAmount(84), - stakingWrapper.toBaseUnitAmount(97), + StakingWrapper.toBaseUnitAmount(42), + StakingWrapper.toBaseUnitAmount(84), + StakingWrapper.toBaseUnitAmount(97), ], numberOfMakers: 6, numberOfMakersPerPool: [1, 2, 3], protocolFeesByMaker: [ // pool 1 - stakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(0.304958), // pool 2 - stakingWrapper.toBaseUnitAmount(3.2), - stakingWrapper.toBaseUnitAmount(12.123258), + StakingWrapper.toBaseUnitAmount(3.2), + StakingWrapper.toBaseUnitAmount(12.123258), // pool 3 - stakingWrapper.toBaseUnitAmount(23.577), - stakingWrapper.toBaseUnitAmount(4.54522236), - stakingWrapper.toBaseUnitAmount(0), + StakingWrapper.toBaseUnitAmount(23.577), + StakingWrapper.toBaseUnitAmount(4.54522236), + StakingWrapper.toBaseUnitAmount(0), ], numberOfDelegators: 3, numberOfDelegatorsPerPool: [0, 0, 3], stakeByDelegator: [ - stakingWrapper.toBaseUnitAmount(17), - stakingWrapper.toBaseUnitAmount(75), - stakingWrapper.toBaseUnitAmount(90), + StakingWrapper.toBaseUnitAmount(17), + StakingWrapper.toBaseUnitAmount(75), + StakingWrapper.toBaseUnitAmount(90), ], delegateInNextEpoch: true, // delegated stake is included in payout computation + forces shadow eth withdrawByUndelegating: true, // profits are withdrawn as result of undelegating expectedFeesByPool: [ - stakingWrapper.toBaseUnitAmount(0.304958), - stakingWrapper.toBaseUnitAmount(15.323258), - stakingWrapper.toBaseUnitAmount(28.12222236), + StakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(15.323258), + StakingWrapper.toBaseUnitAmount(28.12222236), ], expectedPayoutByPool: [ new BigNumber('4.75677'), // 4.756772362932728793619590327361600155564384201215274334070 @@ -293,36 +293,36 @@ describe('End-To-End Simulations', () => { numberOfPools: 3, poolOperatorShares: [39, 59, 43], stakeByPoolOperator: [ - stakingWrapper.toBaseUnitAmount(42), - stakingWrapper.toBaseUnitAmount(84), - stakingWrapper.toBaseUnitAmount(97), + StakingWrapper.toBaseUnitAmount(42), + StakingWrapper.toBaseUnitAmount(84), + StakingWrapper.toBaseUnitAmount(97), ], numberOfMakers: 6, numberOfMakersPerPool: [1, 2, 3], protocolFeesByMaker: [ // pool 1 - stakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(0.304958), // pool 2 - stakingWrapper.toBaseUnitAmount(3.2), - stakingWrapper.toBaseUnitAmount(12.123258), + StakingWrapper.toBaseUnitAmount(3.2), + StakingWrapper.toBaseUnitAmount(12.123258), // pool 3 - stakingWrapper.toBaseUnitAmount(23.577), - stakingWrapper.toBaseUnitAmount(4.54522236), - stakingWrapper.toBaseUnitAmount(0), + StakingWrapper.toBaseUnitAmount(23.577), + StakingWrapper.toBaseUnitAmount(4.54522236), + StakingWrapper.toBaseUnitAmount(0), ], numberOfDelegators: 3, numberOfDelegatorsPerPool: [0, 0, 3], stakeByDelegator: [ - stakingWrapper.toBaseUnitAmount(17), - stakingWrapper.toBaseUnitAmount(75), - stakingWrapper.toBaseUnitAmount(90), + StakingWrapper.toBaseUnitAmount(17), + StakingWrapper.toBaseUnitAmount(75), + StakingWrapper.toBaseUnitAmount(90), ], delegateInNextEpoch: true, // delegated stake is included in payout computation + forces shadow eth withdrawByUndelegating: false, // profits are withdrawn without undelegating expectedFeesByPool: [ - stakingWrapper.toBaseUnitAmount(0.304958), - stakingWrapper.toBaseUnitAmount(15.323258), - stakingWrapper.toBaseUnitAmount(28.12222236), + StakingWrapper.toBaseUnitAmount(0.304958), + StakingWrapper.toBaseUnitAmount(15.323258), + StakingWrapper.toBaseUnitAmount(28.12222236), ], expectedPayoutByPool: [ new BigNumber('4.75677'), // 4.756772362932728793619590327361600155564384201215274334070 diff --git a/contracts/staking/test/stake_test.ts b/contracts/staking/test/stake_test.ts index 8b0efdeeb0..b8d91baeed 100644 --- a/contracts/staking/test/stake_test.ts +++ b/contracts/staking/test/stake_test.ts @@ -60,10 +60,10 @@ describe('Staking & Delegating', () => { describe('Staking', () => { it('basic staking/unstaking', async () => { // setup test parameters - const amountToStake = stakingWrapper.toBaseUnitAmount(10); - const amountToDeactivate = stakingWrapper.toBaseUnitAmount(4); - const amountToReactivate = stakingWrapper.toBaseUnitAmount(1); - const amountToWithdraw = stakingWrapper.toBaseUnitAmount(1.5); + const amountToStake = StakingWrapper.toBaseUnitAmount(10); + const amountToDeactivate = StakingWrapper.toBaseUnitAmount(4); + const amountToReactivate = StakingWrapper.toBaseUnitAmount(1); + const amountToWithdraw = StakingWrapper.toBaseUnitAmount(1.5); // run test - this actor will validate its own state const staker = new StakerActor(stakers[0], stakingWrapper); await staker.depositAndStakeAsync(amountToStake); @@ -86,10 +86,10 @@ describe('Staking & Delegating', () => { describe('Delegating', () => { it('basic delegating/undelegating', async () => { // setup test parameters - const amountToDelegate = stakingWrapper.toBaseUnitAmount(10); - const amountToDeactivate = stakingWrapper.toBaseUnitAmount(4); - const amountToReactivate = stakingWrapper.toBaseUnitAmount(1); - const amountToWithdraw = stakingWrapper.toBaseUnitAmount(1.5); + const amountToDelegate = StakingWrapper.toBaseUnitAmount(10); + const amountToDeactivate = StakingWrapper.toBaseUnitAmount(4); + const amountToReactivate = StakingWrapper.toBaseUnitAmount(1); + const amountToWithdraw = StakingWrapper.toBaseUnitAmount(1.5); const poolOperator = stakers[1]; const operatorShare = 39; const poolId = await stakingWrapper.createPoolAsync(poolOperator, operatorShare); diff --git a/contracts/staking/test/utils/ApprovalFactory.ts b/contracts/staking/test/utils/ApprovalFactory.ts deleted file mode 100644 index a1837a1d9d..0000000000 --- a/contracts/staking/test/utils/ApprovalFactory.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { signingUtils } from '@0x/contracts-test-utils'; -import { SignatureType } from '@0x/types'; -import * as ethUtil from 'ethereumjs-util'; - -import { hashUtils } from './hash_utils'; -import { SignedStakingPoolApproval } from './types'; - -export class ApprovalFactory { - private readonly _privateKey: Buffer; - private readonly _verifyingContractAddress: string; - private readonly _chainId: number; - - constructor(privateKey: Buffer, verifyingContractAddress: string, chainId: number) { - this._privateKey = privateKey; - this._verifyingContractAddress = verifyingContractAddress; - this._chainId = chainId; - } - - public newSignedApproval( - poolId: string, - makerAddress: string, - signatureType: SignatureType = SignatureType.EthSign, - ): SignedStakingPoolApproval { - const approvalHashBuff = hashUtils.getStakingPoolApprovalHashBuffer( - poolId, - makerAddress, - this._verifyingContractAddress, - this._chainId, - ); - const signatureBuff = signingUtils.signMessage(approvalHashBuff, this._privateKey, signatureType); - const signedApproval = { - makerAddress, - poolId, - verifyingContractAddress: this._verifyingContractAddress, - chainId: this._chainId, - signature: ethUtil.addHexPrefix(signatureBuff.toString('hex')), - }; - return signedApproval; - } -} diff --git a/contracts/staking/test/utils/Simulation.ts b/contracts/staking/test/utils/Simulation.ts index 5541e773df..21480cdf71 100644 --- a/contracts/staking/test/utils/Simulation.ts +++ b/contracts/staking/test/utils/Simulation.ts @@ -73,8 +73,8 @@ export class Simulation { await delegator.deactivateAndTimelockDelegatedStakeAsync(poolId, amountOfStakeDelegated); const finalEthBalance = await this._stakingWrapper.getEthBalanceAsync(delegatorAddress); const reward = finalEthBalance.minus(initEthBalance); - const rewardTrimmed = this._stakingWrapper.trimFloat( - this._stakingWrapper.toFloatingPoint(reward, 18), + const rewardTrimmed = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(reward, 18), 5, ); const expectedReward = p.expectedPayoutByDelegator[delegatorIdx]; @@ -101,8 +101,8 @@ export class Simulation { await this._stakingWrapper.withdrawTotalRewardAsync(poolId, delegatorAddress); const finalEthBalance = await this._stakingWrapper.getEthBalanceAsync(delegatorAddress); const reward = finalEthBalance.minus(initEthBalance); - const rewardTrimmed = this._stakingWrapper.trimFloat( - this._stakingWrapper.toFloatingPoint(reward, 18), + const rewardTrimmed = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(reward, 18), 5, ); const expectedReward = p.expectedPayoutByDelegator[delegatorIdx]; @@ -218,8 +218,8 @@ export class Simulation { // check pool balance in vault const poolId = this._poolIds[i]; const rewardVaultBalance = await this._stakingWrapper.rewardVaultBalanceOfAsync(poolId); - const rewardVaultBalanceTrimmed = this._stakingWrapper.trimFloat( - this._stakingWrapper.toFloatingPoint(rewardVaultBalance, 18), + const rewardVaultBalanceTrimmed = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(rewardVaultBalance, 18), 5, ); const expectedRewardBalance = p.expectedPayoutByPool[i]; @@ -229,8 +229,8 @@ export class Simulation { ).to.be.bignumber.equal(expectedRewardBalance); // check operator's balance const poolOperatorVaultBalance = await this._stakingWrapper.getRewardBalanceOfOperatorAsync(poolId); - const poolOperatorVaultBalanceTrimmed = this._stakingWrapper.trimFloat( - this._stakingWrapper.toFloatingPoint(poolOperatorVaultBalance, 18), + const poolOperatorVaultBalanceTrimmed = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(poolOperatorVaultBalance, 18), 5, ); const expectedPoolOperatorVaultBalance = p.expectedPayoutByPoolOperator[i]; @@ -240,8 +240,8 @@ export class Simulation { ).to.be.bignumber.equal(expectedPoolOperatorVaultBalance); // check balance of pool members const membersVaultBalance = await this._stakingWrapper.getRewardBalanceOfPoolAsync(poolId); - const membersVaultBalanceTrimmed = this._stakingWrapper.trimFloat( - this._stakingWrapper.toFloatingPoint(membersVaultBalance, 18), + const membersVaultBalanceTrimmed = StakingWrapper.trimFloat( + StakingWrapper.toFloatingPoint(membersVaultBalance, 18), 5, ); const expectedMembersVaultBalance = p.expectedMembersPayoutByPool[i]; @@ -266,7 +266,7 @@ export class Simulation { await this._stakingWrapper.withdrawTotalOperatorRewardAsync(poolId, poolOperatorAddress); const finalEthBalance = await this._stakingWrapper.getEthBalanceAsync(poolOperatorAddress); const reward = finalEthBalance.minus(initEthBalance); - const rewardTrimmed = this._stakingWrapper.trimFloat(this._stakingWrapper.toFloatingPoint(reward, 18), 5); + const rewardTrimmed = StakingWrapper.trimFloat(StakingWrapper.toFloatingPoint(reward, 18), 5); const expectedReward = p.expectedPayoutByPoolOperator[i]; expect(rewardTrimmed, `reward withdrawn from pool ${poolId} for operator`).to.be.bignumber.equal( expectedReward, diff --git a/contracts/staking/test/utils/staking_wrapper.ts b/contracts/staking/test/utils/staking_wrapper.ts index 15668beecf..3dae3c18f1 100644 --- a/contracts/staking/test/utils/staking_wrapper.ts +++ b/contracts/staking/test/utils/staking_wrapper.ts @@ -17,7 +17,7 @@ import { ZrxVaultContract, } from '../../src'; -import { ApprovalFactory } from './ApprovalFactory'; +import { ApprovalFactory } from './approval_factory'; import { constants } from './constants'; import { SignedStakingPoolApproval } from './types';