diff options
author | Grzegorz Bizon <grzegorz@gitlab.com> | 2018-09-03 09:52:37 +0300 |
---|---|---|
committer | Grzegorz Bizon <grzegorz@gitlab.com> | 2018-09-03 09:52:37 +0300 |
commit | dad32f9ce6ec75469bf7eab53835dfe8f5da1236 (patch) | |
tree | 269db34c5a4dee1037341d1c3acc8da885596c8b | |
parent | ba99dfcde262c91e33b5bf7f86ba7c0e3b6f7e52 (diff) | |
parent | 3c633844d02a548d97612d053d14460fe166bed0 (diff) |
Merge branch 'sh-add-object-storage-qa' into 'master'
Add basic QA test for testing attachment uploads
Closes #49957
See merge request gitlab-org/gitlab-ce!21300
-rw-r--r-- | qa/qa.rb | 1 | ||||
-rw-r--r-- | qa/qa/scenario/test/integration/object_storage.rb | 13 | ||||
-rw-r--r-- | qa/qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb | 30 |
3 files changed, 43 insertions, 1 deletions
@@ -94,6 +94,7 @@ module QA autoload :LDAP, 'qa/scenario/test/integration/ldap' autoload :Kubernetes, 'qa/scenario/test/integration/kubernetes' autoload :Mattermost, 'qa/scenario/test/integration/mattermost' + autoload :ObjectStorage, 'qa/scenario/test/integration/object_storage' end module Sanity diff --git a/qa/qa/scenario/test/integration/object_storage.rb b/qa/qa/scenario/test/integration/object_storage.rb new file mode 100644 index 00000000000..874789db20d --- /dev/null +++ b/qa/qa/scenario/test/integration/object_storage.rb @@ -0,0 +1,13 @@ +# frozen_string_literal: true + +module QA + module Scenario + module Test + module Integration + class ObjectStorage < Test::Instance + tags :object_storage + end + end + end + end +end diff --git a/qa/qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb b/qa/qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb index dd1be935220..542f532a629 100644 --- a/qa/qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb +++ b/qa/qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb @@ -5,18 +5,46 @@ module QA describe 'Issue creation' do let(:issue_title) { 'issue title' } - it 'user creates an issue' do + def create_issue Runtime::Browser.visit(:gitlab, Page::Main::Login) Page::Main::Login.act { sign_in_using_credentials } Factory::Resource::Issue.fabricate! do |issue| issue.title = issue_title end + end + + it 'user creates an issue' do + create_issue Page::Menu::Side.act { click_issues } expect(page).to have_content(issue_title) end + + context 'when using attachments in comments', :object_storage do + let(:file_to_attach) do + File.absolute_path(File.join('spec', 'fixtures', 'banana_sample.gif')) + end + + it 'user comments on an issue with an attachment' do + create_issue + + Page::Project::Issue::Show.perform do |show| + show.comment('See attached banana for scale', attachment: file_to_attach) + + show.refresh + + image_url = find('a[href$="banana_sample.gif"]')[:href] + + found = show.wait(reload: false) do + show.asset_exists?(image_url) + end + + expect(found).to be_truthy + end + end + end end end end |