summaryrefslogtreecommitdiff
path: root/spec/features/boards
diff options
context:
space:
mode:
authorPhil Hughes <me@iamphill.com>2016-08-10 15:13:42 +0100
committerPhil Hughes <me@iamphill.com>2016-08-17 17:17:39 +0100
commit1faf67f0e6b88b790737e0e4662dfed0eaf72583 (patch)
treed35eb70e70240752792ae950ef4ad5f928ef6592 /spec/features/boards
parentf60a030e34045dee112258c1a6d45aeb0ad5d259 (diff)
downloadgitlab-ce-1faf67f0e6b88b790737e0e4662dfed0eaf72583.tar.gz
Added tests for infinite scrolling lists
Diffstat (limited to 'spec/features/boards')
-rw-r--r--spec/features/boards/boards_spec.rb44
1 files changed, 44 insertions, 0 deletions
diff --git a/spec/features/boards/boards_spec.rb b/spec/features/boards/boards_spec.rb
index 1f681bd3873..76bd26f434e 100644
--- a/spec/features/boards/boards_spec.rb
+++ b/spec/features/boards/boards_spec.rb
@@ -93,6 +93,25 @@ describe 'Issue Boards', feature: true, js: true do
expect(page).to have_selector('.board', count: 3)
end
+ it 'infinite scrolls list' do
+ 50.times do
+ create(:issue, project: project)
+ end
+
+ visit namespace_project_board_path(project.namespace, project)
+ sleep 1
+
+ page.within(first('.board')) do
+ expect(page.find('.board-header')).to have_content('20')
+ expect(page).to have_selector('.card', count: 20)
+
+ evaluate_script("document.querySelectorAll('.board .board-list')[0].scrollTop = document.querySelectorAll('.board .board-list')[0].scrollHeight")
+
+ expect(page.find('.board-header')).to have_content('40')
+ expect(page).to have_selector('.card', count: 40)
+ end
+ end
+
context 'backlog' do
it 'shows issues in backlog with no labels' do
page.within(first('.board')) do
@@ -334,6 +353,31 @@ describe 'Issue Boards', feature: true, js: true do
end
end
+ it 'infinite scrolls list with label filter' do
+ 50.times do
+ create(:labeled_issue, project: project, labels: [testing])
+ end
+
+ page.within '.issues-filters' do
+ click_button('Label')
+
+ page.within '.dropdown-menu-labels' do
+ click_link(testing.title)
+ find('.dropdown-menu-close').click
+ end
+ end
+
+ page.within(first('.board')) do
+ expect(page.find('.board-header')).to have_content('20')
+ expect(page).to have_selector('.card', count: 20)
+
+ evaluate_script("document.querySelectorAll('.board .board-list')[0].scrollTop = document.querySelectorAll('.board .board-list')[0].scrollHeight")
+
+ expect(page.find('.board-header')).to have_content('40')
+ expect(page).to have_selector('.card', count: 40)
+ end
+ end
+
it 'filters by multiple labels' do
page.within '.issues-filters' do
click_button('Label')