Swap-Aggregator-Subgraph/node_modules/protons/test/basic.js
2022-07-03 07:27:35 +05:30

108 lines
1.7 KiB
JavaScript

'use strict'
var tape = require('tape')
var protobufNpm = require('protocol-buffers')
var protobuf = require('../')
var proto = require('./test.proto')
var Basic = protobuf(proto).Basic
var BasicNpm = protobufNpm(proto).Basic
tape('basic encode', function (t) {
var first = {
num: 1,
payload: Buffer.from('lol')
}
var b1 = Basic.encode(first)
var bn1 = BasicNpm.encode(first)
t.same(b1, bn1)
var b2 = Basic.encode({
num: 1,
payload: Buffer.from('lol'),
meeeh: 42
})
var b3 = Basic.encode({
num: 1,
payload: 'lol',
meeeh: 42
})
t.same(b2, b1)
t.same(b3, b1)
t.end()
})
tape('basic encode + decode', function (t) {
var b1 = Basic.encode({
num: 1,
payload: Buffer.from('lol')
})
var o1 = Basic.decode(b1)
t.same(o1.num, 1)
t.same(o1.payload, Buffer.from('lol'))
var b2 = Basic.encode({
num: 1,
payload: Buffer.from('lol'),
meeeh: 42
})
var o2 = Basic.decode(b2)
t.same(o2, o1)
t.end()
})
tape('basic accessors', function (t) {
var b1 = Basic.encode({
num: 1,
payload: Buffer.from('lol')
})
var o1 = Basic.decode(b1)
t.ok(o1.hasNum)
t.ok(o1.hasNum())
t.ok(o1.setNum)
o1.setNum(5)
t.ok(o1.getNum)
t.same(o1.getNum(), 5)
t.ok(o1.clearNum)
o1.clearNum()
t.same(o1.getNum(), undefined)
const methods = Object.keys(o1)
t.notOk(methods.includes('getNum'))
t.notOk(methods.includes('setNum'))
t.notOk(methods.includes('hasNum'))
t.notOk(methods.includes('clearNum'))
t.end()
})
tape('basic encode + decode floats', function (t) {
var b1 = Basic.encode({
num: 1.1,
payload: Buffer.from('lol')
})
var o1 = Basic.decode(b1)
t.same(o1.num, 1.1)
t.same(o1.payload, Buffer.from('lol'))
t.end()
})