28 lines
1.2 KiB
TypeScript
28 lines
1.2 KiB
TypeScript
import { MatchedFillResults, Order } from '@0x/types';
|
|
import * as _ from 'lodash';
|
|
|
|
import { DeploymentManager } from '../deployment_manager';
|
|
import { SimulationEnvironment } from '../simulation';
|
|
import { PoolInfo } from '../utils/assert_protocol_fee';
|
|
|
|
import { FunctionAssertion } from './function_assertion';
|
|
import { matchOrdersRuntimeAssertion } from './matchOrders';
|
|
|
|
/**
|
|
* A function assertion that verifies that a complete and valid `matchOrdersWithMaximalFill` succeeded and emitted the correct logs.
|
|
*/
|
|
/* tslint:disable:no-unnecessary-type-assertion */
|
|
/* tslint:disable:no-non-null-assertion */
|
|
export function validMatchOrdersWithMaximalFillAssertion(
|
|
deployment: DeploymentManager,
|
|
simulationEnvironment: SimulationEnvironment,
|
|
): FunctionAssertion<[Order, Order, string, string], PoolInfo | void, MatchedFillResults> {
|
|
return new FunctionAssertion<[Order, Order, string, string], PoolInfo | void, MatchedFillResults>(
|
|
deployment.exchange,
|
|
'matchOrdersWithMaximalFill',
|
|
matchOrdersRuntimeAssertion(deployment, simulationEnvironment, true),
|
|
);
|
|
}
|
|
/* tslint:enable:no-non-null-assertion */
|
|
/* tslint:enable:no-unnecessary-type-assertion */
|