155 Commits

Author SHA1 Message Date
Amir Bandeali
f45014f75b Convert LibOrder and LibZeroExTransaction to libraries 2019-08-13 16:09:48 -07:00
Amir Bandeali
74a5c8c23c Simplify LibEIP712ExchangeDomain to be used only for generating domain hash 2019-08-13 16:09:48 -07:00
Amir Bandeali
28e781db15 Convert LibFillResults to library 2019-08-13 16:09:48 -07:00
Amir Bandeali
6ca9d4ee78 Convert LibMath to library 2019-08-13 16:09:48 -07:00
Amir Bandeali
b05a2a90d0 Move FillResults calculations into LibFillResults 2019-08-13 16:09:48 -07:00
Amir Bandeali
242715240b Do not inherit libs 2019-08-13 16:07:07 -07:00
Amir Bandeali
65f17fd76e Make LibEIP712 a library 2019-08-13 16:04:33 -07:00
Lawrence Forman
e34b390c18 @0x/contracts-exchange-libs: Fix CHANGELOG rebase issues. 2019-08-09 22:15:33 -04:00
Lawrence Forman
14fe3045dc @0x/contracts-exchange-libs: Update CHANGELOG. 2019-08-09 22:15:33 -04:00
Lawrence Forman
cc8d5ac93a Update changelogs. 2019-08-09 22:15:33 -04:00
Lawrence Forman
ae454b0892 @0x/contracts-exchange-libs: Regenerate selectors. 2019-08-09 22:15:33 -04:00
Lawrence Forman
18485dd456 @0x/contracts-exchange-libs: Add complementary tests when rounding up and down behavior with isRoundingErrorFloor() and isRoundingerrorCeil(). 2019-08-09 21:07:23 -04:00
Lawrence Forman
08118ec36f @0x/contracts-exchange-libs: Fix coverage hooks.
`@0x/contracts-exchange-libs`: Add explicit tests for
`*getPartialAmount*()` for rounding modes.
2019-08-08 11:41:51 -04:00
Lawrence Forman
fddbfc2d32 Update CHANGELOGs 2019-08-06 15:31:30 -04:00
Lawrence Forman
6345faa4a9 `@0x/contracts-exchange-libs: Appease the linter and prettier gods. 2019-08-06 15:30:59 -04:00
Lawrence Forman
293510c087 @0x/contracts-exchange-libs: Add explicit tests for LibMath and LibFillResults functions.
`@0x/contracts-exchange-libs`: Add tests for `ReferenceFunctions`.
2019-08-06 15:30:59 -04:00
Lawrence Forman
51391b7f0e @0x/contracts-exchange-libs: Correct internal variable naming in src/index.ts.
`@0x/contracts-utils`: Correct internal variable naming in `src/index.ts`.
`@0x/contracts-exchange`: Remove functions from `TestExchangeInternals.sol` that are now in other packages.
`@0x/contracts-exchange`: Remove `TestExchangeMath.sol`. Exchange math functions are now tested in `@0x/contracts-exchange-libs`.
`@0x/contracts-exchange`: Move `ReferenceFunctions` to default package export.
`@0x/contracts-exchange`: Update `match_order.ts` tests to use reference math functions instead of `TestExchangeMath`.
`@0x/contracts-exchange`: Remove `_updateFilledState()` combinatorial tests in favor of normal unit testing. Combinatorial testing was overkill.
`@0x/contracts-exchange`: Update/refactor `calculateFillResults()` combinatorial tests to use the reference functions and hide them behind `TEST_ALL`.
2019-08-06 15:30:59 -04:00
Lawrence Forman
884b1add8e @0x/contracts-exchange-libs: Move in revamped LibFillResults tests from @0x/contracts-exchange. 2019-08-06 15:30:59 -04:00
Lawrence Forman
f791cd3a37 @0x/contracts-exchange-libs: Remove unecessary checks for zero
denominator.
`@0x/contracts-exchange-libs`: `LibMath` tests from `@0x/contracts-exchange` into this package.
`@0x/contracts-exchange-libs`: Adjust logic in reference functions to be
closer to solidity implementation.
2019-08-06 15:30:30 -04:00
Lawrence Forman
c30d59d5d3 @0x/types: Add FillResults, MatchedFillResults, and
`BatchMatchedFillResults` types.
`@0x/contracts-utils`: Add reference functions for `SafeMath`.
`@0x/contracts-exchange-libs`: Add reference functions for `LibMath` and
`LibFillResults`.
`@0x/contracts-test-utils`: Move `*FillResults` types to `@0x/types`.
`@0x/contracts-test-utils`: Add `log_utils.ts`.
`@0x/contracts-test-utils`: Add `hexRandom()` to `hex_utils.ts`.
`@0x/contracts-test-utils`: Add the contstants: `MAX_UINT256`,
`ADDRESS_LENGTH`.
2019-08-06 15:30:30 -04:00
James Towle
ffa32f7610 Changed the returndata for batchMatchOrders 2019-07-23 15:53:26 -07:00
James Towle
e0cff4b74e Updated batchMatchOrders to fix an edge case and added tests 2019-07-23 15:53:26 -07:00
James Towle
1a385de367 Improved the efficiency of batchMatchOrders 2019-07-23 15:53:25 -07:00
James Towle
f289b3112b Implemented batchMatchOrders 2019-07-23 15:53:25 -07:00
James Towle
6384518ee1 @0x:contracts-exchange Updated LibMath to use library rich errors 2019-07-23 15:53:25 -07:00
James Towle
a1a6c3e40c Updated the DivisionByZeroError to not use assembly 2019-07-23 15:52:20 -07:00
James Towle
a2b19a1b9d Updated DivisionByZero error 2019-07-23 15:52:20 -07:00
James Towle
4d1a942e79 Removed unnecessary files and code 2019-07-23 15:52:20 -07:00
James Towle
eb4afa8f2c Update contracts/exchange-libs/contracts/src/interfaces/IMixinLibMathRichErrors.sol
Co-Authored-By: Lawrence Forman <lawrence@0xproject.com>
2019-07-23 15:52:20 -07:00
James Towle
468bbea44d Update contracts/exchange-libs/contracts/src/interfaces/IMixinLibMathRichErrors.sol
Co-Authored-By: Lawrence Forman <lawrence@0xproject.com>
2019-07-23 15:52:20 -07:00
James Towle
e229d2d59f Updated tests to work with LibMathRichErrors 2019-07-23 15:52:20 -07:00
James Towle
3d58dc2a50 Added RichReverts to exchange-libs 2019-07-23 15:51:43 -07:00
James Towle
4e6dd1b213 Updated the style 2019-07-23 15:51:43 -07:00
James Towle
5813bb9ca8 Updated any remaining contracts using 0.5.5 to 0.5.9 2019-07-23 15:46:16 -07:00
Amir Bandeali
e6443a2612 Update CHANGELOGs 2019-07-23 15:46:16 -07:00
Amir Bandeali
7cff9ba86a Refactor tests 2019-07-23 15:46:15 -07:00
Amir Bandeali
6ddaa6f52a Add expirationTimeSeconds to ZeroExTransaction schema throughout codebase 2019-07-23 15:46:15 -07:00
Lawrence Forman
b636057251 @0x/contracts-exchange-libs: Make EIP712_ORDER_SCHEMA_HASH public. 2019-07-23 15:44:58 -07:00
Lawrence Forman
c692c8f055 @0x/contracts-exchange-libs: Regenerate LibExchangeSelectors.sol 2019-07-23 15:44:58 -07:00
Lawrence Forman
575842eab4 @0x/contracts-exchange-libs: Convert generate-exchange-selectors script to typescript. 2019-07-23 15:43:23 -07:00
Lawrence Forman
14167412e0 @0x/contracts-exchange-libs: Make generate-exchange-selectors terminate file with a newline. 2019-07-23 15:26:59 -07:00
Lawrence Forman
7c0f075d1f Update changelogs with PR #s 2019-07-23 15:26:59 -07:00
Lawrence Forman
f4aea76c6e Ran prettier 2019-07-23 15:26:59 -07:00
Lawrence Forman
2109ed8464 @0x/contracts-exchange-libs: Add generate-exchange-selectors package script to regenerate LibExchangeSelectors from Exchange artifacts. 2019-07-23 15:26:59 -07:00
Lawrence Forman
a5c0b95f8b Update changelogs 2019-07-23 15:26:59 -07:00
Lawrence Forman
e3bca7e7e7 @0x/exchange-libs: Remove LibAbiEncoder 2019-07-23 15:23:40 -07:00
Lawrence Forman
7cb6795d40 @0x/contracts-exchange-libs: Add takerFeeAssetData and makerFeeAssetData to Order struct. 2019-07-23 15:23:40 -07:00
Lawrence Forman
94d0db2dba In @0x/order-utils: Fix order hash tests.
In `@0x/contracts-exchange-libs`: Add fee asset datas to `LibOrder` type.
2019-07-23 15:23:40 -07:00
Amir Bandeali
64c596c922 temp 2019-07-23 15:23:40 -07:00
Amir Bandeali
ed0fcf2829 Remove LibAbiEncoder 2019-07-23 15:23:40 -07:00