Skip to content
This repository was archived by the owner on Mar 18, 2019. It is now read-only.

Commit 0f5fa6a

Browse files
committed
fix encode ring
1 parent 485cc9c commit 0f5fa6a

3 files changed

Lines changed: 50 additions & 2 deletions

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "loopring.js",
3-
"version": "2.0.7",
3+
"version": "2.0.8",
44
"description": "Loopring javascript library",
55
"scripts": {
66
"lint": "eslint . --fix",

src/ethereum/contracts/Contracts.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ const encodeSubmitRing = (orders, feeRecipient, feeSelections) =>
4242
{
4343
return total * amount;
4444
});
45-
const rate = Math.pow(tem, orders.length);
45+
const rate = Math.pow(tem, 1 / orders.length);
4646
const addressList = orders.map(order => [order.owner, order.tokenS, order.walletAddress, order.authAddr]);
4747
const uintArgsList = orders.map(order => [order.amountS, order.amountB, order.validSince, order.validUntil, order.lrcFee, toHex(toBig(toFixed(toBig(order.amountS).times(toBig(rate)))))]);
4848
const uint8ArgsList = orders.map(order => [order.marginSplitPercentage]);

test/test.js

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
const Contracts = require('../lib/ethereum/contracts/Contracts').default;
2+
const fm = require('../lib/common/formatter');
3+
4+
const order1 = {
5+
'delegateAddress': '0x17233e07c67d086464fD408148c3ABB56245FA64',
6+
'protocol': '0x8d8812b72d1e4ffCeC158D25f56748b7d67c1e78',
7+
'owner': '0x56447C02767BA621f103C0f3DbF564dbcacF284b',
8+
'tokenB': '0xef68e7c694f40c8202821edf525de3782458639f',
9+
'tokenS': '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
10+
'amountB': '0x97e81a3e7c517c000',
11+
'amountS': '0x9184e72a000',
12+
'lrcFee': '0x0',
13+
'validSince': '0x5bd34a12',
14+
'validUntil': '0x5bd49b92',
15+
'marginSplitPercentage': 0,
16+
'buyNoMoreThanAmountB': true,
17+
'walletAddress': '0x56447c02767ba621f103c0f3dbf564dbcacf284b',
18+
'authAddr': '0x688ed736c2d388264fb08f81b466d2e46ec0bf35',
19+
'authPrivateKey': '9508518b4b6d6ca20ef967ab5b26ff44865899888c23ec6cb19453a7dee589a6',
20+
'orderType': 'p2p_order',
21+
'r': '0x680bf9e74c9986bc31b1c1aece669199b695a79826034236e243e342d4dd35ac',
22+
's': '0x34a8dc840e5f25bfb3bb6e39aa7ce61ea0fd4bad2c33945cae70693a120982be',
23+
'v': 28,
24+
'powNonce': 100
25+
};
26+
const order2 = {
27+
'protocol': '0x8d8812b72d1e4ffCeC158D25f56748b7d67c1e78',
28+
'delegateAddress': '0x17233e07c67d086464fD408148c3ABB56245FA64',
29+
'address': '0xb94065482Ad64d4c2b9252358D746B39e820A582',
30+
'hash': '0x390809f080bfd439f66f762efa15276fee9d7377c8f8e4001c7ffb443040866d',
31+
'tokenS': '0xef68e7c694f40c8202821edf525de3782458639f',
32+
'tokenB': '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
33+
'amountS': '0x97e81a3e7c517c000',
34+
'amountB': '0x9184e72a000',
35+
'validSince': '0x5bd34823',
36+
'validUntil': '0x5bfc26a3',
37+
'lrcFee': '0x0',
38+
'buyNoMoreThanAmountB': true,
39+
'marginSplitPercentage': 0,
40+
'v': '0x1c',
41+
'r': '0x5db84ed535187149c8801436fc0e89759d2a0e960d0bb37eca79ae2a6722e353',
42+
's': '0x38cb8578005fea7edd257e7a6a9ea5987ccd63a8c0e558a931828e4eb0624544',
43+
'walletAddress': '0x56447C02767BA621f103C0f3DbF564dbcacF284b',
44+
'authAddr': '0xbBE040a613154e8d58DA52B975Cd324A8430e788',
45+
'authPrivateKey': '45447993b644a00d7d6aaa4351482d29c4c4a0909704169df0262681281ec443',
46+
'owner': '0xb94065482Ad64d4c2b9252358D746B39e820A582'
47+
};
48+
console.log(Contracts.LoopringProtocol.encodeSubmitRing([order1, order2], '0x5552dcfba48c94544beaaf26470df9898e050ac2'));

0 commit comments

Comments
 (0)