rspec-ee unit pg12 8/12
Passed Started
by
@alexkalderimis

Alex Kalderimis
1Running with gitlab-runner 14.2.0-rc1 (0ac3a46e)2 on docker-auto-scale-com d5ae8d253 feature flags: FF_USE_FASTZIP:true6Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.patched-golang-1.16-git-2.31-lfs-2.9-chrome-89-node-14.15-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 ...7Starting service postgres:12 ...8Pulling docker image postgres:12 ...9Using docker image sha256:91d892a67245e889ee058993bb08077e9980b16e08991c8b172adadee015594f for postgres:12 with digest postgres@sha256:5afbf72bfdb224f9ad3b29dd570747b4752ab2e81e9c25145847004f8a350e60 ...10Starting service redis:5.0-alpine ...11Pulling docker image redis:5.0-alpine ...12Using docker image sha256:a0a8ec67111be1ffa9ee627aa0ef080c8281aba0f31a4a67f2b550f8e1e0b022 for redis:5.0-alpine with digest redis@sha256:fea243676a4d2d67f5990ddcbd4a56db9423b7f25e55758491e39988efc1cfbe ...13Starting service elasticsearch:7.11.1 ...14Pulling docker image elasticsearch:7.11.1 ...15Using docker image sha256:bc3d45eba361de2bde57b25ada32b4de5dd5f5cb12cd3bd049212e90bdfd62a9 for elasticsearch:7.11.1 with digest elasticsearch@sha256:3a219f148b596e25c1b16bda46e1ca07db46826c0e1cde003c2d2f93f33d18e4 ...16Waiting for services to be up and running...17Authenticating with credentials from job payload (GitLab Registry)18Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.patched-golang-1.16-git-2.31-lfs-2.9-chrome-89-node-14.15-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 ...19Using docker image sha256:4cc2f63f50a93772721d8b8586f6fe8c920262e1302e0e8b6c12a1040960cfab for registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.patched-golang-1.16-git-2.31-lfs-2.9-chrome-89-node-14.15-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:eef05654d1ff5d68556b37c53250a692ec3a5fa299726f5bd1cbb4738b738976 ...21Running on runner-d5ae8d25-project-278964-concurrent-0 via runner-d5ae8d25-gsrm-1631644551-1ebe9fbf...23$ eval "$CI_PRE_CLONE_SCRIPT"24Downloading archived master...25Connecting to storage.googleapis.com (172.217.203.128:443)26saving to '/tmp/gitlab.tar.gz'27gitlab.tar.gz 17% |***** | 59.8M 0:00:04 ETA28gitlab.tar.gz 57% |****************** | 195M 0:00:01 ETA29gitlab.tar.gz 100% |********************************| 341M 0:00:00 ETA30'/tmp/gitlab.tar.gz' saved31Extracting tarball into /builds/gitlab-org/gitlab...32Fetching changes with git depth set to 20...33Reinitialized existing Git repository in /builds/gitlab-org/gitlab/.git/34Created fresh repository.35remote: Enumerating objects: 53, done. 36remote: Counting objects: 100% (47/47), done. 37remote: Compressing objects: 100% (21/21), done. 38remote: Total 29 (delta 22), reused 12 (delta 8), pack-reused 0 40 * [new ref] 7818fd5200fa647737976e6f87724e1b0d1a58fe -> refs/pipelines/37074602841Checking out 7818fd52 as refs/merge-requests/69982/merge...42Skipping Git submodules setup44Checking cache for ruby-gems-v1-4...45cache.zip is up to date 46Successfully extracted cache47Checking cache for gitaly-ruby-gems-v1-4...48cache.zip is up to date 49Successfully extracted cache51Downloading artifacts for compile-test-assets (1590280839)...52Downloading artifacts from coordinator... ok id=1590280839 responseStatus=200 OK token=Vk-pyboB53Downloading artifacts for detect-tests (1590280857)...54Downloading artifacts from coordinator... ok id=1590280857 responseStatus=200 OK token=B5P4yR8855Downloading artifacts for retrieve-tests-metadata (1590280864)...56Downloading artifacts from coordinator... ok id=1590280864 responseStatus=200 OK token=Er-hZnZL57Downloading artifacts for setup-test-env (1590280847)...58Downloading artifacts from coordinator... ok id=1590280847 responseStatus=200 OK token=N-Q5DksJ60Using docker image sha256:4cc2f63f50a93772721d8b8586f6fe8c920262e1302e0e8b6c12a1040960cfab for registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.7.patched-golang-1.16-git-2.31-lfs-2.9-chrome-89-node-14.15-yarn-1.22-postgresql-12-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images@sha256:eef05654d1ff5d68556b37c53250a692ec3a5fa299726f5bd1cbb4738b738976 ...61$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb62$ export GOPATH=$CI_PROJECT_DIR/.go63$ mkdir -p $GOPATH64$ source scripts/utils.sh65$ source scripts/prepare_build.sh66Bundler version 2.1.467production:development68Settings are listed in order of priority. The top value will be used.69path70Set for the current user (/root/.bundle/config): "/builds/gitlab-org/gitlab/vendor"71clean72Set for the current user (/root/.bundle/config): "true"73without74Set via BUNDLE_WITHOUT: [:production, :development]75install_flags76Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3 --quiet"77$ bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check78The Gemfile's dependencies are satisfied79==> 'bundle install --jobs=$(nproc) --retry=3 --quiet && bundle check' succeeded in 2 seconds.80$ bundle pristine pg81Installing pg 1.2.3 with native extensions82==> 'bundle pristine pg' succeeded in 12 seconds.83$ setup_db_user_only84CREATE ROLE85GRANT86==> 'setup_db_user_only' succeeded in 0 seconds.87$ bundle exec rake db:drop db:create db:structure:load db:migrate gitlab:db:setup_ee88Dropped database 'gitlabhq_test'89Created database 'gitlabhq_test'90DEPRECATION WARNING: Using `bin/rails db:structure:load` is deprecated and will be removed in Rails 6.2. Configure the format using `config.active_record.schema_format = :sql` to use `structure.sql` and run `bin/rails db:schema:load` instead. (called from load at /builds/gitlab-org/gitlab/vendor/ruby/2.7.0/bin/rake:23)91Dropped database 'gitlabhq_geo_test'92Created database 'gitlabhq_geo_test'93==> 'bundle exec rake db:drop db:create db:structure:load db:migrate gitlab:db:setup_ee' succeeded in 29 seconds.94$ run_timed_command "gem install knapsack --no-document"95$ gem install knapsack --no-document96Successfully installed knapsack-4.0.0971 gem installed98==> 'gem install knapsack --no-document' succeeded in 1 seconds.99$ run_timed_command "scripts/gitaly-test-spawn"100$ scripts/gitaly-test-spawn101Settings are listed in order of priority. The top value will be used.102jobs103Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config): 4104retry105Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config): 3106path107Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config): "/builds/gitlab-org/gitlab/vendor/gitaly-ruby"108deployment109Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config): true110without111Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config): [:production, :development]112Set via BUNDLE_WITHOUT: [:production, :development]113app_config114Set via BUNDLE_APP_CONFIG: "/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle"115gemfile116Set via BUNDLE_GEMFILE: "/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/Gemfile"117Don't run Bundler as root. Bundler can ask for sudo if it is needed, and118installing your bundle as root will break this application for all non-root119users on this machine.120Using abstract_type 0.0.7121Using concurrent-ruby 1.1.9122Using i18n 1.8.10123Using minitest 5.14.4124Using tzinfo 2.0.4125Using zeitwerk 2.4.2126Using activesupport 6.1.3.2127Using builder 3.2.4128Using erubi 1.10.0129Using mini_portile2 2.5.1130Using racc 1.5.2131Using nokogiri 1.11.7 (x86_64-linux)132Using rails-dom-testing 2.0.3133Using crass 1.0.6134Using loofah 2.10.0135Using rails-html-sanitizer 1.3.0136Using actionview 6.1.3.2137Using rack 2.2.3138Using rack-test 1.1.0139Using actionpack 6.1.3.2140Using ice_nine 0.11.2141Using thread_safe 0.3.6142Using memoizable 0.4.2143Using adamantium 0.2.0144Using public_suffix 4.0.6145Using addressable 2.7.0146Using ast 2.4.1147Using binding_ninja 0.2.3148Using bundler 2.1.4149Using charlock_holmes 0.7.7150Using coderay 1.1.2151Using equalizer 0.0.11152Using concord 0.1.5153Using diff-lcs 1.3154Using dotenv 2.7.6155Using escape_utils 1.2.1156Using factory_bot 5.0.2157Using multipart-post 2.1.1158Using faraday 1.0.1159Using ffi 1.15.3160Using json 2.5.1161Using gemojione 3.3.0162Using mini_mime 1.0.2163Using rugged 1.1.0164Using github-linguist 7.12.1165Using github-markup 1.7.0166Using mime-types-data 3.2020.1104167Using mime-types 3.3.1168Using gitlab-gollum-rugged_adapter 0.4.4.4.gitlab.1169Using rouge 3.26.0170Using nokogumbo 1.5.0171Using sanitize 4.6.6172Using stringex 2.8.5173Using gitlab-gollum-lib 4.2.7.10.gitlab.1174Using google-protobuf 3.17.3 (x86_64-linux)175Using googleapis-common-protos-types 1.1.0176Using grpc 1.30.2 (x86_64-linux)177Using opentracing 0.5.0178Using thrift 0.14.1179Using jaeger-client 1.1.0180Using pg_query 2.1.0181Using redis 4.2.5182Using gitlab-labkit 0.20.0183Using gitlab-markup 1.7.1184Using grpc-tools 1.30.2185Using sawyer 0.8.2186Using octokit 4.20.0187Using reverse_markdown 1.4.0188Using thor 1.1.0189Using licensee 9.14.1190Using method_source 0.9.2191Using msgpack 1.3.3192Using optimist 3.0.1193Using parallel 1.19.2194Using parser 2.7.2.0195Using procto 0.0.3196Using unparser 0.4.7197Using proc_to_ast 0.1.0198Using pry 0.12.2199Using rainbow 3.0.0200Using rbtrace 0.4.14201Using rdoc 6.3.2202Using regexp_parser 1.8.1203Using rexml 3.2.4204Using rspec-support 3.8.0205Using rspec-core 3.8.0206Using rspec-expectations 3.8.3207Using rspec-mocks 3.8.0208Using rspec 3.8.0209Using rspec-parameterized 0.4.2210Using rubocop-ast 0.2.0211Using ruby-progressbar 1.10.1212Using unicode-display_width 1.7.0213Using rubocop 0.86.0214Using sentry-raven 3.0.4215Using timecop 0.9.1216Bundle complete! 21 Gemfile dependencies, 96 gems now installed.217Gems in the groups production and development were not installed.218Bundled gems are installed into `/builds/gitlab-org/gitlab/vendor/gitaly-ruby`219Checking gitaly-ruby Gemfile...220Checking gitaly-ruby bundle...221The Gemfile's dependencies are satisfied222Trying to connect to gitaly: ................................................... OK223Trying to connect to gitaly2: ...................................................................... OK224Trying to connect to praefect: ......... OK225$ source ./scripts/rspec_helpers.sh226==> 'scripts/gitaly-test-spawn' succeeded in 15 seconds.227$ rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"228KNAPSACK_TEST_FILE_PATTERN: ee/spec/{bin,channels,config,db,dependencies,elastic,elastic_integration,experiments,factories,finders,frontend,graphql,haml_lint,helpers,initializers,javascripts,lib,models,policies,presenters,rack_servers,replicators,routing,rubocop,serializers,services,sidekiq,spam,support_specs,tasks,uploaders,validators,views,workers,tooling}{,/**/}*_spec.rb229Knapsack node specs:230ee/spec/lib/ee/gitlab/usage_data_spec.rb231ee/spec/models/epic_spec.rb232ee/spec/lib/gitlab/insights/finders/issuable_finder_spec.rb233ee/spec/services/epics/tree_reorder_service_spec.rb234ee/spec/models/epic_issue_spec.rb235ee/spec/services/epics/update_service_spec.rb236ee/spec/services/ee/notes/quick_actions_service_spec.rb237ee/spec/services/ee/merge_requests/refresh_service_spec.rb238ee/spec/lib/ee/gitlab/background_migration/update_vulnerabilities_from_dismissal_feedback_spec.rb239ee/spec/lib/ee/gitlab/auth/ldap/sync/group_spec.rb240ee/spec/lib/gitlab/geo/git_ssh_proxy_spec.rb241ee/spec/replicators/geo/snippet_repository_replicator_spec.rb242ee/spec/models/approval_project_rule_spec.rb243ee/spec/models/concerns/elastic/repository_spec.rb244ee/spec/elastic/migrate/20210421140400_add_new_data_to_merge_requests_documents_spec.rb245ee/spec/services/ee/issues/create_service_spec.rb246ee/spec/lib/ee/gitlab/elastic/helper_spec.rb247ee/spec/services/ee/issues/move_service_spec.rb248ee/spec/lib/gitlab/geo/replication/file_retriever_spec.rb249ee/spec/models/approval_merge_request_rule_spec.rb250ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb251ee/spec/models/requirements_management/requirement_spec.rb252ee/spec/models/concerns/epic_tree_sorting_spec.rb253ee/spec/models/ee/personal_access_token_spec.rb254ee/spec/services/geo/design_repository_sync_service_spec.rb255ee/spec/services/geo/file_upload_service_spec.rb256ee/spec/lib/gitlab/auth/ldap/access_spec.rb257ee/spec/lib/gitlab/geo/verification_state_spec.rb258ee/spec/services/geo/prune_event_log_service_spec.rb259ee/spec/lib/compliance_management/merge_request_approval_settings/resolver_spec.rb260ee/spec/lib/gitlab/geo/log_cursor/events/container_repository_updated_event_spec.rb261ee/spec/services/ee/members/destroy_service_spec.rb262ee/spec/lib/gitlab/template/custom_templates_spec.rb263ee/spec/lib/ee/gitlab/checks/push_rule_check_spec.rb264ee/spec/finders/autocomplete/vulnerabilities_autocomplete_finder_spec.rb265ee/spec/helpers/ee/issues_helper_spec.rb266ee/spec/services/vulnerability_exports/exporters/csv_service_spec.rb267ee/spec/lib/gitlab/analytics/cycle_analytics/request_params_spec.rb268ee/spec/models/ci/bridge_spec.rb269ee/spec/lib/ee/sidebars/projects/menus/security_compliance_menu_spec.rb270ee/spec/services/software_license_policies/create_service_spec.rb271ee/spec/finders/security/vulnerabilities_finder_spec.rb272ee/spec/helpers/users_helper_spec.rb273ee/spec/services/merge_commits/export_csv_service_spec.rb274ee/spec/models/ee/ci/build_dependencies_spec.rb275ee/spec/services/iterations/cadences/create_iterations_in_advance_service_spec.rb276ee/spec/services/security/store_reports_service_spec.rb277ee/spec/lib/gitlab/geo/oauth/logout_state_spec.rb278ee/spec/models/software_license_policy_spec.rb279ee/spec/services/ee/members/create_service_spec.rb280ee/spec/graphql/types/admin/cloud_licenses/current_license_type_spec.rb281ee/spec/services/wiki_pages/destroy_service_spec.rb282ee/spec/finders/geo/project_registry_finder_spec.rb283ee/spec/helpers/ee/gitlab_routing_helper_spec.rb284ee/spec/services/approval_rules/merge_request_rule_destroy_service_spec.rb285ee/spec/models/approval_wrapped_any_approver_rule_spec.rb286ee/spec/lib/gitlab/geo/oauth/login_state_spec.rb287ee/spec/services/geo/metrics_update_service_spec.rb288ee/spec/workers/project_template_export_worker_spec.rb289ee/spec/models/status_page/published_incident_spec.rb290ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb291ee/spec/graphql/mutations/boards/update_spec.rb292ee/spec/services/ee/notes/update_service_spec.rb293ee/spec/lib/gitlab/auth/ldap/user_spec.rb294ee/spec/services/geo/container_repository_updated_event_store_spec.rb295ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb296ee/spec/lib/gitlab/geo/jwt_request_decoder_spec.rb297ee/spec/helpers/timeboxes_helper_spec.rb298ee/spec/graphql/resolvers/external_issue_resolver_spec.rb299ee/spec/lib/gitlab/geo/log_cursor/events/repository_renamed_event_spec.rb300ee/spec/models/vulnerabilities/finding_pipeline_spec.rb301ee/spec/services/dast_sites/find_or_create_service_spec.rb302ee/spec/helpers/paid_feature_callout_helper_spec.rb303ee/spec/lib/gitlab/web_ide/config/entry/schema_spec.rb304ee/spec/lib/gitlab/ci/templates/Verify/browser_performance_testing_gitlab_ci_yaml_spec.rb305ee/spec/services/merge_requests/build_service_spec.rb306ee/spec/services/jira/jql_builder_service_spec.rb307ee/spec/serializers/status_page/incident_comment_entity_spec.rb308ee/spec/models/compliance_management/framework_spec.rb309ee/spec/finders/geo/package_file_registry_finder_spec.rb310ee/spec/models/vulnerabilities/finding_signature_spec.rb311ee/spec/serializers/dependency_entity_spec.rb312ee/spec/finders/boards/milestones_finder_spec.rb313ee/spec/graphql/mutations/dast_site_profiles/update_spec.rb314ee/spec/services/groups/seat_usage_export_service_spec.rb315ee/spec/services/repositories/housekeeping_service_spec.rb316ee/spec/models/vulnerabilities/remediation_spec.rb317ee/spec/services/groups/epics_count_service_spec.rb318ee/spec/routing/webhook_routes_spec.rb319ee/spec/graphql/resolvers/instance_security_dashboard/projects_resolver_spec.rb320ee/spec/models/users_security_dashboard_project_spec.rb321ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb322ee/spec/graphql/mutations/vulnerabilities/resolve_spec.rb323ee/spec/finders/ee/ci/daily_build_group_report_results_finder_spec.rb324ee/spec/services/ee/ci/job_artifacts/destroy_all_expired_service_spec.rb325ee/spec/lib/banzai/filter/references/label_reference_filter_spec.rb326ee/spec/graphql/types/pipeline_security_report_finding_type_spec.rb327ee/spec/models/iteration_note_spec.rb328ee/spec/services/geo/repository_renamed_event_store_spec.rb329ee/spec/services/external_status_checks/update_service_spec.rb330ee/spec/views/profiles/personal_access_tokens/_token_expiry_notification.html.haml_spec.rb331ee/spec/helpers/ee/profiles_helper_spec.rb332ee/spec/graphql/resolvers/incident_management/oncall_rotations_resolver_spec.rb333ee/spec/lib/ee/gitlab/auth/ldap/sync/external_users_spec.rb334ee/spec/graphql/mutations/boards/epic_boards/update_spec.rb335ee/spec/graphql/mutations/dast_site_validations/create_spec.rb336ee/spec/models/geo_node_namespace_link_spec.rb337ee/spec/finders/status_page/incident_comments_finder_spec.rb338ee/spec/graphql/resolvers/dast_site_profile_resolver_spec.rb339ee/spec/services/merge_trains/check_status_service_spec.rb340ee/spec/finders/users_finder_spec.rb341ee/spec/elastic_integration/repository_index_spec.rb342ee/spec/graphql/mutations/security_policy/create_security_policy_project_spec.rb343ee/spec/workers/geo/reverification_batch_worker_spec.rb344ee/spec/services/incident_management/oncall_schedules/create_service_spec.rb345ee/spec/views/clusters/clusters/show.html.haml_spec.rb346ee/spec/services/subscriptions/create_service_spec.rb347ee/spec/helpers/roadmaps_helper_spec.rb348ee/spec/services/analytics/devops_adoption/enabled_namespaces/delete_service_spec.rb349ee/spec/graphql/ee/resolvers/board_lists_resolver_spec.rb350ee/spec/views/projects/security/dast_scanner_profiles/new.html.haml_spec.rb351ee/spec/serializers/ee/build_details_entity_spec.rb352ee/spec/services/ee/groups/import_export/export_service_spec.rb353ee/spec/services/ee/protected_branches/destroy_service_spec.rb354ee/spec/models/project_team_spec.rb355ee/spec/models/geo/job_artifact_deleted_event_spec.rb356ee/spec/lib/ee/gitlab/cleanup/orphan_job_artifact_files_spec.rb357ee/spec/policies/event_policy_spec.rb358ee/spec/serializers/issuable_sidebar_extras_entity_spec.rb359ee/spec/services/lfs/unlock_file_service_spec.rb360ee/spec/services/ee/projects/autocomplete_service_spec.rb361ee/spec/services/vulnerabilities/destroy_dismissal_feedback_service_spec.rb362ee/spec/workers/elastic_index_initial_bulk_cron_worker_spec.rb363ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb364ee/spec/services/ee/ci/job_artifacts/destroy_batch_service_spec.rb365ee/spec/lib/gitlab/incident_management_spec.rb366ee/spec/workers/geo/repository_verification/primary/single_worker_spec.rb367ee/spec/serializers/invited_group_entity_spec.rb368ee/spec/models/integrations/github/remote_project_spec.rb369ee/spec/views/layouts/header/_new_dropdown.haml_spec.rb370ee/spec/services/group_saml/saml_provider/update_service_spec.rb371ee/spec/lib/gitlab/return_to_location_spec.rb372ee/spec/graphql/types/vulnerability_details/table_type_spec.rb373ee/spec/services/security/track_scan_service_spec.rb374ee/spec/services/ee/gpg_keys/destroy_service_spec.rb375ee/spec/services/security/scanned_resources_counting_service_spec.rb376ee/spec/workers/vulnerabilities/historical_statistics/deletion_worker_spec.rb377ee/spec/services/projects/open_issues_count_service_spec.rb378ee/spec/policies/award_emoji_policy_spec.rb379ee/spec/serializers/issue_serializer_spec.rb380ee/spec/services/ee/notes/destroy_service_spec.rb381ee/spec/models/ee/notification_setting_spec.rb382ee/spec/helpers/projects/on_demand_scans_helper_spec.rb383ee/spec/graphql/types/vulnerability_details/commit_type_spec.rb384ee/spec/tasks/geo/git_rake_spec.rb385ee/spec/graphql/mutations/requirements_management/create_requirement_spec.rb386ee/spec/helpers/ee/emails_helper_spec.rb387ee/spec/policies/approval_project_rule_policy_spec.rb388ee/spec/presenters/project_presenter_spec.rb389ee/spec/lib/elastic/latest/issue_config_spec.rb390ee/spec/services/requirements_management/map_export_fields_service_spec.rb391ee/spec/lib/ee/gitlab/git_access_design_spec.rb392ee/spec/services/applications/create_service_spec.rb393ee/spec/lib/ee/gitlab/verify/lfs_objects_spec.rb394ee/spec/graphql/types/issue_connection_type_spec.rb395ee/spec/lib/omni_auth/strategies/kerberos_spnego_spec.rb396ee/spec/serializers/scim_oauth_access_token_entity_spec.rb397ee/spec/lib/gitlab/ci/config/entry/vault/engine_spec.rb398ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb399ee/spec/services/ee/integrations/test/project_service_spec.rb400ee/spec/workers/groups/export_memberships_worker_spec.rb401ee/spec/models/concerns/elastic/projects_search_spec.rb402ee/spec/models/analytics/language_trend/repository_language_spec.rb403ee/spec/models/ee/project_authorization_spec.rb404ee/spec/models/geo/reset_checksum_event_spec.rb405ee/spec/helpers/ee/wiki_helper_spec.rb406ee/spec/workers/geo/metrics_update_worker_spec.rb407ee/spec/graphql/types/query_type_spec.rb408ee/spec/graphql/types/vulnerability_details/url_type_spec.rb409ee/spec/lib/gitlab/auth/o_auth/user_spec.rb410ee/spec/workers/geo/file_download_worker_spec.rb411ee/spec/validators/json_schema_validator_spec.rb412ee/spec/graphql/types/vulnerability_details/code_type_spec.rb413ee/spec/serializers/license_scanning_reports_comparer_entity_spec.rb414ee/spec/views/admin/dev_ops_report/show.html.haml_spec.rb415ee/spec/lib/gitlab/project_template_spec.rb416ee/spec/graphql/types/vulnerability_severities_count_type_spec.rb417ee/spec/lib/ee/gitlab/auth/ldap/access_levels_spec.rb418ee/spec/graphql/types/vulnerability_sort_enum_spec.rb419ee/spec/lib/ee/api/entities/ci/minutes/additional_pack_spec.rb420ee/spec/lib/gitlab/ci/reports/coverage_fuzzing/report_spec.rb421ee/spec/workers/todos_destroyer/confidential_epic_worker_spec.rb422Filter specs:423Running specs:424Running all node tests without filter425ee/spec/lib/ee/gitlab/usage_data_spec.rb426ee/spec/models/epic_spec.rb427ee/spec/lib/gitlab/insights/finders/issuable_finder_spec.rb428ee/spec/services/epics/tree_reorder_service_spec.rb429ee/spec/models/epic_issue_spec.rb430ee/spec/services/epics/update_service_spec.rb431ee/spec/services/ee/notes/quick_actions_service_spec.rb432ee/spec/services/ee/merge_requests/refresh_service_spec.rb433ee/spec/lib/ee/gitlab/background_migration/update_vulnerabilities_from_dismissal_feedback_spec.rb434ee/spec/lib/ee/gitlab/auth/ldap/sync/group_spec.rb435ee/spec/lib/gitlab/geo/git_ssh_proxy_spec.rb436ee/spec/replicators/geo/snippet_repository_replicator_spec.rb437ee/spec/models/approval_project_rule_spec.rb438ee/spec/models/concerns/elastic/repository_spec.rb439ee/spec/elastic/migrate/20210421140400_add_new_data_to_merge_requests_documents_spec.rb440ee/spec/services/ee/issues/create_service_spec.rb441ee/spec/lib/ee/gitlab/elastic/helper_spec.rb442ee/spec/services/ee/issues/move_service_spec.rb443ee/spec/lib/gitlab/geo/replication/file_retriever_spec.rb444ee/spec/models/approval_merge_request_rule_spec.rb445ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb446ee/spec/models/requirements_management/requirement_spec.rb447ee/spec/models/concerns/epic_tree_sorting_spec.rb448ee/spec/models/ee/personal_access_token_spec.rb449ee/spec/services/geo/design_repository_sync_service_spec.rb450ee/spec/services/geo/file_upload_service_spec.rb451ee/spec/lib/gitlab/auth/ldap/access_spec.rb452ee/spec/lib/gitlab/geo/verification_state_spec.rb453ee/spec/services/geo/prune_event_log_service_spec.rb454ee/spec/lib/compliance_management/merge_request_approval_settings/resolver_spec.rb455ee/spec/lib/gitlab/geo/log_cursor/events/container_repository_updated_event_spec.rb456ee/spec/services/ee/members/destroy_service_spec.rb457ee/spec/lib/gitlab/template/custom_templates_spec.rb458ee/spec/lib/ee/gitlab/checks/push_rule_check_spec.rb459ee/spec/finders/autocomplete/vulnerabilities_autocomplete_finder_spec.rb460ee/spec/helpers/ee/issues_helper_spec.rb461ee/spec/services/vulnerability_exports/exporters/csv_service_spec.rb462ee/spec/lib/gitlab/analytics/cycle_analytics/request_params_spec.rb463ee/spec/models/ci/bridge_spec.rb464ee/spec/lib/ee/sidebars/projects/menus/security_compliance_menu_spec.rb465ee/spec/services/software_license_policies/create_service_spec.rb466ee/spec/finders/security/vulnerabilities_finder_spec.rb467ee/spec/helpers/users_helper_spec.rb468ee/spec/services/merge_commits/export_csv_service_spec.rb469ee/spec/models/ee/ci/build_dependencies_spec.rb470ee/spec/services/iterations/cadences/create_iterations_in_advance_service_spec.rb471ee/spec/services/security/store_reports_service_spec.rb472ee/spec/lib/gitlab/geo/oauth/logout_state_spec.rb473ee/spec/models/software_license_policy_spec.rb474ee/spec/services/ee/members/create_service_spec.rb475ee/spec/graphql/types/admin/cloud_licenses/current_license_type_spec.rb476ee/spec/services/wiki_pages/destroy_service_spec.rb477ee/spec/finders/geo/project_registry_finder_spec.rb478ee/spec/helpers/ee/gitlab_routing_helper_spec.rb479ee/spec/services/approval_rules/merge_request_rule_destroy_service_spec.rb480ee/spec/models/approval_wrapped_any_approver_rule_spec.rb481ee/spec/lib/gitlab/geo/oauth/login_state_spec.rb482ee/spec/services/geo/metrics_update_service_spec.rb483ee/spec/workers/project_template_export_worker_spec.rb484ee/spec/models/status_page/published_incident_spec.rb485ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb486ee/spec/graphql/mutations/boards/update_spec.rb487ee/spec/services/ee/notes/update_service_spec.rb488ee/spec/lib/gitlab/auth/ldap/user_spec.rb489ee/spec/services/geo/container_repository_updated_event_store_spec.rb490ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb491ee/spec/lib/gitlab/geo/jwt_request_decoder_spec.rb492ee/spec/helpers/timeboxes_helper_spec.rb493ee/spec/graphql/resolvers/external_issue_resolver_spec.rb494ee/spec/lib/gitlab/geo/log_cursor/events/repository_renamed_event_spec.rb495ee/spec/models/vulnerabilities/finding_pipeline_spec.rb496ee/spec/services/dast_sites/find_or_create_service_spec.rb497ee/spec/helpers/paid_feature_callout_helper_spec.rb498ee/spec/lib/gitlab/web_ide/config/entry/schema_spec.rb499ee/spec/lib/gitlab/ci/templates/Verify/browser_performance_testing_gitlab_ci_yaml_spec.rb500ee/spec/services/merge_requests/build_service_spec.rb501ee/spec/services/jira/jql_builder_service_spec.rb502ee/spec/serializers/status_page/incident_comment_entity_spec.rb503ee/spec/models/compliance_management/framework_spec.rb504ee/spec/finders/geo/package_file_registry_finder_spec.rb505ee/spec/models/vulnerabilities/finding_signature_spec.rb506ee/spec/serializers/dependency_entity_spec.rb507ee/spec/finders/boards/milestones_finder_spec.rb508ee/spec/graphql/mutations/dast_site_profiles/update_spec.rb509ee/spec/services/groups/seat_usage_export_service_spec.rb510ee/spec/services/repositories/housekeeping_service_spec.rb511ee/spec/models/vulnerabilities/remediation_spec.rb512ee/spec/services/groups/epics_count_service_spec.rb513ee/spec/routing/webhook_routes_spec.rb514ee/spec/graphql/resolvers/instance_security_dashboard/projects_resolver_spec.rb515ee/spec/models/users_security_dashboard_project_spec.rb516ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb517ee/spec/graphql/mutations/vulnerabilities/resolve_spec.rb518ee/spec/finders/ee/ci/daily_build_group_report_results_finder_spec.rb519ee/spec/services/ee/ci/job_artifacts/destroy_all_expired_service_spec.rb520ee/spec/lib/banzai/filter/references/label_reference_filter_spec.rbKnapsack report generator started!521Run options: exclude {:quarantine=>true, :geo=>true, :level=>"migration"}522==> /builds/gitlab-org/gitlab/tmp/tests/gitlab-test_bare set up in 0.054076501 seconds...523Test environment set up in 0.999087969 seconds524Gitlab::UsageData525 clears memoized values526 .data527/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH528/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here529 gathers usage data530/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH531/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here532 gathers usage counts533/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH534/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here535 gathers security products usage data536/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH537/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here538 gathers group overview preferences usage data539/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: already initialized constant MAC_MATCH540/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/ohai-16.10.6/lib/ohai/plugins/eucalyptus.rb:32: warning: previous definition of MAC_MATCH was here541 includes a recording_ee_finished_at timestamp542 .features_usage_data_ee543 gathers feature usage data of EE544 .license_usage_data545 gathers license data546 .requirements_counts547 when requirements are disabled548 returns empty hash549 when requirements are enabled550 returns created requirements count551 merge requests merged using approval rules552 counts the approval rules for merged merge requests553 .operations_dashboard_usage554 gathers data on operations dashboard555 bases counts on active users556 usage_activity_by_stage_configure557 includes accurate usage_activity_by_stage data558 usage_activity_by_stage_create559 includes accurate usage_activity_by_stage data560 usage_data_by_stage_enablement561 returns empty hash if geo is not enabled562 geo enabled563 excludes data outside of the date range564 node status fields565 only includes active secondary nodes566 includes all resource status fields567 usage_activity_by_stage_manage568 includes accurate usage_activity_by_stage data569 usage_activity_by_stage_monitor570 includes accurate usage_activity_by_stage data571 usage_activity_by_stage_plan572 includes accurate usage_activity_by_stage data573 usage_activity_by_stage_release574 includes accurate usage_activity_by_stage data575 usage_activity_by_stage_secure576 includes accurate usage_activity_by_stage data577 counts pipelines that have security jobs578 counts unique users correctly across multiple scanners579 combines license_scanning into license_management580 has to resort to 0 for counting license scan581 deprecates count for users who have run scans582 usage_activity_by_stage_verify583 includes accurate usage_activity_by_stage data584Epic585 associations586 is expected to belong to author class_name => User required:587 is expected to belong to assignee class_name => User required:588 is expected to belong to group required:589 is expected to belong to parent required:590 is expected to have many epic_issues591 is expected to have many children592 is expected to have many user_mentions class_name => EpicUserMention593 is expected to have many boards_epic_user_preferences class_name => Boards::EpicUserPreference inverse_of => epic594 is expected to have many epic_board_positions class_name => Boards::EpicBoardPosition inverse_of => epic_board595 scopes596 .public_only597 only returns public epics598 .confidential599 only returns confidential epics600 .not_confidential_or_in_groups601 returns only epics which are either not confidential or in the group602 relative position scopes603 .order_relative_position_on_board604 returns epics ordered by position on the board, null last605 without_board_position606 returns only epics which do not have position set for the board607 .join_board_position608 returns epics with joined position for the board609 title sort scopes610 .order_title_asc611 returns epics ordered by title, ascending612 .order_title_desc613 returns epics ordered by title, decending614 .in_milestone615 returns epics which have an issue in the milestone616 from_id617 returns records with id bigger or equal to the provided param618 validations619 is expected to validate that :group cannot be empty/falsy620 is expected to validate that :author cannot be empty/falsy621 is expected to validate that :title cannot be empty/falsy622 is valid with a valid parent623 is not valid with invalid parent624 is valid if epic is confidential and has only confidential issues625 is not valid if epic is confidential and has non-confidential issues626 is valid if epic is confidential and has only confidential subepics627 is not valid if epic is confidential and has non-confidential subepics628 modules629 behaves like AtomicInternalId630 .has_internal_id631 Module inclusion632 is expected to includes the AtomicInternalId module633 Validation634 when presence validation is required635 when creating an object636 raises an error if the internal id is blank637 when updating an object638 raises an error if the internal id is blank639 when presence validation is not required640 when creating an object641 does not raise an error if the internal id is blank (PENDING: No reason given)642 when updating an object643 does not raise an error if the internal id is blank (PENDING: No reason given)644 Creating an instance645 saves a new instance properly646 internal id generation647 calls InternalId.generate_next and sets internal id attribute648 does not overwrite an existing internal id649 when the instance has an internal ID set650 calls InternalId.update_last_value and sets the `last_value` to that of the instance651 unsetting the instance internal id on rollback652 when the internal id has been changed653 when the internal id is automatically set654 clears it on the instance655 when the internal id is manually set656 does not clear it on the instance657 when the internal id has not been changed658 preserves the value on the instance659 supply of internal ids660 provides a persistent supply of IID values, sensitive to the current state661 #reset_scope_internal_id_attribute662 rewinds the allocated IID663 allocates the same IID664 ordering665 orders by start_or_end_date666 orders by start_date ASC667 orders by start_date DESC668 orders by end_date ASC669 orders by end_date DESC670 orders by updated_at ASC671 orders by updated_at DESC672 orders by created_at ASC673 orders by created_at DESC674 orders by relative_position ASC675 orders by title ASC676 orders by title DESC677 #valid_parent?678 basic checks679 returns true without parent680 returns true with a valid parent681 returns false with a parent from different group682 returns false when level is too deep683 when adding an Epic that has existing children684 returns true when total depth after adding will not exceed limit685 returns false when total depth after adding would exceed limit686 when parent has ancestors and epic has children687 returns true when total depth after adding will not exceed limit688 returns false when total depth after adding would exceed limit689 when hierarchy is cyclic690 returns false when parent is same as the epic691 returns false when child epic is parent of the given parent692 returns false when child epic is an ancestor of the given parent693 hierarchy694 #ancestors695 returns all ancestors for an epic696 returns an empty array if an epic does not have any parent697 #descendants698 returns all descendants for an epic699 returns an empty array if an epic does not have any descendants700 #upcoming?701 returns true when start_date is in the future702 returns false when start_date is in the past703 #expired?704 returns true when due_date is in the past705 returns false when due_date is in the future706 #elapsed_days707 returns 0 if there is no start_date708 returns elapsed_days when start_date is present709 #start_date710 is set711 returns as is712 behaves like within_timeframe scope713 .within_timeframe714 returns resources with start_date and/or end_date between timeframe715 returns resources which starts before the timeframe716 returns resources which ends after the timeframe717 #start_date_from_milestones718 fixed date719 returns start date from start date sourcing milestone720 milestone date721 returns start_date722 #due_date_from_milestones723 fixed date724 returns due date from due date sourcing milestone725 milestone date726 returns due_date727 .deepest_relationship_level728 returns the deepest relationship level between epics729 when there are no epics730 returns nil731 #issues_readable_by732 returns all issues if a user has access to them733 does not return issues user can not see734 #close735 sets closed_at to Time.current when an epic is closed736 changes the state to closed737 #reopen738 sets closed_at to nil when an epic is reopend739 sets closed_by to nil when an epic is reopend740 changes the state to opened741 #to_reference742 avoids additional SQL queries743 when nil argument744 returns epic id745 when from argument equals epic group746 returns epic id747 when from argument is a group different from epic group748 returns complete path to the epic749 when from argument is a project under the epic group750 returns epic id751 when from argument is a project under the epic subgroup752 returns complete path to the epic753 when from argument is a project in another group754 returns complete path to the epic755 when full is true756 returns complete path to the epic757 #has_children?758 has no children759 has child epics760 #has_issues?761 has no issues762 has child issues763 #has_parent?764 has no parent765 has parent766 mentioning other objects767 creates new system notes for cross references768 relative positioning769 there is no parent770 behaves like no-op relative positioning771 .scoped_items772 is empty773 .relative_siblings774 is empty775 .move_nulls_to_end776 does not move any items777 behaves like a no-op method778 does not raise errors779 does not perform any DB queries780 does not change any relative_position781 .move_nulls_to_start782 does not move any items783 behaves like a no-op method784 does not raise errors785 does not perform any DB queries786 does not change any relative_position787 instance methods788 #move_to_start789 behaves like a no-op method790 does not raise errors791 does not perform any DB queries792 does not change any relative_position793 #move_to_end794 behaves like a no-op method795 does not raise errors796 does not perform any DB queries797 does not change any relative_position798 #move_between799 behaves like a no-op method800 does not raise errors801 does not perform any DB queries802 does not change any relative_position803 #move_before804 behaves like a no-op method805 does not raise errors806 does not perform any DB queries807 does not change any relative_position808 #move_after809 behaves like a no-op method810 does not raise errors811 does not perform any DB queries812 does not change any relative_position813 there is a parent814 behaves like a class that supports relative positioning815 #scoped_items816 includes all items with the same scope817 #relative_siblings818 includes all items with the same scope, except self819 .move_nulls_to_end820 moves items with null relative_position to the end821 preserves relative position822 moves the item near the start position when there are no existing positions823 does not perform any moves if all items have their relative_position set824 manages to move nulls to the end even if there is a sequence at the end825 manages to move nulls to the end even if there is not enough space826 manages to move nulls to the end, stacking if we cannot create enough space827 manages to move nulls found in the relative scope828 can move many nulls829 does not have an N+1 issue830 .move_nulls_to_start831 moves items with null relative_position to the start832 moves the item near the start position when there are no existing positions833 preserves relative position834 does not perform any moves if all items have their relative_position set835 manages to move nulls to the start even if there is not enough space836 manages to move nulls to the end, stacking if we cannot create enough space837 #move_before838 moves item before839 can move the item before an item at the start840 can move the item before an item at MIN_POSITION841 can move the item before an item bunched up at MIN_POSITION842 when there is no space843 moves items correctly844 leap-frogging to the left845 can leap-frog STEPS times before needing to rebalance846 there is no space to the left after moving STEPS times847 rebalances to the right848 #move_after849 moves item after850 can move the item after an item bunched up at MAX_POSITION851 when there is no space852 can move the item after an item at MAX_POSITION853 moves items correctly854 leap-frogging855 rebalances after STEPS jumps856 #move_to_start857 places items at most IDEAL_DISTANCE from the start when the range is open858 moves item to the end859 positions the item at MIN_POSITION when there is only one space left860 rebalances when there is already an item at the MIN_POSITION861 deals with a run of elements at the start862 #move_to_end863 places items at most IDEAL_DISTANCE from the start when the range is open864 moves item to the end865 positions the item at MAX_POSITION when there is only one space left866 rebalances when there is already an item at the MAX_POSITION867 deals with a run of elements at the end868 #move_between869 positions item between two other870 positions item between on top871 positions item between to end872 positions items even when after and before positions are the same873 positions item in the middle of other two if distance is big enough874 positions item closer to the middle if we are at the very top875 positions item closer to the middle if we are at the very bottom876 positions item in the middle of other two877 positions item right if we pass non-sequential parameters878 avoids N+1 queries when rebalancing other items879 the two items are next to each other880 behaves like moves item between881 moves the middle item to between left and right882 there is no space883 behaves like moves item between884 moves the middle item to between left and right885 there is a bunch of items886 handles bunches correctly887 behaves like moves item between888 moves the middle item to between left and right889 with existing epics and related issues890 .related_issues891 returns epic issues ordered by relative position892 .ids_for_base_and_decendants893 returns epic ids only for selected epics or its descendant epics894 .issue_metadata_for_epics895 returns hash containing epic issues count and weight and epic status896 behaves like versioned description897 associations898 is expected to have many description_versions899 save_description_version900 when description was changed901 saves the old and new description for the first update902 only saves the new description for subsequent updates903 sets the new description version to `saved_description_version`904 clears `saved_description_version` after another save that does not change description905 when description was not changed906 does not save any description version907 #usage_ping_record_epic_creation908 records epic creation after saving909Gitlab::Insights::Finders::IssuableFinder910 #issuable_type911 issuable_type_in_query: "issue", expected_issuable_type: :issue912 is expected to eq :issue913 issuable_type_in_query: "issues", expected_issuable_type: :issue914 is expected to eq :issue915 issuable_type_in_query: "merge_request", expected_issuable_type: :merge_request916 is expected to eq :merge_request917 issuable_type_in_query: "merge_requests", expected_issuable_type: :merge_request918 is expected to eq :merge_request919 #issuable_state920 issuable_state_in_query: nil, expected_issuable_state: :opened921 is expected to eq :opened922 issuable_state_in_query: "opened", expected_issuable_state: :opened923 is expected to eq :opened924 issuable_state_in_query: "closed", expected_issuable_state: :closed925 is expected to eq :closed926 issuable_state_in_query: "merged", expected_issuable_state: :merged927 is expected to eq :merged928 issuable_state_in_query: "locked", expected_issuable_state: :locked929 is expected to eq :locked930 #period_field931 issuable_type_in_query: "issue", issuable_state_in_query: nil, expected_period_field: :created_at932 is expected to eq :created_at933 issuable_type_in_query: "merge_request", issuable_state_in_query: nil, expected_period_field: :created_at934 is expected to eq :created_at935 issuable_type_in_query: "issue", issuable_state_in_query: "opened", expected_period_field: :created_at936 is expected to eq :created_at937 issuable_type_in_query: "merge_request", issuable_state_in_query: "opened", expected_period_field: :created_at938 is expected to eq :created_at939 issuable_type_in_query: "issue", issuable_state_in_query: "closed", expected_period_field: :closed_at940 is expected to eq :closed_at941 issuable_type_in_query: "merge_request", issuable_state_in_query: "closed", expected_period_field: :created_at942 is expected to eq :created_at943 issuable_type_in_query: "issue", issuable_state_in_query: "merged", expected_period_field: :created_at944 is expected to eq :created_at945 issuable_type_in_query: "merge_request", issuable_state_in_query: "merged", expected_period_field: :merged_at946 is expected to eq :merged_at947 issuable_type_in_query: "issue", issuable_state_in_query: "locked", expected_period_field: :created_at948 is expected to eq :created_at949 issuable_type_in_query: "merge_request", issuable_state_in_query: "locked", expected_period_field: :created_at950 is expected to eq :created_at951 #find952 raises an error for an invalid :issuable_type option953 raises an error for an invalid entity object954 raises an error for an invalid :group_by option955 defaults to the "days" period if no :group_by is given956 raises an error for an invalid :period_limit option957 for a group958 issues959 avoids N + 1 queries960 :period_limit query961 with group_by: "day"962 returns issuable created after 30 days ago963 with group_by: "day", period_limit: 1964 returns issuable created after one day ago965 with group_by: "week"966 returns issuable created after 12 weeks ago967 with group_by: "week", period_limit: 1968 returns issuable created after one week ago969 with group_by: "month"970 returns issuable created after 12 months ago971 with group_by: "month", period_limit: 1972 returns issuable created after one month ago973 :projects option974 when `projects.only` are specified by one id975 returns issuables for that project976 when `projects.only` are specified by two ids977 returns issuables for all valid projects978 when `projects.only` are specified by bad id979 returns nothing980 when `projects.only` are specified by bad id and good id981 returns issuables for good project982 when `projects.only` are specified by one project full path983 returns issuables for that project984 when `projects.only` are specified by project full path and id985 returns issuables for all valid projects986 when `projects.only` are specified by duplicated projects987 returns issuables for that project without duplicated issuables988 when `projects.only` are specified by bad project path989 returns nothing990 when `projects.only` are specified by unrelated project991 returns nothing992 merge requests993 avoids N + 1 queries994 :period_limit query995 with group_by: "day"996 returns issuable created after 30 days ago997 with group_by: "day", period_limit: 1998 returns issuable created after one day ago999 with group_by: "week"1000 returns issuable created after 12 weeks ago1001 with group_by: "week", period_limit: 11002 returns issuable created after one week ago1003 with group_by: "month"1004 returns issuable created after 12 months ago1005 with group_by: "month", period_limit: 11006 returns issuable created after one month ago1007 :projects option1008 when `projects.only` are specified by one id1009 returns issuables for that project1010 when `projects.only` are specified by two ids1011 returns issuables for all valid projects1012 when `projects.only` are specified by bad id1013 returns nothing1014 when `projects.only` are specified by bad id and good id1015 returns issuables for good project1016 when `projects.only` are specified by one project full path1017 returns issuables for that project1018 when `projects.only` are specified by project full path and id1019 returns issuables for all valid projects1020 when `projects.only` are specified by duplicated projects1021 returns issuables for that project without duplicated issuables1022 when `projects.only` are specified by bad project path1023 returns nothing1024 when `projects.only` are specified by unrelated project1025 returns nothing1026 for a group with subgroups1027 issues1028 avoids N + 1 queries1029 :period_limit query1030 with group_by: "day"1031 returns issuable created after 30 days ago1032 with group_by: "day", period_limit: 11033 returns issuable created after one day ago1034 with group_by: "week"1035 returns issuable created after 12 weeks ago1036 with group_by: "week", period_limit: 11037 returns issuable created after one week ago1038 with group_by: "month"1039 returns issuable created after 12 months ago1040 with group_by: "month", period_limit: 11041 returns issuable created after one month ago1042 :projects option1043 when `projects.only` are specified by one id1044 returns issuables for that project1045 when `projects.only` are specified by two ids1046 returns issuables for all valid projects1047 when `projects.only` are specified by bad id1048 returns nothing1049 when `projects.only` are specified by bad id and good id1050 returns issuables for good project1051 when `projects.only` are specified by one project full path1052 returns issuables for that project1053 when `projects.only` are specified by project full path and id1054 returns issuables for all valid projects1055 when `projects.only` are specified by duplicated projects1056 returns issuables for that project without duplicated issuables1057 when `projects.only` are specified by bad project path1058 returns nothing1059 when `projects.only` are specified by unrelated project1060 returns nothing1061 merge requests1062 avoids N + 1 queries1063 :period_limit query1064 with group_by: "day"1065 returns issuable created after 30 days ago1066 with group_by: "day", period_limit: 11067 returns issuable created after one day ago1068 with group_by: "week"1069 returns issuable created after 12 weeks ago1070 with group_by: "week", period_limit: 11071 returns issuable created after one week ago1072 with group_by: "month"1073 returns issuable created after 12 months ago1074 with group_by: "month", period_limit: 11075 returns issuable created after one month ago1076 :projects option1077 when `projects.only` are specified by one id1078 returns issuables for that project1079 when `projects.only` are specified by two ids1080 returns issuables for all valid projects1081 when `projects.only` are specified by bad id1082 returns nothing1083 when `projects.only` are specified by bad id and good id1084 returns issuables for good project1085 when `projects.only` are specified by one project full path1086 returns issuables for that project1087 when `projects.only` are specified by project full path and id1088 returns issuables for all valid projects1089 when `projects.only` are specified by duplicated projects1090 returns issuables for that project without duplicated issuables1091 when `projects.only` are specified by bad project path1092 returns nothing1093 when `projects.only` are specified by unrelated project1094 returns nothing1095 for a project1096 issues1097 avoids N + 1 queries1098 :period_limit query1099 with group_by: "day"1100 returns issuable created after 30 days ago1101 with group_by: "day", period_limit: 11102 returns issuable created after one day ago1103 with group_by: "week"1104 returns issuable created after 12 weeks ago1105 with group_by: "week", period_limit: 11106 returns issuable created after one week ago1107 with group_by: "month"1108 returns issuable created after 12 months ago1109 with group_by: "month", period_limit: 11110 returns issuable created after one month ago1111 :projects option1112 when `projects.only` are specified by one id1113 returns issuables for that project1114 when `projects.only` are specified by two ids1115 returns issuables for all valid projects1116 when `projects.only` are specified by bad id1117 returns nothing1118 when `projects.only` are specified by bad id and good id1119 returns issuables for good project1120 when `projects.only` are specified by one project full path1121 returns issuables for that project1122 when `projects.only` are specified by project full path and id1123 returns issuables for all valid projects1124 when `projects.only` are specified by duplicated projects1125 returns issuables for that project without duplicated issuables1126 when `projects.only` are specified by bad project path1127 returns nothing1128 when `projects.only` are specified by unrelated project1129 returns nothing1130 merge requests1131 avoids N + 1 queries1132 :period_limit query1133 with group_by: "day"1134 returns issuable created after 30 days ago1135 with group_by: "day", period_limit: 11136 returns issuable created after one day ago1137 with group_by: "week"1138 returns issuable created after 12 weeks ago1139 with group_by: "week", period_limit: 11140 returns issuable created after one week ago1141 with group_by: "month"1142 returns issuable created after 12 months ago1143 with group_by: "month", period_limit: 11144 returns issuable created after one month ago1145 :projects option1146 when `projects.only` are specified by one id1147 returns issuables for that project1148 when `projects.only` are specified by two ids1149 returns issuables for all valid projects1150 when `projects.only` are specified by bad id1151 returns nothing1152 when `projects.only` are specified by bad id and good id1153 returns issuables for good project1154 when `projects.only` are specified by one project full path1155 returns issuables for that project1156 when `projects.only` are specified by project full path and id1157 returns issuables for all valid projects1158 when `projects.only` are specified by duplicated projects1159 returns issuables for that project without duplicated issuables1160 when `projects.only` are specified by bad project path1161 returns nothing1162 when `projects.only` are specified by unrelated project1163 returns nothing1164 merged merge requests1165 avoids N + 1 queries1166 :period_limit query1167 with group_by: "day"1168 returns issuable created after 30 days ago1169 with group_by: "day", period_limit: 11170 returns issuable created after one day ago1171 with group_by: "week"1172 returns issuable created after 12 weeks ago1173 with group_by: "week", period_limit: 11174 returns issuable created after one week ago1175 with group_by: "month"1176 returns issuable created after 12 months ago1177 with group_by: "month", period_limit: 11178 returns issuable created after one month ago1179 :projects option1180 when `projects.only` are specified by one id1181 returns issuables for that project1182 when `projects.only` are specified by two ids1183 returns issuables for all valid projects1184 when `projects.only` are specified by bad id1185 returns nothing1186 when `projects.only` are specified by bad id and good id1187 returns issuables for good project1188 when `projects.only` are specified by one project full path1189 returns issuables for that project1190 when `projects.only` are specified by project full path and id1191 returns issuables for all valid projects1192 when `projects.only` are specified by duplicated projects1193 returns issuables for that project without duplicated issuables1194 when `projects.only` are specified by bad project path1195 returns nothing1196 when `projects.only` are specified by unrelated project1197 returns nothing1198 #period_limit1199 default values1200 with group_by: "day"1201 returns 301202 with group_by: "week"1203 returns 121204 with group_by: "month"1205 returns 121206 custom values1207 with period_limit: 421208 returns 421209 with an invalid period_limit1210 raises an error1211Epics::TreeReorderService1212 #execute1213 when epics feature is not enabled1214 behaves like error for the tree update1215 does not change relative_positions1216 does not change parent1217 returns error status1218 returns correct error1219 when epics feature is enabled1220 when user does not have permissions to admin the base epic1221 behaves like error for the tree update1222 does not change relative_positions1223 does not change parent1224 returns error status1225 returns correct error1226 when user does have permission to admin the base epic1227 when relative_position is not valid1228 behaves like error for the tree update1229 does not change relative_positions1230 does not change parent1231 returns error status1232 returns correct error1233 when moving EpicIssue1234 when object being moved is not the same type as the switched object1235 reorders the objects1236 when no object to switch is provided1237 updates the parent1238 creates system notes1239 when object being moved is from another epic1240 when the new_parent_id has not been provided1241 behaves like error for the tree update1242 does not change relative_positions1243 does not change parent1244 returns error status1245 returns correct error1246 when the new_parent_id does not match the parent of the relative positioning object1247 behaves like error for the tree update1248 does not change relative_positions1249 does not change parent1250 returns error status1251 returns correct error1252 when the new_parent_id matches the parent id of the relative positioning object1253 reorders the objects1254 when object being moved is not supported type1255 behaves like error for the tree update1256 does not change relative_positions1257 does not change parent1258 returns error status1259 returns correct error1260 when adjacent object is not supported type1261 behaves like error for the tree update1262 does not change relative_positions1263 does not change parent1264 returns error status1265 returns correct error1266 when user does not have permissions to admin the previous parent1267 behaves like error for the tree update1268 does not change relative_positions1269 does not change parent1270 returns error status1271 returns correct error1272 when user does not have permissions to admin the new parent1273 behaves like error for the tree update1274 does not change relative_positions1275 does not change parent1276 returns error status1277 returns correct error1278 when the epics of reordered epic-issue links are not subepics of the base epic1279 when new_parent_id is not provided1280 behaves like error for the tree update1281 does not change relative_positions1282 does not change parent1283 returns error status1284 returns correct error1285 when new_parent_id is provided1286 behaves like error for the tree update1287 does not change relative_positions1288 does not change parent1289 returns error status1290 returns correct error1291 when moving is successful1292 updates the links relative positions1293 when a new_parent_id of a valid parent is provided1294 updates the parent1295 updates the links relative positions1296 creates system notes1297 when moving Epic1298 when subepics feature is disabled1299 behaves like error for the tree update1300 does not change relative_positions1301 does not change parent1302 returns error status1303 returns correct error1304 when subepics feature is enabled1305 when user does not have permissions to admin the previous parent1306 behaves like error for the tree update1307 does not change relative_positions1308 does not change parent1309 returns error status1310 returns correct error1311 when user does not have permissions to admin the previous parent links1312 behaves like error for the tree update1313 does not change relative_positions1314 does not change parent1315 returns error status1316 returns correct error1317 when there is some other error with the new parent1318 behaves like error for the tree update1319DEPRECATION WARNING: ActiveModel::Errors#values is deprecated and will be removed in Rails 6.2.1320To achieve the same use:1321 errors.map { |error| error.message } (called from create_single_link at /builds/gitlab-org/gitlab/ee/app/services/epic_links/create_service.rb:30)1322 does not change relative_positions1323DEPRECATION WARNING: ActiveModel::Errors#values is deprecated and will be removed in Rails 6.2.1324To achieve the same use:1325 errors.map { |error| error.message } (called from create_single_link at /builds/gitlab-org/gitlab/ee/app/services/epic_links/create_service.rb:30)1326 does not change parent1327DEPRECATION WARNING: ActiveModel::Errors#values is deprecated and will be removed in Rails 6.2.1328To achieve the same use:1329 errors.map { |error| error.message } (called from create_single_link at /builds/gitlab-org/gitlab/ee/app/services/epic_links/create_service.rb:30)1330 returns error status1331DEPRECATION WARNING: ActiveModel::Errors#values is deprecated and will be removed in Rails 6.2.1332To achieve the same use:1333 errors.map { |error| error.message } (called from create_single_link at /builds/gitlab-org/gitlab/ee/app/services/epic_links/create_service.rb:30)1334 returns correct error1335 when user does not have permissions to admin the new parent1336 behaves like error for the tree update1337 does not change relative_positions1338 does not change parent1339 returns error status1340 returns correct error1341 when the reordered epics are not subepics of the base epic1342 behaves like error for the tree update1343 does not change relative_positions1344 does not change parent1345 returns error status1346 returns correct error1347 when moving is successful1348 updates the links relative positions1349 when new parent is current epic1350 updates the relative positions1351 does not update the parent_id1352 when object being moved is from another epic and new_parent_id matches parent of adjacent object1353 updates the relative positions1354 updates the parent1355 creates system notes1356EpicIssue1357 validations1358 is valid to add non-confidential issue to non-confidential epic1359 is valid to add confidential issue to confidential epic1360 is valid to add confidential issue to non-confidential epic1361 is not valid to add non-confidential issue to confidential epic1362 relative positioning1363 behaves like a class that supports relative positioning1364 #scoped_items1365 includes all items with the same scope1366 #relative_siblings1367 includes all items with the same scope, except self1368 .move_nulls_to_end1369 moves items with null relative_position to the end1370 preserves relative position1371 moves the item near the start position when there are no existing positions1372 does not perform any moves if all items have their relative_position set1373 manages to move nulls to the end even if there is a sequence at the end1374 manages to move nulls to the end even if there is not enough space1375 manages to move nulls to the end, stacking if we cannot create enough space1376 manages to move nulls found in the relative scope1377 can move many nulls1378 does not have an N+1 issue1379 .move_nulls_to_start1380 moves items with null relative_position to the start1381 moves the item near the start position when there are no existing positions1382 preserves relative position1383 does not perform any moves if all items have their relative_position set1384 manages to move nulls to the start even if there is not enough space1385 manages to move nulls to the end, stacking if we cannot create enough space1386 #move_before1387 moves item before1388 can move the item before an item at the start1389 can move the item before an item at MIN_POSITION1390 can move the item before an item bunched up at MIN_POSITION1391 when there is no space1392 moves items correctly1393 leap-frogging to the left1394 can leap-frog STEPS times before needing to rebalance1395 there is no space to the left after moving STEPS times1396 rebalances to the right1397 #move_after1398 moves item after1399 can move the item after an item bunched up at MAX_POSITION1400 when there is no space1401 can move the item after an item at MAX_POSITION1402 moves items correctly1403 leap-frogging1404 rebalances after STEPS jumps1405 #move_to_start1406 places items at most IDEAL_DISTANCE from the start when the range is open1407 moves item to the end1408 positions the item at MIN_POSITION when there is only one space left1409 rebalances when there is already an item at the MIN_POSITION1410 deals with a run of elements at the start1411 #move_to_end1412 places items at most IDEAL_DISTANCE from the start when the range is open1413 moves item to the end1414 positions the item at MAX_POSITION when there is only one space left1415 rebalances when there is already an item at the MAX_POSITION1416 deals with a run of elements at the end1417 #move_between1418 positions item between two other1419 positions item between on top1420 positions item between to end1421 positions items even when after and before positions are the same1422 positions item in the middle of other two if distance is big enough1423 positions item closer to the middle if we are at the very top1424 positions item closer to the middle if we are at the very bottom1425 positions item in the middle of other two1426 positions item right if we pass non-sequential parameters1427 avoids N+1 queries when rebalancing other items1428 the two items are next to each other1429 behaves like moves item between1430 moves the middle item to between left and right1431 there is no space1432 behaves like moves item between1433 moves the middle item to between left and right1434 there is a bunch of items1435 handles bunches correctly1436 behaves like moves item between1437 moves the middle item to between left and right1438 with a mixed tree level1439 can create space to the right1440 can create space to the left1441 moves nulls to the end1442Epics::UpdateService1443 #execute1444 multiple values update1445 updates the epic correctly1446 updates the last_edited_at value1447 when title has changed1448 creates system note about title change1449 records epic title changed after saving1450 when description has changed1451 creates system note about description change1452 records epic description changed after saving1453 when repositioning an epic on a board1454 when board position records exist for all epics1455 behaves like board repositioning1456 when moving between 2 epics on the board1457 moves the epic correctly1458 when moving the epic to the end1459 moves the epic correctly1460 when moving beetween 2 epics on the board1461 keeps epic3 on top of the board1462 when moving the epic to the beginning1463 moves the epic correctly1464 when moving the epic to the end1465 keeps epic3 on top of the board1466 when board position records are missing1467 when the position does not exist for any record1468 behaves like board repositioning1469 when moving between 2 epics on the board1470 moves the epic correctly1471 when moving the epic to the end1472 moves the epic correctly1473 when the list is closed1474 behaves like board repositioning1475 when moving between 2 epics on the board1476 moves the epic correctly1477 when moving the epic to the end1478 moves the epic correctly1479 when the epic is in a subgroup1480 behaves like board repositioning1481 when moving between 2 epics on the board1482 moves the epic correctly1483 when moving the epic to the end1484 moves the epic correctly1485 when the position does not exist for the record being moved1486 behaves like board repositioning1487 when moving between 2 epics on the board1488 moves the epic correctly1489 when moving the epic to the end1490 moves the epic correctly1491 when the position exists for the above and moving records but not for higher ids1492 moves the epic correctly1493 does not create new position records1494 when the position does not exist for the records around the one being moved1495 behaves like board repositioning1496 when moving between 2 epics on the board1497 moves the epic correctly1498 when moving the epic to the end1499 moves the epic correctly1500 after_save callback to store_mentions1501 when mentionable attributes change1502 saves mentions1503 when mentionable attributes do not change1504 does not call store_mentions!1505 when save fails1506 does not call store_mentions!1507 todos1508 creating todos1509 creates todos for only newly mentioned users1510 adding a label1511 marks todo as done for a user who added a label1512 does not mark todos as done for other users1513 tracks the label change1514 mentioning a group in epic description1515 when the group is public1516 creates todos for only newly mentioned users1517 when the group is private1518 creates todos for only newly mentioned users that are group members1519 when the epic becomes confidential1520 schedules deletion of todos1521 tracks the epic becoming confidential1522 when the epic becomes visible1523 does not schedule deletion of todos1524 tracks the epic becoming visible1525 when Epic has tasks1526 is expected to eq true1527 behaves like updating a single task1528 usage counters1529 update as expected1530 when a task is marked as completed1531 creates system note about task status change1532 when a task is marked as incomplete1533 creates system note about task status change1534 when the task position has been modified1535 raises an exception1536 when the content changes but not task line number1537 creates system note about task status change1538 when tasks are marked as completed1539 creates system note about task status change1540 counts the change correctly1541 when tasks are marked as incomplete1542 creates system note about task status change1543 counts the change correctly1544 filter out start_date and end_date1545 ignores start_date and end_date1546 refresh epic dates1547 date fields are updated1548 calls UpdateDatesService1549 epic start date fixed or inherited1550 tracks the user action to set as fixed1551 tracks the user action to set as inherited1552 epic due date fixed or inherited1553 tracks the user action to set as fixed1554 tracks the user action to set as inherited1555 date fields are not updated1556 does not call UpdateDatesService1557 behaves like existing issuable with scoped labels1558 when scoped labels are available1559 when using label_ids parameter1560 adds only last selected exclusive scoped label1561 when using label_ids parameter1562 adds only last selected exclusive scoped label1563 when only removing labels1564 preserves multiple exclusive scoped labels1565 when scoped labels are not available1566 adds all scoped labels1567 with quick actions in the description1568 for /label1569 adds labels to the epic1570 for /parent_epic1571 assigns parent epic1572 when parent epic cannot be assigned1573 does not update parent epic1574 for /child_epic1575 sets a child epic1576 when child epic cannot be assigned1577 does not set child epic1578Notes::QuickActionsService1579 /epic1580 when epics are not enabled1581 does not assign the epic1582 when epics are enabled1583 on an issue1584 assigns the issue to the epic1585 leaves the note empty1586 creates a system note1587 on an incident1588 leaves the note empty1589 does not assigns the issue to the epic1590 on a merge request1591 leaves the note empty1592 /remove_epic1593 when epics are not enabled1594 does not remove the epic1595 when epics are enabled1596 on an issue1597 removes the epic1598 leaves the note empty1599 creates a system note1600 on an incident1601 leaves the note empty1602 on a test case1603 leaves the note empty1604 on a merge request1605 leaves the note empty1606 Epics1607 /close1608 when epics are not enabled1609 does not close the epic1610 when epics are enabled1611 closes the epic1612 leaves the note empty1613 /reopen1614 when epics are not enabled1615 does not reopen the epic1616 when epics are enabled1617 reopens the epic1618 leaves the note empty1619 /label1620 when epics are not enabled1621 does not add a label to the epic1622 when epics are enabled1623 adds a group label to the epic1624 leaves the note empty1625 /unlabel1626 when epics are not enabled1627 does not remove any label1628 when epics are enabled1629 removes a requested label from the epic1630 leaves the note empty1631 /assign_reviewer1632 with a merge request1633 behaves like assigns one or more reviewers to the merge request1634 adds multiple reviewers from the list1635 behaves like assigns one or more reviewers to the merge request1636 adds multiple reviewers from the list1637 /assign1638 Issue assignees1639 adds multiple assignees from the list1640 behaves like assigning an already assigned user1641 adds multiple assignees from the list1642 behaves like assigning an already assigned user1643 adds multiple assignees from the list1644 MergeRequest1645 behaves like assigning an already assigned user1646 adds multiple assignees from the list1647 behaves like assigning an already assigned user1648 adds multiple assignees from the list1649 /unassign1650 Issue assignees1651 behaves like unassigning a not assigned user1652 adds multiple assignees from the list1653 behaves like unassigning a not assigned user1654 adds multiple assignees from the list1655 MergeRequest1656 behaves like unassigning a not assigned user1657 adds multiple assignees from the list1658 behaves like unassigning a not assigned user1659 adds multiple assignees from the list1660 /unassign_reviewer1661 with a merge request1662 behaves like unassigning one or more reviewers1663 removes multiple reviewers from the list1664 behaves like unassigning one or more reviewers1665 removes multiple reviewers from the list1666 /promote1667 when epics are enabled1668 when a user does not have permissions to promote an issue1669 does not promote an issue to an epic1670 when a user has permissions to promote an issue1671 promotes an issue to an epic1672 with a double promote1673 only creates one epic1674 when issue was already promoted1675 does not promote issue1676 when an issue belongs to a project without group1677 does not promote an issue to an epic1678 on an incident1679 does not promote to an epic1680 when epics are disabled1681 does not promote an issue to an epic1682 with issue types1683 when issue does not support quick actions1684 for requirement1685 behaves like note on issue type that does not support time tracking1686 /spend1687 does not change time spent1688 /estimate1689 does not execute time estimate1690 for test case1691 behaves like note on issue type that does not support time tracking1692 /spend1693 does not change time spent1694 /estimate1695 does not execute time estimate1696MergeRequests::RefreshService1697 #execute1698 checks merge train status1699 when branch is deleted1700 does not check merge train status1701 #update_approvers_for_target_branch_merge_requests1702 when the feature flags are enabled1703 when the branch is protected1704 when code owners file is updated1705 when not on the merge train1706 refreshes the code owner rules for all relevant merge requests1707 when on the merge train1708 behaves like does not refresh the code owner rules1709 is expected not to receive new(*(any args)) 0 times1710 when code owners file is not updated1711 behaves like does not refresh the code owner rules1712 is expected not to receive new(*(any args)) 0 times1713 when the branch is deleted1714 behaves like does not refresh the code owner rules1715 is expected not to receive new(*(any args)) 0 times1716 when the branch is created1717 behaves like does not refresh the code owner rules1718 is expected not to receive new(*(any args)) 0 times1719 when the branch is not protected1720 behaves like does not refresh the code owner rules1721 is expected not to receive new(*(any args)) 0 times1722 when code_owners is disabled1723 behaves like does not refresh the code owner rules1724 is expected not to receive new(*(any args)) 0 times1725 #update_approvers_for_source_branch_merge_requests1726 gets called in a specific order1727 creating approval_rules1728 with a non-sectional codeowners file1729 behaves like creates an approval rule based on current diff1730 creates expected approval rules1731 with a sectional codeowners file1732 behaves like creates an approval rule based on current diff1733 creates expected approval rules1734 when code owners disabled1735 does nothing1736 when code owners enabled1737 refreshes the code owner rules for all relevant merge requests1738 when report_approver_rules enabled, with approval_rule enabled1739 refreshes the report_approver rules for all relevant merge requests1740 Pipelines for merge requests1741 creates a merge request pipeline1742 when MergeRequestUpdateWorker is retried by an exception1743 does not re-create a duplicate merge request pipeline1744 when user is approver1745 push to origin repo source branch1746 resets approvals1747 push to origin repo target branch1748 when all MRs to the target branch had diffs1749 does not reset approvals1750 push to fork repo source branch1751 open fork merge request1752 resets approvals1753 closed fork merge request1754 resets approvals1755 push to fork repo target branch1756 changes to merge requests1757 does not reset approvals1758 push to origin repo target branch after fork project was removed1759 does not reset approvals1760 resetting approvals if they are enabled1761 when approvals_before_merge is disabled1762 resets approvals1763 when reset_approvals_on_push is disabled1764 does not reset approvals1765 when the rebase_commit_sha on the MR matches the pushed SHA1766 does not reset approvals1767 when there are approvals1768 closed merge request1769 resets the approvals1770 opened merge request1771 resets the approvals1772 #abort_ff_merge_requests_with_when_pipeline_succeeds1773 with add to merge train when pipeline succeeds strategy1774 behaves like maintained merge requests for MWPS1775 does not cancel auto merge1776 does not change merge_user1777 does not add todos1778 with merge train strategy1779 behaves like maintained merge requests for MWPS1780 does not cancel auto merge1781 does not change merge_user1782 does not add todos1783EE::Gitlab::Auth::Ldap::Sync::Group1784 .execute_all_providers1785 uses the ldap sync state machine1786 fails a stuck group older than 1 hour1787 when the group ldap sync has already started1788 logs a debug message1789 does not update permissions1790 when ldap connection fails1791 logs a debug message1792 ensures group state returns to failed_ldap_sync1793 .execute1794 uses the ldap sync state machine1795 fails a stuck group older than 1 hour1796 when the group ldap sync has already started1797 logs a debug message1798 does not update permissions1799 when ldap connection fails1800 logs a debug message1801 ensures group state returns to failed_ldap_sync1802 .fail_stuck_group1803 handles nil ldap_sync_last_sync_at1804 .ldap_sync_ready?1805 returns false when ldap sync started1806 returns true when ldap sync pending1807 #update_permissions1808 with all functionality against one LDAP group type1809 with basic add/update actions1810 does not update permissions unless ldap sync status is started1811 adds new members and sets ldap attribute to true1812 converts an existing membership access request to a real member1813 downgrades existing member access1814 upgrades existing member access1815 sets an existing member ldap attribute to true1816 does not alter an ldap member that has a permission override1817 when existing user is no longer in LDAP group1818 removes the user from the group1819 refuses to delete the last owner1820 updates projects authorizations1821 when the user is the last owner1822 downgrades one user but not the other1823 when user inherits higher permissions from parent1824 adds member with the inherited higher permission1825 upgrades existing member to the inherited higher permission1826 does not alter an ldap member that has a permission override1827 when user inherits lower permissions from parent1828 adds member with the ldap group link's access level1829 downgrades existing member access to the ldap group link's access level1830 does not alter an ldap member that has a permission override1831 when user has a pending access request in a parent group1832 does not propagate the access level of the pending access request1833 when user inherits permissions from parent and user is no longer in LDAP group1834 removes existing member1835 when permissions are inherited from a complex ancestry1836 applies the permission inherited from the closest ancestor when it's higher1837 when the extern_uid and group member DNs have different case1838 does not revert the overrides1839 does not update permissions when group base is missing1840 with different LDAP group types1841 with groupOfNames style LDAP group1842 adds the user to the group1843 with posixGroup style LDAP group1844 adds the user to the group1845 with groupOfUniqueNames style LDAP group1846 adds the user to the group1847 with an empty LDAP group1848 does nothing, without failure1849 filter1850 #update_permissions1851 with all functionality against one LDAP group type1852 with basic add/update actions1853 does not update permissions unless ldap sync status is started1854 adds new members and sets ldap attribute to true1855 updates permissions when group base is missing1856ApprovalProjectRule1857 validations1858 is invalid when name not unique within rule type and project1859 DEFAULT_SEVERITIES1860 contains a valid subset of severity levels1861 associations1862 is expected to have many approval_merge_request_rule_sources1863 is expected to have many approval_merge_request_rules through approval_merge_request_rule_sources1864 .regular1865 returns non-report_approver records1866 .regular_or_any_approver scope1867 returns regular or any-approver rules1868 .code_owner scope1869 returns nothing1870 .vulnerability_reports scope1871 with vulnerability reports1872 is expected to be present1873 without vulnerability reports1874 is expected to be empty1875 #regular?1876 returns true for regular rules1877 returns false for report_approver rules1878 #code_owner?1879 returns false1880 #report_approver?1881 returns false for regular rules1882 returns true for report_approver rules1883 #rule_type1884 returns the regular type for regular rules1885 returns the report_approver type for vulnerability report approvers rules1886 #apply_report_approver_rules_to1887 when the project rule is for a `License-Check`1888 is expected to contain exactly #<ApprovalMergeRequestRule id: 55, created_at: "2021-09-14 20:30:02.802909765 +0000", updated_at: "20..."report_approver", report_type: "license_scanning", section: nil, modified_from_project_rule: false>1889 is expected to contain exactly #<User id:2414 @user1508>1890 is expected to contain exactly #<Group id:3001 @group608>1891 when the project rule is for a `Vulnerability-Check`1892 is expected to contain exactly #<ApprovalMergeRequestRule id: 58, created_at: "2021-09-14 20:30:05.539203434 +0000", updated_at: "20...e: "report_approver", report_type: "vulnerability", section: nil, modified_from_project_rule: false>1893 is expected to contain exactly #<User id:2420 @user1511>1894 is expected to contain exactly #<Group id:3010 @group611>1895 when the project rule is for a `Coverage-Check`1896 is expected to contain exactly #<ApprovalMergeRequestRule id: 61, created_at: "2021-09-14 20:30:09.110595759 +0000", updated_at: "20...e: "report_approver", report_type: "code_coverage", section: nil, modified_from_project_rule: false>1897 is expected to contain exactly #<User id:2426 @user1514>1898 is expected to contain exactly #<Group id:3019 @group614>1899 validation1900 when creating a new rule1901 is expected to be valid1902 is expected to be valid1903 is expected to be valid1904 when attempting to edit the name of the rule1905 is expected to be valid1906 with a `License-Check` rule1907 is expected not to be valid1908 is expected to change `subject.errors[:name].present?`1909 with a `Vulnerability-Check` rule1910 is_valid: true, scanners: [], vulnerabilities_allowed: 0, severity_levels: []1911 is expected to equal true1912 is_valid: true, scanners: ["dast"], vulnerabilities_allowed: 1, severity_levels: ["critical", "high", "medium"]1913 is expected to equal true1914 is_valid: true, scanners: ["dast", "sast"], vulnerabilities_allowed: 10, severity_levels: ["critical", "high"]1915 is expected to equal true1916 is_valid: true, scanners: ["dast", "dast"], vulnerabilities_allowed: 100, severity_levels: ["critical"]1917 is expected to equal true1918 is_valid: false, scanners: ["dast", "dast"], vulnerabilities_allowed: 100, severity_levels: ["unknown_severity"]1919 is expected to equal false1920 is_valid: false, scanners: ["dast", "unknown_scanner"], vulnerabilities_allowed: 100, severity_levels: ["critical"]1921 is expected to equal false1922 is_valid: false, scanners: ["cluster_image_scanning"], vulnerabilities_allowed: 100, severity_levels: ["critical"]1923 is expected to equal false1924 is_valid: false, scanners: ["dast", "sast"], vulnerabilities_allowed: 1.1, severity_levels: ["critical"]1925 is expected to equal false1926 is_valid: false, scanners: ["dast", "sast"], vulnerabilities_allowed: "one", severity_levels: ["critical"]1927 is expected to equal false1928 any_approver rules1929 creating only one any_approver rule is allowed1930 callbacks1931 #audit_add users after :add1932 behaves like auditable1933 when audit event queue is active1934 adds message to audit event queue1935 when audit event queue is not active1936 does not add message to audit event queue1937 #audit_remove users after :remove1938 behaves like auditable1939 when audit event queue is active1940 adds message to audit event queue1941 when audit event queue is not active1942 does not add message to audit event queue1943 #audit_add groups after :add1944 behaves like auditable1945 when audit event queue is active1946 adds message to audit event queue1947 when audit event queue is not active1948 does not add message to audit event queue1949 #audit_remove groups after :remove1950 behaves like auditable1951 when audit event queue is active1952 adds message to audit event queue1953 when audit event queue is not active1954 does not add message to audit event queue1955Repository1956 searches blobs and commits1957 names elasticsearch queries1958 can filter blobs1959 filters commits from blobs, and vice-versa1960 class method find_commits_by_message_with_elastic1961 returns commits1962 with a deleted project1963 skips its commits1964 with a project pending deletion1965 skips its commits1966 find_commits_by_message_with_elastic1967 returns commits1968AddNewDataToMergeRequestsDocuments1969 migration_options1970 has migration options set1971 .migrate1972 when migration is already completed1973 does not modify data1974 migration process1975 updates all merge_request documents1976 only updates merge_request documents missing visibility_level1977 processes in batches1978 .completed?1979 when documents are missing visibility_level1980 is expected to be falsey1981 when no documents are missing visibility_level1982 is expected to be truthy1983Issues::CreateService1984 #execute1985 when current user cannot admin issues in the project1986 filters out params that cannot be set without the :admin_issue permission1987 when current user can admin issues in the project1988 sets permitted params correctly1989 when epics are enabled1990 behaves like issue with epic_id parameter1991 when epic_id does not exist1992 raises an exception1993 when epic_id is 01994 does not assign any epic1995 when user can not add issues to the epic1996 raises an exception1997 does not send usage data for added epic action1998 when user can add issues to the epic1999 when a project is a direct child of the epic group2000 creates epic issue link2001 calls EpicIssues::CreateService2002 tracks usage data for added to epic action2003 when epic param is also present2004 when epic_id belongs to another valid epic2005 creates epic issue link based on the epic param2006 when epic_id is empty2007 creates epic issue link based on the epic param2008 when a project is from a subgroup of the epic group2009 creates epic issue link2010 tracks usage data for added to epic action2011 when using quick actions2012 /epic action2013 adds an issue to the passed epic2014 with epic and milestone in commands only2015 sets epic and milestone to issuable and update epic start and due date2016 generates system notes for adding an epic and milestone2017 when assigning epic raises an exception2018 assigns the issue passed to the provided epic2019 when adding a public issue to confidential epic2020 creates confidential child issue2021 when adding a confidential issue to public epic2022 creates a confidential child issue2023 behaves like new issuable with scoped labels2024 when scoped labels are available2025 when using label_ids parameter2026 adds only last selected exclusive scoped label2027 when using labels parameter2028 adds only last selected exclusive scoped label2029 when scoped labels are not available2030 adds all scoped labels2031Gitlab::Elastic::Helper2032 .new2033 has the proper default values2034 with a custom `index_name`2035 has the proper `index_name`2036 .default2037 does not cache the value2038 #default_mappings2039 has only one type2040 custom analyzers2041 merges custom language analyzers mappings2042 #create_migrations_index2043 creates the index2044 #delete_migrations_index2045 deletes the migrations index2046 #create_empty_index2047 with an empty cluster2048 creates an index with a custom name2049 with alias and index2050 creates index and alias2051 when there is a legacy index2052 creates the index only2053 when there is an alias2054 raises an error2055 does not raise error with skip_if_exists option2056 when there is a legacy index2057 raises an error2058 #delete_index2059 without an existing index2060 fails gracefully2061 when there is an alias2062 is expected to be truthy2063 when there is a legacy index2064 is expected to be truthy2065 #index_exists?2066 without an existing index2067 is expected to be falsy2068 when there is a legacy index2069 is expected to be truthy2070 when there is an alias2071 is expected to be truthy2072 #migrations_index_exists?2073 without an existing migrations index2074 is expected to be falsy2075 when it exists2076 is expected to be truthy2077 #alias_exists?2078 without an existing index2079 is expected to be falsy2080 when there is a legacy index2081 is expected to be falsy2082 when there is an alias2083 is expected to be truthy2084 #cluster_free_size_bytes2085 returns valid cluster size2086 #switch_alias2087 switches the alias2088 #index_size2089 when there is a legacy index2090 is expected to have key "docs"2091 is expected to have key "store"2092 when there is an alias2093 is expected to have key "docs"2094 is expected to have key "store"2095 supports providing the alias name2096 #documents_count2097 when there is a legacy index2098 is expected to eq 02099 when there is an alias2100 is expected to eq 02101 supports providing the alias name2102 #delete_migration_record2103 when record exists2104 is expected to be truthy2105 when record does not exist2106 is expected to be falsey2107 #standalone_indices_proxies2108 when target_classes is not provided2109 creates proxies for each separate class2110 when target_classes is provided2111 creates proxies for only the target classes2112 #ping?2113 does not raise any exception2114Issues::MoveService2115 #execute2116 group issue hooks2117 executes group issue hooks2118 when moved issue belongs to epic2119 records epic moved from project event2120 when moved issue does not belong to epic2121 does not record epic moved from project event2122 resource weight events2123 creates expected resource weight events2124 #rewrite_related_vulnerability_issues2125 updates all vulnerability issue links with new issue2126 #rewrite_epic_issue2127 issue assigned to epic2128 updates epic issue reference2129 tracks usage data for changed epic action2130 user can not update the epic2131 ignores epic issue reference2132 does not send usage data for changed epic action2133 epic update fails2134 does not send usage data for changed epic action2135ApprovalMergeRequestRule2136 associations2137 is expected to have one approval_project_rule_project through approval_project_rule2138 validations2139 is valid2140 is invalid when the name is missing2141 is invalid when name not unique within rule type and merge request2142 approval_project_rule is set2143 when project of approval_project_rule and merge request matches2144 is valid2145 when the project of approval_project_rule and merge request does not match2146 is invalid2147 code owner rules2148 is valid2149 is invalid when reusing the same name within the same merge request2150 allows a regular rule with the same name as the codeowner rule2151 report_approver rules2152 is valid2153 validates presence of report_type2154 any_approver rules2155 creating only one any_approver rule is allowed2156 .regular_or_any_approver scope2157 returns regular or any-approver rules2158 scopes2159 .not_matching_pattern2160 returns the correct rules2161 .matching_pattern2162 returns the correct rules2163 .code_owners2164 returns the correct rules2165 .vulnerability_report2166 returns the correct rules2167 .license_compliance2168 returns the correct rules2169 .coverage2170 returns the correct rules2171 .find_or_create_code_owner_rule2172 creates a new rule if it does not exist2173 finds an existing rule using rule_type column2174 retries when a record was created between the find and the create2175 when there is an existing rule2176 finds the existing rule2177 when the existing rule matches name but not section2178 creates a new rule2179 when section is present2180 creates a new rule and saves section when present2181 #project2182 returns project of MergeRequest2183 #regular2184 returns true for regular records2185 returns false for code owner records2186 returns false for any approver records2187 #code_owner?2188 rule_type is :code_owner2189 returns true2190 rule_type is :regular2191 returns false2192 #approvers2193 when project merge_requests_author_approval is true2194 contains author2195 when project merge_requests_author_approval is false2196 does not contain author2197 when the rules users have already been loaded2198 does not perform any new queries when all users are loaded already2199 does not contain the author2200 #sync_approved_approvers2201 when not merged2202 does nothing2203 when merged2204 records approved approvers as approved_approvers association2205 stores all the approvals for any-approver rule2206 validations2207 approvals_required2208 is a natural number2209 #refresh_required_approvals!2210 when the rule is a `License-Check` rule2211 when the latest license report violates the compliance policy2212 is expected to equal 352213 when the latest license report adheres to the compliance policy2214 is expected to be zero2215Banzai::Filter::References::EpicReferenceFilter2216 internal reference2217 links to a valid reference2218 links with adjacent text2219 includes a title attribute2220 escapes the title attribute2221 includes default classes2222 includes a data-group attribute2223 includes a data-epic attribute2224 includes a data-original attribute2225 ignores invalid epic IIDs2226 ignores out of range epic IDs2227 does not process links containing epic numbers followed by text2228 internal escaped reference2229 links to a valid reference2230 includes a title attribute2231 includes default classes2232 ignores invalid epic IIDs2233 cross-reference2234 ignores a shorthand reference from another group2235 links to a valid reference for full reference2236 link has valid text2237 includes default classes2238 escaped cross-reference2239 ignores a shorthand reference from another group2240 links to a valid reference for full reference2241 link has valid text2242 includes default classes2243 subgroup cross-reference2244 ignores a shorthand reference from another group2245 ignores reference with incomplete group path2246 links to a valid reference for full reference2247 link has valid text2248 includes default classes2249 url reference2250 links to a valid reference2251 link has valid text2252 includes default classes2253 matches link reference with trailing slash2254 full cross-refererence in a link href2255 links to a valid reference for link href2256 link has valid text2257 includes default classes2258 url in a link href2259 links to a valid reference for link href2260 link has valid text2261 includes default classes2262 checking N+12263 does not have N+1 per multiple references per group2264RequirementsManagement::Requirement2265 associations2266 is expected to belong to author class_name => User required:2267 is expected to belong to project required:2268 is expected to have many test_reports2269 is expected to have many recent_test_reports order => {:created_at=>:desc}2270 behaves like a model with a requirement issue association2271 requirement issue association2272 when the requirement issue is of type requirement2273 is expected to be valid2274 when requirement issue is not of requirement type2275 is expected to include /must be a `requirement`/2276 when requirement issue is invalid but the type field is not dirty2277 is expected to be valid2278 is expected to be valid2279 validations2280 is expected to validate that :project cannot be empty/falsy2281 is expected to validate that :author cannot be empty/falsy2282 is expected to validate that :title cannot be empty/falsy2283 is expected to validate that the length of :title is at most 2552284 is expected to validate that the length of :title_html is at most 8002285 is limited to a unique requirement_issue2286 with requirement issue2287 is expected to validate that :issue_id is case-sensitively unique as long as it is not nil2288 scopes2289 .counts_by_state2290 is expected to contain exactly ["archived", 1] and ["opened", 1]2291 .with_author2292 with one author2293 is expected to contain exactly #<RequirementsManagement::Requirement id: 10, created_at: "2021-09-14 20:33:04.472535204 +0000", upda...tle: [FILTERED], title_html: "My title 2193", description: nil, description_html: "", issue_id: nil>2294 with multiple authors2295 is expected to contain exactly #<RequirementsManagement::Requirement id: 10, created_at: "2021-09-14 20:33:04.472535204 +0000", upda...tle: [FILTERED], title_html: "My title 2193", description: nil, description_html: "", issue_id: nil> and #<RequirementsManagement::Requirement id: 11, created_at: "2021-09-14 20:33:04.499729071 +0000", upda...tle: [FILTERED], title_html: "My title 2194", description: nil, description_html: "", issue_id: nil>2296 .search2297 with a query that covers both2298 is expected to contain exactly #<RequirementsManagement::Requirement id: 12, created_at: "2021-09-14 20:33:04.847371253 +0000", upda...RED], title_html: "it needs to do the thing", description: nil, description_html: "", issue_id: nil> and #<RequirementsManagement::Requirement id: 13, created_at: "2021-09-14 20:33:04.945108020 +0000", upda...LTERED], title_html: "it needs to not break", description: nil, description_html: "", issue_id: nil>2299 with a query that covers neither2300 is expected to be empty2301 with a query that covers one2302 is expected to contain exactly #<RequirementsManagement::Requirement id: 12, created_at: "2021-09-14 20:33:04.847371253 +0000", upda...RED], title_html: "it needs to do the thing", description: nil, description_html: "", issue_id: nil>2303 .with_last_test_report_state2304 for passed state2305 is expected to contain exactly #<RequirementsManagement::Requirement id: 15, created_at: "2021-09-14 20:33:05.870957974 +0000", upda...tle: [FILTERED], title_html: "My title 2196", description: nil, description_html: "", issue_id: nil> and #<RequirementsManagement::Requirement id: 16, created_at: "2021-09-14 20:33:06.130127429 +0000", upda...tle: [FILTERED], title_html: "My title 2197", description: nil, description_html: "", issue_id: nil>2306 for failed state2307 is expected to contain exactly #<RequirementsManagement::Requirement id: 14, created_at: "2021-09-14 20:33:05.645910595 +0000", upda...tle: [FILTERED], title_html: "My title 2195", description: nil, description_html: "", issue_id: nil>2308 .without_test_reports2309 returns requirements without test reports2310 #last_test_report_state2311 when latest test report is passing2312 returns passing2313 when latest test report is failing2314 returns failing2315 when there are no test reports2316 returns nil2317 #status_manually_updated2318 when latest test report has a build2319 returns false2320 when latest test report does not have a build2321 returns true2322 sync with requirement issues2323 when destroying a requirement2324 also destroys the associated requirement issue2325 when destroying a requirement issue2326 also destroys the associated requirement2327EpicTreeSorting2328 #relative_siblings2329 includes both epics and epic issues for an epic issue2330 includes both epics and epic issues for an epic2331 there is an ID collision2332 includes the collision from either collision member2333 #move_after2334 moves an epic2335 moves an epic_issue2336 #move_before2337 moves an epic2338 moves an epic_issue2339 #move_between2340 moves an epic2341 moves an epic_issue2342 #move_sequence2343 when self is an epic2344 moves all objects correctly2345 when self is an epic_issue2346 moves all objects correctly2347PersonalAccessToken2348 scopes2349 with_expires_at_after2350 includes the tokens with higher than the lifetime expires_at value2351 doesn't contain expired tokens2352 doesn't contain tokens within the expiration time2353 with_no_expires_at2354 includes the tokens with nil expires_at2355 doesn't contain expired tokens2356 doesn't contain tokens within the expiration time2357 expires_in2358 only includes one token2359 validations2360 allows to define expires_at2361 allows to don't define expires_at2362 with expiration policy2363 when the feature is licensed2364 when the user does not belong to a managed group2365 behaves like PAT expiry rules are enforced2366 requires to be less or equal than the max_personal_access_token_lifetime2367 can't be blank2368 when the user belongs to a managed group2369 when the group has enforced a PAT expiry rule2370 behaves like PAT expiry rules are enforced2371 requires to be less or equal than the max_personal_access_token_lifetime2372 can't be blank2373 when the group has not enforced a PAT expiry setting2374 when the instance has enforced a PAT expiry setting2375 behaves like PAT expiry rules are enforced2376 requires to be less or equal than the max_personal_access_token_lifetime2377 can't be blank2378 when the instance does not enforce a PAT expiry setting2379 behaves like PAT expiry rules are not enforced2380 allows expiry to be after the max_personal_access_token_lifetime2381 can be blank2382 when the feature is not available2383 behaves like PAT expiry rules are not enforced2384 allows expiry to be after the max_personal_access_token_lifetime2385 can be blank2386 .pluck_names2387 returns the names of the tokens2388 .with_invalid_expires_at2389 includes the tokens with invalid expires_at2390 doesn't include valid tokens2391 doesn't include revoked tokens2392 doesn't include expired tokens2393 .expiration_enforced??2394 behaves like enforcement of personal access token expiry2395 licensed: true, application_setting: true, result: true2396 is expected to equal true2397 licensed: true, application_setting: false, result: false2398 is expected to equal false2399 licensed: false, application_setting: true, result: true2400 is expected to equal true2401 licensed: false, application_setting: false, result: true2402 is expected to equal true2403 #expired?2404 behaves like enforcement of personal access token expiry2405 licensed: true, application_setting: true, result: true2406 is expected to equal true2407 licensed: true, application_setting: false, result: false2408 is expected to equal false2409 licensed: false, application_setting: true, result: true2410 is expected to equal true2411 licensed: false, application_setting: false, result: true2412 is expected to equal true2413 #expired_but_not_enforced?2414 enforced?: true, expires_at: Tue, 07 Sep 2021 20:15:27.964900089 UTC +00:00, result: false2415 is expected to equal false2416 enforced?: true, expires_at: Tue, 14 Sep 2021 20:15:27.965105929 UTC +00:00, result: false2417 is expected to equal false2418 enforced?: true, expires_at: Tue, 21 Sep 2021 20:15:27.965123809 UTC +00:00, result: false2419 is expected to equal false2420 enforced?: false, expires_at: Tue, 07 Sep 2021 20:15:27.965186329 UTC +00:00, result: true2421 is expected to equal true2422 enforced?: false, expires_at: Tue, 14 Sep 2021 20:15:27.965241639 UTC +00:00, result: true2423 is expected to equal true2424 enforced?: false, expires_at: Tue, 21 Sep 2021 20:15:27.965252979 UTC +00:00, result: false2425 is expected to equal false2426 .enforce_pat_expiration_feature_available?2427 licensed: true, result: true2428 is expected to equal true2429 licensed: false, result: false2430 is expected to equal false2431 #revoke2432 clears cache on revoke access2433 after create callback2434 clears cache for the user2435Gitlab::Auth::Ldap::Access2436 #allowed?2437 LDAP user2438Deprecation warning: Net::LDAP::ConnectionRefused will be deprecated. Use Errno::ECONNREFUSED instead.2439Deprecation warning: Net::LDAP::ConnectionRefused will be deprecated. Use Errno::ECONNREFUSED instead.2440 finds a user by dn first2441 finds a user by email if not found by dn2442 returns false if user cannot be found2443 when exists in LDAP/AD2444 user blocked in LDAP/AD2445 blocks user in GitLab2446 on a read-only instance2447 does not block user in GitLab2448 user unblocked in LDAP/AD2449 unblocks user in GitLab2450 on a read-only instance2451 does not unblock user in GitLab2452 when no longer exist in LDAP/AD2453 blocks user in GitLab2454 on a read-only instance2455 does not block user in GitLab2456 #update_user2457 email address2458 does not update email if email attribute is not set2459 does not update the email if the user has the same email in GitLab and in LDAP2460 does not update the email if the user has the same email GitLab and in LDAP, but with upper case in LDAP2461 when mail is different2462 does not update the email when in a read-only GitLab instance2463 updates the email if the user email is different2464 does not update the name if the user email is different2465 name2466 does not update name if name attribute is not set2467 does not update the name if the user has the same name in GitLab and in LDAP2468 when cn is different2469 does not update the name when in a read-only GitLab instance2470 updates the name if the user name is different2471 does not update the email if the user name is different2472 when first and last name attributes passed2473 does not update the name when in a read-only GitLab instance2474 updates the name if the user name is different2475 does not update the email if the user name is different2476 group memberships2477 doesn't continue when there is no `memberOf` param2478 when there is `memberof` param2479 triggers a sync for all groups found in `memberof` for new users2480 doesn't trigger a sync when in a read-only GitLab instance2481 doesn't trigger a sync when there are no links for the provider2482 does not performs the membership update for existing users2483 SSH keys2484 adds a SSH key if it is in LDAP but not in gitlab2485 adds a SSH key and give it a proper name2486 does not add a SSH key if it is invalid2487 does not add a SSH key when in a read-only GitLab instance2488 user has at least one LDAPKey2489 removes a SSH key if it is no longer in LDAP2490 removes a SSH key if the ldap attribute was removed2491 kerberos identity2492 adds a Kerberos identity if it is in Active Directory but not in GitLab2493 updates existing Kerberos identity in GitLab if Active Directory has a different one2494 does not remove Kerberos identities from GitLab if they are none in the LDAP provider2495 does not modify identities in GitLab if they are no kerberos principal in the LDAP provider2496 does not add a Kerberos identity when in a read-only GitLab instance2497 LDAP entity2498 whent external UID changed in the entry2499 updates the external UID2500 does not update the external UID when in a read-only GitLab instance2501ComplianceManagement::MergeRequestApprovalSettings::Resolver2502 is initialized2503 #allow_author_approval2504 behaves like resolvable2505 instance_prevents_approval: true, group_allows_approval: true, value: false, locked: true, inherited_from: :instance2506 has the correct value2507 has the correct locked status2508 has the correct inheritance2509 instance_prevents_approval: true, group_allows_approval: false, value: false, locked: true, inherited_from: :instance2510 has the correct value2511 has the correct locked status2512 has the correct inheritance2513 instance_prevents_approval: false, group_allows_approval: true, value: true, locked: false, inherited_from: nil2514 has the correct value2515 has the correct locked status2516 has the correct inheritance2517 instance_prevents_approval: false, group_allows_approval: false, value: false, locked: false, inherited_from: nil2518 has the correct value2519 has the correct locked status2520 has the correct inheritance2521 #allow_committer_approval2522 behaves like resolvable2523 instance_prevents_approval: true, group_allows_approval: true, value: false, locked: true, inherited_from: :instance2524 has the correct value2525 has the correct locked status2526 has the correct inheritance2527 instance_prevents_approval: true, group_allows_approval: false, value: false, locked: true, inherited_from: :instance2528 has the correct value2529 has the correct locked status2530 has the correct inheritance2531 instance_prevents_approval: false, group_allows_approval: true, value: true, locked: false, inherited_from: nil2532 has the correct value2533 has the correct locked status2534 has the correct inheritance2535 instance_prevents_approval: false, group_allows_approval: false, value: false, locked: false, inherited_from: nil2536 has the correct value2537 has the correct locked status2538 has the correct inheritance2539 #allow_overrides_to_approver_list_per_merge_request2540 behaves like resolvable2541 instance_prevents_approval: true, group_allows_approval: true, value: false, locked: true, inherited_from: :instance2542 has the correct value2543 has the correct locked status2544 has the correct inheritance2545 instance_prevents_approval: true, group_allows_approval: false, value: false, locked: true, inherited_from: :instance2546 has the correct value2547 has the correct locked status2548 has the correct inheritance2549 instance_prevents_approval: false, group_allows_approval: true, value: true, locked: false, inherited_from: nil2550 has the correct value2551 has the correct locked status2552 has the correct inheritance2553 instance_prevents_approval: false, group_allows_approval: false, value: false, locked: false, inherited_from: nil2554 has the correct value2555 has the correct locked status2556 has the correct inheritance2557 #retain_approvals_on_push2558 behaves like resolvable but has no instance setting2559 group_allows_approval: true, value: true, locked: false, inherited_from: nil2560 has the correct value2561 has the correct locked status2562 has the correct inheritance2563 group_allows_approval: false, value: false, locked: false, inherited_from: nil2564 has the correct value2565 has the correct locked status2566 has the correct inheritance2567 #require_password_to_approve2568 behaves like resolvable but has no instance setting2569 group_allows_approval: true, value: true, locked: false, inherited_from: nil2570 has the correct value2571 has the correct locked status2572 has the correct inheritance2573 group_allows_approval: false, value: false, locked: false, inherited_from: nil2574 has the correct value2575 has the correct locked status2576 has the correct inheritance2577Members::DestroyService2578 when current_user is present2579 with group membership via Group SAML2580 with a SAML identity2581 cleans up linked SAML identity2582 without a SAML identity2583 does not attempt to destroy unrelated identities2584 audit events2585 does not log the audit event as a system event2586 behaves like logs an audit event2587 is expected to change `AuditEvent.count` by 12588 group deletion schedule2589 when member user has a scheduled deletion for the group2590 deletes the group deletion schedule2591 when scheduled deletion for the group belongs to different user2592 does not delete the group deletion schedule2593 on-call rotations2594 when member is in an on-call rotation2595 when group member is removed2596 calls the remove service for each project in the group2597 when project member is removed2598 calls the remove service for that project only2599 when member is not part of an on-call rotation for the group2600 does not call the remove service2601 when current user is not present2602 for members with expired access2603 audit events2604 logs the audit event as a system event2605 behaves like logs an audit event2606 is expected to change `AuditEvent.count` by 12607Custom file template classes2608 Gitlab::Template::CustomDockerfileTemplate2609 .all2610 returns all valid templates2611 .find2612 finds a valid template2613 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::CustomDockerfileTemplate, :category=>"Custom"}.find does not set category correctly)2614 does not find a template with the wrong extension2615 does not find a template in a subdirectory2616 Gitlab::Template::CustomGitignoreTemplate2617 .all2618 returns all valid templates2619 .find2620 finds a valid template2621 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::CustomGitignoreTemplate, :category=>"Custom"}.find does not set category correctly)2622 does not find a template with the wrong extension2623 does not find a template in a subdirectory2624 Gitlab::Template::CustomGitlabCiYmlTemplate2625 .all2626 returns all valid templates2627 .find2628 finds a valid template2629 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::CustomGitlabCiYmlTemplate, :category=>"Custom"}.find does not set category correctly)2630 does not find a template with the wrong extension2631 does not find a template in a subdirectory2632 Gitlab::Template::CustomLicenseTemplate2633 .all2634 returns all valid templates2635 .find2636 finds a valid template2637 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::CustomLicenseTemplate, :category=>"Custom"}.find does not set category correctly)2638 does not find a template with the wrong extension2639 does not find a template in a subdirectory2640 Gitlab::Template::CustomMetricsDashboardYmlTemplate2641 .all2642 returns all valid templates2643 .find2644 finds a valid template2645 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::CustomMetricsDashboardYmlTemplate, :category=>"Custom"}.find does not set category correctly)2646 does not find a template with the wrong extension2647 does not find a template in a subdirectory2648 Gitlab::Template::IssueTemplate2649 .all2650 returns all valid templates2651 .find2652 finds a valid template2653 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::IssueTemplate, :category=>"Project Templates"}.find does not set category correctly)2654 does not find a template with the wrong extension2655 does not find a template in a subdirectory2656 Gitlab::Template::MergeRequestTemplate2657 .all2658 returns all valid templates2659 .find2660 finds a valid template2661 sets the category correctly (PENDING: {:class_name=>Gitlab::Template::MergeRequestTemplate, :category=>"Project Templates"}.find does not set category correctly)2662 does not find a template with the wrong extension2663 does not find a template in a subdirectory2664EE::Gitlab::Checks::PushRuleCheck2665 #validate!2666 parallel push checks2667 sets the git env correctly for all hooks2668 behaves like push checks2669 returns nil on success2670 raises an error on failure2671 when tag name exists2672 validates tags push rules2673 when tag name does not exists2674 validates branches push rules2675 when tag and branch exist2676 validates tag and branch push rules2677 :parallel_push_checks feature is disabled2678 behaves like push checks2679 returns nil on success2680 raises an error on failure2681 when tag name exists2682 validates tags push rules2683 when tag name does not exists2684 validates branches push rules2685 when tag and branch exist2686 validates tag and branch push rules2687Autocomplete::VulnerabilitiesAutocompleteFinder2688 #execute2689 when vulnerable is project2690 behaves like autocomplete vulnerabilities finder2691 when user does not have access to project2692 is expected to be empty2693 when user has access to project2694 when security dashboards are not enabled2695 is expected to be empty2696 when security dashboards are enabled2697 is expected to contain exactly #<Vulnerability id:2 [vulnerability:group730/project1204/2]>2698 when multiple vulnerabilities are found2699 returns max 5 items2700 is sorted descending by id2701 when search is provided in params2702 and it matches ID of vulnerability2703 is expected to contain exactly #<Vulnerability id:2 [vulnerability:group730/project1204/2]>2704 and it matches title of vulnerability2705 is expected to contain exactly #<Vulnerability id:2 [vulnerability:group730/project1204/2]>2706 and it does not match neither title or id of vulnerability2707 is expected to be empty2708 when vulnerable is group2709 behaves like autocomplete vulnerabilities finder2710 when user does not have access to project2711 is expected to be empty2712 when user has access to project2713 when security dashboards are not enabled2714 is expected to be empty2715 when security dashboards are enabled2716 is expected to contain exactly #<Vulnerability id:2 [vulnerability:group730/project1204/2]>2717 when multiple vulnerabilities are found2718 returns max 5 items2719 is sorted descending by id2720 when search is provided in params2721 and it matches ID of vulnerability2722 is expected to contain exactly #<Vulnerability id:2 [vulnerability:group730/project1204/2]>2723 and it matches title of vulnerability2724 is expected to contain exactly #<Vulnerability id:2 [vulnerability:group730/project1204/2]>2725 and it does not match neither title or id of vulnerability2726 is expected to be empty2727EE::IssuesHelper2728 #issue_closed_link2729 with linked issue2730 with promoted issue2731 when user has permission to see new epic2732 returns link2733 when user has no permission to see new epic2734 returns nil2735 #issue_in_subepic?2736 returns false if epic_id parameter is not set or is wildcard2737 returns false if epic_id parameter is the same as issue epic_id2738 returns false if the issue is not part of an epic2739 returns true if epic_id parameter is not the same as issue epic_id2740 #show_timeline_view_toggle?2741 is expected to be falsy2742 issue is an incident2743 is expected to be falsy2744 with license2745 is expected to be truthy2746 #scoped_labels_available?2747 project2748 behaves like without license2749 is expected to be falsy2750 behaves like with license2751 is expected to be truthy2752 group2753 behaves like without license2754 is expected to be falsy2755 behaves like with license2756 is expected to be truthy2757 #issues_list_data2758 when features are enabled2759 returns data with licensed features enabled2760 when project does not have group2761 does not return group_epics_path2762 when features are disabled2763 returns data with licensed features disabled2764VulnerabilityExports::Exporters::CsvService2765 includes the columns required for import2766 when block is not given2767 renders csv to string2768 when block is given2769 returns handle to Tempfile2770 CSV content2771 with valid findings2772 when a project belongs to a group2773 includes proper values for each column type2774 when a project belongs to a user2775 includes proper values for each column except group name2776 when a vulnerability is missing a finding2777 includes proper values for each column except Other Identifiers2778Gitlab::Analytics::CycleAnalytics::RequestParams2779 casts `created_after` to `Time`2780 casts `created_before` to `Time`2781 validations2782 is valid2783 when `created_before` is missing2784 is valid2785 when `created_before` is earlier than `created_after`2786 is invalid2787 when the date range exceeds 180 days2788 is invalid2789 optional `project_ids`2790 when `project_ids` is not empty2791 with a valid group2792 is expected to eq [2, 3]2793 contains every project of the group2794 without a valid group2795 is expected to eq nil2796 when `project_ids` is not an array2797 is expected to eq [1]2798 when `project_ids` is nil2799 is expected to eq []2800 when `project_ids` is empty2801 is expected to eq []2802 is a subgroup project2803 is expected to eq [1]2804 optional `group_id`2805 when `group_id` is not empty2806 is expected to eq "ca-test-group"2807 when `group_id` is nil2808 is expected to eq nil2809 when `group_id` is a subgroup2810 is expected to eq 36702811 optional `value_stream`2812 when `value_stream` is not empty2813 is expected to eq #<InstanceDouble(Analytics::CycleAnalytics::GroupValueStream) (anonymous)>2814 when `value_stream` is nil2815 is expected to eq nil2816 issuable filter params2817 has the correct attributes2818 sorting params2819 converts sorting params to symbol when passing it to data collector2820 adds sorting params to data attributes2821Ci::Bridge2822 belongs to an upstream pipeline2823 state machine transitions2824 when bridge points towards downstream2825 does not subscribe to upstream project2826 when bridge points towards upstream2827 subscribes to the upstream project2828 does not schedule downstream pipeline creation2829 #inherit_status_from_upstream!2830 when bridge does not have upstream pipeline2831 is expected to equal false2832 when upstream pipeline has the same status as the bridge2833 is expected to equal false2834 when status is not supported2835 when status is created2836 returns false2837 does not change the bridge status2838 when status is waiting_for_resource2839 returns false2840 does not change the bridge status2841 when status is preparing2842 returns false2843 does not change the bridge status2844 when status is pending2845 returns false2846 does not change the bridge status2847 when status is supported2848 when status is running2849 inherits the upstream status2850 when status is success2851 inherits the upstream status2852 when status is failed2853 inherits the upstream status2854 when status is canceled2855 inherits the upstream status2856 when status is skipped2857 inherits the upstream status2858 when status is manual2859 inherits the upstream status2860 when status is scheduled2861 inherits the upstream status2862Sidebars::Projects::Menus::SecurityComplianceMenu2863 #link2864 show_discover_project_security: true, security_dashboard_feature: true, dependency_scanning_feature: true, audit_events_feature: true, expected_link: "/-/security/discover"2865 returns the expected link2866 show_discover_project_security: false, security_dashboard_feature: true, dependency_scanning_feature: true, audit_events_feature: true, expected_link: "/-/security/dashboard"2867 returns the expected link2868 show_discover_project_security: false, security_dashboard_feature: false, dependency_scanning_feature: true, audit_events_feature: true, expected_link: "/-/dependencies"2869 returns the expected link2870 show_discover_project_security: false, security_dashboard_feature: false, dependency_scanning_feature: false, audit_events_feature: true, expected_link: "/-/audit_events"2871 returns the expected link2872 show_discover_project_security: false, security_dashboard_feature: false, dependency_scanning_feature: false, audit_events_feature: false, expected_link: "/-/security/configuration"2873 returns the expected link2874 when no security menu item and show promotions2875 returns nil2876 Menu items2877 Configuration2878 #sidebar_security_configuration_paths2879 includes all the security configuration paths2880 Discover Security & Compliance2881 when show_discover_project_security is true2882 is expected not to be nil2883 when show_discover_project_security is not true2884 is expected to be nil2885 Security Dashboard2886 when user can access security dashboard2887 is expected not to be nil2888 when user cannot access security dashboard2889 is expected to be nil2890 Vulnerability Report2891 when user can access vulnerabilities report2892 is expected not to be nil2893 when user cannot access vulnerabilities report2894 is expected to be nil2895 On Demand Scans2896 when user can access vulnerabilities report2897 is expected not to be nil2898 when user cannot access vulnerabilities report2899 is expected to be nil2900 Dependency List2901 when user can access dependency list2902 is expected not to be nil2903 when user cannot access dependency list2904 is expected to be nil2905 License Compliance2906 when user can access license compliance2907 is expected not to be nil2908 when user cannot access license compliance2909 is expected to be nil2910 Threat monitoring2911 when user can access threat monitoring2912 is expected not to be nil2913 when user cannot access threat monitoring2914 is expected to be nil2915 Policies2916 when feature flag :security_orchestration_policies_configuration is enabled2917 when user can access policies tab2918 is expected not to be nil2919 when user cannot access policies tab2920 is expected to be nil2921 when feature flag :security_orchestration_policies_configuration is disabled2922 is expected to be nil2923 Audit Events2924 when user can access audit events2925 is expected not to be nil2926 when feature audit events is licensed2927 is expected not to be nil2928 when feature audit events is not licensed2929 when show promotions is enabled2930 is expected not to be nil2931 when show promotions is disabled2932 is expected to be nil2933 when user cannot access audit events2934 is expected to be nil2935SoftwareLicensePolicies::CreateService2936 #execute2937 with license management unavailable2938 does not creates a software license policy2939 with a user who is allowed to admin2940 when valid parameters are specified2941 approval_status: "allowed", expected_classification: "allowed"2942 creates one software license policy correctly2943 approval_status: "approved", expected_classification: "allowed"2944 creates one software license policy correctly2945 approval_status: "denied", expected_classification: "denied"2946 creates one software license policy correctly2947 approval_status: "blacklisted", expected_classification: "denied"2948 creates one software license policy correctly2949 when an argument error is raised2950 is expected to equal :error2951 is expected to be present2952 is expected to equal 4002953 when invalid input is provided2954 is expected to equal :error2955 is expected to be present2956 is expected to equal 4002957 with a user not allowed to admin2958 does not create a software license policy2959Security::VulnerabilitiesFinder2960 returns vulnerabilities of a project2961 when not given a second argument2962 does not filter the vulnerability list2963 when filtered by report type2964 only returns vulnerabilities matching the given report types2965 when filtered by severity2966 only returns vulnerabilities matching the given severities2967 when filtered by state2968 only returns vulnerabilities matching the given states2969 when filtered by scanner external ID2970 only returns vulnerabilities matching the given scanner IDs2971 when filtered by scanner_id2972 only returns vulnerabilities matching the given scanner IDs2973 when filtered by project2974 only returns vulnerabilities matching the given projects2975 when sorted2976 ascending by severity2977 is expected to eq [#<Vulnerability id:46 [vulnerability:group747/project1276/46]>, #<Vulnerability id:48 [vulnerability:group747/project1276/48]>, #<Vulnerability id:47 [vulnerability:group747/project1276/47]>]2978 descending by severity2979 is expected to eq [#<Vulnerability id:47 [vulnerability:group747/project1276/47]>, #<Vulnerability id:48 [vulnerability:group747/project1276/48]>, #<Vulnerability id:46 [vulnerability:group747/project1276/46]>]2980 when filtered by has_issues argument2981 when has_issues is set to true2982 only returns vulnerabilities that have issues2983 when has_issues is set to false2984 only returns vulnerabilities that does not have issues2985 when filtered by has_resolution argument2986 when has_resolution is set to true2987 only returns vulnerabilities that have resolution2988 when has_resolution is set to false2989 only returns vulnerabilities that do not have resolution2990 when filtered by more than one property2991 only returns vulnerabilities matching all of the given filters2992UsersHelper2993 #current_user_menu_items2994 has_paid_namespace?: true, user?: true, gitlab_com?: true, user_eligible?: true2995 is expected to eq false2996 has_paid_namespace?: true, user?: true, gitlab_com?: true, user_eligible?: false2997 is expected to eq false2998 has_paid_namespace?: true, user?: true, gitlab_com?: false, user_eligible?: true2999 is expected to eq false3000 has_paid_namespace?: true, user?: true, gitlab_com?: false, user_eligible?: false3001 is expected to eq false3002 has_paid_namespace?: true, user?: false, gitlab_com?: true, user_eligible?: true3003 is expected to eq false3004 has_paid_namespace?: true, user?: false, gitlab_com?: true, user_eligible?: false3005 is expected to eq false3006 has_paid_namespace?: true, user?: false, gitlab_com?: false, user_eligible?: true3007 is expected to eq false3008 has_paid_namespace?: true, user?: false, gitlab_com?: false, user_eligible?: false3009 is expected to eq false3010 has_paid_namespace?: false, user?: true, gitlab_com?: true, user_eligible?: true3011 is expected to eq true3012 has_paid_namespace?: false, user?: true, gitlab_com?: true, user_eligible?: false3013 is expected to eq false3014 has_paid_namespace?: false, user?: true, gitlab_com?: false, user_eligible?: true3015 is expected to eq false3016 has_paid_namespace?: false, user?: true, gitlab_com?: false, user_eligible?: false3017 is expected to eq false3018 has_paid_namespace?: false, user?: false, gitlab_com?: true, user_eligible?: true3019 is expected to eq false3020 has_paid_namespace?: false, user?: false, gitlab_com?: true, user_eligible?: false3021 is expected to eq false3022 has_paid_namespace?: false, user?: false, gitlab_com?: false, user_eligible?: true3023 is expected to eq false3024 has_paid_namespace?: false, user?: false, gitlab_com?: false, user_eligible?: false3025 is expected to eq false3026 #user_badges_in_admin_section3027 when Gitlab.com? is true3028 is expected not to eq [{:text=>"Is using seat", :variant=>"light"}]3029 when user is an admin and the current_user3030 is expected to eq [{:text=>"Admin", :variant=>"success"}, {:text=>"It's you!", :variant=>"muted"}]3031 when Gitlab.com? is false3032 when user uses a license seat3033 is expected to eq [{:text=>"Is using seat", :variant=>"neutral"}]3034 when user is an admin and the current_user3035 is expected to eq [{:text=>"Admin", :variant=>"success"}, {:text=>"Is using seat", :variant=>"neutral"}, {:text=>"It's you!", :variant=>"muted"}]3036 when user does not use a license seat3037 is expected to eq []3038MergeCommits::ExportCsvService3039 is expected to be success3040 includes the appropriate headers3041 data verification3042 Merge Commit3043 Author3044 Merge Request3045 Merged By3046 Pipeline3047 Group3048 Project3049 Approver(s)3050 with multiple merge requests3051 is expected to eq 23052 by commit_sha filter3053 when valid3054 is expected to be success3055 is expected to eq 13056 is expected to eq "rurebf"3057 when merge commit does not exist3058 is expected to eq 03059 possible merge commit SHA values3060 when squash_commit_sha is present3061 is expected to eq "f7ce827c314c9340b075657fd61c789fb01cf74d"3062 when diff_head_sha is present3063 is expected to eq "b83d6e391c22777fca1ed3012fce84f633d7fed0"3064Ci::BuildDependencies3065 for cross_project dependencies3066 when cross_dependencies are not defined3067 is expected to be empty3068 with missing dependency3069 is expected to be empty3070 with cross_dependencies to the same project3071 with artifacts true3072 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2021-09-14 08:53:29.000000000 +0000", trace: nil, create...resource_at: nil, processed: false, scheduling_type: "stage", id: 183, stage_id: 170, tag_list: nil>3073 with artifacts false3074 is expected to be empty3075 with dependency names from environment variables3076 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2021-09-14 08:53:29.000000000 +0000", trace: nil, create...resource_at: nil, processed: false, scheduling_type: "stage", id: 187, stage_id: 174, tag_list: nil>3077 with cross_dependencies to another ref in same project3078 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2021-09-14 08:53:29.000000000 +0000", trace: nil, create...resource_at: nil, processed: false, scheduling_type: "stage", id: 189, stage_id: 176, tag_list: nil>3079 with cross_dependencies to a pipeline in another project3080 with permissions to other_project3081 contains both dependencies3082 when license does not have cross_project_pipelines3083 is expected to be empty3084 without permissions to other_project3085 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2021-09-14 08:53:29.000000000 +0000", trace: nil, create...resource_at: nil, processed: false, scheduling_type: "stage", id: 198, stage_id: 185, tag_list: nil>3086 with too many cross_dependencies3087 returns a limited number of dependencies3088 #all3089 with both cross project and cross pipeline dependencies3090 returns both dependencies3091Iterations::Cadences::CreateIterationsInAdvanceService3092 #execute3093 when user has permissions to create iterations3094 when user is a group developer3095 with nil cadence3096 returns error3097 with manual cadence3098 returns error3099 with inactive cadence3100 returns error3101 with automatic and active cadence3102 does not return error3103 when no iterations need to be created3104 does not create any new iterations3105 when new iterations need to be created3106 when no iterations exist3107 creates new iterations3108 when cadence start date is in future3109 creates new iterations3110 sets last run date3111 when advanced iterations exist but cadence needs to create more3112 creates new iterations3113 when advanced iterations exist but cadence changes duration to a smaller one3114 creates new iterations3115 when cadence start date changes to a future date with existing iteration3116 creates new iterations3117 when cadence has iterations but all are in the past3118 creates new iterations3119 updates cadence last_run_date3120 sets the title correctly based on iterations count and follow-up dates3121 sets the states correctly based on iterations dates3122 when cadence changes duration3123 adjusts iteration titles for iterations that are autogenerated and have the dates in the title3124Security::StoreReportsService3125 #execute3126 when there are reports3127 initializes and execute a StoreReportService for each report3128 marks the project as vulnerable3129 updates the `latest_pipeline_id` attribute of the associated `vulnerability_statistic` record3130 when the StoreReportService raises an error3131 marks the project as vulnerable3132 updates the `latest_pipeline_id` attribute of the associated `vulnerability_statistic` record3133 when StoreReportService returns an error for a report3134 returns the errors after having processed all reports3135SoftwareLicensePolicy3136 validations3137 is expected to includes the Presentable module3138 is expected to validate that :software_license cannot be empty/falsy3139 is expected to validate that :project cannot be empty/falsy3140 is expected to validate that :classification cannot be empty/falsy3141 is expected to validate that :software_license is case-sensitively unique within the scope of :project_id, producing a custom validation error on failure3142 .with_license_by_name3143 finds a license by an exact match3144 finds a license by a case insensitive match3145 finds multiple licenses3146 .by_spdx3147 is expected to contain exactly #<SoftwareLicensePolicy id: 14, project_id: 1245, software_license_id: 17, classification: "allowed",...reated_at: "2021-09-14 20:36:17.564797521 +0000", updated_at: "2021-09-14 20:36:17.564797521 +0000">3148 is expected to contain exactly #<SoftwareLicensePolicy id: 14, project_id: 1245, software_license_id: 17, classification: "allowed",...reated_at: "2021-09-14 20:36:17.564797521 +0000", updated_at: "2021-09-14 20:36:17.564797521 +0000"> and #<SoftwareLicensePolicy id: 15, project_id: 1246, software_license_id: 18, classification: "allowed",...reated_at: "2021-09-14 20:36:17.739381898 +0000", updated_at: "2021-09-14 20:36:17.739381898 +0000">3149 is expected to be empty3150 #name3151 is expected to eql "SOFTWARE-LICENSE-2.7/example_6"3152 #approval_status3153 classification: "allowed", approval_status: "approved"3154 is expected to eql "approved"3155 classification: "denied", approval_status: "blacklisted"3156 is expected to eql "blacklisted"3157 .to_classification3158 approval_status: "approved", classification: "allowed"3159 is expected to eql "allowed"3160 approval_status: "blacklisted", classification: "denied"3161 is expected to eql "denied"3162Members::CreateService3163 with group plan3164 already exceeded invite quota limit3165 behaves like quota limit exceeded3166 is expected to include {:status => :error, :message => "Invite limit of 2 per day exceeded"}3167 is expected not to change `Member.count`3168 will exceed invite quota limit3169 behaves like quota limit exceeded3170 is expected to include {:status => :error, :message => "Invite limit of 3 per day exceeded"}3171 is expected not to change `Member.count`3172 within invite quota limit3173 is expected to eq {:status=>:success}3174 is expected to include #<User id:3074 @user1910> and #<User id:3075 @user1911>3175 infinite invite quota limit3176 is expected to eq {:status=>:success}3177 is expected to include #<User id:3074 @user1910> and #<User id:3075 @user1911>3178 without a plan3179 is expected to eq {:status=>:success}3180 is expected to include #<User id:3074 @user1910> and #<User id:3075 @user1911>3181Types::Admin::CloudLicenses::CurrentLicenseType3182 is expected to eq "CurrentLicense"3183 is expected to include graphql fields "last_sync", "billable_users_count", "maximum_user_count", and "users_over_license_count"3184 with license type fields3185 is expected to include graphql fields "id", "type", "plan", "name", "email", "company", "starts_at", "expires_at", "block_changes_at", "activated_at", and "users_in_license_count"3186 field values3187 id3188 is expected to eq #<GlobalID:0x00007f44cb6f0038 @uri=#<URI::GID gid://gitlab/License/43>>3189 type3190 is expected to eq "cloud"3191 plan3192 is expected to eq "ultimate"3193 name3194 is expected to eq "User Example"3195 email3196 is expected to eq "user@example.com"3197 company3198 is expected to eq "Example Inc."3199 starts_at3200 is expected to eq Mon, 14 Jun 20213201 expires_at3202 is expected to eq Tue, 14 Jun 20223203 block_changes_at3204 is expected to eq Thu, 14 Jul 20223205 activated_at3206 is expected to eq Wed, 14 Jul 2021 20:36:26.000000000 +00003207 users_in_license_count3208 is expected to eq 253209 #users_over_license_count3210 returns the number of users over the paid users in the license3211 when license is for a trial3212 returns 03213 field values3214 last_sync3215 is expected to eq 2021-09-14 20:36:25.601573180 +00003216 billable_users_count3217 is expected to eq 103218 maximum_user_count3219 is expected to eq 203220WikiPages::DestroyService3221 #execute3222DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from wiki_event at /builds/gitlab-org/gitlab/app/services/event_create_service.rb:124)3223 calls Geo::RepositoryUpdatedService when running on a Geo primary node3224DEPRECATION WARNING: `.reorder(nil)` with `.first` / `.first!` no longer takes non-deterministic result in Rails 6.2. To continue taking non-deterministic result, use `.take` / `.take!` instead. (called from wiki_event at /builds/gitlab-org/gitlab/app/services/event_create_service.rb:124)3225 does not call Geo::RepositoryUpdatedService when not running on a Geo primary node3226 behaves like WikiPages::DestroyService#execute3227 executes webhooks3228 increments the delete count3229 creates a new wiki page deletion event (PENDING: group wiki support)3230 does not call Geo::RepositoryUpdatedService when container is group3231 when the deletion fails3232 returns an error response3233 does not increment the delete count if the deletion failed3234EE::GitlabRoutingHelper3235 #geo_primary_web_url3236 generates a path to the project3237 generates a path to the wiki3238 #geo_primary_default_url_to_repo3239 HTTP3240 project3241 is expected to eq "http://localhost:123/relative/foo/bar.git"3242 wiki3243 is expected to eq "http://localhost:123/relative/foo/bar.wiki.git"3244 HTTPS3245 project3246 is expected to eq "https://localhost:123/relative/foo/bar.git"3247 wiki3248 is expected to eq "https://localhost:123/relative/foo/bar.wiki.git"3249 SSH3250 project3251 is expected to eq "git@localhost:foo/bar.git"3252 wiki3253 is expected to eq "git@localhost:foo/bar.wiki.git"3254 #license_management_settings_path3255 generates a path to the license compliance page3256 #user_group_saml_omniauth_metadata_path3257 uses metadata path3258 appends group path and token3259 #user_group_saml_omniauth_metadata_url3260 creates full metadata URL3261 #upgrade_plan_path3262 when the group is present3263 returns the group billing path3264 when the group is blank3265 returns the profile billing path3266 #vulnerability_url3267 returns the full url of the vulnerability3268 #usage_quotas_path3269 returns the group usage quota path for a group namespace3270 returns the profile usage quotas path for any other namespace3271 returns the path with any args supplied3272ApprovalRules::MergeRequestRuleDestroyService3273 user cannot edit approval rule3274 returns error status3275 user can edit approval rule3276 when rule successfully deleted3277 returns successful status3278 tracks delete event via a usage counter3279 when rule not successfully deleted3280 returns error status3281 does not track delete event via a usage counter3282ApprovalWrappedAnyApproverRule3283 #approved?3284 #approvals_approvers3285 contains every approved user3286 when an author and a committer approved3287 does not contain an author3288 #commented_approvers3289 returns an array3290 returns an array of approvers who have commented3291ProjectTemplateExportWorker3292 behaves like export worker3293 #perform3294 when it succeeds3295 calls the ExportService3296 export job3297 creates an export job record for the project3298 sets the export job status to started3299 sets the export job status to finished3300 when it fails3301 does not raise an exception when strategy is invalid3302 does not raise error when project cannot be found3303 does not raise error when user cannot be found3304 sidekiq options3305 disables retry3306 disables dead3307 sets default status expiration3308StatusPage::PublishedIncident3309 associations3310 is expected to belong to issue required: inverse_of => status_page_published_incident3311 validation3312 is expected to validate that :issue cannot be empty/falsy3313 .track3314 is expected to be a kind of StatusPage::PublishedIncident(id: integer, created_at: datetime_with_timezone, updated_at: datetime_with_timezone, issue_id: integer)3315 is expected to eq #<StatusPage::PublishedIncident id: 4, created_at: "2021-09-14 20:36:54.112721140 +0000", updated_at: "2021-09-14 20:36:54.112721140 +0000", issue_id: 866>3316 is expected to eq #<Issue id:866 namespace1318/project1360#1>3317 is expected to change `described_class.count` by 13318 when the incident already exists3319 is expected to be a kind of StatusPage::PublishedIncident(id: integer, created_at: datetime_with_timezone, updated_at: datetime_with_timezone, issue_id: integer)3320 is expected to eq #<StatusPage::PublishedIncident id: 8, created_at: "2021-09-14 20:36:54.757729852 +0000", updated_at: "2021-09-14 20:36:54.757729852 +0000", issue_id: 866>3321 is expected to eq #<Issue id:866 namespace1318/project1360#1>3322 is expected not to change `described_class.count`3323 when issue is new record3324 is expected to be a kind of StatusPage::PublishedIncident(id: integer, created_at: datetime_with_timezone, updated_at: datetime_with_timezone, issue_id: integer)3325 is expected to eq #<StatusPage::PublishedIncident id: 12, created_at: "2021-09-14 20:36:55.748961028 +0000", updated_at: "2021-09-14 20:36:55.748961028 +0000", issue_id: 868>3326 is expected to eq #<Issue id:869 namespace1321/project1363#1>3327 is expected to change `described_class.count` by 13328 when issue is nil3329 is expected to raise ActiveRecord::RecordInvalid with message matching /Issue can't be blank/3330 .untrack3331 when the incident is not yet tracked3332 is expected not to change `described_class.count`3333 when the incident is already tracked3334 is expected to change `described_class.count` by -13335Resolvers::NamespaceProjectsResolver3336 with a group3337 #resolve3338 has_vulnerabilities3339 when the `has_vulnerabilities` parameter is not truthy3340 is expected to contain exactly #<Project id:1285 group763/project1365>> and #<Project id:1286 group763/project1366>>3341 when the `has_vulnerabilities` parameter is truthy3342 is expected to contain exactly #<Project id:1287 group764/project1367>>3343 sorting3344 when sort equals :storage3345 is expected to eq [#<Project id:1291 group765/project1371>>, #<Project id:1290 group765/project1370>>, #<Project id:1289 group765/project1369>>]3346 when sort does not equal :storage3347 is expected to eq [#<Project id:1292 group766/project1372>>, #<Project id:1293 group766/project1373>>, #<Project id:1294 group766/project1374>>]3348 has_code_coverage3349 when has_code_coverage is false3350 is expected to contain exactly #<Project id:1295 group767/project1375>> and #<Project id:1296 group767/project1376>>3351 when has_code_coverage is true3352 is expected to contain exactly #<Project id:1298 group769/project1378>>3353Mutations::Boards::Update3354 is expected to require graphql authorizations :admin_issue_board3355 #resolve3356 when the user cannot admin the board3357 raises an error3358 with invalid params3359 raises an error3360 when user can update board3361 updates board with correct values3362 when passing current iteration3363 updates board with current iteration3364 when passing labels param3365 updates board with correct labels3366 #ready3367 when passing both labels & label_ids param3368 raises exception when mutually exclusive params are given3369Notes::UpdateService3370 #execute3371 publish to status page3372 for text-only update3373 triggers status page publish3374 without recognized emoji3375 does not trigger status page publish service3376 for quick action only update3377 triggers status page publish3378 when update fails3379 does not trigger status page publish service3380 for epics3381 tracks epic note creation3382Gitlab::Auth::Ldap::User3383 includes the EE module3384 #initialize3385 when there is one external group3386 when there is another user in the external group3387 when the user is in the external group3388 sets the user's external flag to true3389 when the user is not in the external group3390 sets the user's external flag to false3391 when there are no other users in the external group3392 when the user is in the external group3393 sets the user's external flag to true3394 when the user is not in the external group3395 sets the user's external flag to false3396 with "user_default_external" application setting3397 user_default_external: true, user_default_internal_regex: nil, user_is_in_external_group: false, expected_to_be_external: false3398 sets the user's external flag appropriately3399 user_default_external: true, user_default_internal_regex: "example.com", user_is_in_external_group: false, expected_to_be_external: false3400 sets the user's external flag appropriately3401 user_default_external: true, user_default_internal_regex: nil, user_is_in_external_group: true, expected_to_be_external: true3402 sets the user's external flag appropriately3403 user_default_external: true, user_default_internal_regex: "example.com", user_is_in_external_group: true, expected_to_be_external: true3404 sets the user's external flag appropriately3405 user_default_external: false, user_default_internal_regex: nil, user_is_in_external_group: false, expected_to_be_external: false3406 sets the user's external flag appropriately3407 user_default_external: false, user_default_internal_regex: "example.com", user_is_in_external_group: false, expected_to_be_external: false3408 sets the user's external flag appropriately3409 user_default_external: false, user_default_internal_regex: nil, user_is_in_external_group: true, expected_to_be_external: true3410 sets the user's external flag appropriately3411 user_default_external: false, user_default_internal_regex: "example.com", user_is_in_external_group: true, expected_to_be_external: true3412 sets the user's external flag appropriately3413 when there is more than one external group3414 when the user is in an external group3415 sets the user's external flag to true3416 when the user is not in an external group3417 sets the user's external flag to false3418 when there are no external groups3419 sets the user's external flag to false3420 when the user_default_external application setting is true3421 does not set the external flag to false3422Gitlab::SubscriptionPortal::Clients::Graphql3423 #activate3424 returns success3425 returns failure3426 returns connectivity error when remote server returns error3427 returns connectivity error when the remote server is unreachable3428 #plan_upgrade_offer3429 when the response contains errors3430 returns a failure3431 when the response does not contain errors3432 eligible: true, assisted_plan_id: "111111", free_plan_id: "111111"3433 returns the correct response3434 eligible: true, assisted_plan_id: "111111", free_plan_id: nil3435 returns the correct response3436 eligible: true, assisted_plan_id: nil, free_plan_id: "111111"3437 returns the correct response3438 when subscription is nil3439 returns the correct response3440 #subscription_last_term3441 returns success3442 returns failure3443 with no namespace_id3444 returns failure3445 #get_plans3446 when the request is successful3447 returns the data3448 when the request is unsuccessful3449 returns a failure response and logs the error3450 #filter_purchase_eligible_namespaces3451 when the response is successful3452 returns the namespace data3453 when the response is unsuccessful3454 returns the error message3455TimeboxesHelper3456 #can_generate_chart?3457 supports_milestone_charts: false, start_date: nil, due_date: nil, can_generate_chart: false3458 is expected to eq false3459 supports_milestone_charts: true, start_date: Tue, 14 Sep 2021, due_date: Tue, 14 Sep 2021, can_generate_chart: true3460 is expected to eq true3461 supports_milestone_charts: true, start_date: Tue, 14 Sep 2021, due_date: nil, can_generate_chart: false3462 is expected to eq false3463 supports_milestone_charts: true, start_date: nil, due_date: Tue, 14 Sep 2021, can_generate_chart: false3464 is expected to eq false3465 supports_milestone_charts: true, start_date: nil, due_date: nil, can_generate_chart: false3466 is expected to eq false3467 #timebox_date_range3468 iteration3469 formats properly3470 #show_burndown_placeholder?3471 milestone does not support burndown charts3472 is expected to equal false3473 user without permission3474 is expected to equal false3475 user with permission3476 is expected to equal true3477 #legacy_milestone?3478 without any ResourceStateEvents3479 is expected to be nil3480 with ResourceStateEvent created before milestone3481 is expected to eq false3482 with ResourceStateEvent created same day as milestone3483 is expected to eq false3484 with ResourceStateEvent created after milestone3485 is expected to eq true3486Resolvers::ExternalIssueResolver3487 when Jira issues are requested3488 when Jira API responds with nil3489 sends request to Jira to fetch issues3490 returns nil3491 when Jira API responds with found issues3492 sends request to Jira to fetch issues3493 returns serialized Jira issues3494 when Jira API responds with an integration error3495 raises a GraphQL exception3496 when Jira API responds with an request error3497 raises a GraphQL exception3498Vulnerabilities::FindingPipeline3499 associations3500 is expected to belong to pipeline class_name => Ci::Pipeline required:3501 is expected to belong to finding class_name => Vulnerabilities::Finding required:3502 validations3503 is expected to validate that :finding cannot be empty/falsy3504 is expected to validate that :pipeline cannot be empty/falsy3505 is expected to validate that :pipeline_id is case-sensitively unique within the scope of :occurrence_id3506DastSites::FindOrCreateService3507 #execute!3508 when a user does not have access to the project3509 raises an exception3510 when the user can run a dast scan3511 returns a dast_site3512 creates a dast_site3513 when the dast_site already exists3514 returns the existing dast_site3515 does not create a new dast_site3516 when the record is invalid3517 raises an exception3518 when on demand scan licensed feature is not available3519 raises an exception3520PaidFeatureCalloutHelper3521 #run_highlight_paid_features_during_active_trial_experiment3522 when the user is in the candidate3523 is expected to eq "in candidate"3524 records the group as an ExperimentSubject3525 when the user is in the control3526 is expected to be nil3527 records the group as an ExperimentSubject3528 when the user would be in the candidate3529 but trials are not available3530 is expected to be nil3531 does not record the group as an ExperimentSubject3532 but the group is not in an active trial3533 is expected to be nil3534 does not record the group as an ExperimentSubject3535 but the user is not an admin of the group3536 is expected to be nil3537 does not record the group as an ExperimentSubject3538 #paid_feature_badge_data_attrs3539 returns the set of data attributes needed to bootstrap the PaidFeatureCalloutBadge component3540 #paid_feature_popover_data_attrs3541 returns the set of data attributes needed to bootstrap the PaidFeatureCalloutPopover component3542Gitlab::WebIde::Config::Entry::Schema3543 .nodes3544 returns a hash3545 when filtering all the entry/node names3546 contains the expected node names3547 when configuration is valid3548 when some entries defined3549 #compose!3550 creates node object for each entry3551 creates node object using valid class3552 sets correct description for nodes3553 #leaf?3554 is not leaf3555 when composed3556 #errors3557 has no errors3558 #uri_value3559 returns correct uri3560 #match_value3561 returns correct value for schemas3562 when configuration is not valid3563 when the config does not have all the required entries3564 #errors3565 reports errors about the invalid entries3566 when the config has invalid entries3567 #errors3568 reports errors about the invalid entries3569 when value is not a hash3570 #valid?3571 is not valid3572 #errors3573 returns error about invalid type3574 #specified?3575 is concrete entry that is defined3576Verify/Browser-Performance.gitlab-ci.yml3577 the created pipeline3578 has no errors3579 on master3580 behaves like browser_performance job on tag or branch3581 by default3582 on another branch3583 behaves like browser_performance job on tag or branch3584 by default3585 on tag3586 behaves like browser_performance job on tag or branch3587 by default3588 on merge request3589 has no jobs3590MergeRequests::BuildService3591 project default template configured3592 issuable default templates feature not available3593 does not set the MR description from template3594 when description is provided3595 sets the user's description3596 issuable default templates feature available3597 sets the MR description from template3598 when description is provided3599 prefers user's description to the default template3600 when MR is set to close an issue3601 appends closing reference once3602Jira::JqlBuilderService3603 #execute3604 when no params3605 builds jql with default ordering3606 with search param3607 builds jql3608 search param with single qoutes3609 builds jql3610 search param with single double qoutes3611 builds jql3612 search param with special characters3613 builds jql3614 with labels param3615 builds jql3616 with status param3617 builds jql3618 with author_username param3619 builds jql3620 with assignee_username param3621 builds jql3622 with sort params3623 builds jql3624 with opened state param3625 builds jql3626 with closed state param3627 builds jql3628 with any other state param3629 builds jql3630 with vulnerability_ids params3631 builds jql3632 with issue_ids params3633 builds jql3634StatusPage::IncidentCommentEntity3635 exposes JSON fields3636 field #note3637 behaves like reference links for status page3638 with public project3639 with public issue3640 shows link anchor with HTML data attributes3641 with confidential issue3642 redacts link anchor and HTML data attributes3643 with private project3644 with public issue3645 redacts link anchor and HTML data attributes3646 mentions3647 with username3648 anonymizes mention3649 with arbitrary username3650 shows the mention3651 with @all3652 anonymizes mention3653 with groups3654 group_visibility: :public3655 anonymizes mention3656 group_visibility: :internal3657 anonymizes mention3658 group_visibility: :private3659 anonymizes mention3660 behaves like img upload tags for status page3661 converts to html3662ComplianceManagement::Framework3663 validation3664 is expected to validate that :namespace_id is case-sensitively unique within the scope of :name3665 is expected to validate that :name cannot be empty/falsy3666 is expected to validate that the length of :name is at most 2553667 is expected to validate that the length of :description is at most 2553668 is expected to validate that the length of :color is at most 103669 is expected to validate that :regulated cannot be empty/falsy3670 is expected to validate that the length of :pipeline_configuration_full_path is at most 2553671 color3672 with whitespace3673 strips whitespace3674Vulnerabilities::FindingSignature3675 associations3676 is expected to belong to finding class_name => Vulnerabilities::Finding required:3677 validations3678 is expected to validate that :finding cannot be empty/falsy3679 .by_project3680 is expected to eq [#<Vulnerabilities::FindingSignature id: 2, finding_id: 76, created_at: "2021-09-14 20:37:56.62413855...0000", algorithm_type: "hash", signature_sha: "\xC8\xD1E\xB9d,\xC1\f\xEF\v\bL5\x9CqO\xDD\x115\xCB">]3681 .by_signature_sha3682 is expected to eq [#<Vulnerabilities::FindingSignature id: 3, finding_id: 77, created_at: "2021-09-14 20:37:57.35918720...thm_type: "hash", signature_sha: "\xB3\xAAX\x8A\x99\x95\x13\x04c\xF4\xD1|:\xE0\xEE\x04\e\xB5$\xB5">]3683DependencyEntity3684 #as_json3685 when all required features available3686 with developer3687 includes license info and vulnerabilities3688 with reporter3689 includes license info and not vulnerabilities3690 when all required features are unavailable3691 does not include licenses and vulnerabilities3692 when there is no dependency path attributes3693 correctly represent location3694Boards::MilestonesFinder3695 #execute3696 when project board3697 returns milestones from board project and ancestors groups3698 when group board3699 returns milestones from board group and its ancestors3700Mutations::DastSiteProfiles::Update3701 is expected to require graphql authorizations :create_on_demand_dast_scan3702 #resolve3703 when on demand scan feature is enabled3704 when the project does not exist3705 raises an exception3706 when the user can run a dast scan3707 calls the dast_site_profile update service3708 updates the dast_site_profile3709 when secret variables already exist3710 when the arguments are omitted3711 does not delete the secret variable3712 when the arguments are empty strings3713 deletes secret variables3714 when variable creation fails3715 returns an error and the dast_site_profile3716Groups::SeatUsageExportService3717 #execute3718 when user is allowed to export seat usage data3719 when successful3720 when group has members3721 returns csv data3722 when group has no members3723 returns no rows3724 when it fails3725 returns error3726 when user is not allowed to export seat usage data3727 returns error3728Repositories::HousekeepingService3729 behaves like housekeeps repository3730 with a clean redis state3731 #execute3732 enqueues a sidekiq job3733 yields the block if given3734 resets counter after execution3735 runs the task specifically requested3736 when no lease can be obtained3737 does not enqueue a job3738 does not reset pushes_since_gc3739 does not yield3740 task type3741 goes through all three housekeeping tasks, executing only the highest task when there is overlap3742 #needed?3743 when the count is low enough3744 when the count is high enough3745 #increment!3746 increments the pushes_since_gc counter3747Vulnerabilities::Remediation3748 is expected to belong to project required: true3749 is expected to have many finding_remediations class_name => Vulnerabilities::FindingRemediation3750 is expected to have many findings through finding_remediations3751 is expected to validate that :summary cannot be empty/falsy3752 is expected to validate that :file cannot be empty/falsy3753 is expected to validate that :checksum cannot be empty/falsy3754 is expected to validate that the length of :summary is at most 2003755 .by_checksum3756 is expected to contain exactly #<Vulnerabilities::Remediation id: 2, created_at: "2021-09-14 20:38:12.866946423 +0000", updated_at: ...4-434-1dyuchj", checksum: "d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da...", project_id: 1355>3757 #diff3758 is expected to eq "foo"3759Groups::EpicsCountService3760 #relation_for_count3761 uses the EpicsFinder to scope epics3762 behaves like a counter caching service with threshold3763 when cache is empty3764 refreshes cache if value over threshold3765 does not refresh cache if value under threshold3766 when cached count is under the threshold value3767 does not refresh cache3768 when cached count is over the threshold value3769 does not refresh cache3770routes to the proper webhooks controller3771 with a project context3772 routes the test action3773 routes a single record3774 with a group context3775 routes the test action3776 routes a single record3777Resolvers::InstanceSecurityDashboard::ProjectsResolver3778 #resolve3779 when provided object is InstanceSecurityDashboard3780 is expected to contain exactly #<Project id:1361 namespace1387/project1441>> and #<Project id:1362 namespace1388/project1442>>3781 when object is not provided3782 is expected to be nil3783 when search filter is provided3784 search by name3785 returns matching project3786 search by path3787 returns matching project3788 search by description3789 returns matching project3790UsersSecurityDashboardProject3791 associations3792 is expected to belong to project required:3793 is expected to belong to user required:3794 validations3795 is expected to validate that :user cannot be empty/falsy3796 is expected to validate that :project cannot be empty/falsy3797 is expected to validate that :project_id is case-sensitively unique within the scope of :user_id3798 when validating the number of projects a user can add to their dashboard3799 limits the number of projects per user3800 allows a user to add a project if they are under the limit3801 .delete_by_project_id3802 deletes all entries for the given project ID3803 when there is no record with the given project ID3804 fails silently3805Mutations::Vulnerabilities::Confirm3806 #resolve3807 when the user can confirm the vulnerability3808 when user doe not have access to the project3809 raises an error3810 when user has access to the project3811 returns the Confirmed vulnerability3812Mutations::Vulnerabilities::Resolve3813 #resolve3814 when the user can resolve the vulnerability3815 when user doe not have access to the project3816 raises an error3817 when user has access to the project3818 returns the resolveed vulnerability3819Ci::DailyBuildGroupReportResultsFinder3820 #execute3821 with permissions3822 when sort is true3823 returns coverages belonging to the group3824 with a limit below 10003825 uses the provided limit3826 with a limit above 10003827 returns MAX_ITEMS as a limit3828 without a limit3829 returns MAX_ITEMS as a limit3830 with group_activity3831 returns the group activity aggregated data3832 without permmissions3833 returns an empty result3834Ci::JobArtifacts::DestroyAllExpiredService3835 .execute3836 when artifact is expired3837 when artifact is not locked3838 destroys job artifact and the security finding3839 when artifact is locked3840 does not destroy job artifact3841 when artifact is not expired3842 does not destroy expired job artifacts3843 when artifact is permanent3844 does not destroy expired job artifacts3845 when failed to destroy artifact3846 raises an exception and stop destroying3847 when there are artifacts more than batch sizes3848 destroys all expired artifacts3849 when some artifacts are locked3850 destroys only unlocked artifacts3851Banzai::Filter::References::LabelReferenceFilter3852 with scoped labels enabled3853 with a scoped label3854 renders scoped label3855 renders HTML tooltips3856 escapes HTML in the label's title3857 with a common label3858 renders common label3859 renders non-HTML tooltips3860 with scoped labels disabled3861 renders scoped label as a common label3862Types::PipelineSecurityReportFindingType3863 is expected to eq "PipelineSecurityReportFinding"3864 is expected to have graphql fields :report_type, :name, :severity, :confidence, :scanner, :identifiers, :project_fingerprint, :uuid, :project, :description, :location, :falsePositive, :solution, and :state3865 false_positive3866 when the vulnerability has a false-positive flag3867 returns false-positive value3868 when the vulnerability does not have any false-positive flag3869 returns false for false-positive field3870 when there exists no license3871 returns nil for false-positive field3872 when vulnerability_flags FF has been disabled3873 returns nil for false-positive field3874IterationNote3875 .from_event3876 behaves like a synthetic note3877 behaves like a system note3878 has the correct attributes3879 #discussion_id3880 returns the expected discussion id3881 with a remove iteration event3882 creates the expected note3883ExternalStatusChecks::UpdateService3884 when current user is project owner3885 updates an approval rule3886 is successful3887 when current user is not a project owner3888 does not change an approval rule3889 is unsuccessful3890 returns an unauthorized status3891 contains an appropriate message and error3892profiles/personal_access_tokens/_token_expiry_notification.html.haml3893 when the notification should be shown3894 when there are expired tokens3895 contains the correct content3896 when there is one expired token3897 has the singular title3898ProfilesHelper3899 #ssh_key_expiration_tooltip3900 error: false, expired: false, enforced: false, result: nil3901 is expected to eq nil3902 error: true, expired: false, enforced: false, result: "Key type is forbidden. Must be DSA, ECDSA, or ED25519"3903 is expected to eq "Key type is forbidden. Must be DSA, ECDSA, or ED25519"3904 error: true, expired: false, enforced: true, result: "Key type is forbidden. Must be DSA, ECDSA, or ED25519"3905 is expected to eq "Key type is forbidden. Must be DSA, ECDSA, or ED25519"3906 error: true, expired: true, enforced: false, result: "Key type is forbidden. Must be DSA, ECDSA, or ED25519"3907 is expected to eq "Key type is forbidden. Must be DSA, ECDSA, or ED25519"3908 error: true, expired: true, enforced: true, result: "Invalid key."3909 is expected to eq "Invalid key."3910 error: false, expired: true, enforced: true, result: "Expired key is not valid."3911 is expected to eq "Expired key is not valid."3912 error: false, expired: true, enforced: false, result: "Key usable beyond expiration date."3913 is expected to eq "Key usable beyond expiration date."3914 when enforced and expired3915 does not return the expiration validation error message3916 #ssh_key_expires_field_description3917 expiration_enforced: true, result: "Key will be deleted on this date."3918 is expected to eq "Key will be deleted on this date."3919 expiration_enforced: false, result: "Key can still be used after expiration."3920 is expected to eq "Key can still be used after expiration."3921Resolvers::IncidentManagement::OncallRotationsResolver3922 is expected to have nullable GraphQL type IncidentManagementOncallRotationConnection3923 returns on-call rotations3924 when user does not have permissions3925 returns no rotations3926 when resolving a single item3927 when id given3928 returns the on-call rotation3929EE::Gitlab::Auth::Ldap::Sync::ExternalUsers3930 #update_permissions3931 adds users from both external LDAP groups as external users3932 removes users that are not in the LDAP group3933 leaves external users that do not have the LDAP provider3934 leaves external users that have a different provider identity3935 when ldap connection fails3936 logs a debug message3937Mutations::Boards::EpicBoards::Update3938 field tests3939 is expected to have graphql arguments :id, :name, :hideBacklogList, :hideClosedList, :labels, and :labelIds3940 is expected to have graphql fields :epic_board3941 with epic feature enabled3942 when user does not have permission to update epic board3943 behaves like epic board update error3944 raises error3945 when user has permission to update epic board3946 updates the epic board3947 #ready?3948 raises an error when both labels and label_ids arguments are passed3949Mutations::DastSiteValidations::Create3950 is expected to require graphql authorizations :create_on_demand_dast_scan3951 #resolve3952 when on demand scan feature is enabled3953 when the project does not exist3954 raises an exception3955 when the user can run a dast scan3956 returns the dast_site_validation id3957 returns the dast_site_validation status3958StatusPage::IncidentCommentsFinder3959 #all3960 when limit is higher than the colletion size3961 is expected to eq [#<Note id: 188, note: [FILTERED], noteable_type: "Issue", author_id: 3360, created_at: "2021-09-14 2...hange_position: nil, resolved_by_push: nil, review_id: nil, confidential: nil, last_edited_at: nil>]3962 when limit is lower than the colletion size3963 is expected to eq [#<Note id: 188, note: [FILTERED], noteable_type: "Issue", author_id: 3360, created_at: "2021-09-14 2...hange_position: nil, resolved_by_push: nil, review_id: nil, confidential: nil, last_edited_at: nil>]3964 award emoji3965 ensures that emoji exists3966Resolvers::DastSiteProfileResolver3967 is expected to have nullable GraphQL type DastSiteProfileConnection3968 when resolving a single DAST site profile3969 is expected to eq #<DastSiteProfile id: 3, project_id: 1413, dast_site_id: 12, created_at: "2021-09-14 20:38:54.1086509...e]", auth_password_field: [FILTERED], auth_username: "user3609@example.org", target_type: "website">3970 when resolving multiple DAST site profiles3971 is expected to contain exactly #<DastSiteProfile id: 3, project_id: 1413, dast_site_id: 12, created_at: "2021-09-14 20:38:54.1086509...e]", auth_password_field: [FILTERED], auth_username: "user3609@example.org", target_type: "website"> and #<DastSiteProfile id: 4, project_id: 1413, dast_site_id: 13, created_at: "2021-09-14 20:38:54.2089393...e]", auth_password_field: [FILTERED], auth_username: "user3610@example.org", target_type: "website">3972 when the feature is disabled3973 is expected to be empty3974 when the user does not have access3975 is expected to be empty3976MergeTrains::CheckStatusService3977 #execute3978 when there is at least one merge request on the train3979 when new revision is included in merge train history3980 does not outdate the merge train pipeline3981 when new revision is not included in merge train history3982 outdates the merge train pipeline3983 when there are no merge requests on train3984 does not raise error3985 when merge train is disabled on the project3986 does not check history3987UsersFinder3988 #execute3989 with a normal user3990 with LDAP users3991 returns ldap users by default3992 returns only non-ldap users with skip_ldap: true3993 with SAML users3994 returns all users by default3995 returns only saml users from the provided saml_provider_id3996Repository index3997 when fresh master branch is first pushed, followed by another update, then indexed3998 indexes initial push3999Mutations::SecurityPolicy::CreateSecurityPolicyProject4000 #resolve4001 when feature is enabled and permission is set for user4002 when user is an owner of the project4003 returns project4004 when user is not an owner4005 raises exception4006 when feature is disabled4007 raises exception4008 when feature is not licensed4009 raises exception4010IncidentManagement::OncallSchedules::CreateService4011 #execute4012 when the current_user is anonymous4013 behaves like error response4014 has an informative message4015 when the current_user does not have permissions to create on-call schedules4016 behaves like error response4017 has an informative message4018 when feature is not available4019 behaves like error response4020 has an informative message4021 when an on-call schedule already exists4022 behaves like error response4023 has an informative message4024 with valid params4025 successfully creates an on-call schedule4026clusters/clusters/show4027 when the cluster details page is opened4028 with project level cluster4029 behaves like cluster health section4030 displays the Cluster health section4031 with group level cluster4032 behaves like cluster health section4033 displays the Cluster health section4034Subscriptions::CreateService4035 #execute4036 when failing to create a customer4037 returns the response hash4038 does not save oauth token4039 when successfully creating a customer4040 creates a subscription with the returned authentication token4041 saves oauth token4042 creates oauth token with correct application id4043 when failing to create a subscription4044 returns the response hash4045 behaves like does not record an onboarding progress action4046 is expected not to receive new(*(any args)) 0 times4047 when successfully creating a subscription4048 returns the response hash4049 passing the correct parameters to the client4050 passes the correct parameters for creating a customer4051 passes the correct parameters for creating a subscription4052 behaves like records an onboarding progress action4053 is expected to receive execute({:action=>:subscription_created}) 1 time4054RoadmapsHelper4055 #roadmap_layout4056 guest4057 is sourced from params if exists4058 returns default if params do not exist4059 logged in4060 is sourced from User#roadmap_layout4061 #roadmap_sort_order4062 guest4063WARNING: An expectation of `:user_preference` was set on `nil`. To allow expectations on `nil` and suppress this message, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `true`. To disallow expectations on `nil`, set `RSpec::Mocks.configuration.allow_message_expectations_on_nil` to `false`. Called from /builds/gitlab-org/gitlab/ee/spec/helpers/roadmaps_helper_spec.rb:42:in `block (3 levels) in <top (required)>'.4064 returns default sort order4065 user without preferences set4066 returns default sort order4067 user with preference set4068 returns saved user preference4069Analytics::DevopsAdoption::EnabledNamespaces::DeleteService4070 deletes the enabled_namespace4071 authorizes for manage_devops_adoption4072 when deletion fails4073 returns error response4074 when user cannot manage enabled_namespaces for the namespace4075 returns forbidden error4076Resolvers::BoardListsResolver4077 #resolve4078 when project boards4079 behaves like group and project board lists resolver4080 returns a list of board lists4081 when group boards4082 behaves like group and project board lists resolver4083 returns a list of board lists4084projects/security/dast_scanner_profiles/new4085 renders Vue app root4086 passes project's full path4087 passes DAST profiles library URL4088BuildDetailsEntity4089 when namespace has CI minutes limit enabled4090 contains CI minutes quota details4091 when namespace does not qualify for CI minutes4092 does not contain CI minutes quota details4093Groups::ImportExport::ExportService4094 #execute4095 exports group and descendants wiki repositories4096 when ndjson is not enabled4097 does not export group wiki repositories4098ProtectedBranches::DestroyService4099 #execute4100 adds a security audit event entry4101 when destroy fails4102 doesn't add a security audit event entry4103ProjectTeam4104 #add_users4105 when group membership is locked4106 does not add the given users to the team4107 #add_user4108 when group membership is locked4109 does not add the given user to the team4110 project bot user4111 adds the project bot user to the team4112Gitlab::Cleanup::OrphanJobArtifactFiles4113 not a Geo secondary4114 does not print cleaning Geo registries message4115EventPolicy4116 when the user cannot read the epic4117 is expected not to be allowed :read_event4118 when the user can read the epic4119 is expected to be allowed :read_event4120IssuableSidebarExtrasEntity4121 when the gitlab_employee_badge flag is off4122 does not expose the is_gitlab_employee field for assignees4123 when the gitlab_employee_badge flag is on but we are not on gitlab.com4124 does not expose the is_gitlab_employee field for assignees4125 when gitlab_employee_badge flag is on and we are on gitlab.com4126 exposes is_gitlab_employee field for assignees4127Lfs::UnlockFileService4128 #execute4129 when authorized4130 File Locking integraction4131 when File Locking is available4132 deletes the Path Lock4133 when File Locking is not available4134 does not delete the Path Lock4135Projects::AutocompleteService4136 #epics4137 returns nothing if not allowed4138 returns epics from group4139Vulnerabilities::DestroyDismissalFeedbackService4140 #execute4141 without necessary permissions4142 raises `Gitlab::Access::AccessDeniedError` error4143 with necessary permissions4144 destroys the feedback records associated with the findings of the given vulnerability4145ElasticIndexInitialBulkCronWorker4146 behaves like worker with data consistency4147 .get_data_consistency_feature_flag_enabled?4148 returns true4149 .get_data_consistency4150 returns correct data consistency4151EE::Gitlab::Auth::Ldap::Group4152 #member_dns4153 resolves the correct member_dns when member has a range4154 removes extraneous spaces from DNs4155 when there are nested groups4156 resolves the correct member_dns when there are nested groups4157 skips duplicate nested groups4158 does not include group dns or users outside of the base4159 logs an error when the LDAP base is invalid4160 logs a warning when an invalid member DN is found in an LDAP group4161 resolves the correct member_dns when the LDAP base is not normalized4162Ci::JobArtifacts::DestroyBatchService4163 .execute4164 destroys all expired artifacts4165 with Geo replication4166 creates a JobArtifactDeletedEvent4167Gitlab::IncidentManagement4168 .oncall_schedules_available?4169 is expected to be truthy4170 when there is no license4171 is expected to be falsey4172 .escalation_policies_available?4173 is expected to be truthy4174 when escalation policies not avaialble4175 is expected to be falsey4176 when on-call schedules not available4177 is expected to be falsey4178InvitedGroupEntity4179 #as_json4180 includes the group ID4181 includes the group name4182 includes the group avatar URL4183Integrations::Github::RemoteProject4184 #api_url4185 uses github.com API endpoint4186 when git repo mirror URL is used4187 excludes auth token set as username4188 for a custom host4189 is extracted from the url4190 #owner4191 is extracted from the url4192 #repository_name4193 is extracted from the url4194 when https git URL is used4195 doesn't include '.git' at the end4196 when project sub-route accidentally used4197 ignores the sub-route4198layouts/header/_new_dropdown4199 general menu links4200 renders a 'New project/repository' link4201 group-specific links4202 does not have "New epic" link4203 as a Group owner4204 with the epics license4205 has a "New epic" link4206GroupSaml::SamlProvider::UpdateService4207 updates SAML provider with given params4208 when enabling enforced_group_managed_accounts4209 updates enforced_group_managed_accounts boolean4210 when owner has not linked SAML yet4211 adds an error warning that the owner must first link SAML4212Gitlab::ReturnToLocation4213 #full_path4214 returns nil when location nil4215 returns an empty string when location is empty4216 removes the domain from location4217 keeps the query string from location4218 keeps the fragments from location4219Types::VulnerabilityDetails::TableType4220 is expected to have graphql fields :name, :description, :fieldName, :headers, and :rows4221Security::TrackScanService4222 #execute4223 report has all metadata4224 tracks the scan event4225 report is missing metadata4226 tracks the scan event4227GpgKeys::DestroyService4228 creates an audit event4229 returns the correct value4230 when destroy operation fails4231 does not create an audit event4232 returns the correct value4233Security::ScannedResourcesCountingService#execute4234 The Pipeline has security builds4235 All report types are requested4236 is expected to match (a hash including {"sast" => 0, "dast" => 6, "container_scanning" => 0, "dependency_scanning" => 0})4237 Only the report type dast is requested4238 is expected to eq {"dast"=>6}4239 The Pipeline has no security builds4240 is expected to match (a hash including {"sast" => 0, "dast" => 0, "container_scanning" => 0, "dependency_scanning" => 0})4241Vulnerabilities::HistoricalStatistics::DeletionWorker4242 #perform4243 calls `Vulnerabilities::HistoricalStatistics::DeletionService`4244Projects::OpenIssuesCountService4245 #count4246 does not count test cases4247AwardEmojiPolicy4248 when the user cannot read the epic4249 is expected not to be allowed :read_emoji4250 when the user can read the epic4251 is expected to be allowed :read_emoji4252IssueSerializer4253 sidebar issue serialization4254 matches issue_sidebar json schema4255 sidebar extras issue serialization4256 matches issue_sidebar_extras json schema4257Notes::DestroyService4258 #execute4259 refresh analytics comment data4260 invokes forced Analytics::RefreshCommentsData4261 publish to status page4262 triggers status page publish4263 tracking via usage ping4264 tracks epic note destroy4265NotificationSetting4266 .email_events4267 group4268 appends EE specific events4269 project4270 returns CE list4271 global4272 appends EE specific events4273Projects::OnDemandScansHelper4274 #on_demand_scans_data4275 returns proper data4276Types::VulnerabilityDetails::CommitType4277 is expected to have graphql fields :name, :description, :fieldName, and :value4278Mutations::RequirementsManagement::CreateRequirement4279 #resolve4280 behaves like requirements not available4281 raises a not accessible error4282 when the user can update the epic4283 when requirements feature is available4284 creates new requirement4285 when requirements feature is disabled4286 behaves like requirements not available4287 raises a not accessible error4288EE::EmailsHelper4289 #action_title4290 path: "somedomain.com/groups/agroup/-/epics/231", result: "View Epic"4291 returns the expected title4292 path: "somedomain.com/aproject/issues/231", result: "View Issue"4293 returns the expected title4294 path: "somedomain.com/aproject/-/merge_requests/231", result: "View Merge request"4295 returns the expected title4296 path: "somedomain.com/aproject/-/commit/al3f231", result: "View Commit"4297 returns the expected title4298ApprovalProjectRulePolicy4299 when user can admin project4300 allows updating approval rule4301 when user cannot admin project4302 disallow updating approval rule4303ProjectPresenter4304 #extra_statistics_buttons4305 is expected to be empty4306 when the sast entry points experiment is enabled4307 has the sast help page button4308Elastic::Latest::IssueConfig4309 .document_type4310 returns config4311 .settings4312 behaves like config settings return correct values4313 returns config4314 sets correct shard/replica settings4315 .mappings4316 returns config4317RequirementsManagement::MapExportFieldsService4318 #execute4319 returns a hash with selected fields only4320 when the fields collection is empty4321 returns a hash with all fields4322 when fields collection includes invalid fields4323 returns a hash with valid selected fields only4324 #invalid_fields4325 returns an array containing invalid fields4326Gitlab::GitAccessDesign4327 #check4328 protocol_name: "ssh"4329 is expected to be a kind of Gitlab::GitAccessResult::Success4330 protocol_name: "web"4331 is expected to be a kind of Gitlab::GitAccessResult::Success4332 protocol_name: "http"4333 is expected to be a kind of Gitlab::GitAccessResult::Success4334 protocol_name: "https"4335 is expected to be a kind of Gitlab::GitAccessResult::Success4336Applications::CreateService4337 #audit_event_service4338 instance application4339 creates AuditEvent with correct entity type4340 group application4341 creates AuditEvent with correct entity type4342 user application4343 creates AuditEvent with correct entity type4344Gitlab::Verify::LfsObjects4345 includes LFS objects in object storage4346#<Class:0x00007f44c8f79fb8>4347 #weight4348 returns sum of all weights4349OmniAuth::Strategies::KerberosSpnego4350 uses the principal name as the "uid"4351 extracts the username4352 turns the principal name into an email address4353 clears its special session key4354ScimOauthAccessTokenEntity4355 exposes the URL4356 exposes the token4357Gitlab::Ci::Config::Entry::Vault::Engine4358 validation4359 when entry config value is correct4360 #value4361 returns Vault secret engine configuration4362 #valid?4363 is valid4364 when entry value is not correct4365 #errors4366 when there is an unknown key present4367 reports error4368 when name and path are missing4369 reports error4370 when name and path are blank4371 reports error4372compliance_management/compliance_framework/_compliance_framework_badge.html.haml4373 when show4374 renders a badge4375 when not show4376 does not render any badge4377Integrations::Test::ProjectService4378 #execute4379 without event specified4380 GitHubService4381 behaves like tests for integration with pipeline data4382 tests the integration with pipeline data4383Groups::ExportMembershipsWorker4384 enqueues an email4385Elastic::ProjectsSearch4386 #maintain_elasticsearch_create4387 calls track!4388 #maintain_elasticsearch_destroy4389 calls delete worker4390Analytics::LanguageTrend::RepositoryLanguage4391 associations4392 is expected to belong to programming_language required:4393 is expected to belong to project required:4394ProjectAuthorization4395 .visible_to_user_and_access_level4396 returns the records for given user that have at least the given access4397WikiHelper4398 #wiki_attachment_upload_url4399 returns the upload endpoint for group wikis4400Types::QueryType4401 is expected to have graphql fields :ci_minutes_usage, :current_license, :geo_node, :instance_security_dashboard, :iteration, :license_history_entries, :vulnerabilities, :vulnerabilities_count_by_day, and :vulnerability4402Types::VulnerabilityDetails::UrlType4403 is expected to have graphql fields :name, :description, :fieldName, :text, and :href4404Gitlab::Auth::OAuth::User4405 login through kerberos with linkable LDAP user4406 links the LDAP person to the GitLab user4407JsonSchemaValidator4408 #validates_each4409 when the schema file exists on CE4410 calls the validator with CE schema4411 when the schema file exists on EE4412 calls the validator with EE schema4413Types::VulnerabilityDetails::CodeType4414 is expected to have graphql fields :name, :description, :fieldName, :lang, and :value4415LicenseScanningReportsComparerEntity4416 #as_json4417 contains the new existing and removed license lists4418admin/dev_ops_report/show.html.haml4419 when show_adoption? returns false4420 disables the feature4421 when show_adoption? returns true4422 enables the feature4423Gitlab::ProjectTemplate4424 .all4425 when `enterprise_templates` feature is not licensed4426 does not contain enterprise project templates4427 when `enterprise_templates` feature is licensed4428 contains enterprise project templates4429Types::VulnerabilitySeveritiesCountType4430 is expected to have graphql fields "info", "unknown", "low", "medium", "high", and "critical"4431EE::Gitlab::Auth::Ldap::AccessLevels4432 #set4433 when access_levels is empty4434 is expected to eq {"uid=janedoe,ou=users,dc=example,dc=com"=>30, "uid=johndoe,ou=users,dc=example,dc=com"=>30}4435 when access_hash has existing entries4436 keeps the higher of all access values4437Types::VulnerabilitySortEnum4438 is expected to eq "VulnerabilitySort"4439 exposes all the existing Vulnerability sort orders4440EE::API::Entities::Ci::Minutes::AdditionalPack4441 contains the correct attributes4442Gitlab::Ci::Reports::CoverageFuzzing::Report4443 #add_crash4444 stores given crash params in the map4445TodosDestroyer::ConfidentialEpicWorker4446 calls the Todos::Destroy::ConfidentialEpicService with epic_id parameter4447Knapsack report was generated. Preview:4448{4449 "ee/spec/lib/ee/gitlab/usage_data_spec.rb": 237.73194680300003,4450 "ee/spec/models/epic_spec.rb": 123.97297206000076,4451 "ee/spec/lib/gitlab/insights/finders/issuable_finder_spec.rb": 143.8245022760002,4452 "ee/spec/services/epics/tree_reorder_service_spec.rb": 80.01321484699929,4453 "ee/spec/models/epic_issue_spec.rb": 85.84513070600042,4454 "ee/spec/services/epics/update_service_spec.rb": 48.27019103699968,4455 "ee/spec/services/ee/notes/quick_actions_service_spec.rb": 56.935542051000084,4456 "ee/spec/services/ee/merge_requests/refresh_service_spec.rb": 57.72797869399983,4457 "ee/spec/lib/ee/gitlab/auth/ldap/sync/group_spec.rb": 29.879035664000185,4458 "ee/spec/models/approval_project_rule_spec.rb": 25.30541576500036,4459 "ee/spec/models/concerns/elastic/repository_spec.rb": 36.9358014670006,4460 "ee/spec/elastic/migrate/20210421140400_add_new_data_to_merge_requests_documents_spec.rb": 31.76980944800016,4461 "ee/spec/services/ee/issues/create_service_spec.rb": 18.649210419000156,4462 "ee/spec/lib/ee/gitlab/elastic/helper_spec.rb": 21.96477768600016,4463 "ee/spec/services/ee/issues/move_service_spec.rb": 19.52797404100056,4464 "ee/spec/models/approval_merge_request_rule_spec.rb": 12.604714029000206,4465 "ee/spec/lib/banzai/filter/references/epic_reference_filter_spec.rb": 15.901797921000252,4466 "ee/spec/models/requirements_management/requirement_spec.rb": 17.21769274200051,4467 "ee/spec/models/concerns/epic_tree_sorting_spec.rb": 15.750670442000228,4468 "ee/spec/models/ee/personal_access_token_spec.rb": 9.721800819999771,4469 "ee/spec/lib/gitlab/auth/ldap/access_spec.rb": 13.105507080999814,4470 "ee/spec/lib/compliance_management/merge_request_approval_settings/resolver_spec.rb": 9.726714659000208,4471 "ee/spec/services/ee/members/destroy_service_spec.rb": 13.822891533000075,4472 "ee/spec/lib/gitlab/template/custom_templates_spec.rb": 7.792713341999843,4473 "ee/spec/lib/ee/gitlab/checks/push_rule_check_spec.rb": 9.167296805999285,4474 "ee/spec/finders/autocomplete/vulnerabilities_autocomplete_finder_spec.rb": 10.688371529000506,4475 "ee/spec/helpers/ee/issues_helper_spec.rb": 7.284029401000225,4476 "ee/spec/services/vulnerability_exports/exporters/csv_service_spec.rb": 7.235760978000144,4477 "ee/spec/lib/gitlab/analytics/cycle_analytics/request_params_spec.rb": 6.756992411999818,4478 "ee/spec/models/ci/bridge_spec.rb": 7.880090259999633,4479 "ee/spec/lib/ee/sidebars/projects/menus/security_compliance_menu_spec.rb": 6.6902605920004135,4480 "ee/spec/services/software_license_policies/create_service_spec.rb": 8.439050164999571,4481 "ee/spec/finders/security/vulnerabilities_finder_spec.rb": 7.419774103000236,4482 "ee/spec/helpers/users_helper_spec.rb": 6.240839833000791,4483 "ee/spec/services/merge_commits/export_csv_service_spec.rb": 6.352066167000885,4484 "ee/spec/models/ee/ci/build_dependencies_spec.rb": 7.97234804800064,4485 "ee/spec/services/iterations/cadences/create_iterations_in_advance_service_spec.rb": 6.249286211999788,4486 "ee/spec/services/security/store_reports_service_spec.rb": 10.216698262999671,4487 "ee/spec/models/software_license_policy_spec.rb": 5.1863712069998655,4488 "ee/spec/services/ee/members/create_service_spec.rb": 6.335472239999945,4489 "ee/spec/graphql/types/admin/cloud_licenses/current_license_type_spec.rb": 3.119576417000644,4490 "ee/spec/services/wiki_pages/destroy_service_spec.rb": 7.0526729729999715,4491 "ee/spec/helpers/ee/gitlab_routing_helper_spec.rb": 3.6182092690005447,4492 "ee/spec/services/approval_rules/merge_request_rule_destroy_service_spec.rb": 4.943324789000144,4493 "ee/spec/models/approval_wrapped_any_approver_rule_spec.rb": 4.953012776999458,4494 "ee/spec/workers/project_template_export_worker_spec.rb": 3.9517609239992453,4495 "ee/spec/models/status_page/published_incident_spec.rb": 4.250158133000696,4496 "ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb": 6.838418791000549,4497 "ee/spec/graphql/mutations/boards/update_spec.rb": 2.7133253409992903,4498 "ee/spec/services/ee/notes/update_service_spec.rb": 3.5852976539999872,4499 "ee/spec/lib/gitlab/auth/ldap/user_spec.rb": 3.977900650000265,4500 "ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb": 3.8152149150000696,4501 "ee/spec/helpers/timeboxes_helper_spec.rb": 2.805588827000065,4502 "ee/spec/graphql/resolvers/external_issue_resolver_spec.rb": 2.261622396000348,4503 "ee/spec/models/vulnerabilities/finding_pipeline_spec.rb": 4.750058624000303,4504 "ee/spec/services/dast_sites/find_or_create_service_spec.rb": 4.809707684999921,4505 "ee/spec/helpers/paid_feature_callout_helper_spec.rb": 2.258582555999965,4506 "ee/spec/lib/gitlab/web_ide/config/entry/schema_spec.rb": 2.4626816829995732,4507 "ee/spec/lib/gitlab/ci/templates/Verify/browser_performance_testing_gitlab_ci_yaml_spec.rb": 5.061310254000091,4508 "ee/spec/services/merge_requests/build_service_spec.rb": 3.9092292599998473,4509 "ee/spec/services/jira/jql_builder_service_spec.rb": 2.1593200320003234,4510 "ee/spec/serializers/status_page/incident_comment_entity_spec.rb": 4.674287746000118,4511 "ee/spec/models/compliance_management/framework_spec.rb": 1.6205120690001422,4512 "ee/spec/models/vulnerabilities/finding_signature_spec.rb": 2.7722731129997555,4513 "ee/spec/serializers/dependency_entity_spec.rb": 2.3752639770000314,4514 "ee/spec/finders/boards/milestones_finder_spec.rb": 4.4204375569997865,4515 "ee/spec/graphql/mutations/dast_site_profiles/update_spec.rb": 3.5206104220005727,4516 "ee/spec/services/groups/seat_usage_export_service_spec.rb": 2.6741671090003365,4517 "ee/spec/services/repositories/housekeeping_service_spec.rb": 1.4813850519994958,4518 "ee/spec/models/vulnerabilities/remediation_spec.rb": 1.2780886250002368,4519 "ee/spec/services/groups/epics_count_service_spec.rb": 1.136789556999247,4520 "ee/spec/routing/webhook_routes_spec.rb": 3.3844301650005946,4521 "ee/spec/graphql/resolvers/instance_security_dashboard/projects_resolver_spec.rb": 1.4473922270008188,4522 "ee/spec/models/users_security_dashboard_project_spec.rb": 1.813410037999347,4523 "ee/spec/graphql/mutations/vulnerabilities/confirm_spec.rb": 2.7006705550002152,4524 "ee/spec/graphql/mutations/vulnerabilities/resolve_spec.rb": 2.2428522179998254,4525 "ee/spec/finders/ee/ci/daily_build_group_report_results_finder_spec.rb": 3.166894259000401,4526 "ee/spec/services/ee/ci/job_artifacts/destroy_all_expired_service_spec.rb": 2.254595196000082,4527 "ee/spec/lib/banzai/filter/references/label_reference_filter_spec.rb": 2.5434608599998683,4528 "ee/spec/graphql/types/pipeline_security_report_finding_type_spec.rb": 1.976697330999741,4529 "ee/spec/models/iteration_note_spec.rb": 2.4457917849995283,4530 "ee/spec/services/external_status_checks/update_service_spec.rb": 1.60131955199995,4531 "ee/spec/views/profiles/personal_access_tokens/_token_expiry_notification.html.haml_spec.rb": 0.7629855469995164,4532 "ee/spec/helpers/ee/profiles_helper_spec.rb": 1.4059695440000723,4533 "ee/spec/graphql/resolvers/incident_management/oncall_rotations_resolver_spec.rb": 1.7463179989999844,4534 "ee/spec/lib/ee/gitlab/auth/ldap/sync/external_users_spec.rb": 3.1357577150001816,4535 "ee/spec/graphql/mutations/boards/epic_boards/update_spec.rb": 1.1268614190003063,4536 "ee/spec/graphql/mutations/dast_site_validations/create_spec.rb": 3.44226341600006,4537 "ee/spec/finders/status_page/incident_comments_finder_spec.rb": 1.5807477649996144,4538 "ee/spec/graphql/resolvers/dast_site_profile_resolver_spec.rb": 1.5436032509996949,4539 "ee/spec/services/merge_trains/check_status_service_spec.rb": 1.8916554550005458,4540 "ee/spec/finders/users_finder_spec.rb": 1.4681564829998024,4541 "ee/spec/elastic_integration/repository_index_spec.rb": 3.681538357000136,4542 "ee/spec/graphql/mutations/security_policy/create_security_policy_project_spec.rb": 1.501737069000228,4543 "ee/spec/services/incident_management/oncall_schedules/create_service_spec.rb": 1.4936805199995433,4544 "ee/spec/views/clusters/clusters/show.html.haml_spec.rb": 2.088795872999981,4545 "ee/spec/services/subscriptions/create_service_spec.rb": 1.1426536260005378,4546 "ee/spec/helpers/roadmaps_helper_spec.rb": 0.7185247950001212,4547 "ee/spec/services/analytics/devops_adoption/enabled_namespaces/delete_service_spec.rb": 1.2688023649998286,4548 "ee/spec/graphql/ee/resolvers/board_lists_resolver_spec.rb": 1.368492578999394,4549 "ee/spec/views/projects/security/dast_scanner_profiles/new.html.haml_spec.rb": 1.7097325040003852,4550 "ee/spec/serializers/ee/build_details_entity_spec.rb": 2.3720581669995227,4551 "ee/spec/services/ee/groups/import_export/export_service_spec.rb": 1.6246677980007007,4552 "ee/spec/services/ee/protected_branches/destroy_service_spec.rb": 1.3683233390001988,4553 "ee/spec/models/project_team_spec.rb": 2.2957590599999094,4554 "ee/spec/lib/ee/gitlab/cleanup/orphan_job_artifact_files_spec.rb": 0.7905640520002635,4555 "ee/spec/policies/event_policy_spec.rb": 1.854443041000195,4556 "ee/spec/serializers/issuable_sidebar_extras_entity_spec.rb": 2.324739794999914,4557 "ee/spec/services/lfs/unlock_file_service_spec.rb": 1.5076064370005042,4558 "ee/spec/services/ee/projects/autocomplete_service_spec.rb": 1.8637474590004786,4559 "ee/spec/services/vulnerabilities/destroy_dismissal_feedback_service_spec.rb": 2.4708409419999953,4560 "ee/spec/workers/elastic_index_initial_bulk_cron_worker_spec.rb": 0.6710304909993283,4561 "ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb": 0.8389516840006763,4562 "ee/spec/services/ee/ci/job_artifacts/destroy_batch_service_spec.rb": 1.7827718930002447,4563 "ee/spec/lib/gitlab/incident_management_spec.rb": 1.1758900599998015,4564 "ee/spec/serializers/invited_group_entity_spec.rb": 0.7706893760005187,4565 "ee/spec/models/integrations/github/remote_project_spec.rb": 0.7502648489999046,4566 "ee/spec/views/layouts/header/_new_dropdown.haml_spec.rb": 1.0869570550003118,4567 "ee/spec/services/group_saml/saml_provider/update_service_spec.rb": 1.3461169940001128,4568 "ee/spec/lib/gitlab/return_to_location_spec.rb": 0.7114255660007984,4569 "ee/spec/graphql/types/vulnerability_details/table_type_spec.rb": 0.659479293000004,4570 "ee/spec/services/security/track_scan_service_spec.rb": 1.2384048300000359,4571 "ee/spec/services/ee/gpg_keys/destroy_service_spec.rb": 1.1524818349998895,4572 "ee/spec/services/security/scanned_resources_counting_service_spec.rb": 1.405921973000659,4573 "ee/spec/workers/vulnerabilities/historical_statistics/deletion_worker_spec.rb": 0.5916901939999661,4574 "ee/spec/services/projects/open_issues_count_service_spec.rb": 1.1367748759994356,4575 "ee/spec/policies/award_emoji_policy_spec.rb": 1.3427232540007026,4576 "ee/spec/serializers/issue_serializer_spec.rb": 1.8650906090006174,4577 "ee/spec/services/ee/notes/destroy_service_spec.rb": 1.3635710400003518,4578 "ee/spec/models/ee/notification_setting_spec.rb": 0.7477079390000654,4579 "ee/spec/helpers/projects/on_demand_scans_helper_spec.rb": 0.964045315000476,4580 "ee/spec/graphql/types/vulnerability_details/commit_type_spec.rb": 0.6435093759992014,4581 "ee/spec/graphql/mutations/requirements_management/create_requirement_spec.rb": 1.139367916000083,4582 "ee/spec/helpers/ee/emails_helper_spec.rb": 0.6403761670007952,4583 "ee/spec/policies/approval_project_rule_policy_spec.rb": 1.4423071270002765,4584 "ee/spec/presenters/project_presenter_spec.rb": 1.2255779830002211,4585 "ee/spec/lib/elastic/latest/issue_config_spec.rb": 0.6385831469997356,4586 "ee/spec/services/requirements_management/map_export_fields_service_spec.rb": 0.7114931149999393,4587 "ee/spec/lib/ee/gitlab/git_access_design_spec.rb": 0.8874621470004058,4588 "ee/spec/services/applications/create_service_spec.rb": 1.049305051000374,4589 "ee/spec/lib/ee/gitlab/verify/lfs_objects_spec.rb": 0.8287677970001823,4590 "ee/spec/graphql/types/issue_connection_type_spec.rb": 1.1968921870002305,4591 "ee/spec/lib/omni_auth/strategies/kerberos_spnego_spec.rb": 0.6416565159997845,4592 "ee/spec/serializers/scim_oauth_access_token_entity_spec.rb": 0.7333668020000914,4593 "ee/spec/lib/gitlab/ci/config/entry/vault/engine_spec.rb": 0.6814592300006552,4594 "ee/spec/views/compliance_management/compliance_framework/_compliance_framework_badge.html.haml_spec.rb": 1.2440047289992435,4595 "ee/spec/services/ee/integrations/test/project_service_spec.rb": 0.9628513449997627,4596 "ee/spec/workers/groups/export_memberships_worker_spec.rb": 0.8348467349997009,4597 "ee/spec/models/concerns/elastic/projects_search_spec.rb": 0.7089139859999705,4598 "ee/spec/models/analytics/language_trend/repository_language_spec.rb": 0.6962008079999578,4599 "ee/spec/models/ee/project_authorization_spec.rb": 1.309540379000282,4600 "ee/spec/helpers/ee/wiki_helper_spec.rb": 0.7350012409997362,4601 "ee/spec/graphql/types/query_type_spec.rb": 0.6499264650001351,4602 "ee/spec/graphql/types/vulnerability_details/url_type_spec.rb": 0.5561698010005784,4603 "ee/spec/lib/gitlab/auth/o_auth/user_spec.rb": 0.6702628120001464,4604 "ee/spec/validators/json_schema_validator_spec.rb": 0.6243178590002572,4605 "ee/spec/graphql/types/vulnerability_details/code_type_spec.rb": 0.5984468540000307,4606 "ee/spec/serializers/license_scanning_reports_comparer_entity_spec.rb": 0.9887932699994053,4607 "ee/spec/views/admin/dev_ops_report/show.html.haml_spec.rb": 0.6199233400002413,4608 "ee/spec/lib/gitlab/project_template_spec.rb": 0.6834113099994283,4609 "ee/spec/graphql/types/vulnerability_severities_count_type_spec.rb": 0.5916435050003201,4610 "ee/spec/lib/ee/gitlab/auth/ldap/access_levels_spec.rb": 0.6449439759999223,4611 "ee/spec/graphql/types/vulnerability_sort_enum_spec.rb": 0.6524063850001767,4612 "ee/spec/lib/ee/api/entities/ci/minutes/additional_pack_spec.rb": 0.914117133000218,4613 "ee/spec/lib/gitlab/ci/reports/coverage_fuzzing/report_spec.rb": 0.6049862429999848,4614 "ee/spec/workers/todos_destroyer/confidential_epic_worker_spec.rb": 0.67509438199977014615}4616Knapsack global time execution for tests: 24m 50s4617Pending: (Failures listed here are expected and do not affect your suite's status)4618 1) Epic modules behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required when creating an object does not raise an error if the internal id is blank4619 # No reason given4620 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:494621 2) Epic modules behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required when updating an object does not raise an error if the internal id is blank4622 # No reason given4623 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:574624 3) Custom file template classes Gitlab::Template::CustomDockerfileTemplate.find sets the category correctly4625 # {:class_name=>Gitlab::Template::CustomDockerfileTemplate, :category=>"Custom"}.find does not set category correctly4626 Failure/Error: expect(found.category).to eq('Custom')4627 expected: "Custom"4628 got: nil4629 (compared using ==)4630 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4631 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4632 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4633 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4634 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4635 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4636 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4637 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4638 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4639 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4640 4) Custom file template classes Gitlab::Template::CustomGitignoreTemplate.find sets the category correctly4641 # {:class_name=>Gitlab::Template::CustomGitignoreTemplate, :category=>"Custom"}.find does not set category correctly4642 Failure/Error: expect(found.category).to eq('Custom')4643 expected: "Custom"4644 got: nil4645 (compared using ==)4646 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4647 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4648 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4649 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4650 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4651 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4652 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4653 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4654 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4655 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4656 5) Custom file template classes Gitlab::Template::CustomGitlabCiYmlTemplate.find sets the category correctly4657 # {:class_name=>Gitlab::Template::CustomGitlabCiYmlTemplate, :category=>"Custom"}.find does not set category correctly4658 Failure/Error: expect(found.category).to eq('Custom')4659 expected: "Custom"4660 got: nil4661 (compared using ==)4662 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4663 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4664 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4665 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4666 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4667 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4668 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4669 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4670 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4671 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4672 6) Custom file template classes Gitlab::Template::CustomLicenseTemplate.find sets the category correctly4673 # {:class_name=>Gitlab::Template::CustomLicenseTemplate, :category=>"Custom"}.find does not set category correctly4674 Failure/Error: expect(found.category).to eq('Custom')4675 expected: "Custom"4676 got: nil4677 (compared using ==)4678 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4679 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4680 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4681 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4682 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4683 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4684 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4685 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4686 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4687 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4688 7) Custom file template classes Gitlab::Template::CustomMetricsDashboardYmlTemplate.find sets the category correctly4689 # {:class_name=>Gitlab::Template::CustomMetricsDashboardYmlTemplate, :category=>"Custom"}.find does not set category correctly4690 Failure/Error: expect(found.category).to eq('Custom')4691 expected: "Custom"4692 got: nil4693 (compared using ==)4694 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4695 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4696 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4697 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4698 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4699 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4700 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4701 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4702 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4703 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4704 8) Custom file template classes Gitlab::Template::IssueTemplate.find sets the category correctly4705 # {:class_name=>Gitlab::Template::IssueTemplate, :category=>"Project Templates"}.find does not set category correctly4706 Failure/Error: expect(found.category).to eq('Custom')4707 expected: "Custom"4708 got: nil4709 (compared using ==)4710 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4711 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4712 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4713 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4714 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4715 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4716 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4717 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4718 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4719 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4720 9) Custom file template classes Gitlab::Template::MergeRequestTemplate.find sets the category correctly4721 # {:class_name=>Gitlab::Template::MergeRequestTemplate, :category=>"Project Templates"}.find does not set category correctly4722 Failure/Error: expect(found.category).to eq('Custom')4723 expected: "Custom"4724 got: nil4725 (compared using ==)4726 # ./ee/spec/lib/gitlab/template/custom_templates_spec.rb:84:in `block (5 levels) in <top (required)>'4727 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4728 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4729 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4730 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4731 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4732 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4733 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4734 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4735 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4736 10) WikiPages::DestroyService behaves like WikiPages::DestroyService#execute creates a new wiki page deletion event4737 # group wiki support4738 Failure/Error: expect { service.execute(page) }.to change { Event.count }.by 14739 expected `Event.count` to have changed by 1, but was changed by 04740 Shared Example Group: "WikiPages::DestroyService#execute" called from ./ee/spec/services/wiki_pages/destroy_service_spec.rb:334741 # ./spec/support/shared_examples/services/wiki_pages/destroy_service_shared_examples.rb:27:in `block (2 levels) in <top (required)>'4742 # ./spec/spec_helper.rb:402:in `block (3 levels) in <top (required)>'4743 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4744 # ./spec/spec_helper.rb:393:in `block (2 levels) in <top (required)>'4745 # ./spec/spec_helper.rb:389:in `block (3 levels) in <top (required)>'4746 # ./lib/gitlab/application_context.rb:31:in `with_raw_context'4747 # ./spec/spec_helper.rb:389:in `block (2 levels) in <top (required)>'4748 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (3 levels) in <top (required)>'4749 # ./spec/support/database/prevent_cross_joins.rb:62:in `with_cross_joins_prevented'4750 # ./spec/support/database/prevent_cross_joins.rb:95:in `block (2 levels) in <top (required)>'4751Finished in 24 minutes 53 seconds (files took 50.71 seconds to load)47521951 examples, 0 failures, 10 pending4753Tue 14 Sep 2021 08:40:33 PM UTC4755Not uploading cache ruby-gems-v1-4 due to policy4756Not uploading cache gitaly-ruby-gems-v1-4 due to policy4758Uploading artifacts...4759coverage/: found 5 matching files and directories 4760WARNING: crystalball/: no matching files 4761deprecations/: found 8 matching files and directories 4762knapsack/: found 3 matching files and directories 4763rspec_flaky/: found 4 matching files and directories 4764rspec_profiling/: found 1 matching files and directories 4765WARNING: tmp/capybara/: no matching files 4766tmp/memory_test/: found 2 matching files and directories 4767log/*.log: found 19 matching files and directories 4768Uploading artifacts as "archive" to coordinator... ok id=1590281101 responseStatus=201 Created token=bwwgT95v4769Uploading artifacts...4770junit_rspec.xml: found 1 matching files and directories 4771Uploading artifacts as "junit" to coordinator... ok id=1590281101 responseStatus=201 Created token=bwwgT95v4773Job succeeded