From 705c9d95bc3157547ac6008d2f0a6a0c0e0ca60a Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Wed, 31 Jul 2013 16:54:21 -0700 Subject: fix(location): fix parameter handling on search() --- test/ng/locationSpec.js | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'test') diff --git a/test/ng/locationSpec.js b/test/ng/locationSpec.js index df826525..708b4a13 100644 --- a/test/ng/locationSpec.js +++ b/test/ng/locationSpec.js @@ -66,6 +66,35 @@ describe('$location', function() { }); + it('search() should handle multiple value', function() { + url.search('a&b'); + expect(url.search()).toEqual({a: true, b: true}); + + url.search('a', null); + + expect(url.search()).toEqual({b: true}); + + url.search('b', undefined); + expect(url.search()).toEqual({}); + }); + + + it('search() should handle single value', function() { + url.search('ignore'); + expect(url.search()).toEqual({ignore: true}); + }); + + + it('search() should throw error an incorrect argument', function() { + expect(function() { + url.search(null); + }).toThrow('[$location:wpt] First parameter of function must be string or an object.'); + expect(function() { + url.search(undefined); + }).toThrow('[$location:wpt] First parameter of function must be string or an object.'); + }); + + it('hash() should change hash fragment', function() { url.hash('new-hash'); expect(url.hash()).toBe('new-hash'); -- cgit v1.2.3