Introduce coinBase account
Add makerAccount parameter Adjust tests Add more assertions to success test
This commit is contained in:
@@ -7,23 +7,29 @@ export class FillScenarios {
|
||||
private zeroEx: ZeroEx;
|
||||
private userAddresses: string[];
|
||||
private tokens: Token[];
|
||||
private coinBase: string;
|
||||
constructor(zeroEx: ZeroEx, userAddresses: string[], tokens: Token[]) {
|
||||
this.zeroEx = zeroEx;
|
||||
this.userAddresses = userAddresses;
|
||||
this.tokens = tokens;
|
||||
this.coinBase = userAddresses[0];
|
||||
}
|
||||
public async createAFillableSignedOrderAsync(makerTokenAddress: string, takerTokenAddress: string,
|
||||
takerAddress: string, fillableAmount: BigNumber.BigNumber,
|
||||
makerAddress: string, takerAddress: string,
|
||||
fillableAmount: BigNumber.BigNumber,
|
||||
expirationUnixTimestampSec?: BigNumber.BigNumber):
|
||||
Promise<SignedOrder> {
|
||||
const [makerAddress] = this.userAddresses;
|
||||
await this.zeroEx.token.transferAsync(makerTokenAddress, this.coinBase, makerAddress, fillableAmount);
|
||||
await this.zeroEx.token.setProxyAllowanceAsync(makerTokenAddress, makerAddress, fillableAmount);
|
||||
await this.zeroEx.token.transferAsync(takerTokenAddress, makerAddress, takerAddress, fillableAmount);
|
||||
await this.zeroEx.token.transferAsync(takerTokenAddress, this.coinBase, takerAddress, fillableAmount);
|
||||
await this.zeroEx.token.setProxyAllowanceAsync(takerTokenAddress, takerAddress, fillableAmount);
|
||||
|
||||
const transactionSenderAccount = this.zeroEx.getTransactionSenderAccount();
|
||||
this.zeroEx.setTransactionSenderAccount(makerAddress);
|
||||
const signedOrder = await orderFactory.createSignedOrderAsync(this.zeroEx, makerAddress,
|
||||
takerAddress, fillableAmount, makerTokenAddress, fillableAmount, takerTokenAddress,
|
||||
expirationUnixTimestampSec);
|
||||
this.zeroEx.setTransactionSenderAccount(transactionSenderAccount);
|
||||
return signedOrder;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user