diff --git a/qa/qa/git/repository.rb b/qa/qa/git/repository.rb index 09052a5e33f153e8d965852edbbb95db849af2a7..f56fab63198a8ee55dd73d5fe62e96660f15e0f5 100644 --- a/qa/qa/git/repository.rb +++ b/qa/qa/git/repository.rb @@ -76,7 +76,7 @@ def shallow_clone end def configure_identity(name, email) - run(%Q{git config user.name #{name}}) + run(%Q{git config user.name "#{name}"}) run(%Q{git config user.email #{email}}) end diff --git a/qa/qa/resource/repository/commit.rb b/qa/qa/resource/repository/commit.rb index 8ce5a137486db928cf203c0c6d1b9d59a374e72c..4b5e8535ade7cb44372a451a1d7ba9ff07f82c79 100644 --- a/qa/qa/resource/repository/commit.rb +++ b/qa/qa/resource/repository/commit.rb @@ -59,9 +59,9 @@ def api_post_body def actions pending_actions = [] - @add_files.map { |file| pending_actions << file.merge({ action: "create" }) } if @add_files - @update_files.map { |file| pending_actions << file.merge({ action: "update" }) } if @update_files - pending_actions + pending_actions << @add_files.map { |file| file.merge({ action: "create" }) } if @add_files + pending_actions << @update_files.map { |file| file.merge({ action: "update" }) } if @update_files + pending_actions.flatten end private diff --git a/qa/qa/resource/user.rb b/qa/qa/resource/user.rb index c166a4d4b59cd1fb1288f48964157c8117282aa2..dcf145c9882fb74a7c497ead3cd3f48c9e3f0db1 100644 --- a/qa/qa/resource/user.rb +++ b/qa/qa/resource/user.rb @@ -26,7 +26,7 @@ def password end def name - @name ||= api_resource&.dig(:name) || username + @name ||= api_resource&.dig(:name) || "QA User #{unique_id}" end def email @@ -91,9 +91,8 @@ def api_post_body def self.fabricate_or_use(username = nil, password = nil) if Runtime::Env.signup_disabled? - self.new.tap do |user| + self.fabricate_via_api! do |user| user.username = username - user.password = password end else self.fabricate! diff --git a/qa/qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb b/qa/qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb index ac5db53ad40b07de9f49e111029d881c1c4cdf42..5ba434a77813c24a249090b4e0f9c501eab23f78 100644 --- a/qa/qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb +++ b/qa/qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb @@ -46,7 +46,7 @@ def create_project(user, api_client, project_name) project.standalone = true project.add_name_uuid = false project.name = project_name - project.path_with_namespace = "#{user.name}/#{project_name}" + project.path_with_namespace = "#{user.username}/#{project_name}" project.user = user project.api_client = api_client end diff --git a/qa/qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb b/qa/qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb index 5b4ffadf0ffdb789d58267ddfefa5df6056f96f6..e42d538fdf8273c1ffd7099c41a7f8ecb7f59faf 100644 --- a/qa/qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb +++ b/qa/qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb @@ -6,8 +6,10 @@ module QA include Runtime::Fixtures def login - Runtime::Browser.visit(:gitlab, Page::Main::Login) - Page::Main::Login.perform(&:sign_in_using_credentials) + unless Page::Main::Menu.perform(&:signed_in?) + Runtime::Browser.visit(:gitlab, Page::Main::Login) + Page::Main::Login.perform(&:sign_in_using_credentials) + end end before(:all) do diff --git a/qa/spec/resource/user_spec.rb b/qa/spec/resource/user_spec.rb index d612dfc530e60ec3a8bd0473e1caaf9ff26e2cec..5845f7996a30a86d2096f8d0ab1f0666b5f0b0c0 100644 --- a/qa/spec/resource/user_spec.rb +++ b/qa/spec/resource/user_spec.rb @@ -35,8 +35,8 @@ end describe '#name' do - it 'defaults to the username' do - expect(subject.name).to eq(subject.username) + it 'defaults to a name based on the username' do + expect(subject.name).to match(/#{subject.username.tr('-', ' ')}/i) end it 'retrieves the name from the api_resource if present' do