Lines Matching defs:parser
36 // upstream to https://github.com/joyent/http-parser for inclusion into
37 // deps/http-parser/test.c
41 const parser = new HTTPParser();
42 parser.initialize(type, {});
44 parser.headers = [];
45 parser.url = '';
47 parser[kOnHeaders] = function(headers, url) {
48 parser.headers = parser.headers.concat(headers);
49 parser.url += url;
52 parser[kOnHeadersComplete] = function() {
55 parser[kOnBody] = mustNotCall('kOnBody should not be called');
57 parser[kOnMessageComplete] = function() {
60 return parser;
83 assert.strictEqual(url || parser.url, '/hello');
86 const parser = newParser(REQUEST);
87 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
88 parser.execute(request, 0, request.length);
92 // thrown from parser.execute()
95 parser[kOnHeadersComplete] = function() {
99 parser.initialize(REQUEST, {});
102 () => { parser.execute(request, 0, request.length); },
134 const parser = newParser(RESPONSE);
135 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
136 parser[kOnBody] = mustCall(onBody);
137 parser.execute(request, 0, request.length);
155 assert.deepStrictEqual(headers || parser.headers, []);
158 const parser = newParser(RESPONSE);
159 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
160 parser.execute(request, 0, request.length);
191 assert.strictEqual(url || parser.url, '/it');
195 parser[kOnHeaders] = mustCall(onHeaders);
204 const parser = newParser(REQUEST);
205 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
206 parser[kOnBody] = mustCall(onBody);
207 parser.execute(request, 0, request.length);
229 headers || parser.headers,
233 const parser = newParser(REQUEST);
234 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
235 parser.execute(request, 0, request.length);
255 assert.strictEqual(url || parser.url, '/foo/bar/baz?quux=42#1337');
259 headers = headers || parser.headers;
268 const parser = newParser(REQUEST);
269 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
270 parser.execute(request, 0, request.length);
289 assert.strictEqual(url || parser.url, '/it');
299 const parser = newParser(REQUEST);
300 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
301 parser[kOnBody] = mustCall(onBody);
302 parser.execute(request, 0, request.length);
327 assert.strictEqual(url || parser.url, '/it');
340 const parser = newParser(REQUEST);
341 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
342 parser[kOnBody] = mustCall(onBody, body_parts.length);
343 parser.execute(request, 0, request.length);
365 assert.strictEqual(url || parser.url, '/it');
379 const parser = newParser(REQUEST);
380 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
381 parser[kOnBody] = mustCall(onBody, body_parts.length);
382 parser.execute(request, 0, request.length);
394 parser.execute(request, 0, request.length);
424 assert.strictEqual(url || parser.url, '/helpme');
437 const parser = newParser(REQUEST);
438 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
439 parser[kOnBody] = onBody;
440 parser.execute(a, 0, a.length);
441 parser.execute(b, 0, b.length);
479 assert.strictEqual(url || parser.url, '/it');
483 headers || parser.headers,
495 const parser = newParser(REQUEST);
496 parser[kOnHeadersComplete] = mustCall(onHeadersComplete);
497 parser[kOnBody] = onBody;
500 parser.execute(request, i, 1);
508 // Test parser reinit sequence.
552 const parser = newParser(REQUEST);
553 parser[kOnHeadersComplete] = onHeadersComplete1;
554 parser[kOnBody] = expectBody('ping');
555 parser.execute(req1, 0, req1.length);
557 parser.initialize(REQUEST, req2);
558 parser[kOnBody] = expectBody('pong');
559 parser[kOnHeadersComplete] = onHeadersComplete2;
560 parser.execute(req2, 0, req2.length);
563 // Test parser 'this' safety
568 const parser = newParser(REQUEST);
569 const notparser = { execute: parser.execute };