mirror of
https://github.com/Instadapp/Swap-Aggregator-Subgraph.git
synced 2024-07-29 21:57:12 +00:00
50 lines
1.0 KiB
JavaScript
50 lines
1.0 KiB
JavaScript
var tape = require('tape')
|
|
|
|
var svi = require('./')
|
|
|
|
function encodeDecode (t, v, bytes) {
|
|
var b = svi.encode(v)
|
|
t.equal(b.length, bytes)
|
|
t.equal(svi.decode(b), v)
|
|
t.equal(svi.encode.bytes, bytes)
|
|
t.equal(svi.decode.bytes, bytes)
|
|
}
|
|
|
|
tape('single byte', function (t) {
|
|
encodeDecode(t, 1, 1)
|
|
encodeDecode(t, -1, 1)
|
|
encodeDecode(t, 63, 1)
|
|
encodeDecode(t, -64, 1)
|
|
t.end()
|
|
})
|
|
tape('double byte', function (t) {
|
|
encodeDecode(t, 64, 2)
|
|
encodeDecode(t, -65, 2)
|
|
encodeDecode(t, 127, 2)
|
|
encodeDecode(t, -128, 2)
|
|
encodeDecode(t, 128, 2)
|
|
encodeDecode(t, -129, 2)
|
|
encodeDecode(t, 255, 2)
|
|
encodeDecode(t, -256, 2)
|
|
t.end()
|
|
})
|
|
tape('tripple', function (t) {
|
|
encodeDecode(t, 0x4000, 3)
|
|
encodeDecode(t, -0x4001, 3)
|
|
encodeDecode(t, 1048574, 3)
|
|
encodeDecode(t, -1048575, 3)
|
|
t.end()
|
|
})
|
|
|
|
tape('quad', function (t) {
|
|
encodeDecode(t, 134217726, 4)
|
|
encodeDecode(t, -134217727, 4)
|
|
t.end()
|
|
})
|
|
|
|
tape('large int', function (t) {
|
|
encodeDecode(t, 0x80000000000, 7)
|
|
encodeDecode(t, -0x80000000000, 7)
|
|
t.end()
|
|
})
|