| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | // TODO: write specs. :)var fs = require('fs'),    client = require('./../../');process.env.DEBUG = true;var response_callback = function(err, resp, body){	console.log(err);	if(resp) console.log("Got status code " + resp.statusCode)	console.log(body);}function simple_head(){	client.head('http://www.amazon.com', response_callback);}function simple_get(){	client.get('http://www.nodejs.org', response_callback);}function proxy_get(){	client.get('https://www.google.com/search?q=nodejs', {proxy: 'http://localhost:1234'}, response_callback);}function auth_get(){	client.get('https://www.twitter.com', {username: 'asd', password: '123'}, response_callback);}function simple_post(url){	var data = {		foo: 'bar',		baz: {			nested: 'attribute'		}	}	client.post(url, data, response_callback);}function multipart_post(url){	var filename = 'test_file.txt';	var data = 'Plain text data.\nLorem ipsum dolor sit amet.\nBla bla bla.\n';	fs.writeFileSync(filename, data);	var black_pixel = Buffer.from("data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=".replace(/^data:image\/\w+;base64,/, ""), "base64");	var data = {		foo: 'bar',		bar: 'baz',		nested: {			my_document: { file: filename, content_type: 'text/plain' },			even: {				more: 'nesting'			}		},    pixel: { filename: 'black_pixel.gif', buffer: black_pixel, content_type: 'image/gif' },    field2: {value: JSON.stringify({"json":[ {"one":1}, {"two":2} ]}), content_type: 'application/json' }	}	client.post(url, data, {multipart: true}, function(err, resp, body){		console.log(err);		console.log("Got status code " + resp.statusCode)		console.log(body);		fs.unlink(filename);	});}switch(process.argv[2]){	case 'head':		simple_head();		break;	case 'get':		simple_get();		break;	case 'auth':		auth_get();		break;	case 'proxy':		proxy_get();		break;	case 'post':		simple_post(process.argv[3] || 'http://posttestserver.com/post.php');		break;	case 'multipart':		multipart_post(process.argv[3] || 'http://posttestserver.com/post.php?dir=example');		break;	case 'all':		simple_head();		simple_get();		auth_get();		proxy_get();		simple_post(process.argv[3] || 'http://posttestserver.com/post.php');		multipart_post(process.argv[3] || 'http://posttestserver.com/post.php?dir=example');		break;	default:		console.log("Usage: ./test.js [head|get|auth|proxy|multipart]")}
 |