From 59fa40ec0e851759d35fb0ea5fd01019d1403049 Mon Sep 17 00:00:00 2001 From: Mykhailo Kotsur Date: Thu, 29 Mar 2012 22:16:10 +0200 Subject: fix($location): search setter should not double-encode the value By mistake both the setter and helper function that composes the whole url were encoding the search values. Closes #751 --- test/ng/locationSpec.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'test') diff --git a/test/ng/locationSpec.js b/test/ng/locationSpec.js index 646a9ca0..164251ab 100644 --- a/test/ng/locationSpec.js +++ b/test/ng/locationSpec.js @@ -330,6 +330,19 @@ describe('$location', function() { expect(url.search()).toEqual({'i j': '<>#'}); expect(url.hash()).toBe('x <>#'); }); + + + it('should return decoded characters for search specified in URL', function() { + var locationUrl = new LocationUrl('http://host.com/?q=1%2F2%203'); + expect(locationUrl.search()).toEqual({'q': '1/2 3'}); + }); + + + it('should return decoded characters for search specified with setter', function() { + var locationUrl = new LocationUrl('http://host.com/'); + locationUrl.search('q', '1/2 3'); + expect(locationUrl.search()).toEqual({'q': '1/2 3'}); + }); }); }); -- cgit v1.2.3