You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
typesetting/pitfall/pdfkit/node_modules/buffer/test/utf16.js

33 lines
758 B
JavaScript

var B = require('../').Buffer
var test = require('tape')
test('detect utf16 surrogate pairs', function(t) {
var text = '\uD83D\uDE38' + '\uD83D\uDCAD' + '\uD83D\uDC4D'
var buf = new B(text)
t.equal(text, buf.toString())
t.end()
})
test('throw on orphaned utf16 surrogate lead code point', function(t) {
var text = '\uD83D\uDE38' + '\uD83D' + '\uD83D\uDC4D'
var err
try {
var buf = new B(text)
} catch (e) {
err = e
}
t.equal(err instanceof URIError, true)
t.end()
})
test('throw on orphaned utf16 surrogate trail code point', function(t) {
var text = '\uD83D\uDE38' + '\uDCAD' + '\uD83D\uDC4D'
var err
try {
var buf = new B(text)
} catch (e) {
err = e
}
t.equal(err instanceof URIError, true)
t.end()
})