'a'
mh-two-thousand-and-two
2024-04-12 44d2c92345cd156a59fc327b3060292a282d2893
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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');
    });
});