summaryrefslogtreecommitdiff
path: root/spec/features
diff options
context:
space:
mode:
authorFabio Pitino <fpitino@gitlab.com>2019-06-17 16:14:02 +0100
committerFabio Pitino <fpitino@gitlab.com>2019-06-17 16:14:02 +0100
commit13268ba6bfa6659b7b4db46266a8f5063db91619 (patch)
treea656134da90c499cb6c3db303c91223378fffd08 /spec/features
parent81848b6375169705d0d7a00ff2b10cb0db71c8a9 (diff)
downloadgitlab-ce-13268ba6bfa6659b7b4db46266a8f5063db91619.tar.gz
Extract shared examples for duplicate sections and non
Diffstat (limited to 'spec/features')
-rw-r--r--spec/features/projects/jobs/user_browses_job_spec.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/spec/features/projects/jobs/user_browses_job_spec.rb b/spec/features/projects/jobs/user_browses_job_spec.rb
index 49a7904f2e2..fbe765d4c44 100644
--- a/spec/features/projects/jobs/user_browses_job_spec.rb
+++ b/spec/features/projects/jobs/user_browses_job_spec.rb
@@ -34,6 +34,34 @@ describe 'User browses a job', :js do
expect(page).to have_content('Job has been erased')
end
+ shared_examples 'has collapsible sections' do
+ it 'collapses the section clicked' do
+ wait_for_requests
+ text_to_hide = "Cloning into '/nolith/ci-tests'"
+ text_to_show = 'Waiting for pod'
+
+ expect(page).to have_content(text_to_hide)
+ expect(page).to have_content(text_to_show)
+
+ first('.js-section-start[data-section="get-sources"]').click
+
+ expect(page).not_to have_content(text_to_hide)
+ expect(page).to have_content(text_to_show)
+ end
+ end
+
+ context 'when job trace contains sections' do
+ let!(:build) { create(:ci_build, :success, :trace_with_sections, :coverage, pipeline: pipeline) }
+
+ it_behaves_like 'has collapsible sections'
+ end
+
+ context 'when job trace contains duplicate sections' do
+ let!(:build) { create(:ci_build, :success, :trace_with_duplicate_sections, :coverage, pipeline: pipeline) }
+
+ it_behaves_like 'has collapsible sections'
+ end
+
context 'when job trace contains sections' do
let!(:build) { create(:ci_build, :success, :trace_with_duplicate_sections, :coverage, pipeline: pipeline) }