Best JavaScript code snippet using qawolf
http.js
Source:http.js
...23 delete process.env.no_proxy;24 }25 });26 it('should respect the timeout property', function (done) {27 server = http.createServer(function (req, res) {28 setTimeout(function () {29 res.end();30 }, 1000);31 }).listen(4444, function () {32 var success = false, failure = false;33 var error;34 axios.get('http://localhost:4444/', {35 timeout: 25036 }).then(function (res) {37 success = true;38 }).catch(function (err) {39 error = err;40 failure = true;41 });42 setTimeout(function () {43 assert.equal(success, false, 'request should not succeed');44 assert.equal(failure, true, 'request should fail');45 assert.equal(error.code, 'ECONNABORTED');46 assert.equal(error.message, 'timeout of 250ms exceeded');47 done();48 }, 300);49 });50 });51 it('should allow passing JSON', function (done) {52 var data = {53 firstName: 'Fred',54 lastName: 'Flintstone',55 emailAddr: 'fred@example.com'56 };57 server = http.createServer(function (req, res) {58 res.setHeader('Content-Type', 'application/json;charset=utf-8');59 res.end(JSON.stringify(data));60 }).listen(4444, function () {61 axios.get('http://localhost:4444/').then(function (res) {62 assert.deepEqual(res.data, data);63 done();64 });65 });66 });67 it('should redirect', function (done) {68 var str = 'test response';69 server = http.createServer(function (req, res) {70 var parsed = url.parse(req.url);71 if (parsed.pathname === '/one') {72 res.setHeader('Location', '/two');73 res.statusCode = 302;74 res.end();75 } else {76 res.end(str);77 }78 }).listen(4444, function () {79 axios.get('http://localhost:4444/one').then(function (res) {80 assert.equal(res.data, str);81 assert.equal(res.request.path, '/two');82 done();83 });84 });85 });86 it('should not redirect', function (done) {87 server = http.createServer(function (req, res) {88 res.setHeader('Location', '/foo');89 res.statusCode = 302;90 res.end();91 }).listen(4444, function () {92 axios.get('http://localhost:4444/', {93 maxRedirects: 0,94 validateStatus: function () {95 return true;96 }97 }).then(function (res) {98 assert.equal(res.status, 302);99 assert.equal(res.headers['location'], '/foo');100 done();101 });102 });103 });104 it('should support max redirects', function (done) {105 var i = 1;106 server = http.createServer(function (req, res) {107 res.setHeader('Location', '/' + i);108 res.statusCode = 302;109 res.end();110 i++;111 }).listen(4444, function () {112 axios.get('http://localhost:4444/', {113 maxRedirects: 3114 }).catch(function (error) {115 done();116 });117 });118 });119 it('should preserve the HTTP verb on redirect', function (done) {120 server = http.createServer(function (req, res) {121 if (req.method.toLowerCase() !== "head") {122 res.statusCode = 400;123 res.end();124 return;125 }126 var parsed = url.parse(req.url);127 if (parsed.pathname === '/one') {128 res.setHeader('Location', '/two');129 res.statusCode = 302;130 res.end();131 } else {132 res.end();133 }134 }).listen(4444, function () {135 axios.head('http://localhost:4444/one').then(function (res) {136 assert.equal(res.status, 200);137 done();138 }).catch(function (err) {139 done(err);140 });141 });142 });143 it('should support transparent gunzip', function (done) {144 var data = {145 firstName: 'Fred',146 lastName: 'Flintstone',147 emailAddr: 'fred@example.com'148 };149 zlib.gzip(JSON.stringify(data), function (err, zipped) {150 server = http.createServer(function (req, res) {151 res.setHeader('Content-Type', 'application/json;charset=utf-8');152 res.setHeader('Content-Encoding', 'gzip');153 res.end(zipped);154 }).listen(4444, function () {155 axios.get('http://localhost:4444/').then(function (res) {156 assert.deepEqual(res.data, data);157 done();158 });159 });160 });161 });162 it('should support gunzip error handling', function (done) {163 server = http.createServer(function (req, res) {164 res.setHeader('Content-Type', 'application/json;charset=utf-8');165 res.setHeader('Content-Encoding', 'gzip');166 res.end('invalid response');167 }).listen(4444, function () {168 axios.get('http://localhost:4444/').catch(function (error) {169 done();170 });171 });172 });173 it('should support UTF8', function (done) {174 var str = Array(100000).join('ж');175 server = http.createServer(function (req, res) {176 res.setHeader('Content-Type', 'text/html; charset=UTF-8');177 res.end(str);178 }).listen(4444, function () {179 axios.get('http://localhost:4444/').then(function (res) {180 assert.equal(res.data, str);181 done();182 });183 });184 });185 it('should support basic auth', function (done) {186 server = http.createServer(function (req, res) {187 res.end(req.headers.authorization);188 }).listen(4444, function () {189 var user = 'foo';190 var headers = { Authorization: 'Bearer 1234' };191 axios.get('http://' + user + '@localhost:4444/', { headers: headers }).then(function (res) {192 var base64 = Buffer.from(user + ':', 'utf8').toString('base64');193 assert.equal(res.data, 'Basic ' + base64);194 done();195 });196 });197 });198 it('should support basic auth with a header', function (done) {199 server = http.createServer(function (req, res) {200 res.end(req.headers.authorization);201 }).listen(4444, function () {202 var auth = { username: 'foo', password: 'bar' };203 var headers = { Authorization: 'Bearer 1234' };204 axios.get('http://localhost:4444/', { auth: auth, headers: headers }).then(function (res) {205 var base64 = Buffer.from('foo:bar', 'utf8').toString('base64');206 assert.equal(res.data, 'Basic ' + base64);207 done();208 });209 });210 });211 it('should support max content length', function (done) {212 var str = Array(100000).join('ж');213 server = http.createServer(function (req, res) {214 res.setHeader('Content-Type', 'text/html; charset=UTF-8');215 res.end(str);216 }).listen(4444, function () {217 var success = false, failure = false, error;218 axios.get('http://localhost:4444/', {219 maxContentLength: 2000220 }).then(function (res) {221 success = true;222 }).catch(function (err) {223 error = err;224 failure = true;225 });226 setTimeout(function () {227 assert.equal(success, false, 'request should not succeed');228 assert.equal(failure, true, 'request should fail');229 assert.equal(error.message, 'maxContentLength size of 2000 exceeded');230 done();231 }, 100);232 });233 });234 it.skip('should support sockets', function (done) {235 server = net.createServer(function (socket) {236 socket.on('data', function () {237 socket.end('HTTP/1.1 200 OK\r\n\r\n');238 });239 }).listen('./test.sock', function () {240 axios({241 socketPath: './test.sock',242 url: '/'243 })244 .then(function (resp) {245 assert.equal(resp.status, 200);246 assert.equal(resp.statusText, 'OK');247 done();248 })249 .catch(function (error) {250 assert.ifError(error);251 done();252 });253 });254 });255 it('should support streams', function (done) {256 server = http.createServer(function (req, res) {257 req.pipe(res);258 }).listen(4444, function () {259 axios.post('http://localhost:4444/',260 fs.createReadStream(__filename), {261 responseType: 'stream'262 }).then(function (res) {263 var stream = res.data;264 var string = '';265 stream.on('data', function (chunk) {266 string += chunk.toString('utf8');267 });268 stream.on('end', function () {269 assert.equal(string, fs.readFileSync(__filename, 'utf8'));270 done();271 });272 });273 });274 });275 it('should pass errors for a failed stream', function (done) {276 server = http.createServer(function (req, res) {277 req.pipe(res);278 }).listen(4444, function () {279 axios.post('http://localhost:4444/',280 fs.createReadStream('/does/not/exist')281 ).then(function (res) {282 assert.fail();283 }).catch(function (err) {284 assert.equal(err.message, 'ENOENT: no such file or directory, open \'/does/not/exist\'');285 done();286 });287 });288 });289 it('should support buffers', function (done) {290 var buf = Buffer.alloc(1024, 'x'); // Unsafe buffer < Buffer.poolSize (8192 bytes)291 server = http.createServer(function (req, res) {292 assert.equal(req.headers['content-length'], buf.length.toString());293 req.pipe(res);294 }).listen(4444, function () {295 axios.post('http://localhost:4444/',296 buf, {297 responseType: 'stream'298 }).then(function (res) {299 var stream = res.data;300 var string = '';301 stream.on('data', function (chunk) {302 string += chunk.toString('utf8');303 });304 stream.on('end', function () {305 assert.equal(string, buf.toString());306 done();307 });308 });309 });310 });311 it('should support HTTP proxies', function (done) {312 server = http.createServer(function (req, res) {313 res.setHeader('Content-Type', 'text/html; charset=UTF-8');314 res.end('12345');315 }).listen(4444, function () {316 proxy = http.createServer(function (request, response) {317 var parsed = url.parse(request.url);318 var opts = {319 host: parsed.hostname,320 port: parsed.port,321 path: parsed.path322 };323 http.get(opts, function (res) {324 var body = '';325 res.on('data', function (data) {326 body += data;327 });328 res.on('end', function () {329 response.setHeader('Content-Type', 'text/html; charset=UTF-8');330 response.end(body + '6789');331 });332 });333 }).listen(4000, function () {334 axios.get('http://localhost:4444/', {335 proxy: {336 host: 'localhost',337 port: 4000338 }339 }).then(function (res) {340 assert.equal(res.data, '123456789', 'should pass through proxy');341 done();342 });343 });344 });345 });346 it('should not pass through disabled proxy', function (done) {347 // set the env variable348 process.env.http_proxy = 'http://does-not-exists.example.com:4242/';349 server = http.createServer(function (req, res) {350 res.setHeader('Content-Type', 'text/html; charset=UTF-8');351 res.end('123456789');352 }).listen(4444, function () {353 axios.get('http://localhost:4444/', {354 proxy: false355 }).then(function (res) {356 assert.equal(res.data, '123456789', 'should not pass through proxy');357 done();358 });359 });360 });361 it('should support proxy set via env var', function (done) {362 server = http.createServer(function (req, res) {363 res.setHeader('Content-Type', 'text/html; charset=UTF-8');364 res.end('4567');365 }).listen(4444, function () {366 proxy = http.createServer(function (request, response) {367 var parsed = url.parse(request.url);368 var opts = {369 host: parsed.hostname,370 port: parsed.port,371 path: parsed.path372 };373 http.get(opts, function (res) {374 var body = '';375 res.on('data', function (data) {376 body += data;377 });378 res.on('end', function () {379 response.setHeader('Content-Type', 'text/html; charset=UTF-8');380 response.end(body + '1234');381 });382 });383 }).listen(4000, function () {384 // set the env variable385 process.env.http_proxy = 'http://localhost:4000/';386 axios.get('http://localhost:4444/').then(function (res) {387 assert.equal(res.data, '45671234', 'should use proxy set by process.env.http_proxy');388 done();389 });390 });391 });392 });393 it('should not use proxy for domains in no_proxy', function (done) {394 server = http.createServer(function (req, res) {395 res.setHeader('Content-Type', 'text/html; charset=UTF-8');396 res.end('4567');397 }).listen(4444, function () {398 proxy = http.createServer(function (request, response) {399 var parsed = url.parse(request.url);400 var opts = {401 host: parsed.hostname,402 port: parsed.port,403 path: parsed.path404 };405 http.get(opts, function (res) {406 var body = '';407 res.on('data', function (data) {408 body += data;409 });410 res.on('end', function () {411 response.setHeader('Content-Type', 'text/html; charset=UTF-8');412 response.end(body + '1234');413 });414 });415 }).listen(4000, function () {416 // set the env variable417 process.env.http_proxy = 'http://localhost:4000/';418 process.env.no_proxy = 'foo.com, localhost,bar.net , , quix.co';419 axios.get('http://localhost:4444/').then(function (res) {420 assert.equal(res.data, '4567', 'should not use proxy for domains in no_proxy');421 done();422 });423 });424 });425 });426 it('should use proxy for domains not in no_proxy', function (done) {427 server = http.createServer(function (req, res) {428 res.setHeader('Content-Type', 'text/html; charset=UTF-8');429 res.end('4567');430 }).listen(4444, function () {431 proxy = http.createServer(function (request, response) {432 var parsed = url.parse(request.url);433 var opts = {434 host: parsed.hostname,435 port: parsed.port,436 path: parsed.path437 };438 http.get(opts, function (res) {439 var body = '';440 res.on('data', function (data) {441 body += data;442 });443 res.on('end', function () {444 response.setHeader('Content-Type', 'text/html; charset=UTF-8');445 response.end(body + '1234');446 });447 });448 }).listen(4000, function () {449 // set the env variable450 process.env.http_proxy = 'http://localhost:4000/';451 process.env.no_proxy = 'foo.com, ,bar.net , quix.co';452 axios.get('http://localhost:4444/').then(function (res) {453 assert.equal(res.data, '45671234', 'should use proxy for domains not in no_proxy');454 done();455 });456 });457 });458 });459 it('should support HTTP proxy auth', function (done) {460 server = http.createServer(function (req, res) {461 res.end();462 }).listen(4444, function () {463 proxy = http.createServer(function (request, response) {464 var parsed = url.parse(request.url);465 var opts = {466 host: parsed.hostname,467 port: parsed.port,468 path: parsed.path469 };470 var proxyAuth = request.headers['proxy-authorization'];471 http.get(opts, function (res) {472 var body = '';473 res.on('data', function (data) {474 body += data;475 });476 res.on('end', function () {477 response.setHeader('Content-Type', 'text/html; charset=UTF-8');478 response.end(proxyAuth);479 });480 });481 }).listen(4000, function () {482 axios.get('http://localhost:4444/', {483 proxy: {484 host: 'localhost',485 port: 4000,486 auth: {487 username: 'user',488 password: 'pass'489 }490 }491 }).then(function (res) {492 var base64 = Buffer.from('user:pass', 'utf8').toString('base64');493 assert.equal(res.data, 'Basic ' + base64, 'should authenticate to the proxy');494 done();495 });496 });497 });498 });499 it('should support proxy auth from env', function (done) {500 server = http.createServer(function (req, res) {501 res.end();502 }).listen(4444, function () {503 proxy = http.createServer(function (request, response) {504 var parsed = url.parse(request.url);505 var opts = {506 host: parsed.hostname,507 port: parsed.port,508 path: parsed.path509 };510 var proxyAuth = request.headers['proxy-authorization'];511 http.get(opts, function (res) {512 var body = '';513 res.on('data', function (data) {514 body += data;515 });516 res.on('end', function () {517 response.setHeader('Content-Type', 'text/html; charset=UTF-8');518 response.end(proxyAuth);519 });520 });521 }).listen(4000, function () {522 process.env.http_proxy = 'http://user:pass@localhost:4000/';523 axios.get('http://localhost:4444/').then(function (res) {524 var base64 = Buffer.from('user:pass', 'utf8').toString('base64');525 assert.equal(res.data, 'Basic ' + base64, 'should authenticate to the proxy set by process.env.http_proxy');526 done();527 });528 });529 });530 });531 it('should support proxy auth with header', function (done) {532 server = http.createServer(function (req, res) {533 res.end();534 }).listen(4444, function () {535 proxy = http.createServer(function (request, response) {536 var parsed = url.parse(request.url);537 var opts = {538 host: parsed.hostname,539 port: parsed.port,540 path: parsed.path541 };542 var proxyAuth = request.headers['proxy-authorization'];543 http.get(opts, function (res) {544 var body = '';545 res.on('data', function (data) {546 body += data;547 });548 res.on('end', function () {549 response.setHeader('Content-Type', 'text/html; charset=UTF-8');550 response.end(proxyAuth);551 });552 });553 }).listen(4000, function () {554 axios.get('http://localhost:4444/', {555 proxy: {556 host: 'localhost',557 port: 4000,558 auth: {559 username: 'user',560 password: 'pass'561 }562 },563 headers: {564 'Proxy-Authorization': 'Basic abc123'565 }566 }).then(function (res) {567 var base64 = Buffer.from('user:pass', 'utf8').toString('base64');568 assert.equal(res.data, 'Basic ' + base64, 'should authenticate to the proxy');569 done();570 });571 });572 });573 });574 it('should support cancel', function (done) {575 var source = axios.CancelToken.source();576 server = http.createServer(function (req, res) {577 // call cancel() when the request has been sent, but a response has not been received578 source.cancel('Operation has been canceled.');579 }).listen(4444, function () {580 axios.get('http://localhost:4444/', {581 cancelToken: source.token582 }).catch(function (thrown) {583 assert.ok(thrown instanceof axios.Cancel, 'Promise must be rejected with a Cancel obejct');584 assert.equal(thrown.message, 'Operation has been canceled.');585 done();586 });587 });588 });589 it('should combine baseURL and url', function (done) {590 server = http.createServer(function (req, res) {591 res.end();592 }).listen(4444, function () {593 axios.get('/foo', {594 baseURL: 'http://localhost:4444/',595 }).then(function (res) {596 assert.equal(res.config.baseURL, 'http://localhost:4444/');597 assert.equal(res.config.url, '/foo');598 done();599 });600 });601 });...
httpSpec.js
Source:httpSpec.js
...14 headers: test_headers15 };16 });17 it('createServer should return a Server', function(done) {18 expect(http.createServer() instanceof http.Server).toBeTruthy();19 helper.testComplete(true);20 });21 it('should fire a listening event', function() {22 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);23 var server = http.createServer();24 server.listen(test_options.port, function() {25 server.close(function() { helper.testComplete(true); });26 });27 });28 it('should fire a request event', function() {29 waitsFor(helper.testComplete, "waiting for request event to fire", 5);30 var server = http.createServer(function() {31 // getting here means it worked32 server.close(function() { helper.testComplete(true); });33 });34 // simulate a request event35 server.emit('request');36 });37 it('should be able to request with no callback', function() {38 waitsFor(helper.testComplete, "waiting for http request", 5);39 var server = http.createServer(function(request, response) {40 request.on('data', function(data) {41 expect('crispy bacon').toBe(data.toString());42 response.end();43 server.on('close', function() { helper.testComplete(true); });44 server.close();45 });46 });47 test_options.method = 'POST';48 server.listen(test_options.port, function() {49 var request = http.request(test_options);50 request.end('crispy bacon');51 });52 });53 it('should response.write', function() {54 waitsFor(helper.testComplete, "waiting for http response.write", 5);55 var server = http.createServer(function(request, response) {56 expect(response.headersSent).toBe(false);57 response.write('crunchy bacon');58 expect(response.headersSent).toBe(true);59 response.end();60 });61 server.listen(test_options.port, function() {62 var request = http.request(test_options, function(response) {63 response.on('data', function(message) {64 expect('crunchy bacon').toBe(message);65 server.close(function() { helper.testComplete(true); });66 });67 });68 request.end();69 });70 });71 it('should response.write end', function() {72 waitsFor(helper.testComplete, "waiting for http response.end", 5);73 var server = http.createServer(function(request, response) {74 expect(response.headersSent).toBe(false);75 response.end('crunchy bacon');76 expect(response.headersSent).toBe(true);77 });78 server.listen(test_options.port, function() {79 var request = http.request(test_options, function(response) {80 response.on('data', function(message) {81 expect('crunchy bacon').toBe(message);82 server.close(function() { helper.testComplete(true); });83 });84 });85 request.end();86 });87 });88});89describe('http request and response', function() {90 beforeEach(function() {91 helper.testComplete(false);92 test_headers = {93 'x-custom-header': 'A custom header'94 };95 test_options = {96 port: 9999,97 path: '/some/path?with=a+query+string',98 headers: test_headers99 };100 });101 it('should have message headers', function() {102 waitsFor(helper.testComplete, "waiting for message headers test", 5);103 var server = http.createServer(function(request, response) {104 expect(test_headers['x-custom-header']).toBe(request.headers['x-custom-header']);105 var body = 'crunchy bacon';106 response.writeHead(201, { 'Content-Length': body.length });107 expect(body.length.toString()).toBe(response.getHeader('Content-Length'));108 expect(response.headersSent).toEqual(true);109 response.setHeader('Content-Type', 'text/plain');110 expect('text/plain').toBe(response.getHeader('Content-Type'));111 response.removeHeader('x-something-else');112 expect(response.getHeader('x-something-else')).toBe(undefined);113 response.setHeader("Set-Cookie", ["type=ninja", "language=javascript"]);114 response.end();115 });116 server.listen(test_options.port, function() {117 var request = http.request(test_options, function(response) {118 expect(response.statusCode).toBe(201);119 expect(response.headers['Content-Type']).toBe('text/plain');120 expect(response.headers.Date).not.toBeNull();121 expect(response.headers.Date).not.toBe(undefined);122 expect(response.headers['Set-Cookie']).toBe('type=ninja,language=javascript');123 server.close(function() { helper.testComplete(true); });124 });125 request.end();126 });127 });128 it('should be able to add trailers', function() {129 waitsFor(helper.testComplete, "waiting for http trailers test", 5);130 var server = http.createServer(function(request, response) {131 var body = 'crunchy bacon';132 response.writeHead(200, {'Content-Type': 'text/plain',133 'Trailers': 'X-Custom-Trailer'});134 response.write(body);135 response.addTrailers({'X-Custom-Trailer': 'a trailer'});136 response.end();137 });138 server.listen(test_options.port, function() {139 var request = http.request(test_options, function(response) {140 expect(response.headers['Content-Type']).toBe('text/plain');141 expect(response.headers.Trailers).toBe('X-Custom-Trailer');142 response.on('end', function() {143 expect(response.trailers['X-Custom-Trailer']).toBe('a trailer');144 server.close(function() { helper.testComplete(true); });145 });146 });147 request.end();148 });149 });150 it('should have message encoding', function() {151 var expected = 'This is a unicode text: سÙاÙ
';152 var result = '';153 waitsFor(helper.testComplete, "waiting for http message encoding test", 5);154 var server = http.createServer(function(req, res) {155 req.setEncoding('utf8');156 req.on('data', function(chunk) {157 result += chunk;158 });159 res.writeHead(200);160 res.end('hello world\n');161 });162 server.listen(test_options.port, function() {163 test_options.method = 'POST';164 test_options.path = '/unicode/test';165 var request = http.request(test_options, function(res) {166 res.resume();167 res.on('end', function() {168 server.close(function() {169 expect(expected).toBe(result);170 helper.testComplete(true);171 });172 });173 }).end(expected);174 });175 });176 it('should pause and resume', function() {177 var expectedServer = 'Request Body from Client';178 var resultServer = '';179 var expectedClient = 'Response Body from Server';180 var resultClient = '';181 waitsFor(helper.testComplete, "waiting for http pause and resume test", 5);182 var server = http.createServer(function(req, res) {183 req.pause();184 setTimeout(function() {185 req.resume();186 req.setEncoding('utf8');187 req.on('data', function(chunk) {188 resultServer += chunk;189 });190 req.on('end', function() {191 res.writeHead(200);192 res.end(expectedClient);193 });194 }, 100);195 });196 server.listen(test_options.port, function() {197 test_options.method = 'POST';198 var req = http.request(test_options, function(res) {199 res.pause();200 setTimeout(function() {201 res.resume();202 res.on('data', function(chunk) {203 resultClient += chunk;204 });205 res.on('end', function() {206 expect(expectedServer).toBe(resultServer);207 expect(expectedClient).toBe(resultClient);208 server.close(function() { helper.testComplete(true); });209 });210 }, 100);211 });212 req.end(expectedServer);213 });214 });215 it('should have a status code', function() {216 waitsFor(helper.testComplete, "waiting for http status code test", 5);217 var server = http.createServer(function(request, response) {218 response.end("OK");219 });220 server.listen(test_options.port, function() {221 var request = http.request(test_options, function(response) {222 expect(response.statusCode.toString()).toBe("200");223 server.close(function() { helper.testComplete(true); });224 });225 request.end();226 });227 });228 it('should return a request.url', function() {229 waitsFor(helper.testComplete, "waiting for http request.url test", 5);230 var server = http.createServer(function(request, response) {231 expect(request.url).toBe('/some/path?with=a+query+string');232 response.end();233 });234 server.listen(test_options.port, function() {235 var request = http.request(test_options, function(response) {236 server.close(function() { helper.testComplete(true); });237 });238 request.end();239 });240 });241 it('should have the HTTP version in the request', function() {242 waitsFor(helper.testComplete, "waiting for http version test", 5);243 var server = http.createServer(function(request, response) {244 expect(request.httpVersion).toBe('1.1');245 expect(request.httpMajorVersion).toEqual(1);246 expect(request.httpMinorVersion).toEqual(1);247 response.end();248 });249 server.listen(test_options.port, function() {250 http.request(test_options, function(){251 server.close(function() { helper.testComplete(true); });252 }).end();253 });254 });255 it('should request.write', function() {256 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);257 var server = http.createServer(function(request, response) {258 request.on('data', function(data) {259 expect(data.toString()).toBe("cheese muffins");260 response.end();261 server.close(function() { helper.testComplete(true); });262 });263 });264 server.listen(test_options.port, function() {265 var request = http.request(test_options, function() {266 });267 request.write("cheese muffins");268 request.end('bye'); // TODO: This should not be necessary269 // TODO: But if we don't write something270 // TODO: Vert.x inexplicably throws NPE271 });272 });273 it('should have a request.method', function() {274 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);275 var server = http.createServer(function(request, response) {276 expect(request.method).toBe('HEAD');277 response.end();278 });279 server.listen(test_options.port, function() {280 test_options.method = 'HEAD';281 http.request(test_options, function() {282 server.close(function() { helper.testComplete(true); });283 }).end();284 });285 });286 it('should have a GET method', function() {287 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);288 var server = http.createServer(function(request, response) {289 expect(request.method).toBe('GET');290 response.end();291 server.close(function() { helper.testComplete(true); });292 });293 server.listen(test_options.port, function() {294 test_options.method = null;295 http.get(test_options);296 });297 });298 it('should have a request setTimeout', function() {299 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);300 var server = http.createServer(function(request, response) {301 // do nothing - we want the connection to timeout302 });303 server.listen(test_options.port, function() {304 var request = http.request(test_options);305 request.setTimeout(10, function() {306 server.close(function() { helper.testComplete(true); });307 });308 });309 });310 it('should have a request event called', function() {311 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);312 var called = false;313 var server = http.createServer(function(request, response) {314 // node.js request listener315 // called when a 'request' event is emitted316 called = true;317 expect(request instanceof http.IncomingMessage);318 expect(response instanceof http.ServerResponse);319 response.statusCode = 200;320 response.end();321 });322 server.listen(test_options.port, function() {323 var request = http.request(test_options, function(response) {324 expect(response).not.toBeNull();325 expect(called).toEqual(true);326 server.close(function() { helper.testComplete(true); });327 });328 request.end();329 });330 });331 it('should have a close', function() {332 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);333 http.createServer().close(function() {334 helper.testComplete(true);335 });336 });337 it('should have a default timeout', function() {338 var server = http.createServer();339 expect(server.timeout).toEqual(120000);340 helper.testComplete(true);341 });342 it('should setTimeout', function() {343 var timedOut = false;344 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);345 http.createServer().setTimeout(10, function(sock) {346 timedOut = true;347 sock.close();348 });349 timer.setTimer(100, function() {350 expect(timedOut).toEqual(true);351 helper.testComplete(true);352 });353 });354 it('should have a close event', function() {355 var closed = false;356 var server = http.createServer();357 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);358 server.on('close', function() {359 closed = true;360 });361 server.close(function() {362 expect(closed).toEqual(true);363 helper.testComplete(true);364 });365 });366 it('should have a continue event', function() {367 var server = http.createServer();368 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);369 server.on('checkContinue', function(request, response) {370 response.writeContinue();371 response.end();372 });373 server.listen(test_options.port, function() {374 var headers = {375 'Expect': '100-Continue'376 };377 test_options.headers = headers;378 var request = http.request(test_options, function(response) {});379 request.on('continue', function() {380 server.close();381 helper.testComplete(true);382 });383 request.end();384 });385 });386 it('should have a connect fired event', function() {387 var server = http.createServer();388 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);389 server.on('request', function(request, response) {390 this.fail(Error("CONNECT requests should not issue 'request' events"));391 helper.testComplete(true);392 }.bind(this));393 server.on('connect', function(request, clientSock, head) {394 expect(clientSock !== null);395 expect(clientSock !== undefined);396 expect(head !== null);397 expect(head !== undefined);398 clientSock.write('HTTP/1.1 200 Connection Established\r\n' +399 'Proxy-agent: Nodyn-Proxy\r\n' +400 '\r\n');401 clientSock.on('data', function(buffer) {402 expect(buffer.toString()).toBe('Bonjour');403 clientSock.write('Au revoir');404 clientSock.end();405 });406 });407 server.listen(test_options.port, function() {408 test_options.method = 'CONNECT';409 var clientRequest = http.request(test_options, function() {410 fail(Error("CONNECT requests should not emit 'response' events"));411 }.bind(this));412 clientRequest.on('connect', function(res, socket, head) {413 expect(socket !== null);414 expect(socket !== undefined);415 expect(head !== null);416 expect(head !== undefined);417 socket.write('Bonjour');418 socket.on('data', function(buffer) {419 expect(buffer.toString()).toBe('Au revoir');420 server.close();421 helper.testComplete(true);422 });423 });424 clientRequest.end();425 });426 });427 it('should do a connection upgrade', function() {428 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);429 var server = http.createServer(function(req, resp) {430 resp.writeHead(200, {'Content-Type': 'text/plain'});431 resp.end('later!');432 });433 server.on('upgrade', function(req, socket, head) {434 expect(req.headers.Connection).toBe('Upgrade');435 socket.write('HTTP/1.1 101 Web Socket Protocol Handshake\r\n' +436 'Upgrade: WebSocket\r\n' +437 'Connection: Upgrade\r\n' +438 '\r\n');439 socket.write('fajitas');440 });441 server.listen(test_options.port, function() {442 test_options.headers = {443 'Connection': 'Upgrade',444 'Upgrade': 'websocket'445 };446 var request = http.request(test_options);447 request.end();448 request.on('upgrade', function(resp, socket, head) {449 expect(resp.headers.Connection).toBe('Upgrade');450 // TODO: pending https://github.com/vert-x/vert.x/issues/610451 //socket.on('data', function(buffer) {452 // vassert.assertEquals('object', typeof buffer);453 // vassert.assertEquals("fajitas", buffer.toString());454 // socket.destroy();455 server.close();456 helper.testComplete(true);457 //});458 });459 });460 });461 it('should have a Server Max Headers Count Default value', function() {462 var server = http.createServer();463 expect(server.maxHeadersCount).toEqual(1000);464 server.maxHeadersCount = 50000;465 expect(server.maxHeadersCount).toEqual(50000);466 helper.testComplete();467 });468 it('should send Response Headers', function() {469 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);470 var server = http.createServer(function(request, response) {471 expect(response.headersSent).toEqual(false);472 response.writeHead(201);473 expect(response.headersSent).toEqual(true);474 response.end();475 });476 server.listen(test_options.port, function() {477 var request = http.request(test_options, function(response) {478 server.close();479 helper.testComplete(true);480 });481 request.end();482 });483 });484 it('should return a ClientRequest on a Request', function() {485 waitsFor(helper.testComplete, "waiting for .listen(handler) to fire", 5);486 var server = http.createServer(function(request, response) {487 response.writeHead(200);488 response.end();489 });490 server.listen(test_options.port, function() {491 var request = http.request(test_options, function(response) {492 server.close();493 helper.testComplete(true);494 });495 expect(request instanceof http.ClientRequest);496 request.end();497 });498 });...
manoow.js
Source:manoow.js
1var http = require('http');2http.createServer(function (req, res) {3 res.writeHead(200, {'Content-Type': 'text/plain'});4 res.end('Hello World!');5}).listen(8080);var http = require('http');6http.createServer(function (req, res) {7 res.writeHead(200, {'Content-Type': 'text/plain'});8 res.end('Hello World!');9}).listen(8080);var http = require('http');10http.createServer(function (req, res) {11 res.writeHead(200, {'Content-Type': 'text/plain'});12 res.end('Hello World!');13}).listen(8080);var http = require('http');14http.createServer(function (req, res) {15 res.writeHead(200, {'Content-Type': 'text/plain'});16 res.end('Hello World!');17}).listen(8080);var http = require('http');18http.createServer(function (req, res) {19 res.writeHead(200, {'Content-Type': 'text/plain'});20 res.end('Hello World!');21}).listen(8080);var http = require('http');22http.createServer(function (req, res) {23 res.writeHead(200, {'Content-Type': 'text/plain'});24 res.end('Hello World!');25}).listen(8080);var http = require('http');26http.createServer(function (req, res) {27 res.writeHead(200, {'Content-Type': 'text/plain'});28 res.end('Hello World!');29}).listen(8080);var http = require('http');30http.createServer(function (req, res) {31 res.writeHead(200, {'Content-Type': 'text/plain'});32 res.end('Hello World!');33}).listen(8080);var http = require('http');34http.createServer(function (req, res) {35 res.writeHead(200, {'Content-Type': 'text/plain'});36 res.end('Hello World!');37}).listen(8080);var http = require('http');38http.createServer(function (req, res) {39 res.writeHead(200, {'Content-Type': 'text/plain'});40 res.end('Hello World!');41}).listen(8080);var http = require('http');42http.createServer(function (req, res) {43 res.writeHead(200, {'Content-Type': 'text/plain'});44 res.end('Hello World!');45}).listen(8080);var http = require('http');46http.createServer(function (req, res) {47 res.writeHead(200, {'Content-Type': 'text/plain'});48 res.end('Hello World!');49}).listen(8080);var http = require('http');50http.createServer(function (req, res) {51 res.writeHead(200, {'Content-Type': 'text/plain'});52 res.end('Hello World!');53}).listen(8080);var http = require('http');54http.createServer(function (req, res) {55 res.writeHead(200, {'Content-Type': 'text/plain'});56 res.end('Hello World!');57}).listen(8080);var http = require('http');58http.createServer(function (req, res) {59 res.writeHead(200, {'Content-Type': 'text/plain'});60 res.end('Hello World!');61}).listen(8080);var http = require('http');62http.createServer(function (req, res) {63 res.writeHead(200, {'Content-Type': 'text/plain'});64 res.end('Hello World!');65}).listen(8080);var http = require('http');66http.createServer(function (req, res) {67 res.writeHead(200, {'Content-Type': 'text/plain'});68 res.end('Hello World!');69}).listen(8080);var http = require('http');70http.createServer(function (req, res) {71 res.writeHead(200, {'Content-Type': 'text/plain'});72 res.end('Hello World!');73}).listen(8080);var http = require('http');74http.createServer(function (req, res) {75 res.writeHead(200, {'Content-Type': 'text/plain'});76 res.end('Hello World!');77}).listen(8080);var http = require('http');78http.createServer(function (req, res) {79 res.writeHead(200, {'Content-Type': 'text/plain'});80 res.end('Hello World!');81}).listen(8080);var http = require('http');82http.createServer(function (req, res) {83 res.writeHead(200, {'Content-Type': 'text/plain'});84 res.end('Hello World!');85}).listen(8080);var http = require('http');86http.createServer(function (req, res) {87 res.writeHead(200, {'Content-Type': 'text/plain'});88 res.end('Hello World!');89}).listen(8080);var http = require('http');90http.createServer(function (req, res) {91 res.writeHead(200, {'Content-Type': 'text/plain'});92 res.end('Hello World!');93}).listen(8080);var http = require('http');94http.createServer(function (req, res) {95 res.writeHead(200, {'Content-Type': 'text/plain'});96 res.end('Hello World!');97}).listen(8080);var http = require('http');98http.createServer(function (req, res) {99 res.writeHead(200, {'Content-Type': 'text/plain'});100 res.end('Hello World!');101}).listen(8080);var http = require('http');102http.createServer(function (req, res) {103 res.writeHead(200, {'Content-Type': 'text/plain'});104 res.end('Hello World!');105}).listen(8080);var http = require('http');106http.createServer(function (req, res) {107 res.writeHead(200, {'Content-Type': 'text/plain'});108 res.end('Hello World!');109}).listen(8080);var http = require('http');110http.createServer(function (req, res) {111 res.writeHead(200, {'Content-Type': 'text/plain'});112 res.end('Hello World!');113}).listen(8080);var http = require('http');114http.createServer(function (req, res) {115 res.writeHead(200, {'Content-Type': 'text/plain'});116 res.end('Hello World!');117}).listen(8080);var http = require('http');118http.createServer(function (req, res) {119 res.writeHead(200, {'Content-Type': 'text/plain'});120 res.end('Hello World!');121}).listen(8080);var http = require('http');122http.createServer(function (req, res) {123 res.writeHead(200, {'Content-Type': 'text/plain'});124 res.end('Hello World!');125}).listen(8080);var http = require('http');126http.createServer(function (req, res) {127 res.writeHead(200, {'Content-Type': 'text/plain'});128 res.end('Hello World!');129}).listen(8080);var http = require('http');130http.createServer(function (req, res) {131 res.writeHead(200, {'Content-Type': 'text/plain'});132 res.end('Hello World!');133}).listen(8080);var http = require('http');134http.createServer(function (req, res) {135 res.writeHead(200, {'Content-Type': 'text/plain'});136 res.end('Hello World!');137}).listen(8080);var http = require('http');138http.createServer(function (req, res) {139 res.writeHead(200, {'Content-Type': 'text/plain'});140 res.end('Hello World!');141}).listen(8080);var http = require('http');142http.createServer(function (req, res) {143 res.writeHead(200, {'Content-Type': 'text/plain'});144 res.end('Hello World!');145}).listen(8080);var http = require('http');146http.createServer(function (req, res) {147 res.writeHead(200, {'Content-Type': 'text/plain'});148 res.end('Hello World!');149}).listen(8080);var http = require('http');150http.createServer(function (req, res) {151 res.writeHead(200, {'Content-Type': 'text/plain'});152 res.end('Hello World!');153}).listen(8080);var http = require('http');154http.createServer(function (req, res) {155 res.writeHead(200, {'Content-Type': 'text/plain'});156 res.end('Hello World!');157}).listen(8080);var http = require('http');158http.createServer(function (req, res) {159 res.writeHead(200, {'Content-Type': 'text/plain'});160 res.end('Hello World!');161}).listen(8080);var http = require('http');162http.createServer(function (req, res) {163 res.writeHead(200, {'Content-Type': 'text/plain'});164 res.end('Hello World!');165}).listen(8080);var http = require('http');166http.createServer(function (req, res) {167 res.writeHead(200, {'Content-Type': 'text/plain'});168 res.end('Hello World!');169}).listen(8080);var http = require('http');170http.createServer(function (req, res) {171 res.writeHead(200, {'Content-Type': 'text/plain'});172 res.end('Hello World!');173}).listen(8080);var http = require('http');174http.createServer(function (req, res) {175 res.writeHead(200, {'Content-Type': 'text/plain'});176 res.end('Hello World!');177}).listen(8080);var http = require('http');178http.createServer(function (req, res) {179 res.writeHead(200, {'Content-Type': 'text/plain'});180 res.end('Hello World!');181}).listen(8080);var http = require('http');182http.createServer(function (req, res) {183 res.writeHead(200, {'Content-Type': 'text/plain'});184 res.end('Hello World!');185}).listen(8080);var http = require('http');186http.createServer(function (req, res) {187 res.writeHead(200, {'Content-Type': 'text/plain'});188 res.end('Hello World!');189}).listen(8080);var http = require('http');190http.createServer(function (req, res) {191 res.writeHead(200, {'Content-Type': 'text/plain'});192 res.end('Hello World!');193}).listen(8080);var http = require('http');194http.createServer(function (req, res) {195 res.writeHead(200, {'Content-Type': 'text/plain'});196 res.end('Hello World!');197}).listen(8080);var http = require('http');198http.createServer(function (req, res) {199 res.writeHead(200, {'Content-Type': 'text/plain'});200 res.end('Hello World!');201}).listen(8080);var http = require('http');202http.createServer(function (req, res) {203 res.writeHead(200, {'Content-Type': 'text/plain'});204 res.end('Hello World!');205}).listen(8080);var http = require('http');206http.createServer(function (req, res) {207 res.writeHead(200, {'Content-Type': 'text/plain'});208 res.end('Hello World!');209}).listen(8080);var http = require('http');210http.createServer(function (req, res) {211 res.writeHead(200, {'Content-Type': 'text/plain'});212 res.end('Hello World!');213}).listen(8080);var http = require('http');214http.createServer(function (req, res) {215 res.writeHead(200, {'Content-Type': 'text/plain'});216 res.end('Hello World!');217}).listen(8080);var http = require('http');218http.createServer(function (req, res) {219 res.writeHead(200, {'Content-Type': 'text/plain'});220 res.end('Hello World!');221}).listen(8080);var http = require('http');222http.createServer(function (req, res) {223 res.writeHead(200, {'Content-Type': 'text/plain'});224 res.end('Hello World!');225}).listen(8080);var http = require('http');226http.createServer(function (req, res) {227 res.writeHead(200, {'Content-Type': 'text/plain'});228 res.end('Hello World!');229}).listen(8080);var http = require('http');230http.createServer(function (req, res) {231 res.writeHead(200, {'Content-Type': 'text/plain'});232 res.end('Hello World!');233}).listen(8080);var http = require('http');234http.createServer(function (req, res) {235 res.writeHead(200, {'Content-Type': 'text/plain'});236 res.end('Hello World!');237}).listen(8080);var http = require('http');238http.createServer(function (req, res) {239 res.writeHead(200, {'Content-Type': 'text/plain'});240 res.end('Hello World!');241}).listen(8080);var http = require('http');242http.createServer(function (req, res) {243 res.writeHead(200, {'Content-Type': 'text/plain'});244 res.end('Hello World!');245}).listen(8080);var http = require('http');246http.createServer(function (req, res) {247 res.writeHead(200, {'Content-Type': 'text/plain'});248 res.end('Hello World!');249}).listen(8080);var http = require('http');250http.createServer(function (req, res) {251 res.writeHead(200, {'Content-Type': 'text/plain'});252 res.end('Hello World!');253}).listen(8080);var http = require('http');254http.createServer(function (req, res) {255 res.writeHead(200, {'Content-Type': 'text/plain'});256 res.end('Hello World!');257}).listen(8080);var http = require('http');258http.createServer(function (req, res) {259 res.writeHead(200, {'Content-Type': 'text/plain'});260 res.end('Hello World!');261}).listen(8080);var http = require('http');262http.createServer(function (req, res) {263 res.writeHead(200, {'Content-Type': 'text/plain'});264 res.end('Hello World!');265}).listen(8080);var http = require('http');266http.createServer(function (req, res) {267 res.writeHead(200, {'Content-Type': 'text/plain'});268 res.end('Hello World!');269}).listen(8080);var http = require('http');270http.createServer(function (req, res) {271 res.writeHead(200, {'Content-Type': 'text/plain'});272 res.end('Hello World!');273}).listen(8080);var http = require('http');274http.createServer(function (req, res) {275 res.writeHead(200, {'Content-Type': 'text/plain'});276 res.end('Hello World!');277}).listen(8080);var http = require('http');278http.createServer(function (req, res) {279 res.writeHead(200, {'Content-Type': 'text/plain'});280 res.end('Hello World!');...
Using AI Code Generation
1const { launch } = require("qawolf");2const selectors = require("../selectors/test");3describe("test", () => {4 let browser;5 let page;6 beforeAll(async () => {7 browser = await launch();8 });9 afterAll(async () => {10 await browser.close();11 });12 beforeEach(async () => {13 page = await browser.newPage();14 });15 afterEach(async () => {16 await page.close();17 });18 it("test", async () => {19 await page.click(selectors["#root > div > div:nth-child(1) > div > div > div > div > a"]);20 await page.click(selectors["#root > div > div:nth-child(1) > div > div > div > div > a"]);21 });22});23module.exports = {24 "#root > div > div:nth-child(1) > div > div > div > div > a": "#root > div > div:nth-child(1) > div > div > div > div > a",25 "#root > div > div:nth-child(1) > div > div > div > div > a": "#root > div > div:nth-child(1) > div > div > div > div > a",26};27const { launch } = require("qawolf");28const selectors = require("../selectors/test");29describe("test", () => {30 let browser;31 let page;32 beforeAll(async () => {33 browser = await launch();34 });35 afterAll(async () => {36 await browser.close();37 });38 beforeEach(async () => {39 page = await browser.newPage();40 });41 afterEach(async () => {42 await page.close();43 });44 it("test", async () => {45 await page.click(selectors["#root > div > div:nth-child(1) > div > div > div > div > a"]);46 await page.click(selectors["#root > div > div:nth-child(1) > div > div > div > div > a"]);47 });48});49module.exports = {50 "#root > div > div:nth-child(1) > div > div > div > div
Using AI Code Generation
1const { launch } = require("qawolf");2const { test } = require("qawolf");3const selectors = require("../selectors/test");4describe("test", () => {5 let browser;6 let page;7 beforeAll(async () => {8 page = await browser.newPage();9 });10 afterAll(async () => {11 await browser.close();12 });13 it("test", async () => {14 await test("test", async () => {15 await page.click(selectors["Google Search"][0]);16 await page.type(selectors["Google Search"][0], "qawolf");17 await page.keyboard.press("Enter");18 await page.waitForSelector(selectors["Qawolf: End-to-end Testing for Web Apps"][0]);19 await page.click(selectors["Qawolf: End-to-end Testing for Web Apps"][0]);20 });21 });22});23module.exports = {24};
Using AI Code Generation
1const { launch, firefox } = require("qawolf");2const { createServer } = require("http");3const server = createServer((req, res) => {4 res.writeHead(200, { "Content-Type": "text/plain" });5 res.end("Hello World6");7});8server.listen(8080, "
Using AI Code Generation
1const { createServer } = require('qawolf');2const express = require('express');3const app = express();4const cors = require('cors');5app.use(cors());6const bodyParser = require('body-parser');7app.use(bodyParser.json());8app.use(bodyParser.urlencoded({ extended: true }));9const http = require('http');10const path = require('path');11const dotenv = require('dotenv');12dotenv.config();13const mongoose = require('mongoose');14const morgan = require('morgan');15const cookieParser = require('cookie-parser');16const helmet = require('helmet');17const compression = require('compression');18const passport = require('passport');19const session = require('express-session');20const MongoStore = require('connect-mongo')(session);21const flash = require('connect-flash');22const expressValidator = require('express-validator');23const methodOverride = require('method-override');24const csrf = require('csurf');25const rateLimit = require('express-rate-limit');26const mongoSanitize = require('express-mongo-sanitize');27const xss = require('xss-clean');28const hpp = require('hpp');29const lusca = require('lusca');30const winston = require('winston');31const expressWinston = require('express-winston');32const device = require('express-device');33const statusMonitor = require('express-status-monitor');34require('express-async-errors');35const PromiseRouter = require('express-promise-router');36const router = PromiseRouter();37const graphqlHTTP = require('express
Using AI Code Generation
1const qawolf = require("qawolf");2const server = qawolf.createServer();3server.start();4server.on("request", (req, res) => {5 res.end("Hello World!");6});7const http = require("http");8const server = http.createServer((req, res) => {9 res.statusCode = 200;10 res.setHeader("Content-Type", "text/plain");11 res.end("Hello World!");12});13server.listen(3000, "
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!