diff options
author | Alfredo Sumaran <alfredo@gitlab.com> | 2016-05-09 17:19:26 -0500 |
---|---|---|
committer | Jacob Schatz <jschatz1@gmail.com> | 2016-05-25 08:15:20 -0400 |
commit | fd0c40fc801b766622654485717532f821efb795 (patch) | |
tree | 08df2258c49f2134b435b5172da7a7299c106ea8 /spec/features/todos | |
parent | 7d7ded5ee9ce05c41e1143d43cb49e261fb86423 (diff) | |
download | gitlab-ce-fd0c40fc801b766622654485717532f821efb795.tar.gz |
Address feedback
Signed-off-by: Alfredo Sumaran <alfredo@gitlab.com>
Diffstat (limited to 'spec/features/todos')
-rw-r--r-- | spec/features/todos/target_state_spec.rb | 65 | ||||
-rw-r--r-- | spec/features/todos/target_state_todos_spec.rb | 84 |
2 files changed, 65 insertions, 84 deletions
diff --git a/spec/features/todos/target_state_spec.rb b/spec/features/todos/target_state_spec.rb new file mode 100644 index 00000000000..604b3ee4056 --- /dev/null +++ b/spec/features/todos/target_state_spec.rb @@ -0,0 +1,65 @@ +require 'rails_helper' + +feature 'Todo target states', feature: true do + let(:user) { create(:user) } + let(:author) { create(:user) } + let(:project) { create(:project) } + + before do + login_as user + end + + scenario 'on a closed issue todo has closed label' do + issue_closed = create(:issue, state: 'closed') + create_todo issue_closed + visit dashboard_todos_path + + page.within '.todos-list' do + expect(page).to have_content('Closed') + end + end + + scenario 'on an open issue todo does not have an open label' do + issue_open = create(:issue) + create_todo issue_open + visit dashboard_todos_path + + page.within '.todos-list' do + expect(page).not_to have_content('Open') + end + end + + scenario 'on a merged merge request todo has merged label' do + mr_merged = create(:merge_request, :simple, author: user, state: 'merged') + create_todo mr_merged + visit dashboard_todos_path + + page.within '.todos-list' do + expect(page).to have_content('Merged') + end + end + + scenario 'on a closed merge request todo has closed label' do + mr_closed = create(:merge_request, :simple, author: user, state: 'closed') + create_todo mr_closed + visit dashboard_todos_path + + page.within '.todos-list' do + expect(page).to have_content('Closed') + end + end + + scenario 'on an open merge request todo does not have an open label' do + mr_open = create(:merge_request, :simple, author: user) + create_todo mr_open + visit dashboard_todos_path + + page.within '.todos-list' do + expect(page).not_to have_content('Open') + end + end + + def create_todo(target) + create(:todo, :mentioned, user: user, project: project, target: target, author: author) + end +end diff --git a/spec/features/todos/target_state_todos_spec.rb b/spec/features/todos/target_state_todos_spec.rb deleted file mode 100644 index c7c5cdb66b0..00000000000 --- a/spec/features/todos/target_state_todos_spec.rb +++ /dev/null @@ -1,84 +0,0 @@ -require 'rails_helper' - -describe 'Todos > Target State Labels' do - let(:user) { create(:user) } - let(:author) { create(:user) } - let(:project) { create(:project) } - let(:issue_open) { create(:issue) } - let(:issue_closed) { create(:issue, state: 'closed') } - let(:mr_open) { create(:merge_request, :simple, author: user) } - let(:mr_merged) { create(:merge_request, :simple, author: user, state: 'merged') } - let(:mr_closed) { create(:merge_request, :simple, author: user, state: 'closed') } - - describe 'GET /dashboard/todos' do - context 'On a todo for a Closed Issue' do - before do - create(:todo, :mentioned, user: user, project: project, target: issue_closed, author: author) - login_as user - visit dashboard_todos_path - end - - it 'has closed label' do - page.within '.todos-list' do - expect(page).to have_content('Closed') - end - end - end - - context 'On a todo for a Open Issue' do - before do - create(:todo, :mentioned, user: user, project: project, target: issue_open, author: author) - login_as user - visit dashboard_todos_path - end - - it 'does not have a open label' do - page.within '.todos-list' do - expect(page).not_to have_content('Open') - end - end - end - - context 'On a todo for a merged Merge Request' do - before do - create(:todo, :mentioned, user: user, project: project, target: mr_merged, author: author) - login_as user - visit dashboard_todos_path - end - - it 'has merged label' do - page.within '.todos-list' do - expect(page).to have_content('Merged') - end - end - end - - context 'On a todo for a closed Merge Request' do - before do - create(:todo, :mentioned, user: user, project: project, target: mr_closed, author: author) - login_as user - visit dashboard_todos_path - end - - it 'has closed label' do - page.within '.todos-list' do - expect(page).to have_content('Closed') - end - end - end - - context 'On a todo for a open Merge Request' do - before do - create(:todo, :mentioned, user: user, project: project, target: mr_open, author: author) - login_as user - visit dashboard_todos_path - end - - it 'does not have a open label' do - page.within '.todos-list' do - expect(page).not_to have_content('Open') - end - end - end - end -end |