Não pode escolher mais do que 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 
 

69 linhas
1.9 KiB

  1. var server = require('./server')
  2. , assert = require('assert')
  3. , request = require('../main.js')
  4. ;
  5. var s = server.createServer();
  6. s.listen(s.port, function () {
  7. var counter = 0;
  8. s.on('/get', function (req, resp) {
  9. assert.equal(req.headers.foo, 'bar');
  10. assert.equal(req.method, 'GET')
  11. resp.writeHead(200, {'Content-Type': 'text/plain'});
  12. resp.end('TESTING!');
  13. });
  14. // test get(string, function)
  15. request.defaults({headers:{foo:"bar"}})(s.url + '/get', function (e, r, b){
  16. if (e) throw e;
  17. assert.deepEqual("TESTING!", b);
  18. counter += 1;
  19. });
  20. s.on('/post', function (req, resp) {
  21. assert.equal(req.headers.foo, 'bar');
  22. assert.equal(req.headers['content-type'], 'application/json');
  23. assert.equal(req.method, 'POST')
  24. resp.writeHead(200, {'Content-Type': 'application/json'});
  25. resp.end(JSON.stringify({foo:'bar'}));
  26. });
  27. // test post(string, object, function)
  28. request.defaults({headers:{foo:"bar"}}).post(s.url + '/post', {json: true}, function (e, r, b){
  29. if (e) throw e;
  30. assert.deepEqual('bar', b.foo);
  31. counter += 1;
  32. });
  33. s.on('/del', function (req, resp) {
  34. assert.equal(req.headers.foo, 'bar');
  35. assert.equal(req.method, 'DELETE')
  36. resp.writeHead(200, {'Content-Type': 'application/json'});
  37. resp.end(JSON.stringify({foo:'bar'}));
  38. });
  39. // test .del(string, function)
  40. request.defaults({headers:{foo:"bar"}, json:true}).del(s.url + '/del', function (e, r, b){
  41. if (e) throw e;
  42. assert.deepEqual('bar', b.foo);
  43. counter += 1;
  44. });
  45. s.on('/head', function (req, resp) {
  46. assert.equal(req.headers.foo, 'bar');
  47. assert.equal(req.method, 'HEAD')
  48. resp.writeHead(200, {'Content-Type': 'text/plain'});
  49. resp.end();
  50. });
  51. // test head.(object, function)
  52. request.defaults({headers:{foo:"bar"}}).head({uri: s.url + '/head'}, function (e, r, b){
  53. if (e) throw e;
  54. counter += 1;
  55. console.log(counter.toString() + " tests passed.")
  56. s.close()
  57. });
  58. })