Revision 22d3b77cabff3ff71f25594ee2376cd0975fce4d authored by Luigi Pinca on 06 December 2016, 10:32:10 UTC, committed by Luigi Pinca on 06 December 2016, 10:44:46 UTC
1 parent 8303c5c
Validation.test.js
'use strict';
const assert = require('assert');
const validation = require('../lib/Validation');
const Validation = validation.Validation;
describe('Validation', function () {
describe('isValidUTF8', function () {
it('should return true for a valid utf8 string', function () {
const validBuffer = Buffer.from(
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. ' +
'Quisque gravida mattis rhoncus. Donec iaculis, metus ' +
'quis varius accumsan, erat mauris condimentum diam, et ' +
'egestas erat enim ut ligula. Praesent sollicitudin tellus ' +
'eget dolor euismod euismod. Nullam ac augue nec neque ' +
'varius luctus. Curabitur elit mi, consequat ultricies ' +
'adipiscing mollis, scelerisque in erat. Phasellus facilisis ' +
' fermentum ullamcorper. Nulla et sem eu arcu pharetra ' +
'pellentesque. Praesent consectetur tempor justo, vel ' +
'iaculis dui ullamcorper sit amet. Integer tristique viverra ' +
'ullamcorper. Vivamus laoreet, nulla eget suscipit eleifend, ' +
'lacus lectus feugiat libero, non fermentum erat nisi at ' +
'risus. Lorem ipsum dolor sit amet, consectetur adipiscing ' +
'elit. Ut pulvinar dignissim tellus, eu dignissim lorem ' +
'vulputate quis. Morbi ut pulvinar augue.'
);
assert.ok(Validation.isValidUTF8(validBuffer));
});
it('should return false for an erroneous string', function () {
const invalidBuffer = Buffer.from([
0xce, 0xba, 0xe1, 0xbd, 0xb9, 0xcf, 0x83,
0xce, 0xbc, 0xce, 0xb5, 0xed, 0xa0, 0x80,
0x65, 0x64, 0x69, 0x74, 0x65, 0x64
]);
assert.ok(!Validation.isValidUTF8(invalidBuffer));
});
it('should return true for valid cases from the autobahn test suite', function () {
assert.ok(Validation.isValidUTF8(Buffer.from([0xf0, 0x90, 0x80, 0x80])));
assert.ok(Validation.isValidUTF8(Buffer.from('\xf0\x90\x80\x80')));
});
it('should return false for erroneous autobahn strings', function () {
assert.ok(!Validation.isValidUTF8(Buffer.from([0xce, 0xba, 0xe1, 0xbd])));
});
});
});
Computing file changes ...