Add function assertions required for staking rewards fuzzing: withdrawDelegatorRewards, finalizePool, and endEpoch. Also adds payProtocolFee-related assertions to fillOrder
This commit is contained in:
		| @@ -5,6 +5,19 @@ import * as crypto from 'crypto'; | ||||
| import { expect } from './chai_setup'; | ||||
| import { constants } from './constants'; | ||||
| import { Numberish } from './types'; | ||||
| import { Decimal } from 'decimal.js'; | ||||
|  | ||||
| Decimal.set({ precision: 80 }); | ||||
|  | ||||
| /** | ||||
|  * Convert `x` to a `Decimal` type. | ||||
|  */ | ||||
| export function toDecimal(x: Numberish): Decimal { | ||||
|     if (BigNumber.isBigNumber(x)) { | ||||
|         return new Decimal(x.toString(10)); | ||||
|     } | ||||
|     return new Decimal(x); | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Generate a random integer between `min` and `max`, inclusive. | ||||
| @@ -33,6 +46,22 @@ export function getRandomFloat(min: Numberish, max: Numberish): BigNumber { | ||||
|         .plus(min); | ||||
| } | ||||
|  | ||||
| export const FIXED_POINT_BASE = new BigNumber(2).pow(127); | ||||
|  | ||||
| /** | ||||
|  * Convert `n` to fixed-point integer represenatation. | ||||
|  */ | ||||
| export function toFixed(n: Numberish): BigNumber { | ||||
|     return new BigNumber(n).times(FIXED_POINT_BASE).integerValue(); | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Convert `n` from fixed-point integer represenatation. | ||||
|  */ | ||||
| export function fromFixed(n: Numberish): BigNumber { | ||||
|     return new BigNumber(n).dividedBy(FIXED_POINT_BASE); | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Converts two decimal numbers to integers with `precision` digits, then returns | ||||
|  * the absolute difference. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user