diff -r 000000000000 -r 6474c204b198 testing/xpcshell/node-spdy/test/fixtures/frames.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testing/xpcshell/node-spdy/test/fixtures/frames.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,38 @@ +var spdy = require('../../lib/spdy'), + Buffer = require('buffer').Buffer; + +exports.createSynStream = function(host, url, callback) { + var deflate = spdy.utils.createDeflate(), + chunks = [], + chunksTotal = 0, + syn_stream; + + deflate.on('data', function(chunk) { + chunks.push(chunk); + chunksTotal += chunk.length; + }); + deflate.write(new Buffer([ 0x00, 0x02, 0x00, 0x04 ])); + deflate.write('host'); + deflate.write(new Buffer([ 0x00, host.length ])); + deflate.write(host); + deflate.write(new Buffer([ 0x00, 0x03 ])); + deflate.write('url'); + deflate.write(new Buffer([ 0x00, url.length ])); + deflate.write(url); + + deflate.flush(function() { + syn_stream = new Buffer(18 + chunksTotal); + syn_stream.writeUInt32BE(0x80020001, 0); + syn_stream.writeUInt32BE(chunksTotal + 8, 4); + syn_stream.writeUInt32BE(0x00000001, 8); + syn_stream.writeUInt32BE(0x00000000, 12); + + var offset = 18; + chunks.forEach(function(chunk) { + chunk.copy(syn_stream, offset); + offset += chunk.length; + }); + + callback(syn_stream); + }); +};