You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
951 B
27 lines
951 B
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'); |
|
}); |
|
});
|
|
|