31 lines
1.2 KiB
JavaScript
31 lines
1.2 KiB
JavaScript
'use strict';
|
|
|
|
var bytes = require('../src/bytes.js');
|
|
var raw = require('../src/codecs/raw.js');
|
|
var json = require('../src/codecs/json.js');
|
|
var chai = require('chai');
|
|
var chaiAsPromised = require('chai-as-promised');
|
|
|
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
|
|
var chai__default = /*#__PURE__*/_interopDefaultLegacy(chai);
|
|
var chaiAsPromised__default = /*#__PURE__*/_interopDefaultLegacy(chaiAsPromised);
|
|
|
|
chai__default["default"].use(chaiAsPromised__default["default"]);
|
|
const {assert} = chai__default["default"];
|
|
describe('multicodec', () => {
|
|
it('encode/decode raw', () => {
|
|
const buff = raw.encode(bytes.fromString('test'));
|
|
assert.deepStrictEqual(buff, bytes.fromString('test'));
|
|
assert.deepStrictEqual(raw.decode(buff), bytes.fromString('test'));
|
|
});
|
|
it('encode/decode json', () => {
|
|
const buff = json.encode({ hello: 'world' });
|
|
assert.deepStrictEqual(buff, bytes.fromString(JSON.stringify({ hello: 'world' })));
|
|
assert.deepStrictEqual(json.decode(buff), { hello: 'world' });
|
|
});
|
|
it('raw cannot encode string', async () => {
|
|
assert.throws(() => raw.encode('asdf'), 'Unknown type, must be binary type');
|
|
});
|
|
});
|