From eb6637afd526ef246d1272a1d6c12d4c5f429c20 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Wed, 21 Aug 2019 08:18:36 -0700 Subject: [PATCH] Add public version of _assertExecutableTransaction --- .../exchange/contracts/src/MixinTransactions.sol | 1 + .../exchange/contracts/test/TestTransactions.sol | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/contracts/exchange/contracts/src/MixinTransactions.sol b/contracts/exchange/contracts/src/MixinTransactions.sol index 2228b1517b..28b00948b7 100644 --- a/contracts/exchange/contracts/src/MixinTransactions.sol +++ b/contracts/exchange/contracts/src/MixinTransactions.sol @@ -129,6 +129,7 @@ contract MixinTransactions is bytes32 transactionHash ) internal + view { // Check transaction is not expired // solhint-disable-next-line not-rely-on-time diff --git a/contracts/exchange/contracts/test/TestTransactions.sol b/contracts/exchange/contracts/test/TestTransactions.sol index af0bb93e73..c0637ddfbb 100644 --- a/contracts/exchange/contracts/test/TestTransactions.sol +++ b/contracts/exchange/contracts/test/TestTransactions.sol @@ -53,6 +53,20 @@ contract TestTransactions is return _getCurrentContextAddress(); } + function assertExecutableTransaction( + LibZeroExTransaction.ZeroExTransaction memory transaction, + bytes memory signature + ) + public + view + { + return _assertExecutableTransaction( + transaction, + signature, + transaction.getTypedDataHash(EIP712_EXCHANGE_DOMAIN_HASH) + ); + } + // This function will execute arbitrary calldata via a delegatecall. This is highly unsafe to use in production, and this // is only meant to be used during testing. function executable(