diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-11-18 13:16:36 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-11-18 13:16:36 +0000 |
commit | 311b0269b4eb9839fa63f80c8d7a58f32b8138a0 (patch) | |
tree | 07e7870bca8aed6d61fdcc810731c50d2c40af47 /spec/support/helpers | |
parent | 27909cef6c4170ed9205afa7426b8d3de47cbb0c (diff) | |
download | gitlab-ce-311b0269b4eb9839fa63f80c8d7a58f32b8138a0.tar.gz |
Add latest changes from gitlab-org/gitlab@14-5-stable-eev14.5.0-rc42
Diffstat (limited to 'spec/support/helpers')
-rw-r--r-- | spec/support/helpers/cycle_analytics_helpers.rb | 4 | ||||
-rw-r--r-- | spec/support/helpers/features/invite_members_modal_helper.rb | 2 | ||||
-rw-r--r-- | spec/support/helpers/gitaly_setup.rb | 2 | ||||
-rw-r--r-- | spec/support/helpers/gpg_helpers.rb | 1 | ||||
-rw-r--r-- | spec/support/helpers/graphql_helpers.rb | 3 | ||||
-rw-r--r-- | spec/support/helpers/migrations_helpers.rb | 6 | ||||
-rw-r--r-- | spec/support/helpers/navbar_structure_helper.rb | 13 | ||||
-rw-r--r-- | spec/support/helpers/project_forks_helper.rb | 6 | ||||
-rw-r--r-- | spec/support/helpers/require_migration.rb | 6 | ||||
-rw-r--r-- | spec/support/helpers/stub_gitlab_calls.rb | 9 | ||||
-rw-r--r-- | spec/support/helpers/stub_object_storage.rb | 12 | ||||
-rw-r--r-- | spec/support/helpers/test_env.rb | 4 | ||||
-rw-r--r-- | spec/support/helpers/usage_data_helpers.rb | 2 | ||||
-rw-r--r-- | spec/support/helpers/workhorse_helpers.rb | 7 |
14 files changed, 52 insertions, 25 deletions
diff --git a/spec/support/helpers/cycle_analytics_helpers.rb b/spec/support/helpers/cycle_analytics_helpers.rb index 3ec52f8c832..722d484609c 100644 --- a/spec/support/helpers/cycle_analytics_helpers.rb +++ b/spec/support/helpers/cycle_analytics_helpers.rb @@ -63,6 +63,10 @@ module CycleAnalyticsHelpers wait_for_requests end + def click_save_value_stream_button + click_button(_('Save value stream')) + end + def create_custom_value_stream(custom_value_stream_name) toggle_value_stream_dropdown page.find_button(_('Create new Value Stream')).click diff --git a/spec/support/helpers/features/invite_members_modal_helper.rb b/spec/support/helpers/features/invite_members_modal_helper.rb index 69ba20c1ca4..3502558b2c2 100644 --- a/spec/support/helpers/features/invite_members_modal_helper.rb +++ b/spec/support/helpers/features/invite_members_modal_helper.rb @@ -8,7 +8,7 @@ module Spec def invite_member(name, role: 'Guest', expires_at: nil, area_of_focus: false) click_on 'Invite members' - page.within '#invite-members-modal' do + page.within '[data-testid="invite-members-modal"]' do find('[data-testid="members-token-select-input"]').set(name) wait_for_requests diff --git a/spec/support/helpers/gitaly_setup.rb b/spec/support/helpers/gitaly_setup.rb index 5cfd03ecea8..8a329c2f9dd 100644 --- a/spec/support/helpers/gitaly_setup.rb +++ b/spec/support/helpers/gitaly_setup.rb @@ -98,7 +98,7 @@ module GitalySetup end def build_gitaly - system(env, 'make', chdir: tmp_tests_gitaly_dir) # rubocop:disable GitlabSecurity/SystemCommandInjection + system(env.merge({ 'GIT_VERSION' => nil }), 'make all git', chdir: tmp_tests_gitaly_dir) # rubocop:disable GitlabSecurity/SystemCommandInjection end def start_gitaly diff --git a/spec/support/helpers/gpg_helpers.rb b/spec/support/helpers/gpg_helpers.rb index 813c6176317..81e669aab57 100644 --- a/spec/support/helpers/gpg_helpers.rb +++ b/spec/support/helpers/gpg_helpers.rb @@ -4,6 +4,7 @@ module GpgHelpers SIGNED_COMMIT_SHA = '8a852d50dda17cc8fd1408d2fd0c5b0f24c76ca4' SIGNED_AND_AUTHORED_SHA = '3c1d9a0266cb0c62d926f4a6c649beed561846f5' DIFFERING_EMAIL_SHA = 'a17a9f66543673edf0a3d1c6b93bdda3fe600f32' + MULTIPLE_SIGNATURES_SHA = 'c7794c14268d67ad8a2d5f066d706539afc75a96' module User1 extend self diff --git a/spec/support/helpers/graphql_helpers.rb b/spec/support/helpers/graphql_helpers.rb index 6f17d3cb496..ee4621deb2d 100644 --- a/spec/support/helpers/graphql_helpers.rb +++ b/spec/support/helpers/graphql_helpers.rb @@ -522,8 +522,7 @@ module GraphqlHelpers end end - # See note at graphql_data about memoization and multiple requests - def graphql_errors(body = json_response) + def graphql_errors(body = fresh_response_data) case body when Hash # regular query body['errors'] diff --git a/spec/support/helpers/migrations_helpers.rb b/spec/support/helpers/migrations_helpers.rb index 7799e49d4c1..0c5bf09f6b7 100644 --- a/spec/support/helpers/migrations_helpers.rb +++ b/spec/support/helpers/migrations_helpers.rb @@ -2,7 +2,7 @@ module MigrationsHelpers def active_record_base - ActiveRecord::Base + Gitlab::Database.database_base_models.fetch(self.class.metadata[:database] || :main) end def table(name) @@ -34,7 +34,7 @@ module MigrationsHelpers end def migrations_paths - ActiveRecord::Migrator.migrations_paths + active_record_base.connection.migrations_paths end def migration_context @@ -52,7 +52,7 @@ module MigrationsHelpers end def foreign_key_exists?(source, target = nil, column: nil) - ActiveRecord::Base.connection.foreign_keys(source).any? do |key| + active_record_base.connection.foreign_keys(source).any? do |key| if column key.options[:column].to_s == column.to_s else diff --git a/spec/support/helpers/navbar_structure_helper.rb b/spec/support/helpers/navbar_structure_helper.rb index 96e79427278..c2ec82155cd 100644 --- a/spec/support/helpers/navbar_structure_helper.rb +++ b/spec/support/helpers/navbar_structure_helper.rb @@ -29,6 +29,19 @@ module NavbarStructureHelper ) end + def insert_customer_relations_nav(within) + insert_after_nav_item( + within, + new_nav_item: { + nav_item: _('Customer relations'), + nav_sub_items: [ + _('Contacts'), + _('Organizations') + ] + } + ) + end + def insert_container_nav insert_after_sub_nav_item( _('Package Registry'), diff --git a/spec/support/helpers/project_forks_helper.rb b/spec/support/helpers/project_forks_helper.rb index 4b4285f251e..84b5dbc1d23 100644 --- a/spec/support/helpers/project_forks_helper.rb +++ b/spec/support/helpers/project_forks_helper.rb @@ -28,11 +28,15 @@ module ProjectForksHelper unless params[:target_project] || params[:using_service] target_level = [project.visibility_level, namespace.visibility_level].min visibility_level = Gitlab::VisibilityLevel.closest_allowed_level(target_level) + # Builds and MRs can't have higher visibility level than repository access level. + builds_access_level = [project.builds_access_level, project.repository_access_level].min params[:target_project] = create(:project, (:repository if create_repository), - visibility_level: visibility_level, creator: user, namespace: namespace) + visibility_level: visibility_level, + builds_access_level: builds_access_level, + creator: user, namespace: namespace) end service = Projects::ForkService.new(project, user, params) diff --git a/spec/support/helpers/require_migration.rb b/spec/support/helpers/require_migration.rb index de3a8a81ab5..ee28f8e504c 100644 --- a/spec/support/helpers/require_migration.rb +++ b/spec/support/helpers/require_migration.rb @@ -15,7 +15,7 @@ class RequireMigration end MIGRATION_FOLDERS = %w[db/migrate db/post_migrate].freeze - SPEC_FILE_PATTERN = %r{.+/(?<file_name>.+)_spec\.rb}.freeze + SPEC_FILE_PATTERN = %r{.+/(?:\d+_)?(?<file_name>.+)_spec\.rb}.freeze class << self def require_migration!(file_name) @@ -26,10 +26,12 @@ class RequireMigration end def search_migration_file(file_name) + migration_file_pattern = /\A\d+_#{file_name}\.rb\z/ + migration_folders.flat_map do |path| migration_path = Rails.root.join(path).to_s - Find.find(migration_path).select { |m| File.basename(m).match? /\A\d+_#{file_name}\.rb\z/ } + Find.find(migration_path).select { |m| migration_file_pattern.match? File.basename(m) } end end diff --git a/spec/support/helpers/stub_gitlab_calls.rb b/spec/support/helpers/stub_gitlab_calls.rb index 6f530d57caf..ef3c39c83c2 100644 --- a/spec/support/helpers/stub_gitlab_calls.rb +++ b/spec/support/helpers/stub_gitlab_calls.rb @@ -92,9 +92,16 @@ module StubGitlabCalls end def stub_commonmark_sourcepos_disabled + render_options = + if Feature.enabled?(:use_cmark_renderer) + Banzai::Filter::MarkdownEngines::CommonMark::RENDER_OPTIONS_C + else + Banzai::Filter::MarkdownEngines::CommonMark::RENDER_OPTIONS_RUBY + end + allow_any_instance_of(Banzai::Filter::MarkdownEngines::CommonMark) .to receive(:render_options) - .and_return(Banzai::Filter::MarkdownEngines::CommonMark::RENDER_OPTIONS) + .and_return(render_options) end private diff --git a/spec/support/helpers/stub_object_storage.rb b/spec/support/helpers/stub_object_storage.rb index 56177d445d6..5e86b08aa45 100644 --- a/spec/support/helpers/stub_object_storage.rb +++ b/spec/support/helpers/stub_object_storage.rb @@ -4,7 +4,6 @@ module StubObjectStorage def stub_dependency_proxy_object_storage(**params) stub_object_storage_uploader(config: ::Gitlab.config.dependency_proxy.object_store, uploader: ::DependencyProxy::FileUploader, - remote_directory: 'dependency_proxy', **params) end @@ -16,7 +15,6 @@ module StubObjectStorage def stub_object_storage_uploader( config:, uploader:, - remote_directory:, enabled: true, proxy_download: false, background_upload: false, @@ -40,7 +38,7 @@ module StubObjectStorage return unless enabled stub_object_storage(connection_params: uploader.object_store_credentials, - remote_directory: remote_directory) + remote_directory: config.remote_directory) end def stub_object_storage(connection_params:, remote_directory:) @@ -60,56 +58,48 @@ module StubObjectStorage def stub_artifacts_object_storage(uploader = JobArtifactUploader, **params) stub_object_storage_uploader(config: Gitlab.config.artifacts.object_store, uploader: uploader, - remote_directory: 'artifacts', **params) end def stub_external_diffs_object_storage(uploader = described_class, **params) stub_object_storage_uploader(config: Gitlab.config.external_diffs.object_store, uploader: uploader, - remote_directory: 'external-diffs', **params) end def stub_lfs_object_storage(**params) stub_object_storage_uploader(config: Gitlab.config.lfs.object_store, uploader: LfsObjectUploader, - remote_directory: 'lfs-objects', **params) end def stub_package_file_object_storage(**params) stub_object_storage_uploader(config: Gitlab.config.packages.object_store, uploader: ::Packages::PackageFileUploader, - remote_directory: 'packages', **params) end def stub_composer_cache_object_storage(**params) stub_object_storage_uploader(config: Gitlab.config.packages.object_store, uploader: ::Packages::Composer::CacheUploader, - remote_directory: 'packages', **params) end def stub_uploads_object_storage(uploader = described_class, **params) stub_object_storage_uploader(config: Gitlab.config.uploads.object_store, uploader: uploader, - remote_directory: 'uploads', **params) end def stub_terraform_state_object_storage(**params) stub_object_storage_uploader(config: Gitlab.config.terraform_state.object_store, uploader: Terraform::StateUploader, - remote_directory: 'terraform', **params) end def stub_pages_object_storage(uploader = described_class, **params) stub_object_storage_uploader(config: Gitlab.config.pages.object_store, uploader: uploader, - remote_directory: 'pages', **params) end diff --git a/spec/support/helpers/test_env.rb b/spec/support/helpers/test_env.rb index badd4e8212c..acbc15f7b62 100644 --- a/spec/support/helpers/test_env.rb +++ b/spec/support/helpers/test_env.rb @@ -9,7 +9,7 @@ module TestEnv # When developing the seed repository, comment out the branch you will modify. BRANCH_SHA = { - 'signed-commits' => '6101e87', + 'signed-commits' => 'c7794c1', 'not-merged-branch' => 'b83d6e3', 'branch-merged' => '498214d', 'empty-branch' => '7efb185', @@ -53,7 +53,7 @@ module TestEnv 'wip' => 'b9238ee', 'csv' => '3dd0896', 'v1.1.0' => 'b83d6e3', - 'add-ipython-files' => 'f6b7a70', + 'add-ipython-files' => '2b5ef814', 'add-pdf-file' => 'e774ebd', 'squash-large-files' => '54cec52', 'add-pdf-text-binary' => '79faa7b', diff --git a/spec/support/helpers/usage_data_helpers.rb b/spec/support/helpers/usage_data_helpers.rb index 5ead1813439..5865bafd382 100644 --- a/spec/support/helpers/usage_data_helpers.rb +++ b/spec/support/helpers/usage_data_helpers.rb @@ -162,6 +162,8 @@ module UsageDataHelpers def stub_usage_data_connections allow(ActiveRecord::Base.connection).to receive(:transaction_open?).and_return(false) + allow(::Ci::ApplicationRecord.connection).to receive(:transaction_open?).and_return(false) if ::Ci::ApplicationRecord.connection_class? + allow(Gitlab::Prometheus::Internal).to receive(:prometheus_enabled?).and_return(false) end diff --git a/spec/support/helpers/workhorse_helpers.rb b/spec/support/helpers/workhorse_helpers.rb index cd8387de686..83bda6e03b1 100644 --- a/spec/support/helpers/workhorse_helpers.rb +++ b/spec/support/helpers/workhorse_helpers.rb @@ -24,7 +24,12 @@ module WorkhorseHelpers # workhorse_post_with_file will transform file_key inside params as if it was disk accelerated by workhorse def workhorse_post_with_file(url, file_key:, params:) - workhorse_request_with_file(:post, url, + workhorse_form_with_file(url, method: :post, file_key: file_key, params: params) + end + + # workhorse_form_with_file will transform file_key inside params as if it was disk accelerated by workhorse + def workhorse_form_with_file(url, file_key:, params:, method: :post) + workhorse_request_with_file(method, url, file_key: file_key, params: params, env: { 'CONTENT_TYPE' => 'multipart/form-data' }, |