From 36ed67749f4f1adce5ee8e8959feea313d066ceb Mon Sep 17 00:00:00 2001 From: decanus Date: Sun, 25 Mar 2018 17:58:33 +0200 Subject: [PATCH] started writing a test forwarder --- contracts/Forwarders/Forwarder.sol | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 contracts/Forwarders/Forwarder.sol diff --git a/contracts/Forwarders/Forwarder.sol b/contracts/Forwarders/Forwarder.sol new file mode 100644 index 0000000..51f7b86 --- /dev/null +++ b/contracts/Forwarders/Forwarder.sol @@ -0,0 +1,22 @@ +pragma solidity ^0.4.18; + +import "./../ExchangeInterface.sol"; +import "./../Libraries/OrderLibrary.sol"; + +contract Forwarder { + + ExchangeInterface public exchange; + + function Forwarder(ExchangeInterface _exchange) { + require(address(_exchange) != 0x0); + exchange = _exchange; + } + + function trade(address[3] addresses, uint[4] values, uint fillAmount, bytes signature) external { + OrderLibrary.Order memory order = OrderLibrary.createOrder(addresses, values); + + exchange.vault().deposit(order.tokenGet, order.amountGet); + exchange.trade(addresses, values, fillAmount, signature); + exchange.vault().withdraw(order.tokenGive, order.amountGive); + } +}