Commit 1548643b authored by Ramya Authappan's avatar Ramya Authappan

Merge branch 'ml-add-create-status-issue-links' into 'master'

Add status_issue rspec tags for create tests

See merge request gitlab-org/gitlab!40058
parents 8690ce44 e1e874f0
......@@ -28,7 +28,7 @@ module QA
praefect_manager.reset_primary_to_original
end
it 'automatically fails over' do
it 'automatically fails over', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/976' do
# Create a new project with a commit and wait for it to replicate
Resource::Repository::ProjectPush.fabricate! do |push|
push.project = project
......@@ -66,7 +66,7 @@ module QA
end
context 'when recovering from dataloss after failover' do
it 'allows reconciliation', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/238187', type: :stale } do
it 'allows reconciliation', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/238187', type: :stale }, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/977' do
# Start the old primary node again
praefect_manager.start_primary_node
praefect_manager.wait_for_health_check_current_primary_node
......
......@@ -22,7 +22,7 @@ module QA
praefect_manager.reset_primary_to_original
end
it 'recovers from dataloss', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/238186', type: :investigating } do
it 'recovers from dataloss', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/238186', type: :investigating }, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/978' do
# Create a new project with a commit and wait for it to replicate
praefect_manager.wait_for_replication(project.id)
......
......@@ -25,7 +25,7 @@ module QA
end
end
context 'when moving from one Gitaly storage to another', :orchestrated, :repository_storage do
context 'when moving from one Gitaly storage to another', :orchestrated, :repository_storage, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/973' do
let(:source_storage) { { type: :gitaly, name: 'default' } }
let(:destination_storage) { { type: :gitaly, name: QA::Runtime::Env.additional_repository_storage } }
......@@ -43,7 +43,7 @@ module QA
# Note: This test doesn't have the :orchestrated tag because it runs in the Test::Integration::Praefect
# scenario with other tests that aren't considered orchestrated.
# It also runs on staging using nfs-file07 as non-cluster storage and nfs-file22 as cluster/praefect storage
context 'when moving from Gitaly to Gitaly Cluster', :requires_praefect do
context 'when moving from Gitaly to Gitaly Cluster', :requires_praefect, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/974' do
let(:source_storage) { { type: :gitaly, name: QA::Runtime::Env.non_cluster_repository_storage } }
let(:destination_storage) { { type: :praefect, name: QA::Runtime::Env.praefect_repository_storage } }
......
......@@ -25,7 +25,7 @@ module QA
Runtime::Feature.disable_and_verify('gitaly_distributed_reads')
end
it 'reads from each node' do
it 'reads from each node', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/979' do
pre_read_data = praefect_manager.query_read_distribution
wait_for_reads_to_increase(project, number_of_reads_per_loop, pre_read_data)
......@@ -53,7 +53,7 @@ module QA
praefect_manager.wait_for_reliable_connection
end
it 'does not read from the unhealthy node' do
it 'does not read from the unhealthy node', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/980' do
pre_read_data = praefect_manager.query_read_distribution
read_from_project(project, number_of_reads_per_loop * 10)
......
......@@ -19,7 +19,7 @@ module QA
praefect_manager.clear_replication_queue
end
it 'allows replication of different repository after interruption' do
it 'allows replication of different repository after interruption', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/975' do
# We want to fill the replication queue with 10 `in_progress` jobs,
# while a lock has been acquired, which is when the problem occurred
# as reported in https://gitlab.com/gitlab-org/gitaly/-/issues/2801
......
......@@ -12,7 +12,7 @@ module QA
let(:project_name) { "api-basics-#{SecureRandom.hex(8)}" }
let(:sanitized_project_path) { CGI.escape("#{Runtime::User.username}/#{project_name}") }
it 'user creates a project with a file and deletes them afterwards' do
it 'user creates a project with a file and deletes them afterwards', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/420' do
create_project_request = Runtime::API::Request.new(@api_client, '/projects')
post create_project_request.url, path: project_name, name: project_name
......@@ -76,7 +76,7 @@ module QA
SVG
end
it 'sets no-cache headers as expected' do
it 'sets no-cache headers as expected', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/421' do
create_project_request = Runtime::API::Request.new(@api_client, '/projects')
post create_project_request.url, path: project_name, name: project_name
......
......@@ -28,7 +28,7 @@ module QA
end
end
it 'download archives of each user project then check they are different' do
it 'download archives of each user project then check they are different', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/427' do
archive_checksums = {}
users.each do |user_key, user_info|
......
......@@ -12,7 +12,7 @@ module QA
Flow::Login.sign_in
end
it 'user adds a design and annotates it' do
it 'user adds a design and annotates it', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/955' do
issue.visit!
Page::Project::Issue::Show.perform do |issue|
......
......@@ -41,7 +41,7 @@ module QA
end
end
it 'closes an issue via pushing a commit' do
it 'closes an issue via pushing a commit', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/827' do
issue_key = Vendor::Jira::JiraAPI.perform do |jira_api|
jira_api.create_issue(jira_project_key)
end
......@@ -51,7 +51,7 @@ module QA
expect_issue_done(issue_key)
end
it 'closes an issue via a merge request' do
it 'closes an issue via a merge request', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/828' do
issue_key = Vendor::Jira::JiraAPI.perform do |jira_api|
jira_api.create_issue(jira_project_key)
end
......
......@@ -16,7 +16,7 @@ module QA
Flow::Login.sign_in
end
it 'creates a basic merge request', :smoke do
it 'creates a basic merge request', :smoke, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/409' do
Resource::MergeRequest.fabricate_via_browser_ui! do |merge_request|
merge_request.project = project
merge_request.title = merge_request_title
......@@ -29,7 +29,7 @@ module QA
end
end
it 'creates a merge request with a milestone and label' do
it 'creates a merge request with a milestone and label', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/514' do
gitlab_account_username = "@#{Runtime::User.username}"
milestone = Resource::ProjectMilestone.fabricate_via_api! do |milestone|
......
......@@ -9,7 +9,7 @@ module QA
end
end
it 'can merge feature branch fork to mainline' do
it 'can merge feature branch fork to mainline', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/928' do
Flow::Login.sign_in
merge_request.visit!
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/30226', type: :bug } do
describe 'Merge request rebasing' do
it 'user rebases source branch of merge request' do
it 'user rebases source branch of merge request', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/398' do
Flow::Login.sign_in
project = Resource::Project.fabricate_via_api! do |project|
......
......@@ -31,7 +31,7 @@ module QA
merge_request.visit!
end
it 'user squashes commits while merging' do
it 'user squashes commits while merging', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/418' do
Page::MergeRequest::Show.perform do |merge_request_page|
merge_request_page.retry_on_exception(reload: true) do
expect(merge_request_page).to have_text('to be squashed')
......
......@@ -15,7 +15,7 @@ module QA
merge_request.visit!
end
it 'views the merge request email patches' do
it 'views the merge request email patches', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/416' do
Page::MergeRequest::Show.perform(&:view_email_patches)
expect(page.text).to start_with('From')
......@@ -23,7 +23,7 @@ module QA
expect(page).to have_content("diff --git a/#{merge_request.file_name} b/#{merge_request.file_name}")
end
it 'views the merge request plain diff' do
it 'views the merge request plain diff', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/417' do
Page::MergeRequest::Show.perform(&:view_plain_diff)
expect(page.text).to start_with("diff --git a/#{merge_request.file_name} b/#{merge_request.file_name}")
......
......@@ -55,7 +55,7 @@ module QA
project.visit!
end
it 'lists branches correctly after CRUD operations' do
it 'lists branches correctly after CRUD operations', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/413' do
Page::Project::Menu.perform(&:go_to_repository_branches)
expect(page).to have_content(master_branch)
......
......@@ -26,7 +26,7 @@ module QA
project.wait_for_push_new_branch
end
it 'user performs a deep clone' do
it 'user performs a deep clone', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/475' do
Git::Repository.perform do |repository|
repository.uri = project.repository_http_location.uri
repository.use_default_credentials
......@@ -37,7 +37,7 @@ module QA
end
end
it 'user performs a shallow clone' do
it 'user performs a shallow clone', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/411' do
Git::Repository.perform do |repository|
repository.uri = project.repository_http_location.uri
repository.use_default_credentials
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create' do
describe 'Files management' do
it 'user creates, edits and deletes a file via the Web' do
it 'user creates, edits and deletes a file via the Web', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/451' do
Runtime::Browser.visit(:gitlab, Page::Main::Login)
Page::Main::Login.perform(&:sign_in_using_credentials)
......
......@@ -22,7 +22,7 @@ module QA
parent_project.add_member(user)
end
it 'creates a 2nd fork after moving the parent project' do
it 'creates a 2nd fork after moving the parent project', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/713' do
Flow::Login.sign_in(as: user)
fork_project.visit!
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create' do
describe 'Push over HTTP using Git protocol version 2', :requires_git_protocol_v2 do
it 'user pushes to the repository' do
it 'user pushes to the repository', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/469' do
Flow::Login.sign_in
# Create a project to push to
......
......@@ -27,7 +27,7 @@ module QA
Page::Main::Menu.perform(&:sign_out_if_signed_in)
end
it 'user pushes to the repository' do
it 'user pushes to the repository', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/386' do
project = Resource::Project.fabricate_via_api! do |project|
project.name = 'git-protocol-project'
end
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create' do
describe 'Git push over HTTP', :ldap_no_tls, :smoke do
it 'user using a personal access token pushes code to the repository' do
it 'user using a personal access token pushes code to the repository', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/430' do
Flow::Login.sign_in
access_token = Resource::PersonalAccessToken.fabricate!.access_token
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create' do
describe 'Push mirror a repository over HTTP' do
it 'configures and syncs a (push) mirrored repository' do
it 'configures and syncs a (push) mirrored repository', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/414' do
Runtime::Browser.visit(:gitlab, Page::Main::Login)
Page::Main::Login.perform(&:sign_in_using_credentials)
......
......@@ -26,7 +26,7 @@ module QA
set_file_size_limit(nil)
end
it 'push successful when the file size is under the limit' do
it 'push successful when the file size is under the limit', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/456' do
set_file_size_limit(5)
retry_on_fail do
......@@ -36,7 +36,7 @@ module QA
end
end
it 'push fails when the file size is above the limit' do
it 'push fails when the file size is above the limit', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/458' do
set_file_size_limit(2)
retry_on_fail do
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create' do
describe 'Git push over HTTP', :ldap_no_tls do
it 'user pushes code to the repository', :smoke do
it 'user pushes code to the repository', :smoke, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/426' do
Flow::Login.sign_in
Resource::Repository::ProjectPush.fabricate! do |push|
......@@ -18,7 +18,7 @@ module QA
end
end
it 'pushes to a project using a specific Praefect repository storage', :smoke, :requires_admin, :requires_praefect do
it 'pushes to a project using a specific Praefect repository storage', :smoke, :requires_admin, :requires_praefect, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/742' do
Flow::Login.sign_in_as_admin
project = Resource::Project.fabricate_via_api! do |storage_project|
......
......@@ -26,7 +26,7 @@ module QA
Flow::Login.sign_in
end
it 'pushes code to the repository via SSH', :smoke do
it 'pushes code to the repository via SSH', :smoke, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/969' do
Resource::Repository::ProjectPush.fabricate! do |push|
push.project = project
push.ssh_key = @key
......@@ -41,7 +41,7 @@ module QA
end
end
it 'pushes multiple branches and tags together', :smoke do
it 'pushes multiple branches and tags together', :smoke, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/970' do
branches = []
tags = []
Git::Repository.perform do |repository|
......
......@@ -18,7 +18,7 @@ module QA
end
context 'when developers and maintainers are allowed to push to a protected branch' do
it 'user with push rights successfully pushes to the protected branch' do
it 'user with push rights successfully pushes to the protected branch', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/447' do
create_protected_branch(allowed_to_push: {
roles: Resource::ProtectedBranch::Roles::DEVS_AND_MAINTAINERS
})
......@@ -30,7 +30,7 @@ module QA
end
context 'when developers and maintainers are not allowed to push to a protected branch' do
it 'user without push rights fails to push to the protected branch' do
it 'user without push rights fails to push to the protected branch', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/449' do
create_protected_branch(allowed_to_push: {
roles: Resource::ProtectedBranch::Roles::NO_ONE
})
......
......@@ -9,7 +9,7 @@ module QA
Flow::Login.sign_in
end
it 'user can add an SSH key' do
it 'user can add an SSH key', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/929' do
key = Resource::SSHKey.fabricate_via_browser_ui! do |resource|
resource.title = key_title
end
......@@ -20,7 +20,7 @@ module QA
# Note this context ensures that the example it contains is executed after the example above. Be aware of the order of execution if you add new examples in either context.
context 'after adding an ssh key' do
it 'can delete an ssh key' do
it 'can delete an ssh key', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/930' do
Page::Main::Menu.perform(&:click_settings_link)
Page::Profile::Menu.perform(&:click_ssh_keys)
Page::Profile::SSHKeys.perform do |ssh_keys|
......
......@@ -43,7 +43,7 @@ module QA
find('pre').text
end
it 'user views raw email patch' do
it 'user views raw email patch', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/442' do
view_commit
Page::Project::Commit::Show.perform(&:select_email_patches)
......@@ -53,7 +53,7 @@ module QA
expect(page).to have_content('diff --git a/second b/second')
end
it 'user views raw commit diff' do
it 'user views raw commit diff', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/439' do
view_commit
Page::Project::Commit::Show.perform(&:select_plain_diff)
......
......@@ -36,7 +36,7 @@ module QA
Flow::Login.sign_in
end
it 'clones, pushes, and pulls a snippet over HTTP, edits via UI' do
it 'clones, pushes, and pulls a snippet over HTTP, edits via UI', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/826' do
Resource::Repository::Push.fabricate! do |push|
push.repository_http_uri = repository_uri_http
push.file_name = new_file
......@@ -65,7 +65,7 @@ module QA
end
end
it 'clones, pushes, and pulls a snippet over SSH, deletes via UI' do
it 'clones, pushes, and pulls a snippet over SSH, deletes via UI', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/825' do
Resource::Repository::Push.fabricate! do |push|
push.repository_ssh_uri = repository_uri_ssh
push.ssh_key = ssh_key
......
......@@ -36,7 +36,7 @@ module QA
Flow::Login.sign_in
end
it 'clones, pushes, and pulls a project snippet over HTTP, edits via UI' do
it 'clones, pushes, and pulls a project snippet over HTTP, edits via UI', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/833' do
Resource::Repository::Push.fabricate! do |push|
push.repository_http_uri = repository_uri_http
push.file_name = new_file
......@@ -65,7 +65,7 @@ module QA
end
end
it 'clones, pushes, and pulls a project snippet over SSH, deletes via UI' do
it 'clones, pushes, and pulls a project snippet over SSH, deletes via UI', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/832' do
Resource::Repository::Push.fabricate! do |push|
push.repository_ssh_uri = repository_uri_ssh
push.ssh_key = ssh_key
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create', :smoke do
describe 'Personal snippet creation' do
it 'User creates a personal snippet' do
it 'User creates a personal snippet', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/840' do
Flow::Login.sign_in
Page::Main::Menu.perform do |menu|
......
......@@ -3,7 +3,7 @@
module QA
RSpec.describe 'Create' do # to be converted to a smoke test once proved to be stable
describe 'Project snippet creation' do
it 'User creates a project snippet' do
it 'User creates a project snippet', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/839' do
Flow::Login.sign_in
Resource::ProjectSnippet.fabricate_via_browser_ui! do |snippet|
......
......@@ -17,7 +17,7 @@ module QA
Flow::Login.sign_in
end
it "creates the first file in an empty project via Web IDE" do
it "creates the first file in an empty project via Web IDE", status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/847' do
# In the first iteration, the test opens Web IDE by modifying the URL to address past regressions.
# Once the Web IDE button is introduced for empty projects, the test will be modified to go through UI.
# See https://gitlab.com/gitlab-org/gitlab/-/issues/27915 and https://gitlab.com/gitlab-org/gitlab/-/issues/27535.
......
......@@ -14,7 +14,7 @@ module QA
let(:user) { Resource::User.fabricate_or_use(Runtime::Env.gitlab_qa_username_1, Runtime::Env.gitlab_qa_password_1) }
context 'when no fork is present' do
it 'suggests to create a fork when a user clicks Web IDE in the main project' do
it 'suggests to create a fork when a user clicks Web IDE in the main project', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/959' do
Flow::Login.sign_in(as: user)
parent_project.visit!
......@@ -34,7 +34,7 @@ module QA
end
end
it 'opens the fork when a user clicks Web IDE in the main project' do
it 'opens the fork when a user clicks Web IDE in the main project', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/960' do
Flow::Login.sign_in(as: user)
fork_project.upstream.visit!
Page::Project::Show.perform do |project_page|
......
......@@ -20,7 +20,7 @@ module QA
merge_request.visit!
end
it 'opens and edits a merge request in Web IDE' do
it 'opens and edits a merge request in Web IDE', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/705' do
Page::MergeRequest::Show.perform do |show|
show.click_open_in_web_ide
end
......
......@@ -15,7 +15,7 @@ module QA
Flow::Login.sign_in
end
it 'by adding a home page to the wiki' do
it 'by adding a home page to the wiki', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/856' do
project.visit!
Page::Project::Menu.perform(&:click_wiki)
......@@ -35,7 +35,7 @@ module QA
end
end
it 'by adding a second page to the wiki' do
it 'by adding a second page to the wiki', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/855' do
wiki.visit!
Page::Project::Wiki::Show.perform(&:click_new_page)
......@@ -54,7 +54,7 @@ module QA
end
end
it 'by adding a home page to the wiki using git push' do
it 'by adding a home page to the wiki using git push', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/853' do
empty_wiki = Resource::Wiki::ProjectPage.new do |empty_wiki|
empty_wiki.project = project
end
......@@ -73,7 +73,7 @@ module QA
end
end
it 'by adding a second page to the wiki using git push' do
it 'by adding a second page to the wiki using git push', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/854' do
Resource::Repository::WikiPush.fabricate! do |push|
push.file_name = "#{new_wiki_title}.md"
push.file_content = new_wiki_content
......
......@@ -14,7 +14,7 @@ module QA
Flow::Login.sign_in
end
it 'by manipulating content on the page' do
it 'by manipulating content on the page', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/857' do
wiki.visit!
Page::Project::Wiki::Show.perform(&:click_edit)
......@@ -33,7 +33,7 @@ module QA
end
end
it 'by manipulating content on the page using git push' do
it 'by manipulating content on the page using git push', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/858' do
Resource::Repository::WikiPush.fabricate! do |push|
push.file_content = new_wiki_content
push.commit_message = commit_message
......
......@@ -10,7 +10,7 @@ module QA
Flow::Login.sign_in
end
it 'has changed the directory' do
it 'has changed the directory', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/948' do
initial_wiki.visit!
Page::Project::Wiki::Show.perform(&:click_edit)
......
......@@ -15,7 +15,7 @@ module QA
end
context 'Sidebar' do
it 'has all expected links that work' do
it 'has all expected links that work', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/903' do
small_wiki.visit!
small_number_of_pages.times do |index|
......@@ -35,7 +35,7 @@ module QA
end
context 'Page List' do
it 'has all expected links that work' do
it 'has all expected links that work', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/902' do
large_wiki.visit!
Page::Project::Wiki::Show.perform(&:click_view_all_pages)
......
......@@ -10,7 +10,7 @@ module QA
end
context 'Page deletion' do
it 'has removed the deleted page correctly' do
it 'has removed the deleted page correctly', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/921' do
initial_wiki.visit!
Page::Project::Wiki::Show.perform(&:click_edit)
......
......@@ -41,7 +41,7 @@ module QA
Page::Group::Menu.perform(&:click_contribution_analytics_item)
end
it 'tests contributions', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/225303', type: :bug } do
it 'tests contributions', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/225303', type: :bug }, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/527' do
EE::Page::Group::ContributionAnalytics.perform do |contribution_analytics|
expect(contribution_analytics).to have_push_element('3 pushes, more than 4.0 commits by 1 person contributors.')
expect(contribution_analytics).to have_mr_element('1 created, 1 merged.')
......
......@@ -26,7 +26,7 @@ module QA
setup_jenkins
end
it 'integrates and displays build status for MR pipeline in GitLab' do
it 'integrates and displays build status for MR pipeline in GitLab', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/719' do
login_to_gitlab
setup_project_integration_with_jenkins
......
......@@ -17,7 +17,7 @@ module QA
end
end
it 'user submits a non-diff review' do
it 'user submits a non-diff review', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/637' do
Flow::Login.sign_in
merge_request.visit!
......@@ -38,7 +38,7 @@ module QA
end
end
it 'user submits a diff review' do
it 'user submits a diff review', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/638' do
Flow::Login.sign_in
merge_request.visit!
......
......@@ -23,7 +23,7 @@ module QA
login
end
it 'allows multiple approval rules with users and groups' do
it 'allows multiple approval rules with users and groups', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/578' do
# Create a merge request with 2 rules
merge_request = Resource::MergeRequest.fabricate_via_browser_ui! do |resource|
resource.title = 'Add a new feature'
......
......@@ -25,7 +25,7 @@ module QA
project.visit!
end
it 'merge request assigns code owners as approvers' do
it 'merge request assigns code owners as approvers', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/605' do
# Commit CODEOWNERS to master
Resource::Repository::Commit.fabricate_via_api! do |commit|
commit.project = project
......
......@@ -35,7 +35,7 @@ module QA
end
end
it 'displays owners specified in CODEOWNERS file' do
it 'displays owners specified in CODEOWNERS file', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/519' do
codeowners_file_content =
<<-CONTENT
* @#{@user2.username}
......
......@@ -28,7 +28,7 @@ module QA
end
end
it 'locks a directory and tries to push as a second user' do
it 'locks a directory and tries to push as a second user', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/557' do
push branch: 'master', file: 'directory/file', as_user: @user_one
sign_out_and_sign_in_as user: @user_one
......@@ -39,7 +39,7 @@ module QA
expect_no_error_on_push for_file: 'directory/file', as_user: @user_one
end
it 'locks a file and tries to push as a second user' do
it 'locks a file and tries to push as a second user', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/558' do
sign_out_and_sign_in_as user: @user_one
go_to_file
click_lock
......@@ -48,7 +48,7 @@ module QA
expect_no_error_on_push as_user: @user_one
end
it 'checks file locked by other user to be disabled' do
it 'checks file locked by other user to be disabled', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/556' do
go_to_file
click_lock
sign_out_and_sign_in_as user: @user_one
......@@ -59,7 +59,7 @@ module QA
end
end
it 'creates a merge request and fails to merge', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/issues/40125', type: :bug } do
it 'creates a merge request and fails to merge', quarantine: { issue: 'https://gitlab.com/gitlab-org/gitlab/issues/40125', type: :bug }, status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/559' do
push branch: 'test', as_user: @user_one
merge_request = Resource::MergeRequest.fabricate_via_api! do |merge_request|
......@@ -77,7 +77,7 @@ module QA
expect(page).to have_text("locked by #{admin_username}")
end
it 'locks a file and unlocks in list' do
it 'locks a file and unlocks in list', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/555' do
sign_out_and_sign_in_as user: @user_one
go_to_file
click_lock
......
......@@ -5,7 +5,7 @@ module QA
# Use Admin credentials as a workaround for a permissions bug
# See https://gitlab.com/gitlab-org/gitlab/issues/13769
describe 'Pull mirror a repository over HTTP', :requires_admin do
it 'configures and syncs a (pull) mirrored repository with password auth' do
it 'configures and syncs a (pull) mirrored repository with password auth', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/520' do
Flow::Login.sign_in_as_admin
source = Resource::Repository::ProjectPush.fabricate! do |project_push|
......
......@@ -25,7 +25,7 @@ module QA
target_project.visit!
end
it 'configures and syncs a (pull) mirrored repository' do
it 'configures and syncs a (pull) mirrored repository', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/401' do
# Configure the target project to pull from the source project
# And get the public key to be used as a deploy key
Page::Project::Menu.perform(&:go_to_repository_settings)
......
......@@ -29,11 +29,11 @@ module QA
end
end
it 'allows an unrestricted push' do
it 'allows an unrestricted push', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/760' do
expect_no_error_on_push(file: standard_file)
end
it 'restricts files by name and size' do
it 'restricts files by name and size', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/653' do
# Note: The file size limits in this test should be lower than the limits in
# browser_ui/3_create/repository/push_over_http_file_size_spec to prevent
# the limit set in that test from triggering in this test (which can happen
......@@ -55,7 +55,7 @@ module QA
error: Regexp.escape("File name #{@file_name_limitation} was blacklisted by the pattern #{@file_name_limitation}"))
end
it 'restricts users by email format' do
it 'restricts users by email format', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/652' do
gitlab_user = Resource::User.fabricate_or_use(Runtime::Env.gitlab_qa_username_2, Runtime::Env.gitlab_qa_password_2)
@project.add_member(gitlab_user, Resource::Members::AccessLevel::MAINTAINER)
......@@ -63,12 +63,12 @@ module QA
error: Regexp.escape("Committer's email '#{gitlab_user.email}' does not follow the pattern '#{@authors_email_limitation}'"))
end
it 'restricts branches by branch name' do
it 'restricts branches by branch name', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/649' do
expect_error_on_push(file: standard_file, branch: 'forbidden_branch',
error: Regexp.escape("Branch name does not follow the pattern '#{@branch_name_limitation}'"))
end
it 'restricts commit by message format' do
it 'restricts commit by message format', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/648' do
expect_no_error_on_push(file: standard_file, commit_message: @needed_phrase_limitation)
expect_error_on_push(file: standard_file, commit_message: 'forbidden message',
error: Regexp.escape("Commit message does not follow the pattern '#{@needed_phrase_limitation}'"))
......@@ -76,7 +76,7 @@ module QA
error: Regexp.escape("Commit message contains the forbidden pattern '#{@deny_message_phrase_limitation}'"))
end
it 'restricts committing files with secrets' do
it 'restricts committing files with secrets', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/647' do
secret_file = [{
name: 'id_rsa',
content: SecureRandom.hex(100)
......@@ -86,7 +86,7 @@ module QA
error: Regexp.escape('File name id_rsa was blacklisted by the pattern id_rsa$'))
end
it 'restricts removal of tag' do
it 'restricts removal of tag', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/650' do
tag = Resource::Tag.fabricate_via_api! do |tag|
tag.project = @project
tag.ref = 'master'
......@@ -110,7 +110,7 @@ module QA
end
end
it 'rejects non-member users' do
it 'rejects non-member users', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/879' do
non_member_user = Resource::User.new.tap do |user|
user.username = ''
user.password = ''
......@@ -135,7 +135,7 @@ module QA
end
end
it 'rejects unverified emails' do
it 'rejects unverified emails', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/761' do
expect_no_error_on_push(file: standard_file)
expect_error_on_push(file: standard_file, user: @root,
error: 'You can only push commits that were committed with one of your own verified emails')
......@@ -156,7 +156,7 @@ module QA
@gpg = Resource::UserGPG.fabricate_via_api!
end
it 'restricts to signed commits' do
it 'restricts to signed commits', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/655' do
expect_no_error_on_push(file: standard_file, gpg: @gpg)
expect_error_on_push(file: standard_file, error: 'Commit must be signed with a GPG key')
end
......
......@@ -51,7 +51,7 @@ module QA
@runner.remove_via_api! if @runner
end
it 'user starts the web terminal' do
it 'user starts the web terminal', status_issue: 'https://gitlab.com/gitlab-org/quality/testcases/-/issues/405' do
Page::Project::Show.perform(&:open_web_ide!)
# Start the web terminal and check that there were no errors
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment