diff options
author | Greg Hysen <greg.hysen@gmail.com> | 2018-11-15 05:51:08 +0800 |
---|---|---|
committer | Greg Hysen <greg.hysen@gmail.com> | 2018-11-29 08:38:10 +0800 |
commit | 2d2255e9af42f6441ee620c4aa74bd1981dfe03a (patch) | |
tree | c94089561cd9fdf84600c49ca29ad8c6d8eda341 /packages/order-utils/test/abi_encoder_test.ts | |
parent | 93e967c3b356f0081254946bbf8d6875fc791a09 (diff) | |
download | dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.tar dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.tar.gz dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.tar.bz2 dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.tar.lz dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.tar.xz dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.tar.zst dexon-sol-tools-2d2255e9af42f6441ee620c4aa74bd1981dfe03a.zip |
Cleaner interface for encoding/decoding. Moved encode/decode parameters into a struct.
Diffstat (limited to 'packages/order-utils/test/abi_encoder_test.ts')
-rw-r--r-- | packages/order-utils/test/abi_encoder_test.ts | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/packages/order-utils/test/abi_encoder_test.ts b/packages/order-utils/test/abi_encoder_test.ts index 78e28015d..52b6bc067 100644 --- a/packages/order-utils/test/abi_encoder_test.ts +++ b/packages/order-utils/test/abi_encoder_test.ts @@ -27,7 +27,7 @@ const expect = chai.expect; describe.only('ABI Encoder', () => { describe.only('ABI Tests at Method Level', () => { - it('Optimizer #1', async () => { + it('Should reuse duplicated strings in string array', async () => { const method = new AbiEncoder.Method(AbiSamples.stringAbi); const strings = [ "Test String", @@ -37,7 +37,7 @@ describe.only('ABI Encoder', () => { ]; const args = [strings]; - const optimizedCalldata = method.encode(args, new Calldata(), true, true); + const optimizedCalldata = method.encode(args, { optimize: true, annotate: true }); console.log(optimizedCalldata); }); @@ -53,10 +53,10 @@ describe.only('ABI Encoder', () => { const args = [stringArray, string]; - const TEST = method.encode(args, new Calldata(), true, true); + const TEST = method.encode(args, { optimize: true, annotate: true }); console.log(TEST); - const optimizedCalldata = method.encode(args, new Calldata(), false, true); + const optimizedCalldata = method.encode(args, { optimize: true }); console.log(`OPTIMIZED CALLDATA == '${optimizedCalldata}'`); const decodedArgs = method.decode(optimizedCalldata); @@ -79,10 +79,10 @@ describe.only('ABI Encoder', () => { const args = [uint8Array, uintTupleArray]; - const TEST = method.encode(args, new Calldata(), true, true); + const TEST = method.encode(args, { optimize: true, annotate: true }); console.log('*'.repeat(50), ' ENCODED DATA ', TEST); - const optimizedCalldata = method.encode(args, new Calldata(), false, true); + const optimizedCalldata = method.encode(args, { optimize: true }); console.log(`OPTIMIZED CALLDATA == '${optimizedCalldata}'`); const decodedArgs = method.decode(optimizedCalldata); @@ -92,7 +92,7 @@ describe.only('ABI Encoder', () => { expect(decodedArgsJson).to.be.equal(argsJson); }); - it.only('Optimizer #4 (Expect no optimization)', async () => { + it('Optimizer #4 (Expect no optimization)', async () => { const method = new AbiEncoder.Method(AbiSamples.optimizerAbi4); const uint8Array = [ new BigNumber(100), @@ -104,10 +104,10 @@ describe.only('ABI Encoder', () => { const args = [uint8Array, uintTupleArray]; - const TEST = method.encode(args, new Calldata(), true, true); + const TEST = method.encode(args, { optimize: true, annotate: true }); console.log('*'.repeat(50), ' ENCODED DATA ', TEST); - const optimizedCalldata = method.encode(args, new Calldata(), false, true); + const optimizedCalldata = method.encode(args, { optimize: true }); console.log(`OPTIMIZED CALLDATA == '${optimizedCalldata}'`); const decodedArgs = method.decode(optimizedCalldata); @@ -179,12 +179,9 @@ describe.only('ABI Encoder', () => { someArrayOfTuplesWithDynamicTypes: someArrayOfTuplesWithDynamicTypes }; - const calldata = method.encode(args, new Calldata(), true); + const calldata = method.encode(args); console.log(calldata); - - throw new Error(`done`); - console.log('*'.repeat(40)); console.log(JSON.stringify(args)); console.log(method.getSignature()); @@ -195,7 +192,7 @@ describe.only('ABI Encoder', () => { // Test decoding const expectedDecodedValueJson = JSON.stringify(args); - const decodedValue = method.decode(calldata, true); + const decodedValue = method.decode(calldata, { structsAsObjects: true }); const decodedValueJson = JSON.stringify(decodedValue); console.log(`DECODED`, '*'.repeat(200), '\n', decodedValueJson); expect(decodedValueJson).to.be.equal(expectedDecodedValueJson); |