From 27f9665b0eba139d29e43962620a9a446f003d24 Mon Sep 17 00:00:00 2001 From: philippspo Date: Mon, 29 Feb 2016 16:20:30 +0100 Subject: [PATCH 1/2] fix(pagedRequest): set hastUniqueParams option to false so that it is possible to for example expand multiple references fixes #117 --- src/coffee/connect/rest.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/coffee/connect/rest.coffee b/src/coffee/connect/rest.coffee index 24ecf214..752b556c 100644 --- a/src/coffee/connect/rest.coffee +++ b/src/coffee/connect/rest.coffee @@ -181,7 +181,7 @@ class Rest PAGED: (resource, resolve) -> splitted = resource.split('?') endpoint = splitted[0] - query = _.parseQuery splitted[1] + query = _.parseQuery splitted[1], false throw new Error 'Query limit doesn\'t seem to be 0. This function queries all results, are you sure you want to use this?' if query.limit and query.limit isnt '0' From fef9c3f306a7ee61f93c11d933ceddc78a1133a2 Mon Sep 17 00:00:00 2001 From: philippspo Date: Tue, 1 Mar 2016 11:00:23 +0100 Subject: [PATCH 2/2] test(pagedRequest): test if the paged method of the rest module correctly parses the given url witho --- src/spec/connect/rest.spec.coffee | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/spec/connect/rest.spec.coffee b/src/spec/connect/rest.spec.coffee index e734e5fb..0614c119 100644 --- a/src/spec/connect/rest.spec.coffee +++ b/src/spec/connect/rest.spec.coffee @@ -256,6 +256,16 @@ describe 'Rest', -> withTotal: false done() + it 'should not overwrite duplicate url parameters', (done) -> + spyOn(@pagedRest, 'GET').andCallThrough() + @pagedRest.PAGED "/products?expand=foo&expand=bar", (e, r, b) => + url = @pagedRest.GET.calls[0].args[0] + query = url.split('?')[1] + query = query.split('&') + expect(query[0]).toEqual('expand=foo') + expect(query[1]).toEqual('expand=bar') + done() + it 'should correctly return error', (done) -> spyOn(@pagedRest, 'GET').andCallFake (endpoint, callback) -> callback('Oops', {statusCode: 500}, null)