aboutsummaryrefslogtreecommitdiff
path: root/node_modules/sax/test/utf8-split.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/sax/test/utf8-split.js')
-rw-r--r--node_modules/sax/test/utf8-split.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/node_modules/sax/test/utf8-split.js b/node_modules/sax/test/utf8-split.js
new file mode 100644
index 000000000..e22bc1004
--- /dev/null
+++ b/node_modules/sax/test/utf8-split.js
@@ -0,0 +1,32 @@
+var assert = require('assert')
+var saxStream = require('../lib/sax').createStream()
+
+var b = new Buffer('误')
+
+saxStream.on('text', function(text) {
+ assert.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) {
+ assert.equal(text, '�')
+});
+
+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.end();