コード例 #1
0
    it("SlowBuffer is supported", function() {
        var SlowBuffer = require('buffer').SlowBuffer;
        var buf = new SlowBuffer(10);
        
        assert.equal(buf.write("hello world", "windows-1251"), 10);
        assert.equal(buf.toString(), "hello worl");

        assert.equal(buf.write("hello world", 2, "windows-1251"), 8);
        assert.equal(buf.toString(), "hehello wo");

        assert.equal(buf.write("abcde abcde", 3, 4, "windows-1251"), 4);
        assert.equal(buf.toString(), "hehabcd wo");

        assert.equal(buf.write("活洽派洶洛泵洹洧", 1, "big5"), 9);
        assert.equal(buf.toString('big5'), "h活洽派洶�"); // TODO: the following line is more correct.
        //assert.equal(buf.toString('big5'), "h活洽派洶o");

        // TODO: Set _charsWritten.
    });
コード例 #2
0
ファイル: handlebars.js プロジェクト: kyriosli/agentk-modules
export function encode(value) {
    if (typeof value === 'string' && rEscaped.test(value)) {
        let expectedLen = value.length * 3;
        if (bufLen < expectedLen) {
            do {
                bufLen <<= 1
            } while (bufLen < expectedLen);
            buf = new SlowBuffer(bufLen);
        }
        return buf.toString('binary', 0, buf.write(value));
    }
    return value;
}
コード例 #3
0
['ucs2', 'ucs-2', 'utf16le', 'utf-16le'].forEach(function(encoding) {
  var b = new SlowBuffer(10);
  b.write('あいうえお', encoding);
  assert.equal(b.toString(encoding), 'あいうえお');
});