var request = request = require('../index') , assert = require('assert') ; // Test adding a querystring var req1 = request.get({ uri: 'http://www.google.com', qs: { q : 'search' }}) setTimeout(function() { assert.equal('/?q=search', req1.path) }, 1) // Test replacing a querystring value var req2 = request.get({ uri: 'http://www.google.com?q=abc', qs: { q : 'search' }}) setTimeout(function() { assert.equal('/?q=search', req2.path) }, 1) // Test appending a querystring value to the ones present in the uri var req3 = request.get({ uri: 'http://www.google.com?x=y', qs: { q : 'search' }}) setTimeout(function() { assert.equal('/?x=y&q=search', req3.path) }, 1) // Test leaving a querystring alone var req4 = request.get({ uri: 'http://www.google.com?x=y'}) setTimeout(function() { assert.equal('/?x=y', req4.path) }, 1) // Test giving empty qs property var req5 = request.get({ uri: 'http://www.google.com', qs: {}}) setTimeout(function(){ assert.equal('/', req5.path) }, 1) // Test modifying the qs after creating the request var req6 = request.get({ uri: 'http://www.google.com', qs: {}}); req6.qs({ q: "test" }); process.nextTick(function() { assert.equal('/?q=test', req6.path); });