diff options
author | Sean McGivern <sean@gitlab.com> | 2017-11-09 13:13:48 +0000 |
---|---|---|
committer | Sean McGivern <sean@gitlab.com> | 2017-11-09 13:13:48 +0000 |
commit | acf49c6d89a38806fd722c2b9052f99c68822e43 (patch) | |
tree | ed001d07ed570d362007dc88c44dce38856599ec /spec | |
parent | 760b2c75ef9d2c6acb655860dceae4c04cd8e5a7 (diff) | |
download | gitlab-ce-acf49c6d89a38806fd722c2b9052f99c68822e43.tar.gz |
Fix access to the final page of todos
The todos page limit is 20, and both that and a user's pending todo count are
integers. Using integer division means that the result's floor will be taken,
defeating the point of the later call to `#ceil`.
So we need to convert one side of the division to a float first, otherwise the
last page won't be treated as available.
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/dashboard/todos_controller_spec.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/spec/controllers/dashboard/todos_controller_spec.rb b/spec/controllers/dashboard/todos_controller_spec.rb index d862e1447e3..f9faa4fa59a 100644 --- a/spec/controllers/dashboard/todos_controller_spec.rb +++ b/spec/controllers/dashboard/todos_controller_spec.rb @@ -44,11 +44,11 @@ describe Dashboard::TodosController do context 'when using pagination' do let(:last_page) { user.todos.page.total_pages } - let!(:issues) { create_list(:issue, 2, project: project, assignees: [user]) } + let!(:issues) { create_list(:issue, 3, project: project, assignees: [user]) } before do issues.each { |issue| todo_service.new_issue(issue, user) } - allow(Kaminari.config).to receive(:default_per_page).and_return(1) + allow(Kaminari.config).to receive(:default_per_page).and_return(2) end it 'redirects to last_page if page number is larger than number of pages' do |