120 Commits

Author SHA1 Message Date
Lawrence Forman
2ff3735adc Rebase against 3.0 2019-07-23 15:53:24 -07:00
Lawrence Forman
309dd7f300 Run prettier/linter 2019-07-23 15:53:24 -07:00
Lawrence Forman
33df11b755 @0x/contracts-exchange: Rename WalletOrderValidator to OrderWallet signature type
`@0x/contracts-exchange`: Rename `SignatureWalletOrderValidatorError` to `SignatureOrderWalletError`
`@0x/contracts-exchange`: Add `IEIP1271Wallet` interface
`@0x/contracts-exchange`: Add `EIP1271Wallet` and `EIP1271OrderWallet` to `SignatureType`
`@0x/contracts-exchange`: Always check `OrderValidator`, `OrderWallet`, `EIP1271OrderWallet` signature types on every fill
`@0x/contracts-exchange`: Add tests for EIP1271 signature types.
`@0x/contracts-exchange`: Update `LibExchangeRichErrorDecoder` for new/renamed Error types.
2019-07-23 15:53:24 -07:00
Lawrence Forman
dee5ff852d @0x/contracts-exchange: Have TestValidatorWallet always accept WalletOrderValidator if makerAddress == this.
`@0x/contracts-exchange`: Update tests for repeatable signature validation.
2019-07-23 15:53:24 -07:00
Lawrence Forman
42f7b7cc19 @0x/contracts-exchange: Always check OrderValidator and WalletOrderValidator signature types on every fill
`@0x/contracts-exchange`: Add `validatorAddress` field to `SignatureValidatorError` and `SignatureOrderValidatorError` rich reverts
`@0x/contracts-exchange`: Add separate `SignatureOrderValidatorNotApprovedError` for `OrderValidator` signatures
`@0x/contracts-exchange`: Consolidate Wallet and Validator test contracts into a single configurable `TestValidatorWallet` contract.
`@0x/contracts-exchange`: Rewrite many tests in `signature_validator.ts` for brevity.
2019-07-23 15:53:24 -07:00
Lawrence Forman
5f8ebc3601 @0x/base-contract: Make PromiseWithTransactionHash fully compatible with regular Promise types.
`@0x/contracts/exchange` Make `OrderValidator` and `WalletOrderValidator` signature types checked for every fill (not just first)'
2019-07-23 15:53:24 -07:00
Amir Bandeali
d73f7beb2f Fix StaticCallProxy Exchange integration tests 2019-07-23 15:52:20 -07:00
Amir Bandeali
4f6f126952 Fix build 2019-07-23 15:52:20 -07:00
Amir Bandeali
2041d0d000 Add fillOrder transfer ordering tests 2019-07-23 15:52:20 -07:00
Amir Bandeali
f01743e27c Add tests for simulateTransferFromCalls 2019-07-23 15:52:20 -07:00
James Towle
a1a6c3e40c Updated the DivisionByZeroError to not use assembly 2019-07-23 15:52:20 -07:00
James Towle
b75aa02b0d Update contracts/exchange/test/internal.ts
Co-Authored-By: Lawrence Forman <lawrence@0xproject.com>
2019-07-23 15:52:20 -07:00
James Towle
a39f93bcff Update contracts/exchange/test/internal.ts
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
a46b13967a Refactored the SafeMath errors 2019-07-23 15:51:43 -07:00
James Towle
e916daf5fd Ran yarn prettier 2019-07-23 15:51:43 -07:00
James Towle
fad9dae9bb Fixed the exchange unit tests 2019-07-23 15:51:43 -07:00
James Towle
03ea97734c Ran yarn prettier 2019-07-23 15:51:43 -07:00
James Towle
b7adf59ed5 Fixed any lingering style issues 2019-07-23 15:51:43 -07:00
James Towle
56d5e9c889 Fixed the build issues in exchange 2019-07-23 15:51:43 -07:00
James Towle
de60123ec7 Updated the combanatorial tests to use RichErrors 2019-07-23 15:51:43 -07:00
James Towle
cf3790c2f8 Updated the erc1155 tests in asset-proxy to use RichErrors 2019-07-23 15:51:43 -07:00
James Towle
f4551dd1e5 Updated the exchange tests to use RichErrors 2019-07-23 15:51:43 -07:00
Amir Bandeali
dc372a43fe Fix incorrect function call for fillOrderNoThrow test 2019-07-23 15:46:16 -07:00
Amir Bandeali
589b791cd7 Add names to return values and fix breaking transactions tests 2019-07-23 15:46:16 -07:00
Amir Bandeali
564dbea126 Remove formatters and clarify comments about pointing assetData to the same memory location 2019-07-23 15:46:16 -07:00
Amir Bandeali
1bc4bc613e Add return value checks to wrapper tests 2019-07-23 15:46:16 -07:00
Lawrence Forman
d6c1bf691c Reorder event assertions in transactions tests. 2019-07-23 15:46:16 -07:00
Amir Bandeali
d79714a3cf Fix merge conflict remnant 2019-07-23 15:46:15 -07:00
Amir Bandeali
4e2abcaefa Fix linting errors 2019-07-23 15:46:15 -07:00
Amir Bandeali
d463d4c46b Add transaction expiration tests 2019-07-23 15:46:15 -07:00
Amir Bandeali
4f818d55fa Add TransactionExecution log tests 2019-07-23 15:46:15 -07:00
Amir Bandeali
c96a81e319 Fix exchange package build 2019-07-23 15:46:15 -07:00
Lawrence Forman
95e7999e45 @0x/contracts-exchange: Update settlement test simulators to match settlement optimizations in the Exchange. 2019-07-23 15:46:15 -07:00
Lawrence Forman
2f464ee8f0 @0x/contracts-exchange: Fix critical error in fillOrder() and matchOrders() redundant transfer optimization code.
`@0x/contracts-exchange`: Rearrange `Fill` event params to make regular `emit` code work without breaking the stack.
`@0x/contracts-exchange`: Add edge case tests for redundant transfer optimizations.
2019-07-23 15:46:15 -07:00
Lawrence Forman
de896f9159 @0x/contracts-exchange: Remove TODO comment in fill_order_combinatorial_utils.ts. 2019-07-23 15:46:15 -07:00
Lawrence Forman
ee89f74afd @0x/contracts-exchange: Avoid redundant transfer in matchOrders() when maker/feeRecipient and takerAssetData/makerFeeAssetData are the same.
`@0x/conracts-exchange`: Disable combinatorial tests by default. Can be run by setting env var `TEST_ALL=1`.
2019-07-23 15:46:15 -07:00
Lawrence Forman
cd08c3e8fa @0x/contracts-exchange: Avoid redundant trasfer in fillOrder() when maker/taker is the same as feeRecipient and the assets match.
`@0x/contracts-exchange`: Swap fill order in `fillOrder()` from maker -> taker to taker -> maker first
2019-07-23 15:46:15 -07:00
Lawrence Forman
91c27ff972 @0x/contracts-exchange: Fix build error. 2019-07-23 15:46:15 -07:00
Lawrence Forman
07e3ba014c @0x/contracts-exchange: Fully incorporate ERC1155 and MultiAsset tests into the fillOrder and matchOrders test suites. 2019-07-23 15:46:15 -07:00
Lawrence Forman
816368b1fe @0x/contracts-exchange: Re-eanble all exchange tests.
`@0x/contracts-echange`: Set up 1155 and MAP proxies for `matchOrders()` tests.
2019-07-23 15:46:15 -07:00
Lawrence Forman
85ea291745 @0x/contracts-exchange: Add MultiAssetProxy, ERC1155Fungible, and ERC1155NonFungible combinatorial tests. 2019-07-23 15:46:15 -07:00
Lawrence Forman
518f351235 @0x/contracts-exchange: Correct coding convention in match_orders.ts 2019-07-23 15:44:58 -07:00
Lawrence Forman
f7f55cad43 @0x/contracts-exchange: Removed dependency on OrderValidationUtils. The tests using it didn't really warrant the full validation suite.
`@0x/contracts-test-utils`: Move all the `OrderScenario` related types into the `contracts-exchange` package because no one else is using them.
2019-07-23 15:43:23 -07:00
Lawrence Forman
53ff248176 @0x/contracts-exchange: Revert internal tests. 2019-07-23 15:43:23 -07:00
Lawrence Forman
aebb923c2d @0x/contracts-exchange: Major rework of fill_order_combinatorial_utils.
`@0x/contracts-exchange`: Add more arbitrary fee token tests.
`@0x/contracts-exchange`: Fix broken tests.
2019-07-23 15:43:23 -07:00
Lawrence Forman
d11444b983 @0x/contracts-exchange: Fix Exchange Wrappers tests. 2019-07-23 15:26:59 -07:00
Lawrence Forman
0508a45681 @0x/contracts-echange: Fix transactions test bug with ExchangeWrapper example due to deduping. 2019-07-23 15:26:59 -07:00
Lawrence Forman
9d257497bd Ran prettier and fixed linter errors 2019-07-23 15:23:40 -07:00
Lawrence Forman
79f40b4ce0 @0x/contracts-exchange: Enable all exchange tests. 2019-07-23 15:23:40 -07:00