1
0
mirror of https://github.com/laurent22/joplin.git synced 2024-12-24 10:27:10 +02:00
joplin/packages/fork-sax/test/utf8-split.js

35 lines
1009 B
JavaScript
Raw Normal View History

2020-11-05 18:58:23 +02:00
var tap = require('tap')
var saxStream = require('../lib/sax').createStream()
var b = new Buffer('误')
saxStream.on('text', function (text) {
tap.equal(text, b.toString())
})
saxStream.write(new Buffer('<test><a>'))
saxStream.write(b.slice(0, 1))
saxStream.write(b.slice(1))
saxStream.write(new Buffer('</a><b>'))
saxStream.write(b.slice(0, 2))
saxStream.write(b.slice(2))
saxStream.write(new Buffer('</b><c>'))
saxStream.write(b)
saxStream.write(new Buffer('</c>'))
saxStream.write(Buffer.concat([new Buffer('<d>'), b.slice(0, 1)]))
saxStream.end(Buffer.concat([b.slice(1), new Buffer('</d></test>')]))
var saxStream2 = require('../lib/sax').createStream()
saxStream2.on('text', function (text) {
tap.equal(text, '�')
})
saxStream2.write(new Buffer('<root>'))
saxStream2.write(new Buffer('<e>'))
saxStream2.write(new Buffer([0xC0]))
saxStream2.write(new Buffer('</e>'))
saxStream2.write(Buffer.concat([new Buffer('<f>'), b.slice(0, 1)]))
saxStream2.write(new Buffer('</root>'))
saxStream2.end()