Skip to content
This repository has been archived by the owner on Dec 30, 2022. It is now read-only.

Commit

Permalink
fix(store): make page search parameter start at 1
Browse files Browse the repository at this point in the history
  • Loading branch information
rayrutjes committed May 25, 2017
1 parent 32cc1a1 commit 062f09c
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 4 deletions.
26 changes: 24 additions & 2 deletions src/__tests__/store.js
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ describe('Store', () => {

const store = new Store(helper);

const searchParameters = helper.getState();
const searchParameters = Object.assign({}, helper.getState(), { page: 1 });
expect(store.searchParameters).toEqual(searchParameters);
});

Expand All @@ -262,10 +262,32 @@ describe('Store', () => {

const searchParameters = helper.getState();
const newSearchParameters = Object.assign({}, searchParameters, {
page: 3,
distinct: true,
page: 1,
});

store.searchParameters = newSearchParameters;

expect(store.searchParameters).toEqual(newSearchParameters);
});

test('should consider page search parameter should start as 1', () => {
const client = algoliaClient('app_id', 'api_key');
const helper = algoliaHelper(client);

const store = new Store(helper);

expect(store.searchParameters).toHaveProperty('page', 1);

helper.setPage(2);
expect(store.searchParameters).toHaveProperty('page', 3);

const newSearchParameters = Object.assign({}, store.searchParameters, {
page: 5,
});

store.searchParameters = newSearchParameters;

expect(helper.getPage()).toEqual(4);
});
});
8 changes: 6 additions & 2 deletions src/store.js
Original file line number Diff line number Diff line change
Expand Up @@ -307,11 +307,15 @@ export class Store {
}

get searchParameters() {
return Object.assign({}, this._helper.state);
return Object.assign({}, this._helper.state, { page: this.page });
}

set searchParameters(searchParameters) {
const newSearchParameters = SearchParameters.make(searchParameters);
const params = Object.assign({}, searchParameters);
if (params.page !== undefined) {
params.page = params.page - 1;
}
const newSearchParameters = SearchParameters.make(params);
this._helper.setState(newSearchParameters);
}

Expand Down

0 comments on commit 062f09c

Please sign in to comment.