| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | 
							- var fs             = require('fs')
 
-   , clarinet       = require('../clarinet.js')
 
-   , chunks         = clarinet.createStream()
 
-   , assert         = require('assert')
 
-   ;
 
- var han_value = '我spl我it我';
 
- var han_obj = '{"thing":"' + han_value + '"}';
 
- var han_test_obj = '';
 
- var han_buffer_first = new Buffer([0xe6, 0x88]);
 
- var han_buffer_second = new Buffer([0x91, 0x73, 0x70, 0x6c, 0xe6, 0x88, 0x91, 0x69, 0x74, 0xe6, 0x88]);
 
- var han_buffer_third = new Buffer([0x91]);
 
- var han_buffer_full = new Buffer([
 
-   0xe6, 0x88, 0x91,
 
-   0x73, 0x70, 0x6c,
 
-   0xe6, 0x88, 0x91,
 
-   0x69, 0x74,
 
-   0xe6, 0x88, 0x91
 
- ]);
 
- describe('clarinet', function(){
 
-   describe('#utf8-chunks', function() {
 
-     it('should be able to parse utf8 characters split across data chunks', function (done){
 
-       chunks.on("error", function (err) { done(err); });
 
-       chunks.on("data", function (data) {
 
-         han_test_obj += data;
 
-       });
 
-       chunks.on("end", function () {
 
-         assert.equal(han_obj, han_test_obj);
 
-         done();
 
-       });
 
-       chunks.write('{"thing":"');
 
-       chunks.write(han_buffer_first);
 
-       chunks.write(han_buffer_second);
 
-       chunks.write(han_buffer_third);
 
-       //chunks.write(han_buffer_full);
 
-       chunks.write('"}');
 
-       chunks.end();
 
-     });
 
-   });
 
- });
 
 
  |