Skip to content
Snippets Groups Projects
Commit d25f6fcf authored by Rémy Coutable's avatar Rémy Coutable
Browse files

Merge branch 'rs-simplify-todo-count-spec' into 'master'

Test todos_count_format helper at the correct level to improve speed

See merge request !12075
parents d08c28a5 f2dee8e8
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -47,11 +47,6 @@ class Dashboard::TodosController < Dashboard::ApplicationController
render json: todos_counts
end
 
# Used in TodosHelper also
def self.todos_count_format(count)
count >= 100 ? '99+' : count
end
private
 
def find_todos
Loading
Loading
Loading
Loading
@@ -4,7 +4,7 @@ module TodosHelper
end
 
def todos_count_format(count)
count > 99 ? '99+' : count
count > 99 ? '99+' : count.to_s
end
 
def todos_done_count
Loading
Loading
Loading
Loading
@@ -333,29 +333,6 @@ describe 'Dashboard Todos', feature: true do
end
end
 
context 'User have large number of todos' do
before do
create_list(:todo, 101, :mentioned, user: user, project: project, target: issue, author: author)
login_as(user)
visit dashboard_todos_path
end
it 'shows 99+ for count >= 100 in notification' do
expect(page).to have_selector('.todos-count', text: '99+')
end
it 'shows exact number in To do tab' do
expect(page).to have_selector('.todos-pending .badge', text: '101')
end
it 'shows exact number for count < 100' do
3.times { first('.js-done-todo').click }
expect(page).to have_selector('.todos-count', text: '98')
end
end
context 'User has a Build Failed todo' do
let!(:todo) { create(:todo, :build_failed, user: user, project: project, author: author) }
 
Loading
Loading
require "spec_helper"
 
describe TodosHelper do
describe '#todos_count_format' do
it 'shows fuzzy count for 100 or more items' do
expect(helper.todos_count_format(100)).to eq '99+'
expect(helper.todos_count_format(1000)).to eq '99+'
end
it 'shows exact count for 99 or fewer items' do
expect(helper.todos_count_format(99)).to eq '99'
expect(helper.todos_count_format(50)).to eq '50'
expect(helper.todos_count_format(1)).to eq '1'
end
end
describe '#todo_projects_options' do
let(:projects) { create_list(:empty_project, 3) }
let(:user) { create(:user) }
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment