diff --git a/lib/http-get.js b/lib/http-get.js index 22fb44e..2798475 100644 --- a/lib/http-get.js +++ b/lib/http-get.js @@ -73,8 +73,15 @@ var get = function (options, file, cb, reqId) { } } } else { - file = String(file).trim(); - file = p.resolve(file); + if (file !== null) { + file = String(file).trim(); + file = p.resolve(file); + } else { + file = tools.getDaveNull(); + if (options.debug) { + console.error('Dave Null is: %s', file); + } + } } if ( ! options.url) { diff --git a/tests/response-file-null.js b/tests/response-file-null.js new file mode 100644 index 0000000..c3dff3a --- /dev/null +++ b/tests/response-file-null.js @@ -0,0 +1,23 @@ +var http = require('../'); + +var assert = require('assert'); +var common = require('./includes/common.js'); + +var callback = false; + +var server = common.createFooServer(false, function () { + http.get({url: common.options.url}, null, function (err, res) { + callback = true; + assert.ifError(err); + if (process.platform === 'win32') { + assert.deepEqual('NUL:', res.file); + } else { + assert.deepEqual('/dev/null', res.file); + } + server.close(); + }); +}); + +process.on('exit', function () { + assert.ok(callback); +});