var assert = require('better-assert'); | |
var expect = require('expect.js'); | |
var util = require('./index.js'); | |
describe('querystring test suite', function(){ | |
it('should parse a querystring and return an object', function () { | |
// Single assignment | |
var queryObj = util.decode("foo=bar"); | |
expect(queryObj.foo).to.be("bar"); | |
// Multiple assignments | |
queryObj = util.decode("france=paris&germany=berlin"); | |
expect(queryObj.france).to.be("paris"); | |
expect(queryObj.germany).to.be("berlin"); | |
// Assignments containing non-alphanumeric characters | |
queryObj = util.decode("india=new%20delhi"); | |
expect(queryObj.india).to.be("new delhi"); | |
}); | |
it('should construct a query string from an object', function () { | |
expect(util.encode({ a: 'b' })).to.be('a=b'); | |
expect(util.encode({ a: 'b', c: 'd' })).to.be('a=b&c=d'); | |
expect(util.encode({ a: 'b', c: 'tobi rocks' })).to.be('a=b&c=tobi%20rocks'); | |
}); | |
}); |