rspec-ee unit pg12 8/18
Passed Started
by
@stanhu

Stan Hu
1Receiving objects: 100% (134695/134695), 116.52 MiB | 23.00 MiB/s, done.2Resolving deltas: 100% (60835/60835), done.4 * [new ref] refs/pipelines/691761438 -> refs/pipelines/6917614385 * [new branch] master -> origin/master6Checking out 0a62f4a6 as master...7Skipping Git submodules setup8$ git remote set-url origin "${CI_REPOSITORY_URL}"10Checking cache for ruby-gems-debian-bullseye-ruby-2.7-16...11Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/ruby-gems-debian-bullseye-ruby-2.7-16 12Successfully extracted cache13Checking cache for gitaly-ruby-gems-debian-bullseye-ruby-2.7-16...14Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 15Successfully extracted cache17Downloading artifacts for compile-test-assets (3307837569)...18Downloading artifacts from coordinator... ok id=3307837569 responseStatus=200 OK token=d-n3bxcR19Downloading artifacts for detect-tests (3307837577)...20Downloading artifacts from coordinator... ok id=3307837577 responseStatus=200 OK token=d-n3bxcR21Downloading artifacts for retrieve-tests-metadata (3307837579)...22Downloading artifacts from coordinator... ok id=3307837579 responseStatus=200 OK token=d-n3bxcR23Downloading artifacts for setup-test-env (3307837573)...24Downloading artifacts from coordinator... ok id=3307837573 responseStatus=200 OK token=d-n3bxcR26Using docker image sha256:5c5404ecc69273636c3ef49645be715ef30ea99e51ad146a2efbeac2a1875f9c for registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12:rubygems-3.2-git-2.36-lfs-2.9-chrome-103-yarn-1.22-graphicsmagick-1.3.36 with digest registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7.patched-golang-1.18-node-16.14-postgresql-12@sha256:b032fe79dc0bf3ebfaeb610c82eacc500fbd0ec6e01889444011cf5a72b4135d ...27$ echo $FOSS_ONLY28$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb29$ export GOPATH=$CI_PROJECT_DIR/.go30$ mkdir -p $GOPATH31$ source scripts/utils.sh32$ source scripts/prepare_build.sh661Using decomposed database config (config/database.yml.decomposed-postgresql)662$ setup_db_user_only663CREATE ROLE664GRANT665==> 'setup_db_user_only' succeeded in 0 seconds.666$ bundle exec rake db:drop db:create db:schema:load db:migrate667Dropped database 'gitlabhq_test'668Dropped database 'gitlabhq_test_ci'669Dropped database 'gitlabhq_geo_test'670Created database 'gitlabhq_test'671Created database 'gitlabhq_test_ci'672Created database 'gitlabhq_geo_test'673==> 'bundle exec rake db:drop db:create db:schema:load db:migrate' succeeded in 36 seconds.674$ setup_db_praefect675SELECT pg_catalog.set_config('search_path', '', false);676CREATE DATABASE praefect_test ENCODING 'UTF8';677==> 'setup_db_praefect' succeeded in 0 seconds.678$ source ./scripts/rspec_helpers.sh679$ run_timed_command "gem install knapsack --no-document"680$ gem install knapsack --no-document681Successfully installed knapsack-4.0.06821 gem installed683==> 'gem install knapsack --no-document' succeeded in 0 seconds.684$ echo -e "\e[0Ksection_start:`date +%s`:gitaly-test-spawn[collapsed=true]\r\e[0KStarting Gitaly"798$ rspec_paralellized_job "--tag ~quarantine --tag ~level:migration"799SKIP_FLAKY_TESTS_AUTOMATICALLY: true800RETRY_FAILED_TESTS_IN_NEW_PROCESS: true801KNAPSACK_GENERATE_REPORT: true802FLAKY_RSPEC_GENERATE_REPORT: true803KNAPSACK_TEST_FILE_PATTERN: {ee/}spec/{bin,channels,config,db,dependencies,elastic,elastic_integration,experiments,factories,finders,frontend,graphql,haml_lint,helpers,initializers,lib,metrics_server,models,policies,presenters,rack_servers,replicators,routing,rubocop,scripts,serializers,services,sidekiq,sidekiq_cluster,spam,support_specs,tasks,uploaders,validators,views,workers,tooling,components}{,/**/}*_spec.rb804KNAPSACK_LOG_LEVEL: debug805KNAPSACK_REPORT_PATH: knapsack/rspec-ee_unit_pg12_8_18_report.json806FLAKY_RSPEC_SUITE_REPORT_PATH: rspec/flaky/report-suite.json807FLAKY_RSPEC_REPORT_PATH: rspec/flaky/all_rspec-ee_unit_pg12_8_18_report.json808NEW_FLAKY_RSPEC_REPORT_PATH: rspec/flaky/new_rspec-ee_unit_pg12_8_18_report.json809SKIPPED_FLAKY_TESTS_REPORT_PATH: rspec/flaky/skipped_flaky_tests_rspec-ee_unit_pg12_8_18_report.txt810RETRIED_TESTS_REPORT_PATH: rspec/flaky/retried_tests_rspec-ee_unit_pg12_8_18_report.txt811CRYSTALBALL: 812Knapsack node specs:813ee/spec/services/ee/auth/container_registry_authentication_service_spec.rb814ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb815ee/spec/models/approval_state_spec.rb816ee/spec/models/ci/build_spec.rb817ee/spec/lib/compliance_management/merge_request_approval_settings/resolver_spec.rb818ee/spec/lib/gitlab/import_export/attributes_permitter_spec.rb819ee/spec/models/ee/terraform/state_version_spec.rb820ee/spec/workers/audit_events/audit_event_streaming_worker_spec.rb821ee/spec/models/analytics/cycle_analytics/group_stage_spec.rb822ee/spec/helpers/billing_plans_helper_spec.rb823ee/spec/lib/ee/gitlab/background_migration/migrate_shared_vulnerability_scanners_spec.rb824ee/spec/lib/gitlab/usage_data_metrics_spec.rb825ee/spec/services/search_service_spec.rb826ee/spec/services/registrations/standard_namespace_create_service_spec.rb827ee/spec/lib/incident_management/oncall_shift_generator_spec.rb828ee/spec/helpers/ee/users/callouts_helper_spec.rb829ee/spec/services/vulnerabilities/resolve_service_spec.rb830ee/spec/models/merge_requests/external_status_check_spec.rb831ee/spec/graphql/resolvers/requirements_management/requirements_resolver_spec.rb832ee/spec/services/jira/requests/issues/list_service_spec.rb833ee/spec/services/members/activate_service_spec.rb834ee/spec/finders/geo/repository_verification_finder_spec.rb835ee/spec/models/productivity_analytics_spec.rb836ee/spec/services/security/ingestion/tasks/ingest_issue_links_spec.rb837ee/spec/services/auto_merge/add_to_merge_train_when_pipeline_succeeds_service_spec.rb838ee/spec/graphql/resolvers/geo/pages_deployment_registries_resolver_spec.rb839ee/spec/services/timebox_report_service_spec.rb840ee/spec/lib/ee/gitlab/ci/parsers/security/validators/schema_validator_spec.rb841ee/spec/lib/ee/gitlab/background_migration/purge_stale_security_scans_spec.rb842ee/spec/models/ee/ci/build_dependencies_spec.rb843ee/spec/presenters/ci/minutes/usage_presenter_spec.rb844ee/spec/models/incident_management/oncall_schedule_spec.rb845ee/spec/services/gitlab_subscriptions/reconciliations/calculate_seat_count_data_service_spec.rb846ee/spec/graphql/mutations/projects/set_locked_spec.rb847ee/spec/models/dast_site_token_spec.rb848ee/spec/lib/gitlab/spdx/catalogue_gateway_spec.rb849ee/spec/helpers/boards_helper_spec.rb850ee/spec/finders/audit_event_finder_spec.rb851ee/spec/presenters/subscription_presenter_spec.rb852ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb853ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/mark_resolved_as_detected_spec.rb854ee/spec/models/ee/group_group_link_spec.rb855ee/spec/lib/gitlab/usage/metrics/instrumentations/count_deployment_approvals_metric_spec.rb856ee/spec/lib/gitlab/auth/smartcard/ldap_certificate_spec.rb857ee/spec/graphql/resolvers/epics/default_project_for_issue_creation_resolver_spec.rb858ee/spec/lib/gitlab/auth/group_saml/dynamic_settings_spec.rb859ee/spec/lib/gitlab/auth/ldap/person_spec.rb860ee/spec/services/releases/create_service_spec.rb861ee/spec/services/app_sec/dast/profiles/create_associations_service_spec.rb862ee/spec/finders/security/training_urls_finder_spec.rb863ee/spec/finders/boards/boards_finder_spec.rb864ee/spec/lib/gitlab/ci/templates/dast_api_latest_gitlab_ci_yaml_spec.rb865ee/spec/policies/vulnerability_policy_spec.rb866ee/spec/services/ci/runners/stale_group_runners_prune_service_spec.rb867ee/spec/models/approval_wrapped_code_owner_rule_spec.rb868ee/spec/services/requirements_management/export_csv_service_spec.rb869ee/spec/serializers/merge_request_poll_widget_entity_spec.rb870ee/spec/finders/users_finder_spec.rb871ee/spec/lib/gitlab/ci/templates/dast_api_gitlab_ci_yaml_spec.rb872ee/spec/models/ee/description_version_spec.rb873ee/spec/finders/billed_users_finder_spec.rb874ee/spec/lib/ee/gitlab/email/handler/service_desk_handler_spec.rb875ee/spec/services/ci/minutes/additional_packs/change_namespace_service_spec.rb876ee/spec/models/approvals/scan_finding_wrapped_rule_set_spec.rb877ee/spec/services/ee/merge_request_metrics_service_spec.rb878ee/spec/services/ci/play_bridge_service_spec.rb879ee/spec/models/gitlab/seat_link_data_spec.rb880ee/spec/helpers/ee/auth_helper_spec.rb881ee/spec/services/system_notes/vulnerabilities_service_spec.rb882ee/spec/finders/security/training_providers/base_url_finder_spec.rb883ee/spec/services/security/ingestion/tasks/ingest_finding_pipelines_spec.rb884ee/spec/services/incident_management/oncall_rotations/create_service_spec.rb885ee/spec/services/work_items/widgets/iteration_service/update_service_spec.rb886ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb887ee/spec/views/groups/feature_discovery_moments/advanced_features_dashboard.html.haml_spec.rb888ee/spec/policies/instance_security_dashboard_policy_spec.rb889ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb890ee/spec/lib/ee/gitlab/background_migration/populate_approval_project_rules_with_security_orchestration_spec.rb891ee/spec/models/incident_management/issuable_resource_link_spec.rb892ee/spec/services/award_emojis/add_service_spec.rb893ee/spec/lib/ee/gitlab/ci/pipeline/quota/activity_spec.rb894ee/spec/lib/gitlab/cidr_spec.rb895ee/spec/lib/banzai/filter/cross_project_issuable_information_filter_spec.rb896ee/spec/components/namespaces/free_user_cap/alert_component_spec.rb897ee/spec/services/ci/copy_cross_database_associations_service_spec.rb898ee/spec/models/product_analytics/jitsu_authentication_spec.rb899ee/spec/services/incident_management/oncall_rotations/destroy_service_spec.rb900ee/spec/services/security/security_orchestration_policies/fetch_policy_service_spec.rb901ee/spec/workers/ee/projects/inactive_projects_deletion_cron_worker_spec.rb902ee/spec/services/ee/merge_requests/base_service_spec.rb903ee/spec/services/incident_management/oncall_schedules/destroy_service_spec.rb904ee/spec/services/namespaces/in_product_marketing_emails_service_spec.rb905ee/spec/graphql/mutations/dast_scanner_profiles/delete_spec.rb906ee/spec/models/identity_spec.rb907ee/spec/workers/geo/repository_cleanup_worker_spec.rb908ee/spec/services/audit_events/protected_branch_audit_event_service_spec.rb909ee/spec/lib/gitlab/usage/metrics/instrumentations/count_external_status_checks_metric_spec.rb910ee/spec/lib/ee/gitlab/ci/config/entry/needs_spec.rb911ee/spec/models/ee/users/merge_request_interaction_spec.rb912ee/spec/services/ci_cd/github_setup_service_spec.rb913ee/spec/services/ee/labels/create_service_spec.rb914ee/spec/lib/ee/gitlab/ci/pipeline/chain/validate/security_orchestration_policy_spec.rb915ee/spec/graphql/resolvers/app_sec/dast/profile_resolver_spec.rb916ee/spec/helpers/ee/events_helper_spec.rb917ee/spec/views/projects/pipelines/_tabs_content.html.haml_spec.rb918ee/spec/graphql/types/incident_management/issuable_resource_link_type_enum_spec.rb919ee/spec/models/gitlab_subscription_history_spec.rb920ee/spec/graphql/types/vulnerability_location/coverage_fuzzing_type_spec.rb921ee/spec/elastic/migrate/20201123123400_migrate_issues_to_separate_index_spec.rb922ee/spec/helpers/ee/learn_gitlab_helper_spec.rb923ee/spec/lib/gitlab/ci/config/entry/vault/secret_spec.rb924ee/spec/elastic/migrate/20210825110300_backfill_namespace_ancestry_for_issues_spec.rb925ee/spec/lib/system_check/geo/license_check_spec.rb926ee/spec/serializers/user_analytics_entity_spec.rb927ee/spec/lib/audit/project_ci_cd_setting_changes_auditor_spec.rb928ee/spec/views/projects/settings/merge_requests/_merge_request_approvals.html.haml_spec.rb929ee/spec/graphql/types/protected_environments/approval_rule_type_spec.rb930ee/spec/services/gitlab_subscriptions/reconciliations/check_seat_usage_alerts_eligibility_service_spec.rb931ee/spec/serializers/vulnerabilities/request_entity_spec.rb932ee/spec/services/geo/container_repository_registry_removal_service_spec.rb933ee/spec/services/audit_events/repository_download_started_audit_event_service_spec.rb934ee/spec/helpers/ee/blob_helper_spec.rb935ee/spec/helpers/ee/projects/security/configuration_helper_spec.rb936ee/spec/graphql/types/dast/profile_cadence_type_spec.rb937ee/spec/graphql/mutations/boards/epic_boards/update_spec.rb938ee/spec/lib/gitlab/slash_commands/presenters/issue_show_spec.rb939ee/spec/services/vulnerability_external_issue_links/destroy_service_spec.rb940ee/spec/views/projects/security/discover/show.html.haml_spec.rb941ee/spec/lib/ee/gitlab/usage_data_counters/work_item_activity_unique_counter_spec.rb942ee/spec/services/web_hook_service_spec.rb943ee/spec/policies/geo_node_policy_spec.rb944ee/spec/lib/ee/gitlab/gon_helper_spec.rb945ee/spec/finders/licenses_finder_spec.rb946ee/spec/graphql/types/geo/terraform_state_version_registry_type_spec.rb947ee/spec/lib/ee/gitlab/database/gitlab_schema_spec.rb948ee/spec/workers/incident_management/pending_escalations/issue_check_worker_spec.rb949ee/spec/workers/geo/design_repository_sync_worker_spec.rb950ee/spec/serializers/license_entity_spec.rb951ee/spec/services/ee/incident_management/issuable_escalation_statuses/create_service_spec.rb952ee/spec/services/sbom/ingestion/ingest_report_service_spec.rb953ee/spec/views/trials/_skip_trial.html.haml_spec.rb954ee/spec/lib/audit/base_changes_auditor_spec.rb955ee/spec/graphql/ee/mutations/ci/runner/update_spec.rb956ee/spec/serializers/metrics_reports_comparer_entity_spec.rb957ee/spec/elastic/migrate/20201105181100_apply_max_analyzed_offset_spec.rb958ee/spec/lib/gitlab/code_owners/reference_extractor_spec.rb959ee/spec/serializers/analytics/cycle_analytics/event_entity_spec.rb960ee/spec/views/groups/_compliance_frameworks.html.haml_spec.rb961ee/spec/graphql/types/subscription_type_spec.rb962ee/spec/graphql/types/geo/pages_deployment_registry_type_spec.rb963ee/spec/graphql/ee/types/issuable_type_spec.rb964ee/spec/views/admin/application_settings/_deletion_protection_settings.html.haml_spec.rb965ee/spec/routing/uploads_routing_spec.rb966ee/spec/lib/gitlab/status_page/filter/mention_anonymization_filter_spec.rb967ee/spec/graphql/types/protected_environments/approval_rule_for_summary_type_spec.rb968ee/spec/graphql/types/vulnerability_details/text_type_spec.rb969ee/spec/graphql/types/ci/minutes/project_monthly_usage_type_spec.rb970ee/spec/models/milestone_spec.rb971Filter specs:972Running specs:973Running all node tests without filter974ee/spec/services/ee/auth/container_registry_authentication_service_spec.rb975ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb976ee/spec/models/approval_state_spec.rb977ee/spec/models/ci/build_spec.rb978ee/spec/lib/compliance_management/merge_request_approval_settings/resolver_spec.rb979ee/spec/lib/gitlab/import_export/attributes_permitter_spec.rb980ee/spec/models/ee/terraform/state_version_spec.rb981ee/spec/workers/audit_events/audit_event_streaming_worker_spec.rb982ee/spec/models/analytics/cycle_analytics/group_stage_spec.rb983ee/spec/helpers/billing_plans_helper_spec.rb984ee/spec/lib/ee/gitlab/background_migration/migrate_shared_vulnerability_scanners_spec.rb985ee/spec/lib/gitlab/usage_data_metrics_spec.rb986ee/spec/services/search_service_spec.rb987ee/spec/services/registrations/standard_namespace_create_service_spec.rb988ee/spec/lib/incident_management/oncall_shift_generator_spec.rb989ee/spec/helpers/ee/users/callouts_helper_spec.rb990ee/spec/services/vulnerabilities/resolve_service_spec.rb991ee/spec/models/merge_requests/external_status_check_spec.rb992ee/spec/graphql/resolvers/requirements_management/requirements_resolver_spec.rb993ee/spec/services/jira/requests/issues/list_service_spec.rb994ee/spec/services/members/activate_service_spec.rb995ee/spec/finders/geo/repository_verification_finder_spec.rb996ee/spec/models/productivity_analytics_spec.rb997ee/spec/services/security/ingestion/tasks/ingest_issue_links_spec.rb998ee/spec/services/auto_merge/add_to_merge_train_when_pipeline_succeeds_service_spec.rb999ee/spec/graphql/resolvers/geo/pages_deployment_registries_resolver_spec.rb1000ee/spec/services/timebox_report_service_spec.rb1001ee/spec/lib/ee/gitlab/ci/parsers/security/validators/schema_validator_spec.rb1002ee/spec/lib/ee/gitlab/background_migration/purge_stale_security_scans_spec.rb1003ee/spec/models/ee/ci/build_dependencies_spec.rb1004ee/spec/presenters/ci/minutes/usage_presenter_spec.rb1005ee/spec/models/incident_management/oncall_schedule_spec.rb1006ee/spec/services/gitlab_subscriptions/reconciliations/calculate_seat_count_data_service_spec.rb1007ee/spec/graphql/mutations/projects/set_locked_spec.rb1008ee/spec/models/dast_site_token_spec.rb1009ee/spec/lib/gitlab/spdx/catalogue_gateway_spec.rb1010ee/spec/helpers/boards_helper_spec.rb1011ee/spec/finders/audit_event_finder_spec.rb1012ee/spec/presenters/subscription_presenter_spec.rb1013ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb1014ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/mark_resolved_as_detected_spec.rb1015ee/spec/models/ee/group_group_link_spec.rb1016ee/spec/lib/gitlab/usage/metrics/instrumentations/count_deployment_approvals_metric_spec.rb1017ee/spec/lib/gitlab/auth/smartcard/ldap_certificate_spec.rb1018ee/spec/graphql/resolvers/epics/default_project_for_issue_creation_resolver_spec.rb1019ee/spec/lib/gitlab/auth/group_saml/dynamic_settings_spec.rb1020ee/spec/lib/gitlab/auth/ldap/person_spec.rb1021ee/spec/services/releases/create_service_spec.rb1022ee/spec/services/app_sec/dast/profiles/create_associations_service_spec.rb1023ee/spec/finders/security/training_urls_finder_spec.rb1024ee/spec/finders/boards/boards_finder_spec.rb1025ee/spec/lib/gitlab/ci/templates/dast_api_latest_gitlab_ci_yaml_spec.rb1026ee/spec/policies/vulnerability_policy_spec.rb1027ee/spec/services/ci/runners/stale_group_runners_prune_service_spec.rb1028ee/spec/models/approval_wrapped_code_owner_rule_spec.rb1029ee/spec/services/requirements_management/export_csv_service_spec.rb1030ee/spec/serializers/merge_request_poll_widget_entity_spec.rb1031ee/spec/finders/users_finder_spec.rb1032ee/spec/lib/gitlab/ci/templates/dast_api_gitlab_ci_yaml_spec.rb1033ee/spec/models/ee/description_version_spec.rb1034ee/spec/finders/billed_users_finder_spec.rb1035ee/spec/lib/ee/gitlab/email/handler/service_desk_handler_spec.rb1036ee/spec/services/ci/minutes/additional_packs/change_namespace_service_spec.rb1037ee/spec/models/approvals/scan_finding_wrapped_rule_set_spec.rb1038ee/spec/services/ee/merge_request_metrics_service_spec.rb1039ee/spec/services/ci/play_bridge_service_spec.rb1040ee/spec/models/gitlab/seat_link_data_spec.rb1041ee/spec/helpers/ee/auth_helper_spec.rb1042ee/spec/services/system_notes/vulnerabilities_service_spec.rb1043ee/spec/finders/security/training_providers/base_url_finder_spec.rb1044ee/spec/services/security/ingestion/tasks/ingest_finding_pipelines_spec.rb1045ee/spec/services/incident_management/oncall_rotations/create_service_spec.rb1046ee/spec/services/work_items/widgets/iteration_service/update_service_spec.rb1047ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb1048ee/spec/views/groups/feature_discovery_moments/advanced_features_dashboard.html.haml_spec.rb1049ee/spec/policies/instance_security_dashboard_policy_spec.rb1050ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb1051ee/spec/lib/ee/gitlab/background_migration/populate_approval_project_rules_with_security_orchestration_spec.rb1052ee/spec/models/incident_management/issuable_resource_link_spec.rb1053ee/spec/services/award_emojis/add_service_spec.rb1054ee/spec/lib/ee/gitlab/ci/pipeline/quota/activity_spec.rb1055ee/spec/lib/gitlab/cidr_spec.rb1056ee/spec/lib/banzai/filter/cross_project_issuable_information_filter_spec.rb1057ee/spec/components/namespaces/free_user_cap/alert_component_spec.rb1058ee/spec/services/ci/copy_cross_database_associations_service_spec.rb1059ee/spec/models/product_analytics/jitsu_authentication_spec.rb1060ee/spec/services/incident_management/oncall_rotations/destroy_service_spec.rb1061ee/spec/services/security/security_orchestration_policies/fetch_policy_service_spec.rb1062ee/spec/workers/ee/projects/inactive_projects_deletion_cron_worker_spec.rb1063ee/spec/services/ee/merge_requests/base_service_spec.rb1064ee/spec/services/incident_management/oncall_schedules/destroy_service_spec.rb1065ee/spec/services/namespaces/in_product_marketing_emails_service_spec.rb1066ee/spec/graphql/mutations/dast_scanner_profiles/delete_spec.rb1067ee/spec/models/identity_spec.rb1068ee/spec/workers/geo/repository_cleanup_worker_spec.rb1069ee/spec/services/audit_events/protected_branch_audit_event_service_spec.rb1070ee/spec/lib/gitlab/usage/metrics/instrumentations/count_external_status_checks_metric_spec.rb1071ee/spec/lib/ee/gitlab/ci/config/entry/needs_spec.rb1072ee/spec/models/ee/users/merge_request_interaction_spec.rb1073ee/spec/services/ci_cd/github_setup_service_spec.rb1074ee/spec/services/ee/labels/create_service_spec.rb1075ee/spec/lib/ee/gitlab/ci/pipeline/chain/validate/security_orchestration_policy_spec.rb1076ee/spec/graphql/resolvers/app_sec/dast/profile_resolver_spec.rb1077ee/spec/helpers/ee/events_helper_spec.rb1078ee/spec/views/projects/pipelines/_tabs_content.html.haml_spec.rb1079ee/spec/graphql/types/incident_management/issuable_resource_link_type_enum_spec.rbKnapsack report generator started!1080Run options: exclude {:quarantine=>true, :level=>"migration"}1081Test environment set up in 0.792741871 seconds1082Auth::ContainerRegistryAuthenticationService1083 with deploy keys1084 with IP restriction1085 group with restriction1086 address is within the range1087 behaves like a container registry auth service1088 .full_access_token1089 behaves like an accessible1090 has the correct scope1091 behaves like a valid token1092 is expected to include :token1093 is expected to include "access"1094 a expirable1095 for default configuration1096 is expected not to be within 2 of 2022-11-11 01:06:21.063138977 +00001097 for changed configuration1098 is expected to be within 2 of 2022-11-11 01:06:21.108783572 +00001099 behaves like not a container repository factory1100 does not create a new container repository resource1101 .import_access_token1102 has the correct scope1103 behaves like a valid token1104 is expected to include :token1105 is expected to include "access"1106 a expirable1107 for default configuration1108 is expected not to be within 2 of 2022-11-11 01:06:21.337916316 +00001109 for changed configuration1110 is expected to be within 2 of 2022-11-11 01:06:21.382427271 +00001111 behaves like not a container repository factory1112 does not create a new container repository resource1113 .pull_access_token1114 behaves like an accessible1115 has the correct scope1116 behaves like a valid token1117 is expected to include :token1118 is expected to include "access"1119 a expirable1120 for default configuration1121 is expected not to be within 2 of 2022-11-11 01:06:21.845082799 +00001122 for changed configuration1123 is expected to be within 2 of 2022-11-11 01:06:21.890181914 +00001124 behaves like not a container repository factory1125 does not create a new container repository resource1126 .pull_nested_repositories_access_token1127 has the correct scope1128 behaves like a valid token1129 is expected to include :token1130 is expected to include "access"1131 a expirable1132 for default configuration1133 is expected not to be within 2 of 2022-11-11 01:06:22.338626913 +00001134 for changed configuration1135 is expected to be within 2 of 2022-11-11 01:06:22.382949818 +00001136 behaves like not a container repository factory1137 does not create a new container repository resource1138 with path ending with a slash1139 has the correct scope1140 behaves like a valid token1141 is expected to include :token1142 is expected to include "access"1143 a expirable1144 for default configuration1145 is expected not to be within 2 of 2022-11-11 01:06:22.585932245 +00001146 for changed configuration1147 is expected to be within 2 of 2022-11-11 01:06:22.630501220 +00001148 behaves like not a container repository factory1149 does not create a new container repository resource1150 user authorization1151 for registry catalog1152 disallow browsing for users without GitLab admin rights1153 behaves like an inaccessible1154 is expected to include {"access" => []}1155 behaves like a valid token1156 is expected to include :token1157 is expected to include "access"1158 a expirable1159 for default configuration1160 is expected not to be within 2 of 2022-11-11 01:06:22.980910041 +00001161 for changed configuration1162 is expected to be within 2 of 2022-11-11 01:06:23.028229426 +00001163 behaves like not a container repository factory1164 does not create a new container repository resource1165 for private project1166 behaves like private project1167 allow to use scope-less authentication1168 behaves like a valid token1169 is expected to include :token1170 is expected to include "access"1171 a expirable1172 for default configuration1173 is expected not to be within 2 of 2022-11-11 01:06:23.464153076 +00001174 for changed configuration1175 is expected to be within 2 of 2022-11-11 01:06:23.513191731 +00001176 behaves like with auth_type1177 is expected to eq "foo"1178 allow developer to push images1179 behaves like a pushable1180 behaves like an accessible1181 has the correct scope1182 behaves like a valid token1183 is expected to include :token1184 is expected to include "access"1185 a expirable1186 for default configuration1187 is expected not to be within 2 of 2022-11-11 01:06:24.137460500 +00001188 for changed configuration1189 is expected to be within 2 of 2022-11-11 01:06:24.232581450 +00001190 behaves like container repository factory1191 creates a new container repository resource1192 behaves like with auth_type1193 is expected to eq "foo"1194 disallow developer to delete images1195 behaves like an inaccessible1196 is expected to include {"access" => []}1197 behaves like a valid token1198 is expected to include :token1199 is expected to include "access"1200 a expirable1201 for default configuration1202 is expected not to be within 2 of 2022-11-11 01:06:24.837081592 +00001203 for changed configuration1204 is expected to be within 2 of 2022-11-11 01:06:24.923626602 +00001205 behaves like not a container repository factory1206 does not create a new container repository resource1207 behaves like logs an auth warning1208 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["*"...ted_project_path=>"namespace5/project5", :scope_type=>"repository", :user_id=>6, :username=>"user2"}) 1 time1209 disallow developer to delete images since registry 2.71210 behaves like an inaccessible1211 is expected to include {"access" => []}1212 behaves like a valid token1213 is expected to include :token1214 is expected to include "access"1215 a expirable1216 for default configuration1217 is expected not to be within 2 of 2022-11-11 01:06:25.587127510 +00001218 for changed configuration1219 is expected to be within 2 of 2022-11-11 01:06:25.676137502 +00001220 behaves like not a container repository factory1221 does not create a new container repository resource1222 allow reporter to pull images1223 when pulling from root level repository1224 behaves like a pullable1225 behaves like an accessible1226 has the correct scope1227 behaves like a valid token1228 is expected to include :token1229 is expected to include "access"1230 a expirable1231 for default configuration1232 is expected not to be within 2 of 2022-11-11 01:06:26.144261403 +00001233 for changed configuration1234 is expected to be within 2 of 2022-11-11 01:06:26.221182235 +00001235 behaves like not a container repository factory1236 does not create a new container repository resource1237 behaves like with auth_type1238 is expected to eq "foo"1239 disallow reporter to delete images1240 behaves like an inaccessible1241 is expected to include {"access" => []}1242 behaves like a valid token1243 is expected to include :token1244 is expected to include "access"1245 a expirable1246 for default configuration1247 is expected not to be within 2 of 2022-11-11 01:06:26.807457459 +00001248 for changed configuration1249 is expected to be within 2 of 2022-11-11 01:06:26.898678281 +00001250 behaves like not a container repository factory1251 does not create a new container repository resource1252 disallow reporter to delete images since registry 2.71253 behaves like an inaccessible1254 is expected to include {"access" => []}1255 behaves like a valid token1256 is expected to include :token1257 is expected to include "access"1258 a expirable1259 for default configuration1260 is expected not to be within 2 of 2022-11-11 01:06:27.461663854 +00001261 for changed configuration1262 is expected to be within 2 of 2022-11-11 01:06:27.547190346 +00001263 behaves like not a container repository factory1264 does not create a new container repository resource1265 return a least of privileges1266 behaves like a pullable1267 behaves like an accessible1268 has the correct scope1269 behaves like a valid token1270 is expected to include :token1271 is expected to include "access"1272 a expirable1273 for default configuration1274 is expected not to be within 2 of 2022-11-11 01:06:28.101649400 +00001275 for changed configuration1276 is expected to be within 2 of 2022-11-11 01:06:28.195795201 +00001277 behaves like not a container repository factory1278 does not create a new container repository resource1279 behaves like with auth_type1280 is expected to eq "foo"1281 disallow guest to pull or push images1282 behaves like an inaccessible1283 is expected to include {"access" => []}1284 behaves like a valid token1285 is expected to include :token1286 is expected to include "access"1287 a expirable1288 for default configuration1289 is expected not to be within 2 of 2022-11-11 01:06:28.862340948 +00001290 for changed configuration1291 is expected to be within 2 of 2022-11-11 01:06:28.954129140 +00001292 behaves like not a container repository factory1293 does not create a new container repository resource1294 disallow guest to delete images1295 behaves like an inaccessible1296 is expected to include {"access" => []}1297 behaves like a valid token1298 is expected to include :token1299 is expected to include "access"1300 a expirable1301 for default configuration1302 is expected not to be within 2 of 2022-11-11 01:06:29.475690582 +00001303 for changed configuration1304 is expected to be within 2 of 2022-11-11 01:06:29.572471584 +00001305 behaves like not a container repository factory1306 does not create a new container repository resource1307 disallow guest to delete images since registry 2.71308 behaves like an inaccessible1309 is expected to include {"access" => []}1310 behaves like a valid token1311 is expected to include :token1312 is expected to include "access"1313 a expirable1314 for default configuration1315 is expected not to be within 2 of 2022-11-11 01:06:30.140550788 +00001316 for changed configuration1317 is expected to be within 2 of 2022-11-11 01:06:30.231841390 +00001318 behaves like not a container repository factory1319 does not create a new container repository resource1320 for public project with private container registry1321 behaves like private project1322 allow to use scope-less authentication1323 behaves like a valid token1324 is expected to include :token1325 is expected to include "access"1326 a expirable1327 for default configuration1328 is expected not to be within 2 of 2022-11-11 01:06:30.688453671 +00001329 for changed configuration1330 is expected to be within 2 of 2022-11-11 01:06:30.730771282 +00001331 behaves like with auth_type1332 is expected to eq "foo"1333 allow developer to push images1334 behaves like a pushable1335 behaves like an accessible1336 has the correct scope1337 behaves like a valid token1338 is expected to include :token1339 is expected to include "access"1340 a expirable1341 for default configuration1342 is expected not to be within 2 of 2022-11-11 01:06:31.248253364 +00001343 for changed configuration1344 is expected to be within 2 of 2022-11-11 01:06:31.344421886 +00001345 behaves like container repository factory1346 creates a new container repository resource1347 behaves like with auth_type1348 is expected to eq "foo"1349 disallow developer to delete images1350 behaves like an inaccessible1351 is expected to include {"access" => []}1352 behaves like a valid token1353 is expected to include :token1354 is expected to include "access"1355 a expirable1356 for default configuration1357 is expected not to be within 2 of 2022-11-11 01:06:32.057219313 +00001358 for changed configuration1359 is expected to be within 2 of 2022-11-11 01:06:32.154550996 +00001360 behaves like not a container repository factory1361 does not create a new container repository resource1362 behaves like logs an auth warning1363 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["*"...ted_project_path=>"namespace6/project6", :scope_type=>"repository", :user_id=>6, :username=>"user2"}) 1 time1364 disallow developer to delete images since registry 2.71365 behaves like an inaccessible1366 is expected to include {"access" => []}1367 behaves like a valid token1368 is expected to include :token1369 is expected to include "access"1370 a expirable1371 for default configuration1372 is expected not to be within 2 of 2022-11-11 01:06:32.783425880 +00001373 for changed configuration1374 is expected to be within 2 of 2022-11-11 01:06:32.875342553 +00001375 behaves like not a container repository factory1376 does not create a new container repository resource1377 allow reporter to pull images1378 when pulling from root level repository1379 behaves like a pullable1380 behaves like an accessible1381 has the correct scope1382 behaves like a valid token1383 is expected to include :token1384 is expected to include "access"1385 a expirable1386 for default configuration1387 is expected not to be within 2 of 2022-11-11 01:06:33.363388704 +00001388 for changed configuration1389 is expected to be within 2 of 2022-11-11 01:06:33.444581086 +00001390 behaves like not a container repository factory1391 does not create a new container repository resource1392 behaves like with auth_type1393 is expected to eq "foo"1394 disallow reporter to delete images1395 behaves like an inaccessible1396 is expected to include {"access" => []}1397 behaves like a valid token1398 is expected to include :token1399 is expected to include "access"1400 a expirable1401 for default configuration1402 is expected not to be within 2 of 2022-11-11 01:06:34.065065381 +00001403 for changed configuration1404 is expected to be within 2 of 2022-11-11 01:06:34.208940054 +00001405 behaves like not a container repository factory1406 does not create a new container repository resource1407 disallow reporter to delete images since registry 2.71408 behaves like an inaccessible1409 is expected to include {"access" => []}1410 behaves like a valid token1411 is expected to include :token1412 is expected to include "access"1413 a expirable1414 for default configuration1415 is expected not to be within 2 of 2022-11-11 01:06:34.757546237 +00001416 for changed configuration1417 is expected to be within 2 of 2022-11-11 01:06:34.850137160 +00001418 behaves like not a container repository factory1419 does not create a new container repository resource1420 return a least of privileges1421 behaves like a pullable1422 behaves like an accessible1423 has the correct scope1424 behaves like a valid token1425 is expected to include :token1426 is expected to include "access"1427 a expirable1428 for default configuration1429 is expected not to be within 2 of 2022-11-11 01:06:35.445295684 +00001430 for changed configuration1431 is expected to be within 2 of 2022-11-11 01:06:35.554384296 +00001432 behaves like not a container repository factory1433 does not create a new container repository resource1434 behaves like with auth_type1435 is expected to eq "foo"1436 disallow guest to pull or push images1437 behaves like an inaccessible1438 is expected to include {"access" => []}1439 behaves like a valid token1440 is expected to include :token1441 is expected to include "access"1442 a expirable1443 for default configuration1444 is expected not to be within 2 of 2022-11-11 01:06:36.196162332 +00001445 for changed configuration1446 is expected to be within 2 of 2022-11-11 01:06:36.288179874 +00001447 behaves like not a container repository factory1448 does not create a new container repository resource1449 disallow guest to delete images1450 behaves like an inaccessible1451 is expected to include {"access" => []}1452 behaves like a valid token1453 is expected to include :token1454 is expected to include "access"1455 a expirable1456 for default configuration1457 is expected not to be within 2 of 2022-11-11 01:06:36.804697976 +00001458 for changed configuration1459 is expected to be within 2 of 2022-11-11 01:06:36.884696138 +00001460 behaves like not a container repository factory1461 does not create a new container repository resource1462 disallow guest to delete images since registry 2.71463 behaves like an inaccessible1464 is expected to include {"access" => []}1465 behaves like a valid token1466 is expected to include :token1467 is expected to include "access"1468 a expirable1469 for default configuration1470 is expected not to be within 2 of 2022-11-11 01:06:37.349718209 +00001471 for changed configuration1472 is expected to be within 2 of 2022-11-11 01:06:37.429358231 +00001473 behaves like not a container repository factory1474 does not create a new container repository resource1475 for public project with container_registry `enabled`1476 allow anyone to pull images1477 behaves like a pullable1478 behaves like an accessible1479 has the correct scope1480 behaves like a valid token1481 is expected to include :token1482 is expected to include "access"1483 a expirable1484 for default configuration1485 is expected not to be within 2 of 2022-11-11 01:06:38.015816665 +00001486 for changed configuration1487 is expected to be within 2 of 2022-11-11 01:06:38.086233146 +00001488 behaves like not a container repository factory1489 does not create a new container repository resource1490 behaves like with auth_type1491 is expected to eq "foo"1492 disallow anyone to push images1493 behaves like an inaccessible1494 is expected to include {"access" => []}1495 behaves like a valid token1496 is expected to include :token1497 is expected to include "access"1498 a expirable1499 for default configuration1500 is expected not to be within 2 of 2022-11-11 01:06:38.663573020 +00001501 for changed configuration1502 is expected to be within 2 of 2022-11-11 01:06:38.745049982 +00001503 behaves like not a container repository factory1504 does not create a new container repository resource1505 disallow anyone to delete images1506 behaves like an inaccessible1507 is expected to include {"access" => []}1508 behaves like a valid token1509 is expected to include :token1510 is expected to include "access"1511 a expirable1512 for default configuration1513 is expected not to be within 2 of 2022-11-11 01:06:39.162501332 +00001514 for changed configuration1515 is expected to be within 2 of 2022-11-11 01:06:39.247024034 +00001516 behaves like not a container repository factory1517 does not create a new container repository resource1518 disallow anyone to delete images since registry 2.71519 behaves like an inaccessible1520 is expected to include {"access" => []}1521 behaves like a valid token1522 is expected to include :token1523 is expected to include "access"1524 a expirable1525 for default configuration1526 is expected not to be within 2 of 2022-11-11 01:06:39.639029273 +00001527 for changed configuration1528 is expected to be within 2 of 2022-11-11 01:06:39.722165975 +00001529 behaves like not a container repository factory1530 does not create a new container repository resource1531 when repository name is invalid1532 behaves like an inaccessible1533 is expected to include {"access" => []}1534 behaves like a valid token1535 is expected to include :token1536 is expected to include "access"1537 a expirable1538 for default configuration1539 is expected not to be within 2 of 2022-11-11 01:06:39.949240891 +00001540 for changed configuration1541 is expected to be within 2 of 2022-11-11 01:06:39.993984411 +00001542 behaves like not a container repository factory1543 does not create a new container repository resource1544 for internal project with container_registry `enabled`1545 for internal user1546 allow anyone to pull images1547 behaves like a pullable1548 behaves like an accessible1549 has the correct scope1550 behaves like a valid token1551 is expected to include :token1552 is expected to include "access"1553 a expirable1554 for default configuration1555 is expected not to be within 2 of 2022-11-11 01:06:40.561935255 +00001556 for changed configuration1557 is expected to be within 2 of 2022-11-11 01:06:40.685767288 +00001558 behaves like not a container repository factory1559 does not create a new container repository resource1560 behaves like with auth_type1561 is expected to eq "foo"1562 disallow anyone to push images1563 behaves like an inaccessible1564 is expected to include {"access" => []}1565 behaves like a valid token1566 is expected to include :token1567 is expected to include "access"1568 a expirable1569 for default configuration1570 is expected not to be within 2 of 2022-11-11 01:06:41.150394949 +00001571 for changed configuration1572 is expected to be within 2 of 2022-11-11 01:06:41.236751531 +00001573 behaves like not a container repository factory1574 does not create a new container repository resource1575 disallow anyone to delete images1576 behaves like an inaccessible1577 is expected to include {"access" => []}1578 behaves like a valid token1579 is expected to include :token1580 is expected to include "access"1581 a expirable1582 for default configuration1583 is expected not to be within 2 of 2022-11-11 01:06:41.646305441 +00001584 for changed configuration1585 is expected to be within 2 of 2022-11-11 01:06:41.722636833 +00001586 behaves like not a container repository factory1587 does not create a new container repository resource1588 disallow anyone to delete images since registry 2.71589 behaves like an inaccessible1590 is expected to include {"access" => []}1591 behaves like a valid token1592 is expected to include :token1593 is expected to include "access"1594 a expirable1595 for default configuration1596 is expected not to be within 2 of 2022-11-11 01:06:42.119920562 +00001597 for changed configuration1598 is expected to be within 2 of 2022-11-11 01:06:42.208443074 +00001599 behaves like not a container repository factory1600 does not create a new container repository resource1601 for external user1602 disallow anyone to pull or push images1603 behaves like an inaccessible1604 is expected to include {"access" => []}1605 behaves like a valid token1606 is expected to include :token1607 is expected to include "access"1608 a expirable1609 for default configuration1610 is expected not to be within 2 of 2022-11-11 01:06:42.798593538 +00001611 for changed configuration1612 is expected to be within 2 of 2022-11-11 01:06:42.888082720 +00001613 behaves like not a container repository factory1614 does not create a new container repository resource1615 disallow anyone to delete images1616 behaves like an inaccessible1617 is expected to include {"access" => []}1618 behaves like a valid token1619 is expected to include :token1620 is expected to include "access"1621 a expirable1622 for default configuration1623 is expected not to be within 2 of 2022-11-11 01:06:43.340234451 +00001624 for changed configuration1625 is expected to be within 2 of 2022-11-11 01:06:43.416321193 +00001626 behaves like not a container repository factory1627 does not create a new container repository resource1628 disallow anyone to delete images since registry 2.71629 behaves like an inaccessible1630 is expected to include {"access" => []}1631 behaves like a valid token1632 is expected to include :token1633 is expected to include "access"1634 a expirable1635 for default configuration1636 is expected not to be within 2 of 2022-11-11 01:06:43.914080154 +00001637 for changed configuration1638 is expected to be within 2 of 2022-11-11 01:06:43.999509027 +00001639 behaves like not a container repository factory1640 does not create a new container repository resource1641 for internal project with private container registry1642 behaves like private project1643 allow to use scope-less authentication1644 behaves like a valid token1645 is expected to include :token1646 is expected to include "access"1647 a expirable1648 for default configuration1649 is expected not to be within 2 of 2022-11-11 01:06:44.453934377 +00001650 for changed configuration1651 is expected to be within 2 of 2022-11-11 01:06:44.501343949 +00001652 behaves like with auth_type1653 is expected to eq "foo"1654 allow developer to push images1655 behaves like a pushable1656 behaves like an accessible1657 has the correct scope1658 behaves like a valid token1659 is expected to include :token1660 is expected to include "access"1661 a expirable1662 for default configuration1663 is expected not to be within 2 of 2022-11-11 01:06:45.064045542 +00001664 for changed configuration1665 is expected to be within 2 of 2022-11-11 01:06:45.161491984 +00001666 behaves like container repository factory1667 creates a new container repository resource1668 behaves like with auth_type1669 is expected to eq "foo"1670 disallow developer to delete images1671 behaves like an inaccessible1672 is expected to include {"access" => []}1673 behaves like a valid token1674 is expected to include :token1675 is expected to include "access"1676 a expirable1677 for default configuration1678 is expected not to be within 2 of 2022-11-11 01:06:45.790359799 +00001679 for changed configuration1680 is expected to be within 2 of 2022-11-11 01:06:45.883829542 +00001681 behaves like not a container repository factory1682 does not create a new container repository resource1683 behaves like logs an auth warning1684 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["*"...ted_project_path=>"namespace9/project9", :scope_type=>"repository", :user_id=>6, :username=>"user2"}) 1 time1685 disallow developer to delete images since registry 2.71686 behaves like an inaccessible1687 is expected to include {"access" => []}1688 behaves like a valid token1689 is expected to include :token1690 is expected to include "access"1691 a expirable1692 for default configuration1693 is expected not to be within 2 of 2022-11-11 01:06:46.487886116 +00001694 for changed configuration1695 is expected to be within 2 of 2022-11-11 01:06:46.579073708 +00001696 behaves like not a container repository factory1697 does not create a new container repository resource1698 allow reporter to pull images1699 when pulling from root level repository1700 behaves like a pullable1701 behaves like an accessible1702 has the correct scope1703 behaves like a valid token1704 is expected to include :token1705 is expected to include "access"1706 a expirable1707 for default configuration1708 is expected not to be within 2 of 2022-11-11 01:06:47.104339710 +00001709 for changed configuration1710 is expected to be within 2 of 2022-11-11 01:06:47.172192902 +00001711 behaves like not a container repository factory1712 does not create a new container repository resource1713 behaves like with auth_type1714 is expected to eq "foo"1715 disallow reporter to delete images1716 behaves like an inaccessible1717 is expected to include {"access" => []}1718 behaves like a valid token1719 is expected to include :token1720 is expected to include "access"1721 a expirable1722 for default configuration1723 is expected not to be within 2 of 2022-11-11 01:06:47.725906595 +00001724 for changed configuration1725 is expected to be within 2 of 2022-11-11 01:06:47.814363137 +00001726 behaves like not a container repository factory1727 does not create a new container repository resource1728 disallow reporter to delete images since registry 2.71729 behaves like an inaccessible1730 is expected to include {"access" => []}1731 behaves like a valid token1732 is expected to include :token1733 is expected to include "access"1734 a expirable1735 for default configuration1736 is expected not to be within 2 of 2022-11-11 01:06:48.330158600 +00001737 for changed configuration1738 is expected to be within 2 of 2022-11-11 01:06:48.411628721 +00001739 behaves like not a container repository factory1740 does not create a new container repository resource1741 return a least of privileges1742 behaves like a pullable1743 behaves like an accessible1744 has the correct scope1745 behaves like a valid token1746 is expected to include :token1747 is expected to include "access"1748 a expirable1749 for default configuration1750 is expected not to be within 2 of 2022-11-11 01:06:48.980018645 +00001751 for changed configuration1752 is expected to be within 2 of 2022-11-11 01:06:49.127586349 +00001753 behaves like not a container repository factory1754 does not create a new container repository resource1755 behaves like with auth_type1756 is expected to eq "foo"1757 disallow guest to pull or push images1758 behaves like an inaccessible1759 is expected to include {"access" => []}1760 behaves like a valid token1761 is expected to include :token1762 is expected to include "access"1763 a expirable1764 for default configuration1765 is expected not to be within 2 of 2022-11-11 01:06:49.786395224 +00001766 for changed configuration1767 is expected to be within 2 of 2022-11-11 01:06:49.874416826 +00001768 behaves like not a container repository factory1769 does not create a new container repository resource1770 disallow guest to delete images1771 behaves like an inaccessible1772 is expected to include {"access" => []}1773 behaves like a valid token1774 is expected to include :token1775 is expected to include "access"1776 a expirable1777 for default configuration1778 is expected not to be within 2 of 2022-11-11 01:06:50.318467367 +00001779 for changed configuration1780 is expected to be within 2 of 2022-11-11 01:06:50.392385168 +00001781 behaves like not a container repository factory1782 does not create a new container repository resource1783 disallow guest to delete images since registry 2.71784 behaves like an inaccessible1785 is expected to include {"access" => []}1786 behaves like a valid token1787 is expected to include :token1788 is expected to include "access"1789 a expirable1790 for default configuration1791 is expected not to be within 2 of 2022-11-11 01:06:50.858739019 +00001792 for changed configuration1793 is expected to be within 2 of 2022-11-11 01:06:50.938979142 +00001794 behaves like not a container repository factory1795 does not create a new container repository resource1796 delete authorized as maintainer1797 behaves like allowed to delete container repository images1798 behaves like a valid token1799 is expected to include :token1800 is expected to include "access"1801 a expirable1802 for default configuration1803 is expected not to be within 2 of 2022-11-11 01:06:51.574469466 +00001804 for changed configuration1805 is expected to be within 2 of 2022-11-11 01:06:51.615759597 +00001806 allow to delete images1807 behaves like a deletable1808 behaves like an accessible1809 has the correct scope1810 behaves like a valid token1811 is expected to include :token1812 is expected to include "access"1813 a expirable1814 for default configuration1815 is expected not to be within 2 of 2022-11-11 01:06:51.931577355 +00001816 for changed configuration1817 is expected to be within 2 of 2022-11-11 01:06:52.024926167 +00001818 allow to delete images since registry 2.71819 behaves like a deletable since registry 2.71820 behaves like an accessible1821 has the correct scope1822 behaves like a valid token1823 is expected to include :token1824 is expected to include "access"1825 a expirable1826 for default configuration1827 is expected not to be within 2 of 2022-11-11 01:06:52.345364395 +00001828 for changed configuration1829 is expected to be within 2 of 2022-11-11 01:06:52.429133997 +00001830 build authorized as user1831 allow to use offline_token1832 behaves like an authenticated1833 is expected to include :token1834 is expected to include "access"1835 behaves like a valid token1836 is expected to include :token1837 is expected to include "access"1838 a expirable1839 for default configuration1840 is expected not to be within 2 of 2022-11-11 01:06:53.008226921 +00001841 for changed configuration1842 is expected to be within 2 of 2022-11-11 01:06:53.058825992 +00001843 behaves like with auth_type1844 is expected to eq "foo"1845 allow to pull and push images1846 behaves like a pullable and pushable1847 behaves like an accessible1848 has the correct scope1849 behaves like a valid token1850 is expected to include :token1851 is expected to include "access"1852 a expirable1853 for default configuration1854 is expected not to be within 2 of 2022-11-11 01:06:53.445043801 +00001855 for changed configuration1856 is expected to be within 2 of 2022-11-11 01:06:53.522081583 +00001857 behaves like container repository factory1858 creates a new container repository resource1859 allow to delete images since registry 2.71860 behaves like a deletable since registry 2.71861 behaves like an accessible1862 has the correct scope1863 behaves like a valid token1864 is expected to include :token1865 is expected to include "access"1866 a expirable1867 for default configuration1868 is expected not to be within 2 of 2022-11-11 01:06:53.836964100 +00001869 for changed configuration1870 is expected to be within 2 of 2022-11-11 01:06:53.902264882 +00001871 disallow to delete images1872 behaves like an inaccessible1873 is expected to include {"access" => []}1874 behaves like a valid token1875 is expected to include :token1876 is expected to include "access"1877 a expirable1878 for default configuration1879 is expected not to be within 2 of 2022-11-11 01:06:54.137109417 +00001880 for changed configuration1881 is expected to be within 2 of 2022-11-11 01:06:54.196736899 +00001882 for other projects1883 when pulling1884 allow for public1885 behaves like a pullable1886 behaves like an accessible1887 has the correct scope1888 behaves like a valid token1889 is expected to include :token1890 is expected to include "access"1891 a expirable1892 for default configuration1893 is expected not to be within 2 of 2022-11-11 01:06:54.702048221 +00001894 for changed configuration1895 is expected to be within 2 of 2022-11-11 01:06:54.768877062 +00001896 behaves like not a container repository factory1897 does not create a new container repository resource1898 for private1899 behaves like pullable for being team member1900 when you are not member1901 behaves like an inaccessible1902 is expected to include {"access" => []}1903 behaves like a valid token1904 is expected to include :token1905 is expected to include "access"1906 a expirable1907 for default configuration1908 is expected not to be within 2 of 2022-11-11 01:06:55.350903586 +00001909 for changed configuration1910 is expected to be within 2 of 2022-11-11 01:06:55.467836219 +00001911 behaves like not a container repository factory1912 does not create a new container repository resource1913 when you are member1914 behaves like a pullable1915 behaves like an accessible1916 has the correct scope1917 behaves like a valid token1918 is expected to include :token1919 is expected to include "access"1920 a expirable1921 for default configuration1922 is expected not to be within 2 of 2022-11-11 01:06:55.919132960 +00001923 for changed configuration1924 is expected to be within 2 of 2022-11-11 01:06:55.997839141 +00001925 behaves like not a container repository factory1926 does not create a new container repository resource1927 when you are owner1928 behaves like a pullable1929 behaves like an accessible1930 has the correct scope1931 behaves like a valid token1932 is expected to include :token1933 is expected to include "access"1934 a expirable1935 for default configuration1936 is expected not to be within 2 of 2022-11-11 01:06:56.538934604 +00001937 for changed configuration1938 is expected to be within 2 of 2022-11-11 01:06:56.622705226 +00001939 behaves like not a container repository factory1940 does not create a new container repository resource1941 when you are admin1942 when you are not member1943 behaves like an inaccessible1944 is expected to include {"access" => []}1945 behaves like a valid token1946 is expected to include :token1947 is expected to include "access"1948 a expirable1949 for default configuration1950 is expected not to be within 2 of 2022-11-11 01:06:57.069819847 +00001951 for changed configuration1952 is expected to be within 2 of 2022-11-11 01:06:57.139312399 +00001953 behaves like not a container repository factory1954 does not create a new container repository resource1955 when you are member1956 behaves like a pullable1957 behaves like an accessible1958 has the correct scope1959 behaves like a valid token1960 is expected to include :token1961 is expected to include "access"1962 a expirable1963 for default configuration1964 is expected not to be within 2 of 2022-11-11 01:06:57.657144921 +00001965 for changed configuration1966 is expected to be within 2 of 2022-11-11 01:06:57.735404093 +00001967 behaves like not a container repository factory1968 does not create a new container repository resource1969 when you are owner1970 behaves like a pullable1971 behaves like an accessible1972 has the correct scope1973 behaves like a valid token1974 is expected to include :token1975 is expected to include "access"1976 a expirable1977 for default configuration1978 is expected not to be within 2 of 2022-11-11 01:06:58.276085896 +00001979 for changed configuration1980 is expected to be within 2 of 2022-11-11 01:06:58.348999187 +00001981 behaves like not a container repository factory1982 does not create a new container repository resource1983 for public project with private container registry1984 behaves like pullable for being team member1985 when you are not member1986 behaves like an inaccessible1987 is expected to include {"access" => []}1988 behaves like a valid token1989 is expected to include :token1990 is expected to include "access"1991 a expirable1992 for default configuration1993 is expected not to be within 2 of 2022-11-11 01:06:58.979690662 +00001994 for changed configuration1995 is expected to be within 2 of 2022-11-11 01:06:59.056698514 +00001996 behaves like not a container repository factory1997 does not create a new container repository resource1998 when you are member1999 behaves like a pullable2000 behaves like an accessible2001 has the correct scope2002 behaves like a valid token2003 is expected to include :token2004 is expected to include "access"2005 a expirable2006 for default configuration2007 is expected not to be within 2 of 2022-11-11 01:06:59.526899335 +00002008 for changed configuration2009 is expected to be within 2 of 2022-11-11 01:06:59.613470487 +00002010 behaves like not a container repository factory2011 does not create a new container repository resource2012 when you are owner2013 behaves like a pullable2014 behaves like an accessible2015 has the correct scope2016 behaves like a valid token2017 is expected to include :token2018 is expected to include "access"2019 a expirable2020 for default configuration2021 is expected not to be within 2 of 2022-11-11 01:07:00.224566662 +00002022 for changed configuration2023 is expected to be within 2 of 2022-11-11 01:07:00.301459164 +00002024 behaves like not a container repository factory2025 does not create a new container repository resource2026 when you are admin2027 behaves like pullable for being team member2028 when you are not member2029 behaves like an inaccessible2030 is expected to include {"access" => []}2031 behaves like a valid token2032 is expected to include :token2033 is expected to include "access"2034 a expirable2035 for default configuration2036 is expected not to be within 2 of 2022-11-11 01:07:00.746946084 +00002037 for changed configuration2038 is expected to be within 2 of 2022-11-11 01:07:00.819846006 +00002039 behaves like not a container repository factory2040 does not create a new container repository resource2041 when you are member2042 behaves like a pullable2043 behaves like an accessible2044 has the correct scope2045 behaves like a valid token2046 is expected to include :token2047 is expected to include "access"2048 a expirable2049 for default configuration2050 is expected not to be within 2 of 2022-11-11 01:07:01.317602688 +00002051 for changed configuration2052 is expected to be within 2 of 2022-11-11 01:07:01.402356270 +00002053 behaves like not a container repository factory2054 does not create a new container repository resource2055 when you are owner2056 behaves like a pullable2057 behaves like an accessible2058 has the correct scope2059 behaves like a valid token2060 is expected to include :token2061 is expected to include "access"2062 a expirable2063 for default configuration2064 is expected not to be within 2 of 2022-11-11 01:07:02.016467585 +00002065 for changed configuration2066 is expected to be within 2 of 2022-11-11 01:07:02.093980946 +00002067 behaves like not a container repository factory2068 does not create a new container repository resource2069 when pushing2070 disallow for all2071 when you are member2072 behaves like an inaccessible2073 is expected to include {"access" => []}2074 behaves like a valid token2075 is expected to include :token2076 is expected to include "access"2077 a expirable2078 for default configuration2079 is expected not to be within 2 of 2022-11-11 01:07:02.760350542 +00002080 for changed configuration2081 is expected to be within 2 of 2022-11-11 01:07:02.830525063 +00002082 behaves like not a container repository factory2083 does not create a new container repository resource2084 when you are owner2085 behaves like an inaccessible2086 is expected to include {"access" => []}2087 behaves like a valid token2088 is expected to include :token2089 is expected to include "access"2090 a expirable2091 for default configuration2092 is expected not to be within 2 of 2022-11-11 01:07:03.340685826 +00002093 for changed configuration2094 is expected to be within 2 of 2022-11-11 01:07:03.412163918 +00002095 behaves like not a container repository factory2096 does not create a new container repository resource2097 for project without container registry2098 disallow when pulling2099 behaves like an inaccessible2100 is expected to include {"access" => []}2101 behaves like a valid token2102 is expected to include :token2103 is expected to include "access"2104 a expirable2105 for default configuration2106 is expected not to be within 2 of 2022-11-11 01:07:03.995039421 +00002107 for changed configuration2108 is expected to be within 2 of 2022-11-11 01:07:04.112628554 +00002109 behaves like not a container repository factory2110 does not create a new container repository resource2111 for project that disables repository2112 disallow when pulling2113 behaves like an inaccessible2114 is expected to include {"access" => []}2115 behaves like a valid token2116 is expected to include :token2117 is expected to include "access"2118 a expirable2119 for default configuration2120 is expected not to be within 2 of 2022-11-11 01:07:04.642566907 +00002121 for changed configuration2122 is expected to be within 2 of 2022-11-11 01:07:04.701453668 +00002123 behaves like not a container repository factory2124 does not create a new container repository resource2125 registry catalog browsing authorized as admin2126 behaves like a browsable2127 has the correct scope2128 behaves like a valid token2129 is expected to include :token2130 is expected to include "access"2131 a expirable2132 for default configuration2133 is expected not to be within 2 of 2022-11-11 01:07:05.248685731 +00002134 for changed configuration2135 is expected to be within 2 of 2022-11-11 01:07:05.295288362 +00002136 behaves like not a container repository factory2137 does not create a new container repository resource2138 support for multiple scopes2139 user has access to all projects2140 behaves like a browsable2141 has the correct scope2142 behaves like a valid token2143 is expected to include :token2144 is expected to include "access"2145 a expirable2146 for default configuration2147 is expected not to be within 2 of 2022-11-11 01:07:06.904055280 +00002148 for changed configuration2149 is expected to be within 2 of 2022-11-11 01:07:07.027412433 +00002150 behaves like not a container repository factory2151 does not create a new container repository resource2152 user only has access to internal and public projects2153 behaves like a browsable2154 has the correct scope2155 behaves like a valid token2156 is expected to include :token2157 is expected to include "access"2158 a expirable2159 for default configuration2160 is expected not to be within 2 of 2022-11-11 01:07:07.822122312 +00002161 for changed configuration2162 is expected to be within 2 of 2022-11-11 01:07:07.981189106 +00002163 behaves like not a container repository factory2164 does not create a new container repository resource2165 anonymous user has access only to public project2166 behaves like a browsable2167 has the correct scope2168 behaves like a valid token2169 is expected to include :token2170 is expected to include "access"2171 a expirable2172 for default configuration2173 is expected not to be within 2 of 2022-11-11 01:07:08.588887500 +00002174 for changed configuration2175 is expected to be within 2 of 2022-11-11 01:07:08.698248233 +00002176 behaves like not a container repository factory2177 does not create a new container repository resource2178 with no public container registry2179 behaves like a forbidden2180 is expected to include {:http_status => 403}2181 is expected not to include :token2182 unauthorized2183 disallow to use scope-less authentication2184 behaves like a forbidden2185 is expected to include {:http_status => 403}2186 is expected not to include :token2187 behaves like not a container repository factory2188 does not create a new container repository resource2189 for invalid scope2190 behaves like a forbidden2191 is expected to include {:http_status => 403}2192 is expected not to include :token2193 behaves like not a container repository factory2194 does not create a new container repository resource2195 for private project2196 behaves like a forbidden2197 is expected to include {:http_status => 403}2198 is expected not to include :token2199 for public project with container registry `enabled`2200 when pulling and pushing2201 behaves like a pullable2202 behaves like an accessible2203 has the correct scope2204 behaves like a valid token2205 is expected to include :token2206 is expected to include "access"2207 a expirable2208 for default configuration2209 is expected not to be within 2 of 2022-11-11 01:07:10.342045442 +00002210 for changed configuration2211 is expected to be within 2 of 2022-11-11 01:07:10.434429374 +00002212 behaves like not a container repository factory2213 does not create a new container repository resource2214 when pushing2215 behaves like a forbidden2216 is expected to include {:http_status => 403}2217 is expected not to include :token2218 behaves like not a container repository factory2219 does not create a new container repository resource2220 for public project with container registry `private`2221 when pulling and pushing2222 behaves like a forbidden2223 is expected to include {:http_status => 403}2224 is expected not to include :token2225 behaves like not a container repository factory2226 does not create a new container repository resource2227 for registry catalog2228 behaves like a forbidden2229 is expected to include {:http_status => 403}2230 is expected not to include :token2231 behaves like not a container repository factory2232 does not create a new container repository resource2233 for deploy tokens2234 when deploy token has read and write registry as scopes2235 for public project2236 when pulling2237 behaves like a pullable2238 behaves like an accessible2239 has the correct scope2240 behaves like a valid token2241 is expected to include :token2242 is expected to include "access"2243 a expirable2244 for default configuration2245 is expected not to be within 2 of 2022-11-11 01:07:12.102451813 +00002246 for changed configuration2247 is expected to be within 2 of 2022-11-11 01:07:12.207032446 +00002248 when pushing2249 behaves like a pushable2250 behaves like an accessible2251 has the correct scope2252 behaves like a valid token2253 is expected to include :token2254 is expected to include "access"2255 a expirable2256 for default configuration2257 is expected not to be within 2 of 2022-11-11 01:07:12.739239639 +00002258 for changed configuration2259 is expected to be within 2 of 2022-11-11 01:07:12.883598062 +00002260 behaves like able to login2261 registry provides read_container_image authentication_abilities2262 is expected to eq "deploy_token"2263 behaves like an authenticated2264 is expected to include :token2265 is expected to include "access"2266 for internal project2267 when pulling2268 behaves like a pullable2269 behaves like an accessible2270 has the correct scope2271 behaves like a valid token2272 is expected to include :token2273 is expected to include "access"2274 a expirable2275 for default configuration2276 is expected not to be within 2 of 2022-11-11 01:07:13.782620583 +00002277 for changed configuration2278 is expected to be within 2 of 2022-11-11 01:07:13.904016417 +00002279 when pushing2280 behaves like a pushable2281 behaves like an accessible2282 has the correct scope2283 behaves like a valid token2284 is expected to include :token2285 is expected to include "access"2286 a expirable2287 for default configuration2288 is expected not to be within 2 of 2022-11-11 01:07:14.443098789 +00002289 for changed configuration2290 is expected to be within 2 of 2022-11-11 01:07:14.581497513 +00002291 behaves like able to login2292 registry provides read_container_image authentication_abilities2293 is expected to eq "deploy_token"2294 behaves like an authenticated2295 is expected to include :token2296 is expected to include "access"2297 for private project2298 when pulling2299 behaves like a pullable2300 behaves like an accessible2301 has the correct scope2302 behaves like a valid token2303 is expected to include :token2304 is expected to include "access"2305 a expirable2306 for default configuration2307 is expected not to be within 2 of 2022-11-11 01:07:15.554943395 +00002308 for changed configuration2309 is expected to be within 2 of 2022-11-11 01:07:15.665833378 +00002310 when pushing2311 behaves like a pushable2312 behaves like an accessible2313 has the correct scope2314 behaves like a valid token2315 is expected to include :token2316 is expected to include "access"2317 a expirable2318 for default configuration2319 is expected not to be within 2 of 2022-11-11 01:07:16.139816909 +00002320 for changed configuration2321 is expected to be within 2 of 2022-11-11 01:07:16.271414933 +00002322 behaves like able to login2323 registry provides read_container_image authentication_abilities2324 is expected to eq "deploy_token"2325 behaves like an authenticated2326 is expected to include :token2327 is expected to include "access"2328 for public project with private container registry2329 when pulling2330 behaves like a pullable2331 behaves like an accessible2332 has the correct scope2333 behaves like a valid token2334 is expected to include :token2335 is expected to include "access"2336 a expirable2337 for default configuration2338 is expected not to be within 2 of 2022-11-11 01:07:17.286176087 +00002339 for changed configuration2340 is expected to be within 2 of 2022-11-11 01:07:17.420523850 +00002341 when pushing2342 behaves like a pushable2343 behaves like an accessible2344 has the correct scope2345 behaves like a valid token2346 is expected to include :token2347 is expected to include "access"2348 a expirable2349 for default configuration2350 is expected not to be within 2 of 2022-11-11 01:07:18.002860544 +00002351 for changed configuration2352 is expected to be within 2 of 2022-11-11 01:07:18.141931387 +00002353 behaves like able to login2354 registry provides read_container_image authentication_abilities2355 is expected to eq "deploy_token"2356 behaves like an authenticated2357 is expected to include :token2358 is expected to include "access"2359 when deploy token does not have read_registry scope2360 for public project with container registry `enabled`2361 when pulling2362 behaves like a pullable2363 behaves like an accessible2364 has the correct scope2365 behaves like a valid token2366 is expected to include :token2367 is expected to include "access"2368 a expirable2369 for default configuration2370 is expected not to be within 2 of 2022-11-11 01:07:19.147656461 +00002371 for changed configuration2372 is expected to be within 2 of 2022-11-11 01:07:19.277299554 +00002373 behaves like unable to login2374 registry provides no container authentication_abilities2375 behaves like a forbidden2376 is expected to include {:http_status => 403}2377 is expected not to include :token2378 registry provides inapplicable container authentication_abilities2379 behaves like a forbidden2380 is expected to include {:http_status => 403}2381 is expected not to include :token2382 for public project with container registry `private`2383 when pulling2384 behaves like an inaccessible2385 is expected to include {"access" => []}2386 behaves like a valid token2387 is expected to include :token2388 is expected to include "access"2389 a expirable2390 for default configuration2391 is expected not to be within 2 of 2022-11-11 01:07:20.324670359 +00002392 for changed configuration2393 is expected to be within 2 of 2022-11-11 01:07:20.431362761 +00002394 behaves like unable to login2395 registry provides no container authentication_abilities2396 behaves like a forbidden2397 is expected to include {:http_status => 403}2398 is expected not to include :token2399 registry provides inapplicable container authentication_abilities2400 behaves like a forbidden2401 is expected to include {:http_status => 403}2402 is expected not to include :token2403 for internal project2404 when pulling2405 behaves like an inaccessible2406 is expected to include {"access" => []}2407 behaves like a valid token2408 is expected to include :token2409 is expected to include "access"2410 a expirable2411 for default configuration2412 is expected not to be within 2 of 2022-11-11 01:07:21.398298404 +00002413 for changed configuration2414 is expected to be within 2 of 2022-11-11 01:07:21.490484426 +00002415 behaves like unable to login2416 registry provides no container authentication_abilities2417 behaves like a forbidden2418 is expected to include {:http_status => 403}2419 is expected not to include :token2420 registry provides inapplicable container authentication_abilities2421 behaves like a forbidden2422 is expected to include {:http_status => 403}2423 is expected not to include :token2424 for private project2425 when pulling2426 behaves like an inaccessible2427 is expected to include {"access" => []}2428 behaves like a valid token2429 is expected to include :token2430 is expected to include "access"2431 a expirable2432 for default configuration2433 is expected not to be within 2 of 2022-11-11 01:07:22.374521688 +00002434 for changed configuration2435 is expected to be within 2 of 2022-11-11 01:07:22.466177100 +00002436 when logging in2437 behaves like a forbidden2438 is expected to include {:http_status => 403}2439 is expected not to include :token2440 behaves like unable to login2441 registry provides no container authentication_abilities2442 behaves like a forbidden2443 is expected to include {:http_status => 403}2444 is expected not to include :token2445 registry provides inapplicable container authentication_abilities2446 behaves like a forbidden2447 is expected to include {:http_status => 403}2448 is expected not to include :token2449 when deploy token is not related to the project2450 for public project with container registry `enabled`2451 when pulling2452 behaves like a pullable2453 behaves like an accessible2454 has the correct scope2455 behaves like a valid token2456 is expected to include :token2457 is expected to include "access"2458 a expirable2459 for default configuration2460 is expected not to be within 2 of 2022-11-11 01:07:23.439322353 +00002461 for changed configuration2462 is expected to be within 2 of 2022-11-11 01:07:23.518521185 +00002463 for public project with container registry `private`2464 when pulling2465 behaves like an inaccessible2466 is expected to include {"access" => []}2467 behaves like a valid token2468 is expected to include :token2469 is expected to include "access"2470 a expirable2471 for default configuration2472 is expected not to be within 2 of 2022-11-11 01:07:24.016127256 +00002473 for changed configuration2474 is expected to be within 2 of 2022-11-11 01:07:24.080463578 +00002475 for internal project2476 when pulling2477 behaves like an inaccessible2478 is expected to include {"access" => []}2479 behaves like a valid token2480 is expected to include :token2481 is expected to include "access"2482 a expirable2483 for default configuration2484 is expected not to be within 2 of 2022-11-11 01:07:24.581319690 +00002485 for changed configuration2486 is expected to be within 2 of 2022-11-11 01:07:24.644637541 +00002487 for private project2488 when pulling2489 behaves like an inaccessible2490 is expected to include {"access" => []}2491 behaves like a valid token2492 is expected to include :token2493 is expected to include "access"2494 a expirable2495 for default configuration2496 is expected not to be within 2 of 2022-11-11 01:07:25.157795374 +00002497 for changed configuration2498 is expected to be within 2 of 2022-11-11 01:07:25.221693715 +00002499 when deploy token has been revoked2500 for public project with container registry `enabled`2501 behaves like a pullable2502 behaves like an accessible2503 has the correct scope2504 behaves like a valid token2505 is expected to include :token2506 is expected to include "access"2507 a expirable2508 for default configuration2509 is expected not to be within 2 of 2022-11-11 01:07:25.867380070 +00002510 for changed configuration2511 is expected to be within 2 of 2022-11-11 01:07:25.965297643 +00002512 for public project with container registry `private`2513 behaves like an inaccessible2514 is expected to include {"access" => []}2515 behaves like a valid token2516 is expected to include :token2517 is expected to include "access"2518 a expirable2519 for default configuration2520 is expected not to be within 2 of 2022-11-11 01:07:26.546911636 +00002521 for changed configuration2522 is expected to be within 2 of 2022-11-11 01:07:26.642395798 +00002523 for internal project2524 behaves like an inaccessible2525 is expected to include {"access" => []}2526 behaves like a valid token2527 is expected to include :token2528 is expected to include "access"2529 a expirable2530 for default configuration2531 is expected not to be within 2 of 2022-11-11 01:07:27.279323914 +00002532 for changed configuration2533 is expected to be within 2 of 2022-11-11 01:07:27.372218556 +00002534 for private project2535 behaves like an inaccessible2536 is expected to include {"access" => []}2537 behaves like a valid token2538 is expected to include :token2539 is expected to include "access"2540 a expirable2541 for default configuration2542 is expected not to be within 2 of 2022-11-11 01:07:27.995268711 +00002543 for changed configuration2544 is expected to be within 2 of 2022-11-11 01:07:28.094880423 +00002545 user authorization2546 with multiple scopes2547 allow developer to push images2548 behaves like a pushable2549 behaves like an accessible2550 has the correct scope2551 behaves like a valid token2552 is expected to include :token2553 is expected to include "access"2554 a expirable2555 for default configuration2556 is expected not to be within 2 of 2022-11-11 01:07:28.845460091 +00002557 for changed configuration2558 is expected to be within 2 of 2022-11-11 01:07:28.939429423 +00002559 behaves like container repository factory2560 creates a new container repository resource2561 when importing2562 push request2563 behaves like a forbidden2564 is expected to include {:http_status => 403}2565 is expected not to include :token2566 behaves like containing the import error2567 includes a helpful error message2568 delete request2569 behaves like a forbidden2570 is expected to include {:http_status => 403}2571 is expected not to include :token2572 behaves like containing the import error2573 includes a helpful error message2574 * request2575 behaves like a forbidden2576 is expected to include {:http_status => 403}2577 is expected not to include :token2578 behaves like containing the import error2579 includes a helpful error message2580 pull request2581 behaves like a pullable2582 behaves like an accessible2583 has the correct scope2584 behaves like a valid token2585 is expected to include :token2586 is expected to include "access"2587 a expirable2588 for default configuration2589 is expected not to be within 2 of 2022-11-11 01:07:31.382282378 +00002590 for changed configuration2591 is expected to be within 2 of 2022-11-11 01:07:31.559895168 +00002592 mixed request2593 behaves like a forbidden2594 is expected to include {:http_status => 403}2595 is expected not to include :token2596 behaves like containing the import error2597 includes a helpful error message2598 address is outside the range2599 when actor is a deploy token with read access2600 behaves like an inaccessible2601 is expected to include {"access" => []}2602 behaves like a valid token2603 is expected to include :token2604 is expected to include "access"2605 a expirable2606 for default configuration2607 is expected not to be within 2 of 2022-11-11 01:07:32.471175948 +00002608 for changed configuration2609 is expected to be within 2 of 2022-11-11 01:07:32.598154351 +00002610 behaves like not a container repository factory2611 does not create a new container repository resource2612 behaves like logs an auth warning2613 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["push", "pull"], :requested_project_path=>"group1/project1", :scope_type=>"repository"}) 1 time2614 in maintenance mode2615 allows developer to pull images2616 behaves like a pullable2617 behaves like an accessible2618 has the correct scope2619 behaves like a valid token2620 is expected to include :token2621 is expected to include "access"2622 a expirable2623 for default configuration2624 is expected not to be within 2 of 2022-11-11 01:07:34.095940428 +00002625 for changed configuration2626 is expected to be within 2 of 2022-11-11 01:07:34.260215809 +00002627 does not allow developer to push images2628 behaves like not a container repository factory2629 does not create a new container repository resource2630 behaves like logs an auth warning2631 is expected to receive warn({:authorized_actions=>[], :message=>"Write access denied in maintenance mode", :requested_actions=>["...pe=>"repository", :user_id=>58, :username=>"user15", :write_access_denied_in_maintenance_mode=>true}) 1 time2632 does not allow developer to delete images2633 behaves like not a container repository factory2634 does not create a new container repository resource2635 behaves like logs an auth warning2636 is expected to receive warn({:authorized_actions=>[], :message=>"Write access denied in maintenance mode", :requested_actions=>["...pe=>"repository", :user_id=>58, :username=>"user15", :write_access_denied_in_maintenance_mode=>true}) 1 time2637 when not in maintenance mode2638 behaves like a container registry auth service2639 .full_access_token2640 behaves like an accessible2641 has the correct scope2642 behaves like a valid token2643 is expected to include :token2644 is expected to include "access"2645 a expirable2646 for default configuration2647 is expected not to be within 2 of 2022-11-11 01:07:35.300920771 +00002648 for changed configuration2649 is expected to be within 2 of 2022-11-11 01:07:35.339683369 +00002650 behaves like not a container repository factory2651 does not create a new container repository resource2652 .import_access_token2653 has the correct scope2654 behaves like a valid token2655 is expected to include :token2656 is expected to include "access"2657 a expirable2658 for default configuration2659 is expected not to be within 2 of 2022-11-11 01:07:35.564074217 +00002660 for changed configuration2661 is expected to be within 2 of 2022-11-11 01:07:35.599081015 +00002662 behaves like not a container repository factory2663 does not create a new container repository resource2664 .pull_access_token2665 behaves like an accessible2666 has the correct scope2667 behaves like a valid token2668 is expected to include :token2669 is expected to include "access"2670 a expirable2671 for default configuration2672 is expected not to be within 2 of 2022-11-11 01:07:36.016844232 +00002673 for changed configuration2674 is expected to be within 2 of 2022-11-11 01:07:36.056055140 +00002675 behaves like not a container repository factory2676 does not create a new container repository resource2677 .pull_nested_repositories_access_token2678 has the correct scope2679 behaves like a valid token2680 is expected to include :token2681 is expected to include "access"2682 a expirable2683 for default configuration2684 is expected not to be within 2 of 2022-11-11 01:07:36.463348547 +00002685 for changed configuration2686 is expected to be within 2 of 2022-11-11 01:07:36.497507305 +00002687 behaves like not a container repository factory2688 does not create a new container repository resource2689 with path ending with a slash2690 has the correct scope2691 behaves like a valid token2692 is expected to include :token2693 is expected to include "access"2694 a expirable2695 for default configuration2696 is expected not to be within 2 of 2022-11-11 01:07:36.662034926 +00002697 for changed configuration2698 is expected to be within 2 of 2022-11-11 01:07:36.699443474 +00002699 behaves like not a container repository factory2700 does not create a new container repository resource2701 user authorization2702 for registry catalog2703 disallow browsing for users without GitLab admin rights2704 behaves like an inaccessible2705 is expected to include {"access" => []}2706 behaves like a valid token2707 is expected to include :token2708 is expected to include "access"2709 a expirable2710 for default configuration2711 is expected not to be within 2 of 2022-11-11 01:07:36.945462740 +00002712 for changed configuration2713 is expected to be within 2 of 2022-11-11 01:07:36.983566838 +00002714 behaves like not a container repository factory2715 does not create a new container repository resource2716 for private project2717 behaves like private project2718 allow to use scope-less authentication2719 behaves like a valid token2720 is expected to include :token2721 is expected to include "access"2722 a expirable2723 for default configuration2724 is expected not to be within 2 of 2022-11-11 01:07:37.402919585 +00002725 for changed configuration2726 is expected to be within 2 of 2022-11-11 01:07:37.437168053 +00002727 behaves like with auth_type2728 is expected to eq "foo"2729 allow developer to push images2730 behaves like a pushable2731 behaves like an accessible2732 has the correct scope2733 behaves like a valid token2734 is expected to include :token2735 is expected to include "access"2736 a expirable2737 for default configuration2738 is expected not to be within 2 of 2022-11-11 01:07:37.882232259 +00002739 for changed configuration2740 is expected to be within 2 of 2022-11-11 01:07:37.968236704 +00002741 behaves like container repository factory2742 creates a new container repository resource2743 behaves like with auth_type2744 is expected to eq "foo"2745 disallow developer to delete images2746 behaves like an inaccessible2747 is expected to include {"access" => []}2748 behaves like a valid token2749 is expected to include :token2750 is expected to include "access"2751 a expirable2752 for default configuration2753 is expected not to be within 2 of 2022-11-11 01:07:38.521007563 +00002754 for changed configuration2755 is expected to be within 2 of 2022-11-11 01:07:38.603481199 +00002756 behaves like not a container repository factory2757 does not create a new container repository resource2758 behaves like logs an auth warning2759 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["*"...project_path=>"namespace48/project53", :scope_type=>"repository", :user_id=>63, :username=>"user16"}) 1 time2760 disallow developer to delete images since registry 2.72761 behaves like an inaccessible2762 is expected to include {"access" => []}2763 behaves like a valid token2764 is expected to include :token2765 is expected to include "access"2766 a expirable2767 for default configuration2768 is expected not to be within 2 of 2022-11-11 01:07:39.126445140 +00002769 for changed configuration2770 is expected to be within 2 of 2022-11-11 01:07:39.207621785 +00002771 behaves like not a container repository factory2772 does not create a new container repository resource2773 allow reporter to pull images2774 when pulling from root level repository2775 behaves like a pullable2776 behaves like an accessible2777 has the correct scope2778 behaves like a valid token2779 is expected to include :token2780 is expected to include "access"2781 a expirable2782 for default configuration2783 is expected not to be within 2 of 2022-11-11 01:07:39.680401739 +00002784 for changed configuration2785 is expected to be within 2 of 2022-11-11 01:07:39.752643925 +00002786 behaves like not a container repository factory2787 does not create a new container repository resource2788 behaves like with auth_type2789 is expected to eq "foo"2790 disallow reporter to delete images2791 behaves like an inaccessible2792 is expected to include {"access" => []}2793 behaves like a valid token2794 is expected to include :token2795 is expected to include "access"2796 a expirable2797 for default configuration2798 is expected not to be within 2 of 2022-11-11 01:07:40.276136736 +00002799 for changed configuration2800 is expected to be within 2 of 2022-11-11 01:07:40.355136732 +00002801 behaves like not a container repository factory2802 does not create a new container repository resource2803 disallow reporter to delete images since registry 2.72804 behaves like an inaccessible2805 is expected to include {"access" => []}2806 behaves like a valid token2807 is expected to include :token2808 is expected to include "access"2809 a expirable2810 for default configuration2811 is expected not to be within 2 of 2022-11-11 01:07:40.832013346 +00002812 for changed configuration2813 is expected to be within 2 of 2022-11-11 01:07:40.911978951 +00002814 behaves like not a container repository factory2815 does not create a new container repository resource2816 return a least of privileges2817 behaves like a pullable2818 behaves like an accessible2819 has the correct scope2820 behaves like a valid token2821 is expected to include :token2822 is expected to include "access"2823 a expirable2824 for default configuration2825 is expected not to be within 2 of 2022-11-11 01:07:41.477904519 +00002826 for changed configuration2827 is expected to be within 2 of 2022-11-11 01:07:41.566087815 +00002828 behaves like not a container repository factory2829 does not create a new container repository resource2830 behaves like with auth_type2831 is expected to eq "foo"2832 disallow guest to pull or push images2833 behaves like an inaccessible2834 is expected to include {"access" => []}2835 behaves like a valid token2836 is expected to include :token2837 is expected to include "access"2838 a expirable2839 for default configuration2840 is expected not to be within 2 of 2022-11-11 01:07:42.179280641 +00002841 for changed configuration2842 is expected to be within 2 of 2022-11-11 01:07:42.270990906 +00002843 behaves like not a container repository factory2844 does not create a new container repository resource2845 disallow guest to delete images2846 behaves like an inaccessible2847 is expected to include {"access" => []}2848 behaves like a valid token2849 is expected to include :token2850 is expected to include "access"2851 a expirable2852 for default configuration2853 is expected not to be within 2 of 2022-11-11 01:07:42.742444360 +00002854 for changed configuration2855 is expected to be within 2 of 2022-11-11 01:07:42.817915456 +00002856 behaves like not a container repository factory2857 does not create a new container repository resource2858 disallow guest to delete images since registry 2.72859 behaves like an inaccessible2860 is expected to include {"access" => []}2861 behaves like a valid token2862 is expected to include :token2863 is expected to include "access"2864 a expirable2865 for default configuration2866 is expected not to be within 2 of 2022-11-11 01:07:43.329778667 +00002867 for changed configuration2868 is expected to be within 2 of 2022-11-11 01:07:43.411358093 +00002869 behaves like not a container repository factory2870 does not create a new container repository resource2871 for public project with private container registry2872 behaves like private project2873 allow to use scope-less authentication2874 behaves like a valid token2875 is expected to include :token2876 is expected to include "access"2877 a expirable2878 for default configuration2879 is expected not to be within 2 of 2022-11-11 01:07:43.828175850 +00002880 for changed configuration2881 is expected to be within 2 of 2022-11-11 01:07:43.867342187 +00002882 behaves like with auth_type2883 is expected to eq "foo"2884 allow developer to push images2885 behaves like a pushable2886 behaves like an accessible2887 has the correct scope2888 behaves like a valid token2889 is expected to include :token2890 is expected to include "access"2891 a expirable2892 for default configuration2893 is expected not to be within 2 of 2022-11-11 01:07:44.303672524 +00002894 for changed configuration2895 is expected to be within 2 of 2022-11-11 01:07:44.388072859 +00002896 behaves like container repository factory2897 creates a new container repository resource2898 behaves like with auth_type2899 is expected to eq "foo"2900 disallow developer to delete images2901 behaves like an inaccessible2902 is expected to include {"access" => []}2903 behaves like a valid token2904 is expected to include :token2905 is expected to include "access"2906 a expirable2907 for default configuration2908 is expected not to be within 2 of 2022-11-11 01:07:45.011032084 +00002909 for changed configuration2910 is expected to be within 2 of 2022-11-11 01:07:45.095643680 +00002911 behaves like not a container repository factory2912 does not create a new container repository resource2913 behaves like logs an auth warning2914 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["*"...project_path=>"namespace49/project54", :scope_type=>"repository", :user_id=>63, :username=>"user16"}) 1 time2915 disallow developer to delete images since registry 2.72916 behaves like an inaccessible2917 is expected to include {"access" => []}2918 behaves like a valid token2919 is expected to include :token2920 is expected to include "access"2921 a expirable2922 for default configuration2923 is expected not to be within 2 of 2022-11-11 01:07:45.656788568 +00002924 for changed configuration2925 is expected to be within 2 of 2022-11-11 01:07:45.733954574 +00002926 behaves like not a container repository factory2927 does not create a new container repository resource2928 allow reporter to pull images2929 when pulling from root level repository2930 behaves like a pullable2931 behaves like an accessible2932 has the correct scope2933 behaves like a valid token2934 is expected to include :token2935 is expected to include "access"2936 a expirable2937 for default configuration2938 is expected not to be within 2 of 2022-11-11 01:07:46.167772110 +00002939 for changed configuration2940 is expected to be within 2 of 2022-11-11 01:07:46.242191456 +00002941 behaves like not a container repository factory2942 does not create a new container repository resource2943 behaves like with auth_type2944 is expected to eq "foo"2945 disallow reporter to delete images2946 behaves like an inaccessible2947 is expected to include {"access" => []}2948 behaves like a valid token2949 is expected to include :token2950 is expected to include "access"2951 a expirable2952 for default configuration2953 is expected not to be within 2 of 2022-11-11 01:07:46.780044736 +00002954 for changed configuration2955 is expected to be within 2 of 2022-11-11 01:07:46.908897189 +00002956 behaves like not a container repository factory2957 does not create a new container repository resource2958 disallow reporter to delete images since registry 2.72959 behaves like an inaccessible2960 is expected to include {"access" => []}2961 behaves like a valid token2962 is expected to include :token2963 is expected to include "access"2964 a expirable2965 for default configuration2966 is expected not to be within 2 of 2022-11-11 01:07:47.377401793 +00002967 for changed configuration2968 is expected to be within 2 of 2022-11-11 01:07:47.460389329 +00002969 behaves like not a container repository factory2970 does not create a new container repository resource2971 return a least of privileges2972 behaves like a pullable2973 behaves like an accessible2974 has the correct scope2975 behaves like a valid token2976 is expected to include :token2977 is expected to include "access"2978 a expirable2979 for default configuration2980 is expected not to be within 2 of 2022-11-11 01:07:47.979371370 +00002981 for changed configuration2982 is expected to be within 2 of 2022-11-11 01:07:48.072889335 +00002983 behaves like not a container repository factory2984 does not create a new container repository resource2985 behaves like with auth_type2986 is expected to eq "foo"2987 disallow guest to pull or push images2988 behaves like an inaccessible2989 is expected to include {"access" => []}2990 behaves like a valid token2991 is expected to include :token2992 is expected to include "access"2993 a expirable2994 for default configuration2995 is expected not to be within 2 of 2022-11-11 01:07:48.654525503 +00002996 for changed configuration2997 is expected to be within 2 of 2022-11-11 01:07:48.787245085 +00002998 behaves like not a container repository factory2999 does not create a new container repository resource3000 disallow guest to delete images3001 behaves like an inaccessible3002 is expected to include {"access" => []}3003 behaves like a valid token3004 is expected to include :token3005 is expected to include "access"3006 a expirable3007 for default configuration3008 is expected not to be within 2 of 2022-11-11 01:07:49.209585682 +00003009 for changed configuration3010 is expected to be within 2 of 2022-11-11 01:07:49.279555468 +00003011 behaves like not a container repository factory3012 does not create a new container repository resource3013 disallow guest to delete images since registry 2.73014 behaves like an inaccessible3015 is expected to include {"access" => []}3016 behaves like a valid token3017 is expected to include :token3018 is expected to include "access"3019 a expirable3020 for default configuration3021 is expected not to be within 2 of 2022-11-11 01:07:49.691084555 +00003022 for changed configuration3023 is expected to be within 2 of 2022-11-11 01:07:49.762499022 +00003024 behaves like not a container repository factory3025 does not create a new container repository resource3026 for public project with container_registry `enabled`3027 allow anyone to pull images3028 behaves like a pullable3029 behaves like an accessible3030 has the correct scope3031 behaves like a valid token3032 is expected to include :token3033 is expected to include "access"3034 a expirable3035 for default configuration3036 is expected not to be within 2 of 2022-11-11 01:07:50.307059341 +00003037 for changed configuration3038 is expected to be within 2 of 2022-11-11 01:07:50.372585428 +00003039 behaves like not a container repository factory3040 does not create a new container repository resource3041 behaves like with auth_type3042 is expected to eq "foo"3043 disallow anyone to push images3044 behaves like an inaccessible3045 is expected to include {"access" => []}3046 behaves like a valid token3047 is expected to include :token3048 is expected to include "access"3049 a expirable3050 for default configuration3051 is expected not to be within 2 of 2022-11-11 01:07:50.840020952 +00003052 for changed configuration3053 is expected to be within 2 of 2022-11-11 01:07:50.919510128 +00003054 behaves like not a container repository factory3055 does not create a new container repository resource3056 disallow anyone to delete images3057 behaves like an inaccessible3058 is expected to include {"access" => []}3059 behaves like a valid token3060 is expected to include :token3061 is expected to include "access"3062 a expirable3063 for default configuration3064 is expected not to be within 2 of 2022-11-11 01:07:51.290455317 +00003065 for changed configuration3066 is expected to be within 2 of 2022-11-11 01:07:51.369145343 +00003067 behaves like not a container repository factory3068 does not create a new container repository resource3069 disallow anyone to delete images since registry 2.73070 behaves like an inaccessible3071 is expected to include {"access" => []}3072 behaves like a valid token3073 is expected to include :token3074 is expected to include "access"3075 a expirable3076 for default configuration3077 is expected not to be within 2 of 2022-11-11 01:07:51.754370501 +00003078 for changed configuration3079 is expected to be within 2 of 2022-11-11 01:07:51.832026087 +00003080 behaves like not a container repository factory3081 does not create a new container repository resource3082 when repository name is invalid3083 behaves like an inaccessible3084 is expected to include {"access" => []}3085 behaves like a valid token3086 is expected to include :token3087 is expected to include "access"3088 a expirable3089 for default configuration3090 is expected not to be within 2 of 2022-11-11 01:07:52.045383195 +00003091 for changed configuration3092 is expected to be within 2 of 2022-11-11 01:07:52.084146463 +00003093 behaves like not a container repository factory3094 does not create a new container repository resource3095 for internal project with container_registry `enabled`3096 for internal user3097 allow anyone to pull images3098 behaves like a pullable3099 behaves like an accessible3100 has the correct scope3101 behaves like a valid token3102 is expected to include :token3103 is expected to include "access"3104 a expirable3105 for default configuration3106 is expected not to be within 2 of 2022-11-11 01:07:52.641685832 +00003107 for changed configuration3108 is expected to be within 2 of 2022-11-11 01:07:52.705267419 +00003109 behaves like not a container repository factory3110 does not create a new container repository resource3111 behaves like with auth_type3112 is expected to eq "foo"3113 disallow anyone to push images3114 behaves like an inaccessible3115 is expected to include {"access" => []}3116 behaves like a valid token3117 is expected to include :token3118 is expected to include "access"3119 a expirable3120 for default configuration3121 is expected not to be within 2 of 2022-11-11 01:07:53.154090254 +00003122 for changed configuration3123 is expected to be within 2 of 2022-11-11 01:07:53.232572950 +00003124 behaves like not a container repository factory3125 does not create a new container repository resource3126 disallow anyone to delete images3127 behaves like an inaccessible3128 is expected to include {"access" => []}3129 behaves like a valid token3130 is expected to include :token3131 is expected to include "access"3132 a expirable3133 for default configuration3134 is expected not to be within 2 of 2022-11-11 01:07:53.627679038 +00003135 for changed configuration3136 is expected to be within 2 of 2022-11-11 01:07:53.703089904 +00003137 behaves like not a container repository factory3138 does not create a new container repository resource3139 disallow anyone to delete images since registry 2.73140 behaves like an inaccessible3141 is expected to include {"access" => []}3142 behaves like a valid token3143 is expected to include :token3144 is expected to include "access"3145 a expirable3146 for default configuration3147 is expected not to be within 2 of 2022-11-11 01:07:54.062598394 +00003148 for changed configuration3149 is expected to be within 2 of 2022-11-11 01:07:54.138680409 +00003150 behaves like not a container repository factory3151 does not create a new container repository resource3152 for external user3153 disallow anyone to pull or push images3154 behaves like an inaccessible3155 is expected to include {"access" => []}3156 behaves like a valid token3157 is expected to include :token3158 is expected to include "access"3159 a expirable3160 for default configuration3161 is expected not to be within 2 of 2022-11-11 01:07:54.658912681 +00003162 for changed configuration3163 is expected to be within 2 of 2022-11-11 01:07:54.741888186 +00003164 behaves like not a container repository factory3165 does not create a new container repository resource3166 disallow anyone to delete images3167 behaves like an inaccessible3168 is expected to include {"access" => []}3169 behaves like a valid token3170 is expected to include :token3171 is expected to include "access"3172 a expirable3173 for default configuration3174 is expected not to be within 2 of 2022-11-11 01:07:55.203259361 +00003175 for changed configuration3176 is expected to be within 2 of 2022-11-11 01:07:55.279019326 +00003177 behaves like not a container repository factory3178 does not create a new container repository resource3179 disallow anyone to delete images since registry 2.73180 behaves like an inaccessible3181 is expected to include {"access" => []}3182 behaves like a valid token3183 is expected to include :token3184 is expected to include "access"3185 a expirable3186 for default configuration3187 is expected not to be within 2 of 2022-11-11 01:07:55.729777132 +00003188 for changed configuration3189 is expected to be within 2 of 2022-11-11 01:07:55.805586897 +00003190 behaves like not a container repository factory3191 does not create a new container repository resource3192 for internal project with private container registry3193 behaves like private project3194 allow to use scope-less authentication3195 behaves like a valid token3196 is expected to include :token3197 is expected to include "access"3198 a expirable3199 for default configuration3200 is expected not to be within 2 of 2022-11-11 01:07:56.278209021 +00003201 for changed configuration3202 is expected to be within 2 of 2022-11-11 01:07:56.311683909 +00003203 behaves like with auth_type3204 is expected to eq "foo"3205 allow developer to push images3206 behaves like a pushable3207 behaves like an accessible3208 has the correct scope3209 behaves like a valid token3210 is expected to include :token3211 is expected to include "access"3212 a expirable3213 for default configuration3214 is expected not to be within 2 of 2022-11-11 01:07:56.761980114 +00003215 for changed configuration3216 is expected to be within 2 of 2022-11-11 01:07:56.852042119 +00003217 behaves like container repository factory3218 creates a new container repository resource3219 behaves like with auth_type3220 is expected to eq "foo"3221 disallow developer to delete images3222 behaves like an inaccessible3223 is expected to include {"access" => []}3224 behaves like a valid token3225 is expected to include :token3226 is expected to include "access"3227 a expirable3228 for default configuration3229 is expected not to be within 2 of 2022-11-11 01:07:57.441424837 +00003230 for changed configuration3231 is expected to be within 2 of 2022-11-11 01:07:57.526237982 +00003232 behaves like not a container repository factory3233 does not create a new container repository resource3234 behaves like logs an auth warning3235 is expected to receive warn({:authorized_actions=>[], :message=>"Denied container registry permissions", :requested_actions=>["*"...project_path=>"namespace52/project57", :scope_type=>"repository", :user_id=>63, :username=>"user16"}) 1 time3236 disallow developer to delete images since registry 2.73237 behaves like an inaccessible3238 is expected to include {"access" => []}3239 behaves like a valid token3240 is expected to include :token3241 is expected to include "access"3242 a expirable3243 for default configuration3244 is expected not to be within 2 of 2022-11-11 01:07:58.137539128 +00003245 for changed configuration3246 is expected to be within 2 of 2022-11-11 01:07:58.218425314 +00003247 behaves like not a container repository factory3248 does not create a new container repository resource3249 allow reporter to pull images3250 when pulling from root level repository3251 behaves like a pullable3252 behaves like an accessible3253 has the correct scope3254 behaves like a valid token3255 is expected to include :token3256 is expected to include "access"3257 a expirable3258 for default configuration3259 is expected not to be within 2 of 2022-11-11 01:07:58.661695919 +00003260 for changed configuration3261 is expected to be within 2 of 2022-11-11 01:07:58.733132205 +00003262 behaves like not a container repository factory3263 does not create a new container repository resource3264 behaves like with auth_type3265 is expected to eq "foo"3266 disallow reporter to delete images3267 behaves like an inaccessible3268 is expected to include {"access" => []}3269 behaves like a valid token3270 is expected to include :token3271 is expected to include "access"3272 a expirable3273 for default configuration3274 is expected not to be within 2 of 2022-11-11 01:07:59.267587306 +00003275 for changed configuration3276 is expected to be within 2 of 2022-11-11 01:07:59.351340121 +00003277 behaves like not a container repository factory3278 does not create a new container repository resource3279 disallow reporter to delete images since registry 2.73280 behaves like an inaccessible3281 is expected to include {"access" => []}3282 behaves like a valid token3283 is expected to include :token3284 is expected to include "access"3285 a expirable3286 for default configuration3287 is expected not to be within 2 of 2022-11-11 01:07:59.864590693 +00003288 for changed configuration3289 is expected to be within 2 of 2022-11-11 01:07:59.996623335 +00003290 behaves like not a container repository factory3291 does not create a new container repository resource3292 return a least of privileges3293 behaves like a pullable3294 behaves like an accessible3295 has the correct scope3296 behaves like a valid token3297 is expected to include :token3298 is expected to include "access"3299 a expirable3300 for default configuration3301 is expected not to be within 2 of 2022-11-11 01:08:00.505322197 +00003302 for changed configuration3303 is expected to be within 2 of 2022-11-11 01:08:00.599177482 +00003304 behaves like not a container repository factory3305 does not create a new container repository resource3306 behaves like with auth_type3307 is expected to eq "foo"3308 disallow guest to pull or push images3309 behaves like an inaccessible3310 is expected to include {"access" => []}3311 behaves like a valid token3312 is expected to include :token3313 is expected to include "access"3314 a expirable3315 for default configuration3316 is expected not to be within 2 of 2022-11-11 01:08:01.191348839 +00003317 for changed configuration3318 is expected to be within 2 of 2022-11-11 01:08:01.269548895 +00003319 behaves like not a container repository factory3320 does not create a new container repository resource3321 disallow guest to delete images3322 behaves like an inaccessible3323 is expected to include {"access" => []}3324 behaves like a valid token3325 is expected to include :token3326 is expected to include "access"3327 a expirable3328 for default configuration3329 is expected not to be within 2 of 2022-11-11 01:08:01.704625151 +00003330 for changed configuration3331 is expected to be within 2 of 2022-11-11 01:08:01.821929754 +00003332 behaves like not a container repository factory3333 does not create a new container repository resource3334 disallow guest to delete images since registry 2.73335 behaves like an inaccessible3336 is expected to include {"access" => []}3337 behaves like a valid token3338 is expected to include :token3339 is expected to include "access"3340 a expirable3341 for default configuration3342 is expected not to be within 2 of 2022-11-11 01:08:02.247466461 +00003343 for changed configuration3344 is expected to be within 2 of 2022-11-11 01:08:02.321254617 +00003345 behaves like not a container repository factory3346 does not create a new container repository resource3347 delete authorized as maintainer3348 behaves like allowed to delete container repository images3349 behaves like a valid token3350 is expected to include :token3351 is expected to include "access"3352 a expirable3353 for default configuration3354 is expected not to be within 2 of 2022-11-11 01:08:02.888331555 +00003355 for changed configuration3356 is expected to be within 2 of 2022-11-11 01:08:02.929021163 +00003357 allow to delete images3358 behaves like a deletable3359 behaves like an accessible3360 has the correct scope3361 behaves like a valid token3362 is expected to include :token3363 is expected to include "access"3364 a expirable3365 for default configuration3366 is expected not to be within 2 of 2022-11-11 01:08:03.211996608 +00003367 for changed configuration3368 is expected to be within 2 of 2022-11-11 01:08:03.296488653 +00003369 allow to delete images since registry 2.73370 behaves like a deletable since registry 2.73371 behaves like an accessible3372 has the correct scope3373 behaves like a valid token3374 is expected to include :token3375 is expected to include "access"3376 a expirable3377 for default configuration3378 is expected not to be within 2 of 2022-11-11 01:08:03.585396557 +00003379 for changed configuration3380 is expected to be within 2 of 2022-11-11 01:08:03.704421380 +00003381 build authorized as user3382 allow to use offline_token3383 behaves like an authenticated3384 is expected to include :token3385 is expected to include "access"3386 behaves like a valid token3387 is expected to include :token3388 is expected to include "access"3389 a expirable3390 for default configuration3391 is expected not to be within 2 of 2022-11-11 01:08:04.249114290 +00003392 for changed configuration3393 is expected to be within 2 of 2022-11-11 01:08:04.285625588 +00003394 behaves like with auth_type3395 is expected to eq "foo"3396 allow to pull and push images3397 behaves like a pullable and pushable3398 behaves like an accessible3399 has the correct scope3400 behaves like a valid token3401 is expected to include :token3402 is expected to include "access"3403 a expirable3404 for default configuration3405 is expected not to be within 2 of 2022-11-11 01:08:04.578802002 +00003406 for changed configuration3407 is expected to be within 2 of 2022-11-11 01:08:04.649850218 +00003408 behaves like container repository factory3409 creates a new container repository resource3410 allow to delete images since registry 2.73411 behaves like a deletable since registry 2.73412 behaves like an accessible3413 has the correct scope3414 behaves like a valid token3415 is expected to include :token3416 is expected to include "access"3417 a expirable3418 for default configuration3419 is expected not to be within 2 of 2022-11-11 01:08:04.937429922 +00003420 for changed configuration3421 is expected to be within 2 of 2022-11-11 01:08:04.996550699 +00003422 disallow to delete images3423 behaves like an inaccessible3424 is expected to include {"access" => []}3425 behaves like a valid token3426 is expected to include :token3427 is expected to include "access"3428 a expirable3429 for default configuration3430 is expected not to be within 2 of 2022-11-11 01:08:05.208747987 +00003431 for changed configuration3432 is expected to be within 2 of 2022-11-11 01:08:05.267758494 +00003433 for other projects3434 when pulling3435 allow for public3436 behaves like a pullable3437 behaves like an accessible3438 has the correct scope3439 behaves like a valid token3440 is expected to include :token3441 is expected to include "access"3442 a expirable3443 for default configuration3444 is expected not to be within 2 of 2022-11-11 01:08:05.768688526 +00003445 for changed configuration3446 is expected to be within 2 of 2022-11-11 01:08:05.831311032 +00003447 behaves like not a container repository factory3448 does not create a new container repository resource3449 for private3450 behaves like pullable for being team member3451 when you are not member3452 behaves like an inaccessible3453 is expected to include {"access" => []}3454 behaves like a valid token3455 is expected to include :token3456 is expected to include "access"3457 a expirable3458 for default configuration3459 is expected not to be within 2 of 2022-11-11 01:08:06.375275322 +00003460 for changed configuration3461 is expected to be within 2 of 2022-11-11 01:08:06.440458379 +00003462 behaves like not a container repository factory3463 does not create a new container repository resource3464 when you are member3465 behaves like a pullable3466 behaves like an accessible3467 has the correct scope3468 behaves like a valid token3469 is expected to include :token3470 is expected to include "access"3471 a expirable3472 for default configuration3473 is expected not to be within 2 of 2022-11-11 01:08:06.850741997 +00003474 for changed configuration3475 is expected to be within 2 of 2022-11-11 01:08:06.924798502 +00003476 behaves like not a container repository factory3477 does not create a new container repository resource3478 when you are owner3479 behaves like a pullable3480 behaves like an accessible3481 has the correct scope3482 behaves like a valid token3483 is expected to include :token3484 is expected to include "access"3485 a expirable3486 for default configuration3487 is expected not to be within 2 of 2022-11-11 01:08:07.465539412 +00003488 for changed configuration3489 is expected to be within 2 of 2022-11-11 01:08:07.536931499 +00003490 behaves like not a container repository factory3491 does not create a new container repository resource3492 when you are admin3493 when you are not member3494 behaves like an inaccessible3495 is expected to include {"access" => []}3496 behaves like a valid token3497 is expected to include :token3498 is expected to include "access"3499 a expirable3500 for default configuration3501 is expected not to be within 2 of 2022-11-11 01:08:07.923867177 +00003502 for changed configuration3503 is expected to be within 2 of 2022-11-11 01:08:07.986389423 +00003504 behaves like not a container repository factory3505 does not create a new container repository resource3506 when you are member3507 behaves like a pullable3508 behaves like an accessible3509 has the correct scope3510 behaves like a valid token3511 is expected to include :token3512 is expected to include "access"3513 a expirable3514 for default configuration3515 is expected not to be within 2 of 2022-11-11 01:08:08.386082401 +00003516 for changed configuration3517 is expected to be within 2 of 2022-11-11 01:08:08.458756097 +00003518 behaves like not a container repository factory3519 does not create a new container repository resource3520 when you are owner3521 behaves like a pullable3522 behaves like an accessible3523 has the correct scope3524 behaves like a valid token3525 is expected to include :token3526 is expected to include "access"3527 a expirable3528 for default configuration3529 is expected not to be within 2 of 2022-11-11 01:08:08.992875448 +00003530 for changed configuration3531 is expected to be within 2 of 2022-11-11 01:08:09.069852384 +00003532 behaves like not a container repository factory3533 does not create a new container repository resource3534 for public project with private container registry3535 behaves like pullable for being team member3536 when you are not member3537 behaves like an inaccessible3538 is expected to include {"access" => []}3539 behaves like a valid token3540 is expected to include :token3541 is expected to include "access"3542 a expirable3543 for default configuration3544 is expected not to be within 2 of 2022-11-11 01:08:09.705363999 +00003545 for changed configuration3546 is expected to be within 2 of 2022-11-11 01:08:09.774281195 +00003547 behaves like not a container repository factory3548 does not create a new container repository resource3549 when you are member3550 behaves like a pullable3551 behaves like an accessible3552 has the correct scope3553 behaves like a valid token3554 is expected to include :token3555 is expected to include "access"3556 a expirable3557 for default configuration3558 is expected not to be within 2 of 2022-11-11 01:08:10.210378911 +00003559 for changed configuration3560 is expected to be within 2 of 2022-11-11 01:08:10.291477806 +00003561 behaves like not a container repository factory3562 does not create a new container repository resource3563 when you are owner3564 behaves like a pullable3565 behaves like an accessible3566 has the correct scope3567 behaves like a valid token3568 is expected to include :token3569 is expected to include "access"3570 a expirable3571 for default configuration3572 is expected not to be within 2 of 2022-11-11 01:08:10.810505147 +00003573 for changed configuration3574 is expected to be within 2 of 2022-11-11 01:08:10.888320943 +00003575 behaves like not a container repository factory3576 does not create a new container repository resource3577 when you are admin3578 behaves like pullable for being team member3579 when you are not member3580 behaves like an inaccessible3581 is expected to include {"access" => []}3582 behaves like a valid token3583 is expected to include :token3584 is expected to include "access"3585 a expirable3586 for default configuration3587 is expected not to be within 2 of 2022-11-11 01:08:11.365091117 +00003588 for changed configuration3589 is expected to be within 2 of 2022-11-11 01:08:11.437866643 +00003590 behaves like not a container repository factory3591 does not create a new container repository resource3592 when you are member3593 behaves like a pullable3594 behaves like an accessible3595 has the correct scope3596 behaves like a valid token3597 is expected to include :token3598 is expected to include "access"3599 a expirable3600 for default configuration3601 is expected not to be within 2 of 2022-11-11 01:08:11.858252309 +00003602 for changed configuration3603 is expected to be within 2 of 2022-11-11 01:08:11.932443325 +00003604 behaves like not a container repository factory3605 does not create a new container repository resource3606 when you are owner3607 behaves like a pullable3608 behaves like an accessible3609 has the correct scope3610 behaves like a valid token3611 is expected to include :token3612 is expected to include "access"3613 a expirable3614 for default configuration3615 is expected not to be within 2 of 2022-11-11 01:08:12.449501647 +00003616 for changed configuration3617 is expected to be within 2 of 2022-11-11 01:08:12.521650883 +00003618 behaves like not a container repository factory3619 does not create a new container repository resource3620 when pushing3621 disallow for all3622 when you are member3623 behaves like an inaccessible3624 is expected to include {"access" => []}3625 behaves like a valid token3626 is expected to include :token3627 is expected to include "access"3628 a expirable3629 for default configuration3630 is expected not to be within 2 of 2022-11-11 01:08:13.176464067 +00003631 for changed configuration3632 is expected to be within 2 of 2022-11-11 01:08:13.237829783 +00003633 behaves like not a container repository factory3634 does not create a new container repository resource3635 when you are owner3636 behaves like an inaccessible3637 is expected to include {"access" => []}3638 behaves like a valid token3639 is expected to include :token3640 is expected to include "access"3641 a expirable3642 for default configuration3643 is expected not to be within 2 of 2022-11-11 01:08:13.687389308 +00003644 for changed configuration3645 is expected to be within 2 of 2022-11-11 01:08:13.750365205 +00003646 behaves like not a container repository factory3647 does not create a new container repository resource3648 for project without container registry3649 disallow when pulling3650 behaves like an inaccessible3651 is expected to include {"access" => []}3652 behaves like a valid token3653 is expected to include :token3654 is expected to include "access"3655 a expirable3656 for default configuration3657 is expected not to be within 2 of 2022-11-11 01:08:14.264113276 +00003658 for changed configuration3659 is expected to be within 2 of 2022-11-11 01:08:14.324869903 +00003660 behaves like not a container repository factory3661 does not create a new container repository resource3662 for project that disables repository3663 disallow when pulling3664 behaves like an inaccessible3665 is expected to include {"access" => []}3666 behaves like a valid token3667 is expected to include :token3668 is expected to include "access"3669 a expirable3670 for default configuration3671 is expected not to be within 2 of 2022-11-11 01:08:14.814678386 +00003672 for changed configuration3673 is expected to be within 2 of 2022-11-11 01:08:14.908947381 +00003674 behaves like not a container repository factory3675 does not create a new container repository resource3676 registry catalog browsing authorized as admin3677 behaves like a browsable3678 has the correct scope3679 behaves like a valid token3680 is expected to include :token3681 is expected to include "access"3682 a expirable3683 for default configuration3684 is expected not to be within 2 of 2022-11-11 01:08:15.393774144 +00003685 for changed configuration3686 is expected to be within 2 of 2022-11-11 01:08:15.432528572 +00003687 behaves like not a container repository factory3688 does not create a new container repository resource3689 support for multiple scopes3690 user has access to all projects3691 behaves like a browsable3692 has the correct scope3693 behaves like a valid token3694 is expected to include :token3695 is expected to include "access"3696 a expirable3697 for default configuration3698 is expected not to be within 2 of 2022-11-11 01:08:16.906127560 +00003699 for changed configuration3700 is expected to be within 2 of 2022-11-11 01:08:17.074978961 +00003701 behaves like not a container repository factory3702 does not create a new container repository resource3703 user only has access to internal and public projects3704 behaves like a browsable3705 has the correct scope3706 behaves like a valid token3707 is expected to include :token3708 is expected to include "access"3709 a expirable3710 for default configuration3711 is expected not to be within 2 of 2022-11-11 01:08:17.829819569 +00003712 for changed configuration3713 is expected to be within 2 of 2022-11-11 01:08:17.964102322 +00003714 behaves like not a container repository factory3715 does not create a new container repository resource3716 anonymous user has access only to public project3717 behaves like a browsable3718 has the correct scope3719 behaves like a valid token3720 is expected to include :token3721 is expected to include "access"3722 a expirable3723 for default configuration3724 is expected not to be within 2 of 2022-11-11 01:08:18.544031980 +00003725 for changed configuration3726 is expected to be within 2 of 2022-11-11 01:08:18.653517554 +00003727 behaves like not a container repository factory3728 does not create a new container repository resource3729 with no public container registry3730 behaves like a forbidden3731 is expected to include {:http_status => 403}3732 is expected not to include :token3733 unauthorized3734 disallow to use scope-less authentication3735 behaves like a forbidden3736 is expected to include {:http_status => 403}3737 is expected not to include :token3738 behaves like not a container repository factory3739 does not create a new container repository resource3740 for invalid scope3741 behaves like a forbidden3742 is expected to include {:http_status => 403}3743 is expected not to include :token3744 behaves like not a container repository factory3745 does not create a new container repository resource3746 for private project3747 behaves like a forbidden3748 is expected to include {:http_status => 403}3749 is expected not to include :token3750 for public project with container registry `enabled`3751 when pulling and pushing3752 behaves like a pullable3753 behaves like an accessible3754 has the correct scope3755 behaves like a valid token3756 is expected to include :token3757 is expected to include "access"3758 a expirable3759 for default configuration3760 is expected not to be within 2 of 2022-11-11 01:08:20.554464918 +00003761 for changed configuration3762 is expected to be within 2 of 2022-11-11 01:08:20.714075040 +00003763 behaves like not a container repository factory3764 does not create a new container repository resource3765 when pushing3766 behaves like a forbidden3767 is expected to include {:http_status => 403}3768 is expected not to include :token3769 behaves like not a container repository factory3770 does not create a new container repository resource3771 for public project with container registry `private`3772 when pulling and pushing3773 behaves like a forbidden3774 is expected to include {:http_status => 403}3775 is expected not to include :token3776 behaves like not a container repository factory3777 does not create a new container repository resource3778 for registry catalog3779 behaves like a forbidden3780 is expected to include {:http_status => 403}3781 is expected not to include :token3782 behaves like not a container repository factory3783 does not create a new container repository resource3784 for deploy tokens3785 when deploy token has read and write registry as scopes3786 for public project3787 when pulling3788 behaves like a pullable3789 behaves like an accessible3790 has the correct scope3791 behaves like a valid token3792 is expected to include :token3793 is expected to include "access"3794 a expirable3795 for default configuration3796 is expected not to be within 2 of 2022-11-11 01:08:22.626086584 +00003797 for changed configuration3798 is expected to be within 2 of 2022-11-11 01:08:22.725988618 +00003799 when pushing3800 behaves like a pushable3801 behaves like an accessible3802 has the correct scope3803 behaves like a valid token3804 is expected to include :token3805 is expected to include "access"3806 a expirable3807 for default configuration3808 is expected not to be within 2 of 2022-11-11 01:08:23.246462010 +00003809 for changed configuration3810 is expected to be within 2 of 2022-11-11 01:08:23.372935543 +00003811 behaves like able to login3812 registry provides read_container_image authentication_abilities3813 is expected to eq "deploy_token"3814 behaves like an authenticated3815 is expected to include :token3816 is expected to include "access"3817 for internal project3818 when pulling3819 behaves like a pullable3820 behaves like an accessible3821 has the correct scope3822 behaves like a valid token3823 is expected to include :token3824 is expected to include "access"3825 a expirable3826 for default configuration3827 is expected not to be within 2 of 2022-11-11 01:08:24.263742323 +00003828 for changed configuration3829 is expected to be within 2 of 2022-11-11 01:08:24.358882838 +00003830 when pushing3831 behaves like a pushable3832 behaves like an accessible3833 has the correct scope3834 behaves like a valid token3835 is expected to include :token3836 is expected to include "access"3837 a expirable3838 for default configuration3839 is expected not to be within 2 of 2022-11-11 01:08:24.852242041 +00003840 for changed configuration3841 is expected to be within 2 of 2022-11-11 01:08:24.978984414 +00003842 behaves like able to login3843 registry provides read_container_image authentication_abilities3844 is expected to eq "deploy_token"3845 behaves like an authenticated3846 is expected to include :token3847 is expected to include "access"3848 for private project3849 when pulling3850 behaves like a pullable3851 behaves like an accessible3852 has the correct scope3853 behaves like a valid token3854 is expected to include :token3855 is expected to include "access"3856 a expirable3857 for default configuration3858 is expected not to be within 2 of 2022-11-11 01:08:25.863726575 +00003859 for changed configuration3860 is expected to be within 2 of 2022-11-11 01:08:25.970360219 +00003861 when pushing3862 behaves like a pushable3863 behaves like an accessible3864 has the correct scope3865 behaves like a valid token3866 is expected to include :token3867 is expected to include "access"3868 a expirable3869 for default configuration3870 is expected not to be within 2 of 2022-11-11 01:08:26.492375780 +00003871 for changed configuration3872 is expected to be within 2 of 2022-11-11 01:08:26.616388863 +00003873 behaves like able to login3874 registry provides read_container_image authentication_abilities3875 is expected to eq "deploy_token"3876 behaves like an authenticated3877 is expected to include :token3878 is expected to include "access"3879 for public project with private container registry3880 when pulling3881 behaves like a pullable3882 behaves like an accessible3883 has the correct scope3884 behaves like a valid token3885 is expected to include :token3886 is expected to include "access"3887 a expirable3888 for default configuration3889 is expected not to be within 2 of 2022-11-11 01:08:27.555571821 +00003890 for changed configuration3891 is expected to be within 2 of 2022-11-11 01:08:27.671749975 +00003892 when pushing3893 behaves like a pushable3894 behaves like an accessible3895 has the correct scope3896 behaves like a valid token3897 is expected to include :token3898 is expected to include "access"3899 a expirable3900 for default configuration3901 is expected not to be within 2 of 2022-11-11 01:08:28.245118153 +00003902 for changed configuration3903 is expected to be within 2 of 2022-11-11 01:08:28.437583402 +00003904 behaves like able to login3905 registry provides read_container_image authentication_abilities3906 is expected to eq "deploy_token"3907 behaves like an authenticated3908 is expected to include :token3909 is expected to include "access"3910 when deploy token does not have read_registry scope3911 for public project with container registry `enabled`3912 when pulling3913 behaves like a pullable3914 behaves like an accessible3915 has the correct scope3916 behaves like a valid token3917 is expected to include :token3918 is expected to include "access"3919 a expirable3920 for default configuration3921 is expected not to be within 2 of 2022-11-11 01:08:29.453529706 +00003922 for changed configuration3923 is expected to be within 2 of 2022-11-11 01:08:29.574479209 +00003924 behaves like unable to login3925 registry provides no container authentication_abilities3926 behaves like a forbidden3927 is expected to include {:http_status => 403}3928 is expected not to include :token3929 registry provides inapplicable container authentication_abilities3930 behaves like a forbidden3931 is expected to include {:http_status => 403}3932 is expected not to include :token3933 for public project with container registry `private`3934 when pulling3935 behaves like an inaccessible3936 is expected to include {"access" => []}3937 behaves like a valid token3938 is expected to include :token3939 is expected to include "access"3940 a expirable3941 for default configuration3942 is expected not to be within 2 of 2022-11-11 01:08:30.762056764 +00003943 for changed configuration3944 is expected to be within 2 of 2022-11-11 01:08:30.866379198 +00003945 behaves like unable to login3946 registry provides no container authentication_abilities3947 behaves like a forbidden3948 is expected to include {:http_status => 403}3949 is expected not to include :token3950 registry provides inapplicable container authentication_abilities3951 behaves like a forbidden3952 is expected to include {:http_status => 403}3953 is expected not to include :token3954 for internal project3955 when pulling3956 behaves like an inaccessible3957 is expected to include {"access" => []}3958 behaves like a valid token3959 is expected to include :token3960 is expected to include "access"3961 a expirable3962 for default configuration3963 is expected not to be within 2 of 2022-11-11 01:08:31.760535498 +00003964 for changed configuration3965 is expected to be within 2 of 2022-11-11 01:08:31.849905653 +00003966 behaves like unable to login3967 registry provides no container authentication_abilities3968 behaves like a forbidden3969 is expected to include {:http_status => 403}3970 is expected not to include :token3971 registry provides inapplicable container authentication_abilities3972 behaves like a forbidden3973 is expected to include {:http_status => 403}3974 is expected not to include :token3975 for private project3976 when pulling3977 behaves like an inaccessible3978 is expected to include {"access" => []}3979 behaves like a valid token3980 is expected to include :token3981 is expected to include "access"3982 a expirable3983 for default configuration3984 is expected not to be within 2 of 2022-11-11 01:08:32.714588646 +00003985 for changed configuration3986 is expected to be within 2 of 2022-11-11 01:08:32.799435641 +00003987 when logging in3988 behaves like a forbidden3989 is expected to include {:http_status => 403}3990 is expected not to include :token3991 behaves like unable to login3992 registry provides no container authentication_abilities3993 behaves like a forbidden3994 is expected to include {:http_status => 403}3995 is expected not to include :token3996 registry provides inapplicable container authentication_abilities3997 behaves like a forbidden3998 is expected to include {:http_status => 403}3999 is expected not to include :token4000 when deploy token is not related to the project4001 for public project with container registry `enabled`4002 when pulling4003 behaves like a pullable4004 behaves like an accessible4005 has the correct scope4006 behaves like a valid token4007 is expected to include :token4008 is expected to include "access"4009 a expirable4010 for default configuration4011 is expected not to be within 2 of 2022-11-11 01:08:33.634819855 +00004012 for changed configuration4013 is expected to be within 2 of 2022-11-11 01:08:33.706538691 +00004014 for public project with container registry `private`4015 when pulling4016 behaves like an inaccessible4017 is expected to include {"access" => []}4018 behaves like a valid token4019 is expected to include :token4020 is expected to include "access"4021 a expirable4022 for default configuration4023 is expected not to be within 2 of 2022-11-11 01:08:34.184427915 +00004024 for changed configuration4025 is expected to be within 2 of 2022-11-11 01:08:34.244383891 +00004026 for internal project4027 when pulling4028 behaves like an inaccessible4029 is expected to include {"access" => []}4030 behaves like a valid token4031 is expected to include :token4032 is expected to include "access"4033 a expirable4034 for default configuration4035 is expected not to be within 2 of 2022-11-11 01:08:34.707005689 +00004036 for changed configuration4037 is expected to be within 2 of 2022-11-11 01:08:34.768227847 +00004038 for private project4039 when pulling4040 behaves like an inaccessible4041 is expected to include {"access" => []}4042 behaves like a valid token4043 is expected to include :token4044 is expected to include "access"4045 a expirable4046 for default configuration4047 is expected not to be within 2 of 2022-11-11 01:08:35.293072459 +00004048 for changed configuration4049 is expected to be within 2 of 2022-11-11 01:08:35.358740527 +00004050 when deploy token has been revoked4051 for public project with container registry `enabled`4052 behaves like a pullable4053 behaves like an accessible4054 has the correct scope4055 behaves like a valid token4056 is expected to include :token4057 is expected to include "access"4058 a expirable4059 for default configuration4060 is expected not to be within 2 of 2022-11-11 01:08:35.986505856 +00004061 for changed configuration4062 is expected to be within 2 of 2022-11-11 01:08:36.082946142 +00004063 for public project with container registry `private`4064 behaves like an inaccessible4065 is expected to include {"access" => []}4066 behaves like a valid token4067 is expected to include :token4068 is expected to include "access"4069 a expirable4070 for default configuration4071 is expected not to be within 2 of 2022-11-11 01:08:36.678751462 +00004072 for changed configuration4073 is expected to be within 2 of 2022-11-11 01:08:36.774337259 +00004074 for internal project4075 behaves like an inaccessible4076 is expected to include {"access" => []}4077 behaves like a valid token4078 is expected to include :token4079 is expected to include "access"4080 a expirable4081 for default configuration4082 is expected not to be within 2 of 2022-11-11 01:08:37.420886087 +00004083 for changed configuration4084 is expected to be within 2 of 2022-11-11 01:08:37.507518393 +00004085 for private project4086 behaves like an inaccessible4087 is expected to include {"access" => []}4088 behaves like a valid token4089 is expected to include :token4090 is expected to include "access"4091 a expirable4092 for default configuration4093 is expected not to be within 2 of 2022-11-11 01:08:38.083522983 +00004094 for changed configuration4095 is expected to be within 2 of 2022-11-11 01:08:38.173007330 +00004096 user authorization4097 with multiple scopes4098 allow developer to push images4099 behaves like a pushable4100 behaves like an accessible4101 has the correct scope4102 behaves like a valid token4103 is expected to include :token4104 is expected to include "access"4105 a expirable4106 for default configuration4107 is expected not to be within 2 of 2022-11-11 01:08:38.898134296 +00004108 for changed configuration4109 is expected to be within 2 of 2022-11-11 01:08:38.986746882 +00004110 behaves like container repository factory4111 creates a new container repository resource4112 when importing4113 push request4114 behaves like a forbidden4115 is expected to include {:http_status => 403}4116 is expected not to include :token4117 behaves like containing the import error4118 includes a helpful error message4119 delete request4120 behaves like a forbidden4121 is expected to include {:http_status => 403}4122 is expected not to include :token4123 behaves like containing the import error4124 includes a helpful error message4125 * request4126 behaves like a forbidden4127 is expected to include {:http_status => 403}4128 is expected not to include :token4129 behaves like containing the import error4130 includes a helpful error message4131 pull request4132 behaves like a pullable4133 behaves like an accessible4134 has the correct scope4135 behaves like a valid token4136 is expected to include :token4137 is expected to include "access"4138 a expirable4139 for default configuration4140 is expected not to be within 2 of 2022-11-11 01:08:41.442648398 +00004141 for changed configuration4142 is expected to be within 2 of 2022-11-11 01:08:41.606189873 +00004143 mixed request4144 behaves like a forbidden4145 is expected to include {:http_status => 403}4146 is expected not to include :token4147 behaves like containing the import error4148 includes a helpful error message4149 when over storage limit4150 when there is a project4151 does not allow developer to push images4152 when only pushing an image4153 behaves like not a container repository factory4154 does not create a new container repository resource4155 behaves like storage error4156 returns an appropriate response4157 when performing multiple actions including push4158 behaves like not a container repository factory4159 does not create a new container repository resource4160 behaves like storage error4161 returns an appropriate response4162 allows developers to pull images4163 behaves like a pullable4164 behaves like an accessible4165 has the correct scope4166 behaves like a valid token4167 is expected to include :token4168 is expected to include "access"4169 a expirable4170 for default configuration4171 is expected not to be within 2 of 2022-11-11 01:08:44.157495766 +00004172 for changed configuration4173 is expected to be within 2 of 2022-11-11 01:08:44.360754628 +00004174 allows maintainers to delete images4175 behaves like allowed to delete container repository images4176 behaves like a valid token4177 is expected to include :token4178 is expected to include "access"4179 a expirable4180 for default configuration4181 is expected not to be within 2 of 2022-11-11 01:08:45.158584271 +00004182 for changed configuration4183 is expected to be within 2 of 2022-11-11 01:08:45.416848582 +00004184 allow to delete images4185 behaves like a deletable4186 behaves like an accessible4187 has the correct scope4188 behaves like a valid token4189 is expected to include :token4190 is expected to include "access"4191 a expirable4192 for default configuration4193 is expected not to be within 2 of 2022-11-11 01:08:46.658991300 +00004194 for changed configuration4195 is expected to be within 2 of 2022-11-11 01:08:46.955110789 +00004196 allow to delete images since registry 2.74197 behaves like a deletable since registry 2.74198 behaves like an accessible4199 has the correct scope4200 behaves like a valid token4201 is expected to include :token4202 is expected to include "access"4203 a expirable4204 for default configuration4205 is expected not to be within 2 of 2022-11-11 01:08:48.159613508 +00004206 for changed configuration4207 is expected to be within 2 of 2022-11-11 01:08:48.482363517 +00004208 when there is no project4209 does not return a storage error4210Gitlab::Geo::LogCursor::Daemon4211 #run!4212 traps signals4213 delegates to #run_once! in a loop4214 #run_once!4215Cannot obtain an exclusive lease. There must be another process already in execution.4216 skips execution if cannot achieve a lease4217 skips execution if not a Geo node4218 skips execution if the current node is a primary4219 when the lease block rescues an error4220 when this error is the final straw4221 calls `#exit!`4222 when this error is not the final straw4223 does not call `#exit!`4224 #find_and_handle_events!4225 with some event logs4226 handles events4227 calls #handle_gap_event for each gap the gap tracking finds4228 exits when told to stop4229 when node has namespace restrictions4230 replays events for projects that belong to selected namespaces to replicate4231 does not replay events for projects that do not belong to selected namespaces to replicate4232 detects when an event was skipped4233 detects when an event was skipped between batches4234 logs a message if an associated event can't be found4235 logs a message for skipped events4236 does not replay events for projects that do not belong to selected shards to replicate4237 #handle_events4238 passes the previous batch id on to gap tracking4239 checks for gaps for each id in batch4240 handles every single event4241 #handle_single_event4242 skips execution when no event data is found4243 checks if it can replay the event4244 processes event when it is replayable4245ApprovalState4246 #approval_rules_overwritten?4247 when approval rule on the merge request does not exist4248 returns false4249 when merge request has any approver rule4250 returns true4251 when overriding approvals is not allowed4252 returns true4253 when multiple rules are allowed4254 #wrapped_approval_rules4255 returns all rules in wrapper4256 when approval feature is unavailable4257 returns empty array4258 with multiple scan_finding rules4259 returns one rule for each orchestration_policy_idx4260 #approval_needed?4261 when feature not available4262 returns false4263 when overall approvals required is not zero4264 returns true4265 when any rule's approvals required is not zero4266 returns false4267 when overall approvals required and all rule's approvals_required are zero4268 returns false4269 when overall approvals required is zero, and there is no rule4270 returns false4271 when approval feature is unavailable4272 returns false4273 #approved?4274 when no rules4275 behaves like checking any_approver rule4276 when it is not met4277 returns false4278 when it is met4279 returns true4280 when only code owner rules present4281 behaves like when rules are present4282 when all rules are approved4283 returns true4284 when some rules are not approved4285 returns false4286 behaves like checking any_approver rule4287 when it is not met4288 returns false4289 when it is met4290 returns true4291 when only report approver rules present4292 behaves like when rules are present4293 when all rules are approved4294 returns true4295 when some rules are not approved4296 returns false4297 behaves like checking any_approver rule4298 when it is not met4299 returns false4300 when it is met4301 returns true4302 when regular rules present4303 behaves like when rules are present4304 when all rules are approved4305 returns true4306 when some rules are not approved4307 returns false4308 when approval feature is unavailable4309 returns true4310 #approvals_left4311 sums approvals_left from rules4312 with any approval rule4313 sums approvals_left from regular rules4314 with report approver rule4315 sums code_owner_rules_left from report approver rules4316 when approval feature is unavailable4317 returns 04318 #approval_rules_left4319 counts approval_rules left4320 when approval feature is unavailable4321 returns empty array4322 #approvals_required4323 correctly sums the approvals4324 #approvers4325 includes all approvers, including code owner and group members4326 behaves like filtering author and committers4327 when self approval is disabled on project4328 excludes authors4329 when self approval is enabled on project4330 includes author4331 when committers approval is enabled on project4332 includes committers4333 when committers approval is disabled on project4334 excludes committers4335 #filtered_approvers4336 only direct users, without code owners4337 includes only rule user members4338 only unactioned4339 excludes approved approvers4340 behaves like filtering author and committers4341 when self approval is disabled on project4342 excludes authors4343 when self approval is enabled on project4344 includes author4345 when committers approval is enabled on project4346 includes committers4347 when committers approval is disabled on project4348 excludes committers4349 #unactioned_approvers4350 sums approvals_left from rules4351 behaves like filtering author and committers4352 when self approval is disabled on project4353 excludes authors4354 when self approval is enabled on project4355 includes author4356 when committers approval is enabled on project4357 includes committers4358 when committers approval is disabled on project4359 excludes committers4360 #eligible_for_approval_by?4361 when there are no regular approval rules4362 requires one approval4363 behaves like a MR that all members with write access can approve4364 is expected to be truthy4365 is expected to be falsey4366 is expected to be falsey4367 is expected to be falsey4368 when authors are authorized to approve their own MRs4369 allows the author to approve the MR if within the approvers list4370 allows the author to approve the MR if not within the approvers list4371 when the author has approved the MR already4372 does not allow the author to approve the MR again4373 when authors are not authorized to approve their own MRs4374 allows the author to approve the MR if within the approvers list4375 does not allow the author to approve the MR if not within the approvers list4376 when committers are authorized to approve their own MRs4377 allows the committer to approve the MR if within the approvers list4378 allows the committer to approve the MR if not within the approvers list4379 when the committer has approved the MR already4380 does not allow the committer to approve the MR again4381 when committers are not authorized to approve their own MRs4382 allows the committer to approve the MR if within the approvers list4383 does not allow the committer to approve the MR if not within the approvers list4384 when the user is both an author and a committer4385 when authors are authorized to approve their own MRs, but not committers4386 allows the user to approve the MR if within the approvers list4387 does not allow the user to approve the MR if not within the approvers list4388 when committers are authorized to approve their own MRs, but not authors4389 allows the user to approve the MR if within the approvers list4390 does not allow the user to approve the MR if not within the approvers list4391 when there is one approver required4392 when that approver is the MR author4393 does not allow a logged-out user to approve the MR4394 is not approved4395 behaves like authors self-approval authorization4396 when authors are authorized to approve their own MRs4397 allows the author to approve the MR if within the approvers list4398 when authors are not authorized to approve their own MRs4399 does not allow the author to approve the MR4400 behaves like a MR that all members with write access can approve4401 is expected to be truthy4402 is expected to be falsey4403 is expected to be falsey4404 is expected to be falsey4405 when there are multiple approvers required4406 when one of those approvers is the MR author4407 requires the original number of approvals4408 allows any other other approver to approve the MR4409 does not allow a logged-out user to approve the MR4410 behaves like authors self-approval authorization4411 when authors are authorized to approve their own MRs4412 allows the author to approve the MR if within the approvers list4413 when authors are not authorized to approve their own MRs4414 does not allow the author to approve the MR4415 when self-approval is disabled and all of the valid approvers have approved the MR4416 requires the original number of approvals4417 does not allow the author to approve the MR4418 does not allow the approvers to approve the MR again4419 behaves like a MR that all members with write access can approve4420 is expected to be truthy4421 is expected to be falsey4422 is expected to be falsey4423 is expected to be falsey4424 when self-approval is enabled and all of the valid approvers have approved the MR4425 requires the original number of approvals4426 does not allow the approvers to approve the MR again4427 allows any other project member with write access to approve the MR4428 when all approvers have approved the MR4429 is approved4430 returns sum of each rule's approvals_left4431 when the approvers do not contain the MR author4432 requires the original number of approvals4433 allows anyone with write access except for author to approve the MR4434 #any_approver_rules4435 a project with any_approver rule4436 returns project rules4437 a merge request with regular rule4438 returns merge request rules4439 when any_approver rule with 2 approvals required exist4440 requires the 2 approvals4441 behaves like a MR that all members with write access can approve4442 is expected to be truthy4443 is expected to be falsey4444 is expected to be falsey4445 is expected to be falsey4446 a user approves the MR4447 requires 1 approval4448 another user approves the MR4449 becomes approved4450 #authors_can_approve?4451 allow_author_approval is resolved to not be permitted4452 returns false4453 allow_author_approval is resolved to be permitted4454 returns true4455 #committers_can_approve?4456 allow_committer_approval is resolved to not be permitted4457 returns false4458 allow_committer_approval is resolved to be permitted4459 returns false4460 #suggested_approvers4461 user cannot see private group4462 shows public users4463 does not show users who have already approved4464 user can see private group4465 shows private users4466 when only a single rule is allowed4467 #wrapped_approval_rules4468 returns one regular rule in wrapper4469 #approval_needed?4470 when feature not available4471 returns false4472 when overall approvals required is not zero4473 returns true4474 when any rule's approvals required is not zero4475 returns false4476 when overall approvals required and all rule's approvals_required are zero4477 returns false4478 when overall approvals required is zero, and there is no rule4479 returns false4480 #approved?4481 when no rules4482 behaves like checking any_approver rule4483 when it is not met4484 returns false4485 when it is met4486 returns true4487 when only code owner rules present4488 behaves like when rules are present4489 when all rules are approved4490 returns true4491 when some rules are not approved4492 returns false4493 behaves like checking any_approver rule4494 when it is not met4495 returns false4496 when it is met4497 returns true4498 when only report approver rules present4499 behaves like when rules are present4500 when all rules are approved4501 returns true4502 when some rules are not approved4503 returns false4504 behaves like checking any_approver rule4505 when it is not met4506 returns false4507 when it is met4508 returns true4509 when regular rules present4510 behaves like when rules are present4511 when all rules are approved4512 returns true4513 when some rules are not approved4514 returns false4515 when a single project rule is present4516 behaves like when rules are present4517 when all rules are approved4518 returns true4519 when some rules are not approved4520 returns false4521 when the project rule is overridden by a fallback but the project does not allow overriding4522 behaves like when rules are present4523 when all rules are approved4524 returns true4525 when some rules are not approved4526 returns false4527 when the project rule is overridden by a fallback4528 behaves like checking any_approver rule4529 when it is not met4530 returns false4531 when it is met4532 returns true4533 when a single project rule is present that is overridden in the merge request4534 behaves like checking any_approver rule4535 when it is not met4536 returns false4537 when it is met4538 returns true4539 #approvals_left4540 sums approvals_left from rules4541 #approval_rules_left4542 counts approval_rules left4543 #approvers4544 includes approvers from first rule, code owner rule, and report approver rule4545 behaves like filtering author and committers4546 when self approval is disabled on project4547 excludes authors4548 when self approval is enabled on project4549 includes author4550 when committers approval is enabled on project4551 includes committers4552 when committers approval is disabled on project4553 excludes committers4554 #filtered_approvers4555 only direct users, without code owners4556 excludes code owners4557 only unactioned4558 excludes approved approvers4559 behaves like filtering author and committers4560 when self approval is disabled on project4561 excludes authors4562 when self approval is enabled on project4563 includes author4564 when committers approval is enabled on project4565 includes committers4566 when committers approval is disabled on project4567 excludes committers4568 #unactioned_approvers4569 sums approvals_left from rules4570 behaves like filtering author and committers4571 when self approval is disabled on project4572 excludes authors4573 when self approval is enabled on project4574 includes author4575 when committers approval is enabled on project4576 includes committers4577 when committers approval is disabled on project4578 excludes committers4579 #eligible_for_approval_by?4580 when the user is the author4581 and author is an approver4582 returns true when authors can approve4583 returns false when authors cannot approve4584 and author is not an approver4585 returns true when authors can approve4586 returns false when authors cannot approve4587 when user is a committer4588 and committer is an approver4589 return true when committers can approve4590 return false when committers cannot approve4591 and committer is not an approver4592 return true when committers can approve4593 return false when committers cannot approve4594 when there is one approver required4595 when that approver is the MR author4596 requires one approval4597 does not allow a logged-out user to approve the MR4598 is not approved4599 behaves like authors self-approval authorization4600 when authors are authorized to approve their own MRs4601 allows the author to approve the MR if within the approvers list4602 when authors are not authorized to approve their own MRs4603 does not allow the author to approve the MR4604 behaves like a MR that all members with write access can approve4605 is expected to be truthy4606 is expected to be falsey4607 is expected to be falsey4608 is expected to be falsey4609 when there are multiple approvers required4610 when one of those approvers is the MR author4611 requires the original number of approvals4612 allows any other other approver to approve the MR4613 does not allow a logged-out user to approve the MR4614 behaves like authors self-approval authorization4615 when authors are authorized to approve their own MRs4616 allows the author to approve the MR if within the approvers list4617 when authors are not authorized to approve their own MRs4618 does not allow the author to approve the MR4619 when self-approval is disabled and all of the valid approvers have approved the MR4620 requires the original number of approvals4621 does not allow the author to approve the MR4622 does not allow the approvers to approve the MR again4623 behaves like a MR that all members with write access can approve4624 is expected to be truthy4625 is expected to be falsey4626 is expected to be falsey4627 is expected to be falsey4628 when self-approval is enabled and all of the valid approvers have approved the MR4629 requires the original number of approvals4630 does not allow the approvers to approve the MR again4631 allows any other project member with write access to approve the MR4632 when all approvers have approved the MR4633 is approved4634 returns sum of each rule's approvals_left4635 when the approvers do not contain the MR author4636 requires the original number of approvals4637 allows anyone with write access except for author to approve the MR4638 when an approver does not have access to the merge request4639 the user cannot approver4640 #authors_can_approve?4641 when project allows author approval4642 returns true4643 when project disallows author approval4644 returns true4645 #user_defined_rules4646 when approval rules are not overwritten4647 and multiple approval rules is disabled4648 returns the first rule4649 and multiple approval rules is enabled4650 returns the rules as is4651 and rules are scoped by protected branches4652 returns the rules that are applicable to the merge request target branch4653 and target_branch is specified4654 returns the rules that are applicable to the specified target_branch4655 when approval rules are overwritten4656 when multiple approval rules is disabled4657 returns the first rule4658 when multiple approval rules is enabled4659 returns the rules as is4660 and rules have source rules that are scoped by protected branches4661 returns the rules that are applicable to the merge request target branch4662 and target_branch is specified4663 returns the rules that are applicable to the specified target_branch4664 #total_approvals_count4665 returns the total number of approvals (required + optional)4666 #invalid_approvers_rules4667 with valid approvers4668 returns an empty array4669 with invalid approvers4670 returns rules with empty approvers4671Ci::Build4672 behaves like has secrets4673 delegations4674 is expected to delegate #secrets to the #metadata object, allowing #metadata to return nil4675 #secrets?4676 without metadata4677 is expected to equal false4678 with metadata4679 when secrets exist4680 is expected to equal true4681 when secrets do not exit4682 is expected to equal false4683 .license_scan4684 with new license_scanning artifact4685 is expected to eq "license_scanning"4686 clone_accessors4687 includes the cloneable extra accessors4688 associations4689 is expected to have many security_scans class_name => Security::Scan4690 is expected to have one dast_site_profiles_build class_name => Dast::SiteProfilesBuild4691 is expected to have one dast_site_profile class_name => DastSiteProfile through dast_site_profiles_build4692 is expected to have one dast_scanner_profiles_build class_name => Dast::ScannerProfilesBuild4693 is expected to have one dast_scanner_profile class_name => DastScannerProfile through dast_scanner_profiles_build4694 #cost_factor_enabled?4695 for shared runner4696 is expected to be truthy4697 with specific runner4698 is expected to be falsey4699 without runner4700 is expected to be falsey4701 updates pipeline minutes4702 for event success4703 for event drop4704 for event cancel4705 #variables4706 when environment specific variable is defined4707 when there is a plan for the group4708 GITLAB_FEATURES should include the features for that plan4709 dast4710 when there is a dast_site_profile associated with the job4711 behaves like it includes variables4712 includes variables from the profile4713 when user has permission4714 behaves like it includes variables4715 includes variables from the profile4716 when there is a dast_scanner_profile associated with the job4717 behaves like it includes variables4718 includes variables from the profile4719 when there are profiles associated with the job4720 when dast_configuration is absent from the options4721 does not attempt look up any dast profiles to avoid unnecessary queries4722 when site_profile is absent from the dast_configuration4723 does not attempt look up the site profile to avoid unnecessary queries4724 when scanner_profile is absent from the dast_configuration4725 does not attempt look up the scanner profile to avoid unnecessary queries4726 when both profiles are present in the dast_configuration4727 attempts look up dast profiles4728 when dast_site_profile target_type is website4729 behaves like it includes variables4730 includes variables from the profile4731 when dast_site_profile target_type is api4732 behaves like it includes variables4733 includes variables from the profile4734 variable CI_HAS_OPEN_REQUIREMENTS4735 is included with value 'true' if there are open requirements4736 is not included if there are no open requirements4737 #has_security_reports?4738 when build has a security report4739 is expected to equal true4740 when build does not have a security report4741 is expected to equal false4742 #unmerged_security_reports4743 when build has a security report4744 when there is a sast report4745 parses blobs and add the results to the report4746 when there are multiple reports4747 parses blobs and adds unmerged results to the reports4748 when build has no security reports4749 has no parsed reports4750 #collect_security_reports!4751 when report types are given4752 parses blobs and add the results for given report types4753 when report types are not given4754 when build has a security report4755 when there is a sast report4756 parses blobs and add the results to the report4757 adds the created date to the report4758 when there are multiple reports4759 parses blobs and adds the results to the reports4760 when there is a corrupted sast report4761 stores an error4762 vulnerability_finding_signatures4763 signatures_enabled: true4764 parses the report4765 signatures_enabled: false4766 parses the report4767 when there is unsupported file type4768 stores an error4769 #collect_license_scanning_reports!4770 is expected to eq 04771 when the build has a license scanning report4772 when there is a report4773 parses blobs and add the results to the report4774 when there is a corrupted report4775 returns an empty report4776 when the license scanning feature is disabled4777 does NOT parse license scanning report4778 #collect_dependency_list_reports!4779 with available licensed feature4780 parses blobs and add the results to the report4781 with different report format4782 parses blobs and add the results to the report4783 with disabled licensed feature4784 does NOT parse dependency list report4785 #collect_licenses_for_dependency_list!4786 with available licensed feature4787 parses blobs and add found license4788 with unavailable licensed feature4789 does not add licenses4790 #collect_metrics_reports!4791 when there is a metrics report4792 when license has metrics_reports4793 parses blobs and add the results to the report4794 when license does not have metrics_reports4795 does not parse metrics report4796 #collect_requirements_reports!4797 when there is a requirements report4798 when requirements are available4799 parses blobs and adds the results to the report4800 when requirements are not available4801 does not parse requirements report4802 #collect_sbom_reports!4803 when there is an sbom report4804 adds each report to the reports list and parses it4805 #retryable?4806 with pipeline for merged results4807 is expected to equal true4808 .license_scan4809 returns only license artifacts4810 ci_secrets_management_available?4811 when build has no project4812 is expected to equal false4813 when secrets management feature is available4814 is expected to equal true4815 when secrets management feature is not available4816 is expected to equal false4817 #runner_required_feature_names4818 when secrets management feature is available4819 when there are secrets defined4820 is expected to include :vault_secrets4821 when there are no secrets defined4822 is expected not to include :vault_secrets4823 when secrets management feature is not available4824 when there are secrets defined4825 is expected not to include :vault_secrets4826 when there are no secrets defined4827 is expected not to include :vault_secrets4828 secrets management usage data4829 when secrets management feature is not available4830 does not track unique users4831 when secrets management feature is available4832 when there are secrets defined4833 on create4834 tracks unique users4835 with usage_data_i_ci_secrets_management_vault_build_created FF disabled4836 does not track unique users4837 on update4838 does not track unique users4839 when there are no secrets defined4840 does not track unique users4841ComplianceManagement::MergeRequestApprovalSettings::Resolver4842 is initialized4843 #allow_author_approval4844 instance_prevents_approval: true, group_allows_approval: true, project_allows_approval: nil, value: false, locked: true, inherited_from: :instance4845 behaves like a MR approval setting4846 has the correct value4847 has the correct locked status4848 has the correct inheritance4849 instance_prevents_approval: true, group_allows_approval: false, project_allows_approval: nil, value: false, locked: true, inherited_from: :instance4850 behaves like a MR approval setting4851 has the correct value4852 has the correct locked status4853 has the correct inheritance4854 instance_prevents_approval: false, group_allows_approval: true, project_allows_approval: nil, value: true, locked: false, inherited_from: nil4855 behaves like a MR approval setting4856 has the correct value4857 has the correct locked status4858 has the correct inheritance4859 instance_prevents_approval: false, group_allows_approval: false, project_allows_approval: nil, value: false, locked: false, inherited_from: nil4860 behaves like a MR approval setting4861 has the correct value4862 has the correct locked status4863 has the correct inheritance4864 instance_prevents_approval: false, group_allows_approval: nil, project_allows_approval: true, value: true, locked: false, inherited_from: nil4865 behaves like a MR approval setting4866 has the correct value4867 has the correct locked status4868 has the correct inheritance4869 instance_prevents_approval: false, group_allows_approval: nil, project_allows_approval: false, value: false, locked: false, inherited_from: nil4870 behaves like a MR approval setting4871 has the correct value4872 has the correct locked status4873 has the correct inheritance4874 instance_prevents_approval: true, group_allows_approval: nil, project_allows_approval: false, value: false, locked: true, inherited_from: :instance4875 behaves like a MR approval setting4876 has the correct value4877 has the correct locked status4878 has the correct inheritance4879 instance_prevents_approval: false, group_allows_approval: true, project_allows_approval: true, value: true, locked: false, inherited_from: nil4880 behaves like a MR approval setting4881 has the correct value4882 has the correct locked status4883 has the correct inheritance4884 instance_prevents_approval: false, group_allows_approval: false, project_allows_approval: true, value: false, locked: true, inherited_from: :group4885 behaves like a MR approval setting4886 has the correct value4887 has the correct locked status4888 has the correct inheritance4889 instance_prevents_approval: true, group_allows_approval: true, project_allows_approval: true, value: false, locked: true, inherited_from: :instance4890 behaves like a MR approval setting4891 has the correct value4892 has the correct locked status4893 has the correct inheritance4894 instance_prevents_approval: false, group_allows_approval: true, project_allows_approval: false, value: false, locked: false, inherited_from: nil4895 behaves like a MR approval setting4896 has the correct value4897 has the correct locked status4898 has the correct inheritance4899 #allow_committer_approval4900 instance_prevents_approval: true, group_allows_approval: true, project_prevents_approval: nil, value: false, locked: true, inherited_from: :instance4901 behaves like a MR approval setting4902 has the correct value4903 has the correct locked status4904 has the correct inheritance4905 instance_prevents_approval: true, group_allows_approval: false, project_prevents_approval: nil, value: false, locked: true, inherited_from: :instance4906 behaves like a MR approval setting4907 has the correct value4908 has the correct locked status4909 has the correct inheritance4910 instance_prevents_approval: false, group_allows_approval: true, project_prevents_approval: nil, value: true, locked: false, inherited_from: nil4911 behaves like a MR approval setting4912 has the correct value4913 has the correct locked status4914 has the correct inheritance4915 instance_prevents_approval: false, group_allows_approval: false, project_prevents_approval: nil, value: false, locked: false, inherited_from: nil4916 behaves like a MR approval setting4917 has the correct value4918 has the correct locked status4919 has the correct inheritance4920 instance_prevents_approval: false, group_allows_approval: nil, project_prevents_approval: true, value: false, locked: false, inherited_from: nil4921 behaves like a MR approval setting4922 has the correct value4923 has the correct locked status4924 has the correct inheritance4925 instance_prevents_approval: true, group_allows_approval: nil, project_prevents_approval: false, value: false, locked: true, inherited_from: :instance4926 behaves like a MR approval setting4927 has the correct value4928 has the correct locked status4929 has the correct inheritance4930 instance_prevents_approval: false, group_allows_approval: true, project_prevents_approval: true, value: false, locked: false, inherited_from: nil4931 behaves like a MR approval setting4932 has the correct value4933 has the correct locked status4934 has the correct inheritance4935 instance_prevents_approval: false, group_allows_approval: false, project_prevents_approval: false, value: false, locked: true, inherited_from: :group4936 behaves like a MR approval setting4937 has the correct value4938 has the correct locked status4939 has the correct inheritance4940 instance_prevents_approval: true, group_allows_approval: true, project_prevents_approval: false, value: false, locked: true, inherited_from: :instance4941 behaves like a MR approval setting4942 has the correct value4943 has the correct locked status4944 has the correct inheritance4945 #allow_overrides_to_approver_list_per_merge_request4946 instance_prevents_approval: true, group_allows_approval: true, project_prevents_approval: nil, value: false, locked: true, inherited_from: :instance4947 behaves like a MR approval setting4948 has the correct value4949 has the correct locked status4950 has the correct inheritance4951 instance_prevents_approval: true, group_allows_approval: false, project_prevents_approval: nil, value: false, locked: true, inherited_from: :instance4952 behaves like a MR approval setting4953 has the correct value4954 has the correct locked status4955 has the correct inheritance4956 instance_prevents_approval: false, group_allows_approval: true, project_prevents_approval: nil, value: true, locked: false, inherited_from: nil4957 behaves like a MR approval setting4958 has the correct value4959 has the correct locked status4960 has the correct inheritance4961 instance_prevents_approval: false, group_allows_approval: false, project_prevents_approval: nil, value: false, locked: false, inherited_from: nil4962 behaves like a MR approval setting4963 has the correct value4964 has the correct locked status4965 has the correct inheritance4966 instance_prevents_approval: false, group_allows_approval: nil, project_prevents_approval: true, value: false, locked: false, inherited_from: nil4967 behaves like a MR approval setting4968 has the correct value4969 has the correct locked status4970 has the correct inheritance4971 instance_prevents_approval: true, group_allows_approval: nil, project_prevents_approval: false, value: false, locked: true, inherited_from: :instance4972 behaves like a MR approval setting4973 has the correct value4974 has the correct locked status4975 has the correct inheritance4976 instance_prevents_approval: false, group_allows_approval: true, project_prevents_approval: true, value: false, locked: false, inherited_from: nil4977 behaves like a MR approval setting4978 has the correct value4979 has the correct locked status4980 has the correct inheritance4981 instance_prevents_approval: false, group_allows_approval: false, project_prevents_approval: false, value: false, locked: true, inherited_from: :group4982 behaves like a MR approval setting4983 has the correct value4984 has the correct locked status4985 has the correct inheritance4986 instance_prevents_approval: true, group_allows_approval: true, project_prevents_approval: false, value: false, locked: true, inherited_from: :instance4987 behaves like a MR approval setting4988 has the correct value4989 has the correct locked status4990 has the correct inheritance4991 #retain_approvals_on_push4992 group_retains_approvals: true, project_resets_approvals: nil, value: true, locked: false, inherited_from: nil4993 behaves like a MR approval setting4994 has the correct value4995 has the correct locked status4996 has the correct inheritance4997 group_retains_approvals: false, project_resets_approvals: nil, value: false, locked: false, inherited_from: nil4998 behaves like a MR approval setting4999 has the correct value5000 has the correct locked status5001 has the correct inheritance5002 group_retains_approvals: nil, project_resets_approvals: true, value: false, locked: false, inherited_from: nil5003 behaves like a MR approval setting5004 has the correct value5005 has the correct locked status5006 has the correct inheritance5007 group_retains_approvals: nil, project_resets_approvals: false, value: true, locked: false, inherited_from: nil5008 behaves like a MR approval setting5009 has the correct value5010 has the correct locked status5011 has the correct inheritance5012 group_retains_approvals: true, project_resets_approvals: false, value: true, locked: false, inherited_from: nil5013 behaves like a MR approval setting5014 has the correct value5015 has the correct locked status5016 has the correct inheritance5017 group_retains_approvals: false, project_resets_approvals: true, value: false, locked: true, inherited_from: :group5018 behaves like a MR approval setting5019 has the correct value5020 has the correct locked status5021 has the correct inheritance5022 group_retains_approvals: false, project_resets_approvals: false, value: false, locked: true, inherited_from: :group5023 behaves like a MR approval setting5024 has the correct value5025 has the correct locked status5026 has the correct inheritance5027 group_retains_approvals: true, project_resets_approvals: true, value: false, locked: false, inherited_from: nil5028 behaves like a MR approval setting5029 has the correct value5030 has the correct locked status5031 has the correct inheritance5032 #require_password_to_approve5033 group_requires_password: true, project_requires_password: nil, value: true, locked: false, inherited_from: nil5034 behaves like a MR approval setting5035 has the correct value5036 has the correct locked status5037 has the correct inheritance5038 group_requires_password: false, project_requires_password: nil, value: false, locked: false, inherited_from: nil5039 behaves like a MR approval setting5040 has the correct value5041 has the correct locked status5042 has the correct inheritance5043 group_requires_password: nil, project_requires_password: true, value: true, locked: false, inherited_from: nil5044 behaves like a MR approval setting5045 has the correct value5046 has the correct locked status5047 has the correct inheritance5048 group_requires_password: nil, project_requires_password: false, value: false, locked: false, inherited_from: nil5049 behaves like a MR approval setting5050 has the correct value5051 has the correct locked status5052 has the correct inheritance5053 group_requires_password: true, project_requires_password: false, value: true, locked: true, inherited_from: :group5054 behaves like a MR approval setting5055 has the correct value5056 has the correct locked status5057 has the correct inheritance5058 group_requires_password: true, project_requires_password: true, value: true, locked: true, inherited_from: :group5059 behaves like a MR approval setting5060 has the correct value5061 has the correct locked status5062 has the correct inheritance5063 group_requires_password: false, project_requires_password: false, value: false, locked: false, inherited_from: nil5064 behaves like a MR approval setting5065 has the correct value5066 has the correct locked status5067 has the correct inheritance5068 group_requires_password: false, project_requires_password: true, value: true, locked: false, inherited_from: nil5069 behaves like a MR approval setting5070 has the correct value5071 has the correct locked status5072 has the correct inheritance5073Gitlab::ImportExport::AttributesPermitter5074 #permitted_attributes_defined?5075 relation_name: :push_rule, permitted_attributes_defined: true5076 is expected to eq true5077 relation_name: :issuable_sla, permitted_attributes_defined: false5078 is expected to eq false5079 relation_name: :unprotect_access_levels, permitted_attributes_defined: true5080 is expected to eq true5081 relation_name: :deploy_access_levels, permitted_attributes_defined: true5082 is expected to eq true5083 relation_name: :protected_environments, permitted_attributes_defined: true5084 is expected to eq true5085 relation_name: :security_setting, permitted_attributes_defined: true5086 is expected to eq true5087 relation_name: :project, permitted_attributes_defined: true5088 is expected to eq true5089 included_attributes for Project5090 for user5091 behaves like a permitted attribute5092 contains only attributes that are defined as permitted in the import/export config5093 does not contain attributes that would be cleaned with AttributeCleaner5094 does not contain prohibited attributes that are not related to given relation5095 for author5096 behaves like a permitted attribute5097 is disabled5098 for approvals5099 behaves like a permitted attribute5100 contains only attributes that are defined as permitted in the import/export config5101 does not contain attributes that would be cleaned with AttributeCleaner5102 does not contain prohibited attributes that are not related to given relation5103 for ci_cd_settings5104 behaves like a permitted attribute5105 contains only attributes that are defined as permitted in the import/export config5106 does not contain attributes that would be cleaned with AttributeCleaner5107 does not contain prohibited attributes that are not related to given relation5108 for metrics_setting5109 behaves like a permitted attribute5110 contains only attributes that are defined as permitted in the import/export config5111 does not contain attributes that would be cleaned with AttributeCleaner5112 does not contain prohibited attributes that are not related to given relation5113 for project_badges5114 behaves like a permitted attribute5115 contains only attributes that are defined as permitted in the import/export config5116 does not contain attributes that would be cleaned with AttributeCleaner5117 does not contain prohibited attributes that are not related to given relation5118 for pipeline_schedules5119 behaves like a permitted attribute5120 contains only attributes that are defined as permitted in the import/export config5121 does not contain attributes that would be cleaned with AttributeCleaner5122 does not contain prohibited attributes that are not related to given relation5123 for error_tracking_setting5124 behaves like a permitted attribute5125 contains only attributes that are defined as permitted in the import/export config5126 does not contain attributes that would be cleaned with AttributeCleaner5127 does not contain prohibited attributes that are not related to given relation5128 for auto_devops5129 behaves like a permitted attribute5130 contains only attributes that are defined as permitted in the import/export config5131 does not contain attributes that would be cleaned with AttributeCleaner5132 does not contain prohibited attributes that are not related to given relation5133 for boards5134 behaves like a permitted attribute5135 contains only attributes that are defined as permitted in the import/export config5136 does not contain attributes that would be cleaned with AttributeCleaner5137 does not contain prohibited attributes that are not related to given relation5138 for lists5139 behaves like a permitted attribute5140 contains only attributes that are defined as permitted in the import/export config5141 does not contain attributes that would be cleaned with AttributeCleaner5142 does not contain prohibited attributes that are not related to given relation5143 for custom_attributes5144 behaves like a permitted attribute5145 contains only attributes that are defined as permitted in the import/export config5146 does not contain attributes that would be cleaned with AttributeCleaner5147 does not contain prohibited attributes that are not related to given relation5148 for label5149 behaves like a permitted attribute5150 contains only attributes that are defined as permitted in the import/export config5151 does not contain attributes that would be cleaned with AttributeCleaner5152 does not contain prohibited attributes that are not related to given relation5153 for labels5154 behaves like a permitted attribute5155 contains only attributes that are defined as permitted in the import/export config5156 does not contain attributes that would be cleaned with AttributeCleaner5157 does not contain prohibited attributes that are not related to given relation5158 for priorities5159 behaves like a permitted attribute5160 contains only attributes that are defined as permitted in the import/export config5161 does not contain attributes that would be cleaned with AttributeCleaner5162 does not contain prohibited attributes that are not related to given relation5163 for milestone5164 behaves like a permitted attribute5165 contains only attributes that are defined as permitted in the import/export config5166 does not contain attributes that would be cleaned with AttributeCleaner5167 does not contain prohibited attributes that are not related to given relation5168 for milestones5169 behaves like a permitted attribute5170 contains only attributes that are defined as permitted in the import/export config5171 does not contain attributes that would be cleaned with AttributeCleaner5172 does not contain prohibited attributes that are not related to given relation5173 for protected_branches5174 behaves like a permitted attribute5175 contains only attributes that are defined as permitted in the import/export config5176 does not contain attributes that would be cleaned with AttributeCleaner5177 does not contain prohibited attributes that are not related to given relation5178 for protected_tags5179 behaves like a permitted attribute5180 contains only attributes that are defined as permitted in the import/export config5181 does not contain attributes that would be cleaned with AttributeCleaner5182 does not contain prohibited attributes that are not related to given relation5183 for create_access_levels5184 behaves like a permitted attribute5185 contains only attributes that are defined as permitted in the import/export config5186 does not contain attributes that would be cleaned with AttributeCleaner5187 does not contain prohibited attributes that are not related to given relation5188 for merge_access_levels5189 behaves like a permitted attribute5190 contains only attributes that are defined as permitted in the import/export config5191 does not contain attributes that would be cleaned with AttributeCleaner5192 does not contain prohibited attributes that are not related to given relation5193 for push_access_levels5194 behaves like a permitted attribute5195 contains only attributes that are defined as permitted in the import/export config5196 does not contain attributes that would be cleaned with AttributeCleaner5197 does not contain prohibited attributes that are not related to given relation5198 for releases5199 behaves like a permitted attribute5200 contains only attributes that are defined as permitted in the import/export config5201 does not contain attributes that would be cleaned with AttributeCleaner5202 does not contain prohibited attributes that are not related to given relation5203 for links5204 behaves like a permitted attribute5205 contains only attributes that are defined as permitted in the import/export config5206 does not contain attributes that would be cleaned with AttributeCleaner5207 does not contain prohibited attributes that are not related to given relation5208 for container_expiration_policy5209 behaves like a permitted attribute5210 contains only attributes that are defined as permitted in the import/export config5211 does not contain attributes that would be cleaned with AttributeCleaner5212 does not contain prohibited attributes that are not related to given relation5213 for project_feature5214 behaves like a permitted attribute5215 contains only attributes that are defined as permitted in the import/export config5216 does not contain attributes that would be cleaned with AttributeCleaner5217 does not contain prohibited attributes that are not related to given relation5218 for prometheus_metrics5219 behaves like a permitted attribute5220 contains only attributes that are defined as permitted in the import/export config5221 does not contain attributes that would be cleaned with AttributeCleaner5222 does not contain prohibited attributes that are not related to given relation5223 for service_desk_setting5224 behaves like a permitted attribute5225 contains only attributes that are defined as permitted in the import/export config5226 does not contain attributes that would be cleaned with AttributeCleaner5227 does not contain prohibited attributes that are not related to given relation5228 for snippets5229 behaves like a permitted attribute5230 contains only attributes that are defined as permitted in the import/export config5231 does not contain attributes that would be cleaned with AttributeCleaner5232 does not contain prohibited attributes that are not related to given relation5233 for project_members5234 behaves like a permitted attribute5235 contains only attributes that are defined as permitted in the import/export config5236 does not contain attributes that would be cleaned with AttributeCleaner5237 does not contain prohibited attributes that are not related to given relation5238 for merge_request5239 behaves like a permitted attribute5240 contains only attributes that are defined as permitted in the import/export config5241 does not contain attributes that would be cleaned with AttributeCleaner5242 does not contain prohibited attributes that are not related to given relation5243 for merge_requests5244 behaves like a permitted attribute5245 contains only attributes that are defined as permitted in the import/export config5246 does not contain attributes that would be cleaned with AttributeCleaner5247 does not contain prohibited attributes that are not related to given relation5248 for award_emoji5249 behaves like a permitted attribute5250 contains only attributes that are defined as permitted in the import/export config5251 does not contain attributes that would be cleaned with AttributeCleaner5252 does not contain prohibited attributes that are not related to given relation5253 for commit_author5254 behaves like a permitted attribute5255 contains only attributes that are defined as permitted in the import/export config5256 does not contain attributes that would be cleaned with AttributeCleaner5257 does not contain prohibited attributes that are not related to given relation5258 for committer5259 behaves like a permitted attribute5260 contains only attributes that are defined as permitted in the import/export config5261 does not contain attributes that would be cleaned with AttributeCleaner5262 does not contain prohibited attributes that are not related to given relation5263 for events5264 behaves like a permitted attribute5265 contains only attributes that are defined as permitted in the import/export config5266 does not contain attributes that would be cleaned with AttributeCleaner5267 does not contain prohibited attributes that are not related to given relation5268 for label_links5269 behaves like a permitted attribute5270 contains only attributes that are defined as permitted in the import/export config5271 does not contain attributes that would be cleaned with AttributeCleaner5272 does not contain prohibited attributes that are not related to given relation5273 for merge_request_diff5274 behaves like a permitted attribute5275 contains only attributes that are defined as permitted in the import/export config5276 does not contain attributes that would be cleaned with AttributeCleaner5277 does not contain prohibited attributes that are not related to given relation5278 for merge_request_diff_commits5279 behaves like a permitted attribute5280 contains only attributes that are defined as permitted in the import/export config5281 does not contain attributes that would be cleaned with AttributeCleaner5282 does not contain prohibited attributes that are not related to given relation5283 for merge_request_diff_files5284 behaves like a permitted attribute5285 contains only attributes that are defined as permitted in the import/export config5286 does not contain attributes that would be cleaned with AttributeCleaner5287 does not contain prohibited attributes that are not related to given relation5288 for metrics5289 behaves like a permitted attribute5290 contains only attributes that are defined as permitted in the import/export config5291 does not contain attributes that would be cleaned with AttributeCleaner5292 does not contain prohibited attributes that are not related to given relation5293 for notes5294 behaves like a permitted attribute5295 contains only attributes that are defined as permitted in the import/export config5296 does not contain attributes that would be cleaned with AttributeCleaner5297 does not contain prohibited attributes that are not related to given relation5298 for push_event_payload5299 behaves like a permitted attribute5300 contains only attributes that are defined as permitted in the import/export config5301 does not contain attributes that would be cleaned with AttributeCleaner5302 does not contain prohibited attributes that are not related to given relation5303 for resource_label_events5304 behaves like a permitted attribute5305 contains only attributes that are defined as permitted in the import/export config5306 does not contain attributes that would be cleaned with AttributeCleaner5307 does not contain prohibited attributes that are not related to given relation5308 for suggestions5309 behaves like a permitted attribute5310 contains only attributes that are defined as permitted in the import/export config5311 does not contain attributes that would be cleaned with AttributeCleaner5312 does not contain prohibited attributes that are not related to given relation5313 for system_note_metadata5314 behaves like a permitted attribute5315 contains only attributes that are defined as permitted in the import/export config5316 does not contain attributes that would be cleaned with AttributeCleaner5317 does not contain prohibited attributes that are not related to given relation5318 for timelogs5319 behaves like a permitted attribute5320 contains only attributes that are defined as permitted in the import/export config5321 does not contain attributes that would be cleaned with AttributeCleaner5322 does not contain prohibited attributes that are not related to given relation5323 for external_pull_request5324 behaves like a permitted attribute5325 contains only attributes that are defined as permitted in the import/export config5326 does not contain attributes that would be cleaned with AttributeCleaner5327 does not contain prohibited attributes that are not related to given relation5328 for external_pull_requests5329 behaves like a permitted attribute5330 contains only attributes that are defined as permitted in the import/export config5331 does not contain attributes that would be cleaned with AttributeCleaner5332 does not contain prohibited attributes that are not related to given relation5333 for statuses5334 behaves like a permitted attribute5335 contains only attributes that are defined as permitted in the import/export config5336 does not contain attributes that would be cleaned with AttributeCleaner5337 does not contain prohibited attributes that are not related to given relation5338 for ci_pipelines5339 behaves like a permitted attribute5340 contains only attributes that are defined as permitted in the import/export config5341 does not contain attributes that would be cleaned with AttributeCleaner5342 does not contain prohibited attributes that are not related to given relation5343 for pipeline_metadata5344 behaves like a permitted attribute5345 contains only attributes that are defined as permitted in the import/export config5346 does not contain attributes that would be cleaned with AttributeCleaner5347 does not contain prohibited attributes that are not related to given relation5348 for stages5349 behaves like a permitted attribute5350 contains only attributes that are defined as permitted in the import/export config5351 does not contain attributes that would be cleaned with AttributeCleaner5352 does not contain prohibited attributes that are not related to given relation5353 for actions5354 behaves like a permitted attribute5355 contains only attributes that are defined as permitted in the import/export config5356 does not contain attributes that would be cleaned with AttributeCleaner5357 does not contain prohibited attributes that are not related to given relation5358 for design5359 behaves like a permitted attribute5360 contains only attributes that are defined as permitted in the import/export config5361 does not contain attributes that would be cleaned with AttributeCleaner5362 does not contain prohibited attributes that are not related to given relation5363 for designs5364 behaves like a permitted attribute5365 contains only attributes that are defined as permitted in the import/export config5366 does not contain attributes that would be cleaned with AttributeCleaner5367 does not contain prohibited attributes that are not related to given relation5368 for design_versions5369 behaves like a permitted attribute5370 contains only attributes that are defined as permitted in the import/export config5371 does not contain attributes that would be cleaned with AttributeCleaner5372 does not contain prohibited attributes that are not related to given relation5373 for issue_assignees5374 behaves like a permitted attribute5375 contains only attributes that are defined as permitted in the import/export config5376 does not contain attributes that would be cleaned with AttributeCleaner5377 does not contain prohibited attributes that are not related to given relation5378 for merge_request_assignees5379 behaves like a permitted attribute5380 contains only attributes that are defined as permitted in the import/export config5381 does not contain attributes that would be cleaned with AttributeCleaner5382 does not contain prohibited attributes that are not related to given relation5383 for merge_request_reviewers5384 behaves like a permitted attribute5385 contains only attributes that are defined as permitted in the import/export config5386 does not contain attributes that would be cleaned with AttributeCleaner5387 does not contain prohibited attributes that are not related to given relation5388 for sentry_issue5389 behaves like a permitted attribute5390 contains only attributes that are defined as permitted in the import/export config5391 does not contain attributes that would be cleaned with AttributeCleaner5392 does not contain prohibited attributes that are not related to given relation5393 for zoom_meetings5394 behaves like a permitted attribute5395 contains only attributes that are defined as permitted in the import/export config5396 does not contain attributes that would be cleaned with AttributeCleaner5397 does not contain prohibited attributes that are not related to given relation5398 for issues5399 behaves like a permitted attribute5400 contains only attributes that are defined as permitted in the import/export config5401 does not contain attributes that would be cleaned with AttributeCleaner5402 does not contain prohibited attributes that are not related to given relation5403 for group_members5404 behaves like a permitted attribute5405 contains only attributes that are defined as permitted in the import/export config5406 does not contain attributes that would be cleaned with AttributeCleaner5407 does not contain prohibited attributes that are not related to given relation5408 for project5409 behaves like a permitted attribute5410 contains only attributes that are defined as permitted in the import/export config5411 does not contain attributes that would be cleaned with AttributeCleaner5412 does not contain prohibited attributes that are not related to given relation5413 for resource_milestone_events5414 behaves like a permitted attribute5415 contains only attributes that are defined as permitted in the import/export config5416 does not contain attributes that would be cleaned with AttributeCleaner5417 does not contain prohibited attributes that are not related to given relation5418 for resource_state_events5419 behaves like a permitted attribute5420 contains only attributes that are defined as permitted in the import/export config5421 does not contain attributes that would be cleaned with AttributeCleaner5422 does not contain prohibited attributes that are not related to given relation5423 for issuable_sla5424 behaves like a permitted attribute5425 is disabled5426 for push_rule5427 behaves like a permitted attribute5428 contains only attributes that are defined as permitted in the import/export config5429 does not contain attributes that would be cleaned with AttributeCleaner5430 does not contain prohibited attributes that are not related to given relation5431 for unprotect_access_levels5432 behaves like a permitted attribute5433 contains only attributes that are defined as permitted in the import/export config5434 does not contain attributes that would be cleaned with AttributeCleaner5435 does not contain prohibited attributes that are not related to given relation5436 for deploy_access_levels5437 behaves like a permitted attribute5438 contains only attributes that are defined as permitted in the import/export config5439 does not contain attributes that would be cleaned with AttributeCleaner5440 does not contain prohibited attributes that are not related to given relation5441 for protected_environments5442 behaves like a permitted attribute5443 contains only attributes that are defined as permitted in the import/export config5444 does not contain attributes that would be cleaned with AttributeCleaner5445 does not contain prohibited attributes that are not related to given relation5446 for security_setting5447 behaves like a permitted attribute5448 contains only attributes that are defined as permitted in the import/export config5449 does not contain attributes that would be cleaned with AttributeCleaner5450 does not contain prohibited attributes that are not related to given relation5451 for resource_iteration_events5452 behaves like a permitted attribute5453 contains only attributes that are defined as permitted in the import/export config5454 does not contain attributes that would be cleaned with AttributeCleaner5455 does not contain prohibited attributes that are not related to given relation5456 for iteration5457 behaves like a permitted attribute5458 contains only attributes that are defined as permitted in the import/export config5459 does not contain attributes that would be cleaned with AttributeCleaner5460 does not contain prohibited attributes that are not related to given relation5461 for iterations_cadence5462 behaves like a permitted attribute5463 contains only attributes that are defined as permitted in the import/export config5464 does not contain attributes that would be cleaned with AttributeCleaner5465 does not contain prohibited attributes that are not related to given relation5466Terraform::StateVersion5467 .replicables_for_current_secondary5468 selective_sync_enabled: true, object_storage_sync_enabled: true, terraform_object_storage_enabled: true, synced_states: 55469 returns the proper number of terraform states5470 selective_sync_enabled: true, object_storage_sync_enabled: true, terraform_object_storage_enabled: false, synced_states: 55471 returns the proper number of terraform states5472 selective_sync_enabled: true, object_storage_sync_enabled: false, terraform_object_storage_enabled: true, synced_states: 05473 returns the proper number of terraform states5474 selective_sync_enabled: true, object_storage_sync_enabled: false, terraform_object_storage_enabled: false, synced_states: 55475 returns the proper number of terraform states5476 selective_sync_enabled: false, object_storage_sync_enabled: false, terraform_object_storage_enabled: false, synced_states: 105477 returns the proper number of terraform states5478 selective_sync_enabled: false, object_storage_sync_enabled: false, terraform_object_storage_enabled: true, synced_states: 05479 returns the proper number of terraform states5480 selective_sync_enabled: false, object_storage_sync_enabled: true, terraform_object_storage_enabled: true, synced_states: 105481 returns the proper number of terraform states5482 selective_sync_enabled: false, object_storage_sync_enabled: true, terraform_object_storage_enabled: false, synced_states: 105483 returns the proper number of terraform states5484 selective_sync_enabled: true, object_storage_sync_enabled: true, terraform_object_storage_enabled: false, synced_states: 55485 returns the proper number of terraform states5486AuditEvents::AuditEventStreamingWorker5487 #perform5488 when the entity type is a group5489 behaves like a successful audit event stream5490 when audit event id is passed5491 when the group has no destinations5492 makes no HTTP calls5493 when the group has a destination5494 makes one HTTP call5495 sends the correct verification header5496 sends correct event type in request body5497 adds event type only when audit operation is present5498 when the destination has custom headers5499 sends the headers with the payload5500 when feature flag 'allow_audit_event_type_filtering' is enabled5501 when no event type filter is present5502 makes one HTTP call5503 when audit_operation streaming event type filter is not present5504 does not make HTTP call5505 when audit_operation streaming event type filter is present5506 makes one HTTP call5507 when the group has several destinations5508 makes the correct number of HTTP calls5509 when feature is unlicensed5510 makes no HTTP calls5511 when audit event json is passed5512 when the group has no destinations5513 makes no HTTP calls5514 when the group has a destination5515 makes one HTTP call5516 sends the correct verification header5517 sends correct event type in request body5518 adds event type only when audit operation is present5519 when the destination has custom headers5520 sends the headers with the payload5521 when feature flag 'allow_audit_event_type_filtering' is enabled5522 when no event type filter is present5523 makes one HTTP call5524 when audit_operation streaming event type filter is not present5525 does not make HTTP call5526 when audit_operation streaming event type filter is present5527 makes one HTTP call5528 when the group has several destinations5529 makes the correct number of HTTP calls5530 when feature is unlicensed5531 makes no HTTP calls5532 behaves like a error is raised5533 when audit event id is passed5534 when any of Gitlab::HTTP::HTTP_ERRORS is raised5535 does not logs the error5536 does not logs the error5537 does not logs the error5538 does not logs the error5539 does not logs the error5540 does not logs the error5541 does not logs the error5542 does not logs the error5543 does not logs the error5544 does not logs the error5545 does not logs the error5546 does not logs the error5547 does not logs the error5548 does not logs the error5549 when URI::InvalidURIError exception is raised5550 logs the error5551 when audit event json is passed5552 when any of Gitlab::HTTP::HTTP_ERRORS is raised5553 does not logs the error5554 does not logs the error5555 does not logs the error5556 does not logs the error5557 does not logs the error5558 does not logs the error5559 does not logs the error5560 does not logs the error5561 does not logs the error5562 does not logs the error5563 does not logs the error5564 does not logs the error5565 does not logs the error5566 does not logs the error5567 when URI::InvalidURIError exception is raised5568 logs the error5569 when both audit event id and audit event json is passed5570 a argument error is raised5571 when the entity type is a project that belongs to a group5572 behaves like a successful audit event stream5573 when audit event id is passed5574 when the group has no destinations5575 makes no HTTP calls5576 when the group has a destination5577 makes one HTTP call5578 sends the correct verification header5579 sends correct event type in request body5580 adds event type only when audit operation is present5581 when the destination has custom headers5582 sends the headers with the payload5583 when feature flag 'allow_audit_event_type_filtering' is enabled5584 when no event type filter is present5585 makes one HTTP call5586 when audit_operation streaming event type filter is not present5587 does not make HTTP call5588 when audit_operation streaming event type filter is present5589 makes one HTTP call5590 when the group has several destinations5591 makes the correct number of HTTP calls5592 when feature is unlicensed5593 makes no HTTP calls5594 when audit event json is passed5595 when the group has no destinations5596 makes no HTTP calls5597 when the group has a destination5598 makes one HTTP call5599 sends the correct verification header5600 sends correct event type in request body5601 adds event type only when audit operation is present5602 when the destination has custom headers5603 sends the headers with the payload5604 when feature flag 'allow_audit_event_type_filtering' is enabled5605 when no event type filter is present5606 makes one HTTP call5607 when audit_operation streaming event type filter is not present5608 does not make HTTP call5609 when audit_operation streaming event type filter is present5610 makes one HTTP call5611 when the group has several destinations5612 makes the correct number of HTTP calls5613 when feature is unlicensed5614 makes no HTTP calls5615 behaves like a error is raised5616 when audit event id is passed5617 when any of Gitlab::HTTP::HTTP_ERRORS is raised5618 does not logs the error5619 does not logs the error5620 does not logs the error5621 does not logs the error5622 does not logs the error5623 does not logs the error5624 does not logs the error5625 does not logs the error5626 does not logs the error5627 does not logs the error5628 does not logs the error5629 does not logs the error5630 does not logs the error5631 does not logs the error5632 when URI::InvalidURIError exception is raised5633 logs the error5634 when audit event json is passed5635 when any of Gitlab::HTTP::HTTP_ERRORS is raised5636 does not logs the error5637 does not logs the error5638 does not logs the error5639 does not logs the error5640 does not logs the error5641 does not logs the error5642 does not logs the error5643 does not logs the error5644 does not logs the error5645 does not logs the error5646 does not logs the error5647 does not logs the error5648 does not logs the error5649 does not logs the error5650 when URI::InvalidURIError exception is raised5651 logs the error5652 when both audit event id and audit event json is passed5653 a argument error is raised5654 when the entity type is a project at a root namespace level5655 behaves like no HTTP calls are made5656 when audit event id is passed as param5657 makes no HTTP calls5658 when audit event json is passed as param5659 makes no HTTP calls5660 when the entity is a NullEntity5661 behaves like no HTTP calls are made5662 when audit event id is passed as param5663 makes no HTTP calls5664 when audit event json is passed as param5665 makes no HTTP calls5666 when root_group_entity_id is passed in audit event json5667 when the group has no destinations5668 makes no HTTP calls5669 when the group has a destination5670 makes one HTTP call5671 sends the correct verification header5672 sends correct event type in request body5673 adds event type only when audit operation is present5674 when the destination has custom headers5675 sends the headers with the payload5676 when feature flag 'allow_audit_event_type_filtering' is enabled5677 when no event type filter is present5678 makes one HTTP call5679 when audit_operation streaming event type filter is not present5680 does not make HTTP call5681 when audit_operation streaming event type filter is present5682 makes one HTTP call5683 when the group has several destinations5684 makes the correct number of HTTP calls5685 when feature is unlicensed5686 makes no HTTP calls5687Analytics::CycleAnalytics::GroupStage5688 uniqueness validation on name5689 is expected to validate that :name is case-sensitively unique within the scope of :group_id and :group_value_stream_id5690 associations5691 is expected to belong to group required: false5692 is expected to belong to value_stream required: false5693 behaves like value stream analytics stage5694 associations5695 is expected to belong to end_event_label required: false5696 is expected to belong to start_event_label required: false5697 is expected to belong to stage_event_hash required: false5698 validation5699 is valid5700 validates presence of parent5701 validates presence of start_event_identifier5702 validates presence of end_event_identifier5703 is invalid when end_event is not allowed for the given start_event5704 disallows default stage names when creating custom stage5705 is expected not to be valid5706 .by_value_stream5707 finds stages by value stream5708 #subject_class5709 infers the model from the start event5710 #start_event5711 builds start_event object based on start_event_identifier5712 #end_event5713 builds end_event object based on end_event_identifier5714 #matches_with_stage_params?5715 matches with default stage params5716 mismatches when the stage is custom5717 #parent_id5718 delegates to 'parent_name'_id attribute5719 #hash_code5720 does not differ when the same object is built with the same params5721 differs when the stage events are different5722 #event_hash5723 associates the same stage event hash record5724 does not introduce duplicated stage event hash records5725 creates different hash record for different event configurations5726 when the stage event hash changes5727 deletes the old, unused stage event hash record5728 does not delete used stage event hash record5729 when the stage events hash code does not change5730 does not trigger extra query on save5731 when creating label based event5732 when the label id is not passed5733 returns validation error when `start_event_label_id` is missing5734 returns validation error when `end_event_label_id` is missing5735 when group label is defined on the root group5736 succeeds5737 when subgroup is given5738 succeeds5739 when label is defined for a different group5740 returns validation for `start_event_label_id`5741 returns validation for `end_event_label_id`5742 when `ProjectLabel is given5743 raises error when `ProjectLabel` is given for `start_event_label`5744 raises error when `ProjectLabel` is given for `end_event_label`5745 relative positioning5746 behaves like a class that supports relative positioning5747 #scoped_items5748 includes all items with the same scope5749 #relative_siblings5750 includes all items with the same scope, except self5751 .move_nulls_to_end5752 moves items with null relative_position to the end5753 preserves relative position5754 moves the item near the start position when there are no existing positions5755 does not perform any moves if all items have their relative_position set5756 manages to move nulls to the end even if there is a sequence at the end5757 manages to move nulls to the end even if there is not enough space5758 manages to move nulls to the end, stacking if we cannot create enough space5759 manages to move nulls found in the relative scope5760 can move many nulls5761 does not have an N+1 issue5762 .move_nulls_to_start5763 moves items with null relative_position to the start5764 moves the item near the start position when there are no existing positions5765 preserves relative position5766 does not perform any moves if all items have their relative_position set5767 manages to move nulls to the start even if there is not enough space5768 manages to move nulls to the end, stacking if we cannot create enough space5769 #move_before5770 moves item before5771 can move the item before an item at the start5772 can move the item before an item at MIN_POSITION5773 can move the item before an item bunched up at MIN_POSITION5774 when there is no space5775 moves items correctly5776 leap-frogging to the left5777 can leap-frog STEPS times before needing to rebalance5778 there is no space to the left after moving STEPS times5779 rebalances to the right5780 #move_after5781 moves item after5782 can move the item after an item bunched up at MAX_POSITION5783 when there is no space5784 can move the item after an item at MAX_POSITION5785 moves items correctly5786 leap-frogging5787 rebalances after STEPS jumps5788 #move_to_start5789 places items at most IDEAL_DISTANCE from the start when the range is open5790 moves item to the end5791 positions the item at MIN_POSITION when there is only one space left5792 rebalances when there is already an item at the MIN_POSITION5793 deals with a run of elements at the start5794 #move_to_end5795 places items at most IDEAL_DISTANCE from the start when the range is open5796 moves item to the end5797 positions the item at MAX_POSITION when there is only one space left5798 rebalances when there is already an item at the MAX_POSITION5799 deals with a run of elements at the end5800 #move_between5801 positions item between two other5802 positions item between on top5803 positions item between to end5804 positions items even when after and before positions are the same5805 positions item in the middle of other two if distance is big enough5806 positions item closer to the middle if we are at the very top5807 positions item closer to the middle if we are at the very bottom5808 positions item in the middle of other two5809 positions item right if we pass non-sequential parameters5810 avoids N+1 queries when rebalancing other items5811 the two items are next to each other5812 behaves like moves item between5813 moves the middle item to between left and right5814 there is no space5815 behaves like moves item between5816 moves the middle item to between left and right5817 there is a bunch of items5818 handles bunches correctly5819 behaves like moves item between5820 moves the middle item to between left and right5821 .distinct_stages_within_hierarchy5822 returns distinct stages by the event identifiers5823 events tracking5824 #create5825 behaves like Snowplow event tracking5826 is not emitted if FF is disabled5827 is emitted5828 #update5829 behaves like Snowplow event tracking5830 is not emitted if FF is disabled5831 is emitted5832 #destroy5833 behaves like Snowplow event tracking5834 is not emitted if FF is disabled5835 is emitted5836BillingPlansHelper5837 #subscription_plan_data_attributes5838 when group and plan with ID present5839 returns data attributes5840 with refresh_billings_seats feature flag off5841 returns data attributes5842 when group not present5843 returns empty data attributes5844 when plan not present5845 returns attributes5846 with refresh_billings_seats feature flag off5847 returns data attributes5848 when plan with ID not present5849 returns data attributes without upgrade href5850 with refresh_billings_seats feature flag off5851 returns data attributes5852 with different namespaces5853 with namespace5854 does not return billable_seats_href5855 with group5856 returns billable_seats_href for group5857 #use_new_purchase_flow?5858 type: "Group", plan: "default", trial_active: true5859 is expected to equal true5860 type: "Group", plan: "default", trial_active: false5861 is expected to equal false5862 type: "Group", plan: "free", trial_active: true5863 is expected to equal true5864 type: "Group", plan: "free", trial_active: false5865 is expected to equal true5866 type: "Group", plan: "bronze", trial_active: true5867 is expected to equal true5868 type: "Group", plan: "bronze", trial_active: false5869 is expected to equal false5870 type: "Group", plan: "silver", trial_active: true5871 is expected to equal true5872 type: "Group", plan: "silver", trial_active: false5873 is expected to equal false5874 type: "Group", plan: "premium", trial_active: true5875 is expected to equal true5876 type: "Group", plan: "premium", trial_active: false5877 is expected to equal false5878 type: "Group", plan: "gold", trial_active: true5879 is expected to equal true5880 type: "Group", plan: "gold", trial_active: false5881 is expected to equal false5882 type: "Group", plan: "ultimate", trial_active: true5883 is expected to equal true5884 type: "Group", plan: "ultimate", trial_active: false5885 is expected to equal false5886 type: "Group", plan: "ultimate_trial", trial_active: true5887 is expected to equal true5888 type: "Group", plan: "ultimate_trial", trial_active: false5889 is expected to equal false5890 type: "Group", plan: "premium_trial", trial_active: true5891 is expected to equal true5892 type: "Group", plan: "premium_trial", trial_active: false5893 is expected to equal false5894 type: "Group", plan: "opensource", trial_active: true5895 is expected to equal true5896 type: "Group", plan: "opensource", trial_active: false5897 is expected to equal false5898 type: "User", plan: "default", trial_active: true5899 is expected to equal false5900 type: "User", plan: "default", trial_active: false5901 is expected to equal false5902 type: "User", plan: "free", trial_active: true5903 is expected to equal false5904 type: "User", plan: "free", trial_active: false5905 is expected to equal false5906 type: "User", plan: "bronze", trial_active: true5907 is expected to equal false5908 type: "User", plan: "bronze", trial_active: false5909 is expected to equal false5910 type: "User", plan: "silver", trial_active: true5911 is expected to equal false5912 type: "User", plan: "silver", trial_active: false5913 is expected to equal false5914 type: "User", plan: "premium", trial_active: true5915 is expected to equal false5916 type: "User", plan: "premium", trial_active: false5917 is expected to equal false5918 type: "User", plan: "gold", trial_active: true5919 is expected to equal false5920 type: "User", plan: "gold", trial_active: false5921 is expected to equal false5922 type: "User", plan: "ultimate", trial_active: true5923 is expected to equal false5924 type: "User", plan: "ultimate", trial_active: false5925 is expected to equal false5926 type: "User", plan: "ultimate_trial", trial_active: true5927 is expected to equal false5928 type: "User", plan: "ultimate_trial", trial_active: false5929 is expected to equal false5930 type: "User", plan: "premium_trial", trial_active: true5931 is expected to equal false5932 type: "User", plan: "premium_trial", trial_active: false5933 is expected to equal false5934 type: "User", plan: "opensource", trial_active: true5935 is expected to equal false5936 type: "User", plan: "opensource", trial_active: false5937 is expected to equal false5938 when the group is on a plan eligible for the new purchase flow5939 when the user has a last name5940 returns true5941 when the user does not have a last name5942 returns false5943 #upgrade_offer_type5944 when plan has a valid property5945 plan_name: "bronze", for_free: true, plan_id: "123456789", result: :upgrade_for_free5946 is expected to eq :upgrade_for_free5947 plan_name: "bronze", for_free: true, plan_id: "987654321", result: :no_offer5948 is expected to eq :no_offer5949 plan_name: "bronze", for_free: true, plan_id: nil, result: :no_offer5950 is expected to eq :no_offer5951 plan_name: "bronze", for_free: false, plan_id: "123456789", result: :upgrade_for_offer5952 is expected to eq :upgrade_for_offer5953 plan_name: "bronze", for_free: false, plan_id: nil, result: :no_offer5954 is expected to eq :no_offer5955 plan_name: "bronze", for_free: nil, plan_id: nil, result: :no_offer5956 is expected to eq :no_offer5957 plan_name: "premium", for_free: nil, plan_id: nil, result: :no_offer5958 is expected to eq :no_offer5959 plan_name: nil, for_free: true, plan_id: nil, result: :no_offer5960 is expected to eq :no_offer5961 #has_upgrade?5962 offer_type: :no_offer, result: false5963 is expected to eq false5964 offer_type: :upgrade_for_free, result: true5965 is expected to eq true5966 offer_type: :upgrade_for_offer, result: true5967 is expected to eq true5968 #show_contact_sales_button?5969 link_action: "upgrade", upgrade_offer: :no_offer, result: true5970 is expected to eq true5971 link_action: "upgrade", upgrade_offer: :upgrade_for_free, result: false5972 is expected to eq false5973 link_action: "upgrade", upgrade_offer: :upgrade_for_offer, result: true5974 is expected to eq true5975 link_action: "no_upgrade", upgrade_offer: :no_offer, result: false5976 is expected to eq false5977 link_action: "no_upgrade", upgrade_offer: :upgrade_for_free, result: false5978 is expected to eq false5979 link_action: "no_upgrade", upgrade_offer: :upgrade_for_offer, result: false5980 is expected to eq false5981 #show_upgrade_button?5982 link_action: "upgrade", upgrade_offer: :no_offer, result: true5983 is expected to eq true5984 link_action: "upgrade", upgrade_offer: :upgrade_for_free, result: true5985 is expected to eq true5986 link_action: "upgrade", upgrade_offer: :upgrade_for_offer, result: false5987 is expected to eq false5988 link_action: "no_upgrade", upgrade_offer: :no_offer, result: false5989 is expected to eq false5990 link_action: "no_upgrade", upgrade_offer: :upgrade_for_free, result: false5991 is expected to eq false5992 link_action: "no_upgrade", upgrade_offer: :upgrade_for_offer, result: false5993 is expected to eq false5994 #plan_feature_list5995 returns features list sorted by highlight attribute5996 #seats_data_last_update_info5997 when last_enqueue_time from the worker is known5998 shows the last enqueue time5999 when last_enqueue_time from the worker is unknown6000 shows default message6001 #plan_purchase_or_upgrade_url6002 is upgradable6003 is purchasable6004 #plan_purchase_url6005 builds correct url with some source6006 builds correct url for the old purchase flow6007 #hand_raise_props6008 builds correct hash6009 #free_plan_billing_hand_raise_props6010 builds correct hash6011 #upgrade_button_text6012 plan_offer_type: :no_offer, result: "Upgrade"6013 is expected to eq "Upgrade"6014 plan_offer_type: :upgrade_for_free, result: "Upgrade for free"6015 is expected to eq "Upgrade for free"6016 plan_offer_type: :upgrade_for_offer, result: "Upgrade"6017 is expected to eq "Upgrade"6018 #upgrade_button_css_classes6019 is_current_plan: true, trial_active: true, plan_is_deprecated: true, use_new_purchase_flow: true6020 returns the expected list of CSS classes6021 is_current_plan: true, trial_active: true, plan_is_deprecated: true, use_new_purchase_flow: false6022 returns the expected list of CSS classes6023 is_current_plan: true, trial_active: true, plan_is_deprecated: false, use_new_purchase_flow: true6024 returns the expected list of CSS classes6025 is_current_plan: true, trial_active: true, plan_is_deprecated: false, use_new_purchase_flow: false6026 returns the expected list of CSS classes6027 is_current_plan: true, trial_active: false, plan_is_deprecated: true, use_new_purchase_flow: true6028 returns the expected list of CSS classes6029 is_current_plan: true, trial_active: false, plan_is_deprecated: true, use_new_purchase_flow: false6030 returns the expected list of CSS classes6031 is_current_plan: true, trial_active: false, plan_is_deprecated: false, use_new_purchase_flow: true6032 returns the expected list of CSS classes6033 is_current_plan: true, trial_active: false, plan_is_deprecated: false, use_new_purchase_flow: false6034 returns the expected list of CSS classes6035 is_current_plan: false, trial_active: true, plan_is_deprecated: true, use_new_purchase_flow: true6036 returns the expected list of CSS classes6037 is_current_plan: false, trial_active: true, plan_is_deprecated: true, use_new_purchase_flow: false6038 returns the expected list of CSS classes6039 is_current_plan: false, trial_active: true, plan_is_deprecated: false, use_new_purchase_flow: true6040 returns the expected list of CSS classes6041 is_current_plan: false, trial_active: true, plan_is_deprecated: false, use_new_purchase_flow: false6042 returns the expected list of CSS classes6043 is_current_plan: false, trial_active: false, plan_is_deprecated: true, use_new_purchase_flow: true6044 returns the expected list of CSS classes6045 is_current_plan: false, trial_active: false, plan_is_deprecated: true, use_new_purchase_flow: false6046 returns the expected list of CSS classes6047 is_current_plan: false, trial_active: false, plan_is_deprecated: false, use_new_purchase_flow: true6048 returns the expected list of CSS classes6049 is_current_plan: false, trial_active: false, plan_is_deprecated: false, use_new_purchase_flow: false6050 returns the expected list of CSS classes6051 #billing_available_plans6052 when namespace is not on a plan6053 returns plans without deprecated6054 when namespace is on an active plan6055 returns plans without deprecated6056 when namespace is on a deprecated plan6057 returns plans with a deprecated plan6058 when namespace is on a deprecated plan that has hide_deprecated_card set to true6059 returns plans without the deprecated plan6060 when namespace is on a plan that has hide_deprecated_card set to true, but deprecated? is false6061 returns plans with the deprecated plan6062 #subscription_plan_info6063 returns the current plan6064 returns nil if no plan matches the code6065 breaks a tie with the current_subscription_plan attribute if multiple plans have the same code6066 returns nil if no plan matches the code even if current_subscription_plan is true6067 returns the plan matching the plan code even if current_subscription_plan is false6068 #show_plans?6069 free_personal: false, trial_active: false, gold_plan: false, ultimate_plan: false, opensource_plan: false, expectations: true6070 returns boolean6071 free_personal: false, trial_active: true, gold_plan: false, ultimate_plan: false, opensource_plan: false, expectations: true6072 returns boolean6073 free_personal: false, trial_active: false, gold_plan: true, ultimate_plan: false, opensource_plan: false, expectations: false6074 returns boolean6075 free_personal: false, trial_active: true, gold_plan: true, ultimate_plan: false, opensource_plan: false, expectations: true6076 returns boolean6077 free_personal: false, trial_active: false, gold_plan: false, ultimate_plan: true, opensource_plan: false, expectations: false6078 returns boolean6079 free_personal: false, trial_active: true, gold_plan: false, ultimate_plan: true, opensource_plan: false, expectations: true6080 returns boolean6081 free_personal: false, trial_active: false, gold_plan: true, ultimate_plan: true, opensource_plan: false, expectations: false6082 returns boolean6083 free_personal: false, trial_active: true, gold_plan: true, ultimate_plan: true, opensource_plan: false, expectations: true6084 returns boolean6085 free_personal: true, trial_active: true, gold_plan: true, ultimate_plan: true, opensource_plan: false, expectations: false6086 returns boolean6087 free_personal: false, trial_active: false, gold_plan: false, ultimate_plan: false, opensource_plan: true, expectations: false6088 returns boolean6089 #show_start_free_trial_messages?6090 free_personal: false, eligible_for_trial: true, expected: true6091 returns correct boolean value6092 free_personal: true, eligible_for_trial: true, expected: false6093 returns correct boolean value6094 free_personal: false, eligible_for_trial: false, expected: false6095 returns correct boolean value6096 #billing_upgrade_button_data6097 has expected data6098 #start_free_trial_data6099 has expected data6100 #add_namespace_plan_to_group_instructions6101 with maintained or owned group6102 instructs to move the project to a group6103 without a group6104 instructs to create a group then move the project to a group6105Gitlab::UsageDataMetrics6106 .uncached_data6107 with instrumentation_class6108 includes top level keys6109 includes counts keys6110 Redis_HLL_counters6111 is included in the Usage Ping hash structure6112SearchService6113 #search_objects6114 redacting search results (repository)6115 commits6116 behaves like it redacts incorrect results6117 when allowed6118 does nothing6119 when disallowed6120 redacts results6121 blobs6122 behaves like it redacts incorrect results6123 when allowed6124 does nothing6125 when disallowed6126 redacts results6127 wiki blobs6128 behaves like it redacts incorrect results6129 when allowed6130 does nothing6131 when disallowed6132 redacts results6133 redacting search results6134 redacts projects the user does not have access to6135 redacts issues the user does not have access to6136 redacts merge requests the user does not have access to6137 redacts milestones the user does not have access to6138 redacts notes the user does not have access to6139 #projects6140 when all projects are accessible6141 returns the project6142 returns the projects for guests6143 handles spaces in the param6144 returns nil if projects param is not a String6145 when some projects are accessible6146 returns only accessible projects6147 when no projects are accessible6148 returns nil6149 when no project_ids are provided6150 returns nil6151 when the advanced_search_multi_project_select feature is not enabled6152 returns nil6153Registrations::StandardNamespaceCreateService6154 # order random6155 #execute6156 when group and project can be created6157 creates a group and project6158 passes create_event: true to the Groups::CreateService6159 allows for the project to be initialized with a README6160 tracks group and project creation events6161 does not attempt to create a trial6162 when the group cannot be created6163 does not create a group6164 does not track events for group or project creation6165 the project is not disregarded completely6166 with trial concerns6167 does not attempt to create a trial6168 when group can be created but not the project6169 does not create a project6170 selectively tracks events for group and project creation6171 does not attempt to create learn gitlab project6172 when a group already exists and projects needs to be created6173 creates a project and not another group6174 selectively tracks events group and project creation6175 with learn gitlab project6176 trial: "false", project_name: "Learn GitLab", template: "learn_gitlab_ultimate.tar.gz"6177/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/carrierwave-1.3.2/lib/carrierwave/mounter.rb:113: warning: deprecated Object#=~ is called on TrueClass; it always returns nil6178 is expected to change `Project.count` by 26179 trial: "true", project_name: "Learn GitLab - Ultimate trial", template: "learn_gitlab_ultimate.tar.gz"6180/builds/gitlab-org/gitlab/vendor/ruby/2.7.0/gems/carrierwave-1.3.2/lib/carrierwave/mounter.rb:113: warning: deprecated Object#=~ is called on TrueClass; it always returns nil6181 is expected to change `Project.count` by 26182 with applying for a trial6183 applies a trial6184 when a group already exists applying a trial is not attempted6185 creates a project and not another group or trial6186IncidentManagement::OncallShiftGenerator6187 #for_timeframe6188 with no participants6189 is expected to be empty6190 with one participant6191 behaves like unsaved shifts6192 returns 3 shifts of 5 days, all for the same participant6193 when timestamp is at the end of a shift6194 behaves like unsaved shifts6195 returns the second and third shift6196 with many participants6197 behaves like unsaved shifts6198 returns One shift of 5 days long for each participant6199 with shift active period times set6200 splits the shifts daily by each active period6201 behaves like unsaved shifts6202 returns 5 shifts for each participant split by each day6203 with week length unit6204 splits the shifts daily by each active period6205 behaves like unsaved shifts6206 returns 7 shifts for each participant split by each day6207 rotation start time is in middle of active period6208 behaves like unsaved shifts6209 returns 5 shifts for each participant split by each day6210 active period is overnight6211 splits the shifts daily by each active period6212 behaves like unsaved shifts6213 returns 5 shifts for each participant with overnight shifts6214 when end time is earlier than start time6215 is expected to be empty6216 when start time is the same time as the rotation start time6217 behaves like unsaved shifts6218 returns 2 shifts of 5 days starting with first participant at the rotation start time6219 when start time is earlier than the rotation start time6220 behaves like unsaved shifts6221 returns 2 shifts of 5 days starting with the first participant at the rotation start time6222 when start time coincides with a shift change6223 behaves like unsaved shifts6224 returns 2 shifts of 5 days, starting with the second participant and the second shift6225 when start time is partway through a shift6226 behaves like unsaved shifts6227 returns 3 shifts of 5 days staring with the first participant which includes the partially completed shift6228 when the rotation has been completed many times over6229 behaves like unsaved shifts6230 returns 3 shifts of 5 days starting with the first participant beginning 7 weeks after rotation start time6231 when timeframe covers the rotation many times over6232 behaves like unsaved shifts6233 returns 7 shifts of 5 days starting with the first participant6234 with rotation end time6235 when the rotation end time coincides with a shift end6236 when end time is equal_to the rotation end time6237 behaves like unsaved shifts6238 returns 3 shifts of 5 days which ends at the rotation end time6239 when end time is less_than the rotation end time6240 behaves like unsaved shifts6241 returns 3 shifts of 5 days which ends at the rotation end time6242 when end time is greater_than the rotation end time6243 behaves like unsaved shifts6244 returns 3 shifts of 5 days which ends at the rotation end time6245 when end time is well_past the rotation end time6246 behaves like unsaved shifts6247 returns 3 shifts of 5 days which ends at the rotation end time6248 when the rotation end time is partway through a shift6249 when end time is equal_to the rotation end time6250 behaves like unsaved shifts6251 returns 2 shifts of 5 days and one partial shift which ends at the rotation end time6252 when end time is less_than the rotation end time6253 behaves like unsaved shifts6254 returns 2 shifts of 5 days and one partial shift which ends at the rotation end time6255 when end time is greater_than the rotation end time6256 behaves like unsaved shifts6257 returns 2 shifts of 5 days and one partial shift which ends at the rotation end time6258 when end time is well_past the rotation end time6259 behaves like unsaved shifts6260 returns 2 shifts of 5 days and one partial shift which ends at the rotation end time6261 in timezones with daylight-savings6262 with positive UTC offsets6263 with rotation in hours6264 switching to daylight savings time6265 when overlapping the switch6266 behaves like unsaved shifts6267 returns hour-long shifts which start in NZST(+1200) and switch to NZDT(+1300)6268 starting after switch6269 behaves like unsaved shifts6270 returns hour-long shifts which are entirely in NZDT(+1300)6271 starting after multiple switches6272 behaves like unsaved shifts6273 returns hour-long shifts which are entirely back in NZST(+1200) after 2 timezone switches since the rotation start time6274 switching off daylight savings time6275 when overlapping the switch6276 behaves like unsaved shifts6277 returns hour-long shifts which start in NZDT(+1300) and switch to NZST(+1200)6278 starting after switch6279 behaves like unsaved shifts6280 returns hour-long shifts which are entirely in NZST(+1200)6281 starting after multiple switches6282 behaves like unsaved shifts6283 returns hour-long shifts which are entirely back in NZST(+1300) after 2 timezone switches since the rotation start time6284 with rotation in days6285 switching to daylight savings time6286 when overlapping the switch6287 behaves like unsaved shifts6288 returns day-long shifts which start in NZST(+1200) and switch to NZDT(+1300)6289 starting after switch6290 behaves like unsaved shifts6291 returns day-long shifts which are entirely in NZDT(+1300)6292 starting after multiple switches6293 behaves like unsaved shifts6294 returns day-long shifts which are entirely back in NZST(+1200) after 2 timezone switches since the rotation start time6295 switching off daylight savings time6296 when overlapping the switch6297 behaves like unsaved shifts6298 returns day-long shifts which start in NZDT(+1300) and switch to NZST(+1200)6299 starting after switch6300 behaves like unsaved shifts6301 returns day-long shifts which are entirely in NZST(+1200)6302 starting after multiple switches6303 behaves like unsaved shifts6304 returns day-long shifts which are entirely back in NZST(+1300) after 2 timezone switches since the rotation start time6305 with rotation in weeks6306 switching to daylight savings time6307 when overlapping the switch6308 behaves like unsaved shifts6309 returns 2-week-long shifts which start in NZST(+1200) and switch to NZDT(+1300)6310 starting after switch6311 behaves like unsaved shifts6312 returns 2-week-long shifts which are entirely in NZDT(+1300)6313 starting after multiple switches6314 behaves like unsaved shifts6315 returns 2-week-long shifts which are entirely back in NZST(+1200) after 2 timezone switches since the rotation start time6316 switching off daylight savings time6317 when overlapping the switch6318 behaves like unsaved shifts6319 returns 2-week-long shifts which start in NZDT(+1300) and switch to NZST(+1200)6320 starting after switch6321 behaves like unsaved shifts6322 returns 2-week-long shifts which are entirely in NZST(+1200)6323 starting after multiple switches6324 behaves like unsaved shifts6325 returns 2-week-long shifts which are entirely back in NZST(+1200) after 2 timezone switches since the rotation start time6326 with negative UTC offsets6327 with rotation in hours6328 switching to daylight savings time6329 when overlapping the switch6330 behaves like unsaved shifts6331 returns hour-long shifts which start in EST(-0500) and switch to EDT(-0400)6332 starting after switch6333 behaves like unsaved shifts6334 returns hour-long shifts which are entirely in EDT(-0400)6335 starting after multiple switches6336 behaves like unsaved shifts6337 returns hour-long shifts which are entirely back in EST(-0500) after 2 timezone switches since the rotation start time6338 switching off daylight savings time6339 when overlapping the switch6340 behaves like unsaved shifts6341 returns hour-long shifts which start in EDT(-0400) and switch to EST(-0500)6342 starting after switch6343 behaves like unsaved shifts6344 returns hour-long shifts which are entirely in EST(-0500)6345 starting after multiple switches6346 behaves like unsaved shifts6347 returns hour-long shifts which are entirely back in EDT(-0400) after 2 timezone switches since the rotation start time6348 with rotation in days6349 switching to daylight savings time6350 when overlapping the switch6351 behaves like unsaved shifts6352 returns day-long shifts which start in EST(-0500) and switch to EDT(-0400)6353 starting after switch6354 behaves like unsaved shifts6355 returns day-long shifts which are entirely in EDT(-0400)6356 starting after multiple switches6357 behaves like unsaved shifts6358 returns day-long shifts which are entirely back in EST(-0500) after 2 timezone switches since the rotation start time6359 switching off daylight savings time6360 when overlapping the switch6361 behaves like unsaved shifts6362 returns day-long shifts which start in EDT(-0400) and switch to EST(-0500)6363 starting after switch6364 behaves like unsaved shifts6365 returns day-long shifts which are entirely in EST(-0500)6366 starting after multiple switches6367 behaves like unsaved shifts6368 returns day-long shifts which are entirely back in EDT(-0400) after 2 timezone switches since the rotation start time6369 with rotation in weeks6370 switching to daylight savings time6371 when overlapping the switch6372 behaves like unsaved shifts6373 returns 2-week-long shifts which start in EST(-0500) and switch to EDT(-0400)6374 starting after switch6375 behaves like unsaved shifts6376 returns 2-week-long shifts which are entirely in EDT(-0400)6377 starting after multiple switches6378 behaves like unsaved shifts6379 returns 2-week-long shifts which are entirely back in EST(-0500) after 2 timezone switches since the rotation start time6380 switching off daylight savings time6381 when overlapping the switch6382 behaves like unsaved shifts6383 returns 2-week-long shifts which start in EDT(-0400) and switch to EST(-0500)6384 starting after switch6385 behaves like unsaved shifts6386 returns 2-week-long shifts which are entirely in EST(-0500)6387 starting after multiple switches6388 behaves like unsaved shifts6389 returns 2-week-long shifts which are entirely back in EDT(-0400) after 2 timezone switches since the rotation start time6390 #for_timestamp6391 with no participants6392 is expected to be nil6393 with participants6394 when timestamp is before the rotation start time6395 is expected to be nil6396 when timestamp matches the rotation start time6397 behaves like unsaved shift6398 returns shift which starts at the same time as the rotation6399 when timestamp matches a shift start/end time6400 behaves like unsaved shift6401 returns the next shift of the rotation6402 when timestamp is in the middle of a shift6403 behaves like unsaved shift6404 returns the shift during which the timestamp occurs6405 when timestamp is at the end of a shift6406 behaves like unsaved shift6407 returns the second shift6408 with rotation end time6409 when timestamp matches rotation end time6410 is expected to be nil6411 when timestamp is before rotation end time6412 behaves like unsaved shift6413 returns the shift during which the timestamp occurs6414 when timestamp is at rotation end time6415 is expected to be nil6416 with shift active period times set6417 when timestamp is the start of rotation, but before active period6418 is expected to be nil6419 when timestamp is the same time as active period start6420 behaves like unsaved shift6421 returns the first shift of the shift cycle (split by the active period)6422 when timestamp is the same time as active period end6423 is expected to be nil6424 when timestamp is the after the active period ends6425 is expected to be nil6426EE::Users::CalloutsHelper6427 .render_enable_hashed_storage_warning6428 when we should show the enable warning6429 renders the enable warning6430 when we should not show the enable warning6431 does not render the enable warning6432 .render_migrate_hashed_storage_warning6433 when we should show the migrate warning6434 renders the migrate warning6435 when we should not show the migrate warning6436 does not render the migrate warning6437 .show_enable_hashed_storage_warning?6438 when hashed storage is disabled6439 when the enable warning has not been dismissed6440 is expected to be truthy6441 when the enable warning was dismissed6442 is expected to be falsy6443 when hashed storage is enabled6444 is expected to be falsy6445 .show_migrate_hashed_storage_warning?6446 when hashed storage is disabled6447 is expected to be falsy6448 when hashed storage is enabled6449 when the enable warning has not been dismissed6450 when there is a project in non-hashed-storage6451 is expected to be truthy6452 when there are NO projects in non-hashed-storage6453 is expected to be falsy6454 when the enable warning was dismissed6455 is expected to be falsy6456 #render_dashboard_ultimate_trial6457 owns_group_without_trial?: true, show_ultimate_trial?: true, user_default_dashboard?: true, has_no_trial_or_paid_plan?: true, should_render?: true6458 is expected to receive render("shared/ultimate_trial_callout_content") 1 time6459 owns_group_without_trial?: true, show_ultimate_trial?: true, user_default_dashboard?: true, has_no_trial_or_paid_plan?: false, should_render?: false6460 is expected not to receive render(*(any args)) 0 times6461 owns_group_without_trial?: true, show_ultimate_trial?: true, user_default_dashboard?: false, has_no_trial_or_paid_plan?: true, should_render?: false6462 is expected not to receive render(*(any args)) 0 times6463 owns_group_without_trial?: true, show_ultimate_trial?: false, user_default_dashboard?: true, has_no_trial_or_paid_plan?: true, should_render?: false6464 is expected not to receive render(*(any args)) 0 times6465 owns_group_without_trial?: true, show_ultimate_trial?: true, user_default_dashboard?: false, has_no_trial_or_paid_plan?: false, should_render?: false6466 is expected not to receive render(*(any args)) 0 times6467 owns_group_without_trial?: true, show_ultimate_trial?: false, user_default_dashboard?: false, has_no_trial_or_paid_plan?: true, should_render?: false6468 is expected not to receive render(*(any args)) 0 times6469 owns_group_without_trial?: true, show_ultimate_trial?: false, user_default_dashboard?: true, has_no_trial_or_paid_plan?: false, should_render?: false6470 is expected not to receive render(*(any args)) 0 times6471 owns_group_without_trial?: true, show_ultimate_trial?: false, user_default_dashboard?: false, has_no_trial_or_paid_plan?: false, should_render?: false6472 is expected not to receive render(*(any args)) 0 times6473 owns_group_without_trial?: false, show_ultimate_trial?: true, user_default_dashboard?: true, has_no_trial_or_paid_plan?: true, should_render?: false6474 is expected not to receive render(*(any args)) 0 times6475 owns_group_without_trial?: false, show_ultimate_trial?: true, user_default_dashboard?: true, has_no_trial_or_paid_plan?: false, should_render?: false6476 is expected not to receive render(*(any args)) 0 times6477 owns_group_without_trial?: false, show_ultimate_trial?: true, user_default_dashboard?: false, has_no_trial_or_paid_plan?: true, should_render?: false6478 is expected not to receive render(*(any args)) 0 times6479 owns_group_without_trial?: false, show_ultimate_trial?: false, user_default_dashboard?: true, has_no_trial_or_paid_plan?: true, should_render?: false6480 is expected not to receive render(*(any args)) 0 times6481 owns_group_without_trial?: false, show_ultimate_trial?: true, user_default_dashboard?: false, has_no_trial_or_paid_plan?: false, should_render?: false6482 is expected not to receive render(*(any args)) 0 times6483 owns_group_without_trial?: false, show_ultimate_trial?: false, user_default_dashboard?: false, has_no_trial_or_paid_plan?: true, should_render?: false6484 is expected not to receive render(*(any args)) 0 times6485 owns_group_without_trial?: false, show_ultimate_trial?: false, user_default_dashboard?: true, has_no_trial_or_paid_plan?: false, should_render?: false6486 is expected not to receive render(*(any args)) 0 times6487 owns_group_without_trial?: false, show_ultimate_trial?: false, user_default_dashboard?: false, has_no_trial_or_paid_plan?: false, should_render?: false6488 is expected not to receive render(*(any args)) 0 times6489 #render_two_factor_auth_recovery_settings_check6490 kind_of_user: :anonymous, is_gitlab_com?: false, dismissed_callout?: false, should_render?: false6491 is expected not to receive render(*(any args)) 0 times6492 kind_of_user: :anonymous, is_gitlab_com?: true, dismissed_callout?: false, should_render?: false6493 is expected not to receive render(*(any args)) 0 times6494 kind_of_user: :user_two_factor_disabled, is_gitlab_com?: false, dismissed_callout?: false, should_render?: false6495 is expected not to receive render(*(any args)) 0 times6496 kind_of_user: :user_two_factor_disabled, is_gitlab_com?: true, dismissed_callout?: false, should_render?: false6497 is expected not to receive render(*(any args)) 0 times6498 kind_of_user: :user_two_factor_disabled, is_gitlab_com?: true, dismissed_callout?: true, should_render?: false6499 is expected not to receive render(*(any args)) 0 times6500 kind_of_user: :user_two_factor_enabled, is_gitlab_com?: false, dismissed_callout?: false, should_render?: false6501 is expected not to receive render(*(any args)) 0 times6502 kind_of_user: :user_two_factor_enabled, is_gitlab_com?: true, dismissed_callout?: false, should_render?: true6503 is expected to receive render("shared/two_factor_auth_recovery_settings_check") 1 time6504 kind_of_user: :user_two_factor_enabled, is_gitlab_com?: true, dismissed_callout?: true, should_render?: false6505 is expected not to receive render(*(any args)) 0 times6506 .show_profile_token_expiry_notification?6507 dismissed_callout?: true, result: false6508 is expected to equal false6509 dismissed_callout?: false, result: true6510 is expected to equal true6511 .show_new_user_signups_cap_reached?6512 when user is anonymous6513 is expected to eq false6514 when user is not an admin6515 is expected to eq false6516 when feature flag is enabled6517 new_user_signups_cap: nil, active_user_count: 10, result: false6518 is expected to eq false6519 new_user_signups_cap: 10, active_user_count: 9, result: false6520 is expected to eq false6521 new_user_signups_cap: 0, active_user_count: 10, result: true6522 is expected to eq true6523 new_user_signups_cap: 1, active_user_count: 1, result: true6524 is expected to eq true6525 #show_eoa_bronze_plan_banner?6526 with group namespace6527 behaves like shows and hides the banner depending on circumstances6528 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: true6529 is expected to eq true6530 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Wed, 26 Jan 2022, result: false6531 is expected to eq false6532 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Thu, 27 Jan 2022, result: false6533 is expected to eq false6534 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: true, travel_to_date: Tue, 25 Jan 2022, result: false6535 is expected to eq false6536 show_billing_eoa_banner: true, actual_plan_name: "silver", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6537 is expected to eq false6538 show_billing_eoa_banner: true, actual_plan_name: "premium", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6539 is expected to eq false6540 show_billing_eoa_banner: true, actual_plan_name: "gold", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6541 is expected to eq false6542 show_billing_eoa_banner: true, actual_plan_name: "ultimate", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6543 is expected to eq false6544 show_billing_eoa_banner: false, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6545 is expected to eq false6546 with personal namespace6547 behaves like shows and hides the banner depending on circumstances6548 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: true6549 is expected to eq true6550 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Wed, 26 Jan 2022, result: false6551 is expected to eq false6552 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Thu, 27 Jan 2022, result: false6553 is expected to eq false6554 show_billing_eoa_banner: true, actual_plan_name: "bronze", dismissed_callout: true, travel_to_date: Tue, 25 Jan 2022, result: false6555 is expected to eq false6556 show_billing_eoa_banner: true, actual_plan_name: "silver", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6557 is expected to eq false6558 show_billing_eoa_banner: true, actual_plan_name: "premium", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6559 is expected to eq false6560 show_billing_eoa_banner: true, actual_plan_name: "gold", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6561 is expected to eq false6562 show_billing_eoa_banner: true, actual_plan_name: "ultimate", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6563 is expected to eq false6564 show_billing_eoa_banner: false, actual_plan_name: "bronze", dismissed_callout: false, travel_to_date: Tue, 25 Jan 2022, result: false6565 is expected to eq false6566 #eoa_bronze_plan_end_date6567 returns a date type value6568 #dismiss_two_factor_auth_recovery_settings_check6569 dismisses `TWO_FACTOR_AUTH_RECOVERY_SETTINGS_CHECK` callout6570 #show_verification_reminder?6571 on_gitlab_com?: true, logged_in?: true, unverified?: true, failed_pipeline?: true, not_dismissed_callout?: true, flag_enabled?: true, result: true6572 is expected to eq true6573 on_gitlab_com?: false, logged_in?: true, unverified?: true, failed_pipeline?: true, not_dismissed_callout?: true, flag_enabled?: true, result: false6574 is expected to eq false6575 on_gitlab_com?: true, logged_in?: false, unverified?: true, failed_pipeline?: true, not_dismissed_callout?: true, flag_enabled?: true, result: false6576 is expected to eq false6577 on_gitlab_com?: true, logged_in?: true, unverified?: false, failed_pipeline?: true, not_dismissed_callout?: true, flag_enabled?: true, result: false6578 is expected to eq false6579 on_gitlab_com?: true, logged_in?: true, unverified?: true, failed_pipeline?: false, not_dismissed_callout?: true, flag_enabled?: true, result: false6580 is expected to eq false6581 on_gitlab_com?: true, logged_in?: true, unverified?: true, failed_pipeline?: true, not_dismissed_callout?: false, flag_enabled?: true, result: false6582 is expected to eq false6583 on_gitlab_com?: true, logged_in?: true, unverified?: true, failed_pipeline?: true, not_dismissed_callout?: true, flag_enabled?: false, result: false6584 is expected to eq false6585 dismissing the alert timing6586 when failing a pipeline after dismissing the alert6587 is expected to eq true6588 when dismissing the alert after failing a pipeline6589 is expected to eq false6590Vulnerabilities::ResolveService6591 when vulnerability state is different from the requested state6592 with an authorized user with proper permissions6593 resolves a vulnerability6594 creates note6595 creates state transition entry to `resolved`6596 does not remove the feedback from associated findings6597 behaves like calls vulnerability statistics utility services in order6598 when updating the vulnerability fails6599 does not call the service classes6600 when updating the vulnerability succeeds6601 calls the service classes in order6602 when feature flag deprecate_vulnerabilities_feedback is disabled6603 behaves like removes dismissal feedback from associated findings6604 when there is no error6605 removes dismissal feedback from associated findings6606 when there is an error6607 does not remove any feedback6608 responds with error6609 when security dashboard feature is disabled6610 raises an "access denied" error6611 when vulnerability state is not different from the requested state6612 behaves like does not create state transition for same state6613 when vulnerability state is not different from the requested state6614 with an authorized user with proper permissions6615 does not create a state transition entry6616 permissions6617 is expected to be allowed for :owner6618 is expected to be allowed for :maintainer6619 is expected to be allowed for :developer6620 is expected to be denied for :auditor6621 is expected to be denied for :reporter6622 is expected to be denied for :guest6623 is expected to be denied for :anonymous6624 when admin mode is enabled6625 is expected to be allowed for :admin6626 when admin mode is disabled6627 is expected to be denied for :admin6628MergeRequests::ExternalStatusCheck6629 Associations6630 is expected to belong to project required: false6631 is expected to have and belong to many protected_branches6632 Validations6633 is expected to validate that :external_url cannot be empty/falsy6634 is expected to validate that :name is case-sensitively unique within the scope of :project_id6635 is expected to validate that :external_url is case-sensitively unique within the scope of :project_id6636 protected_branches_must_belong_to_project6637 is invalid6638 to_h6639 returns the correct information6640 applicable_to_branch6641 returns the correct collection of checks6642 async_execute6643 when list of protected branches is empty6644 enqueues the status check6645 when data target branch matches a protected branch6646 enqueues the status check6647 when data target branch does not match a protected branch6648 does not enqueue the status check6649 approved?6650 when a rule has a positive status check response6651 is expected to equal true6652 when a rule also has a positive check response from an old sha6653 is expected to equal true6654 when a rule has no positive status check response6655 is expected to equal false6656 when a rule has a positive status check response from an old sha6657 is expected to equal false6658 status6659 when a rule has a positive status check response6660 is expected to eq "passed"6661 when a rule also has a positive check response from an old sha6662 is expected to eq "passed"6663 when a rule has a negative status check response6664 is expected to eq "failed"6665 when a rule has no status check response6666 is expected to eq "pending"6667 status6668 when a rule has a positive status check response6669 is expected to eq "passed"6670 when a rule also has a positive check response from an old sha6671 is expected to eq "passed"6672 when a rule has a negative status check response6673 is expected to eq "failed"6674 when a rule has no status check response6675 is expected to eq "pending"6676 callbacks6677 #audit_add branches after :add6678 when branch is added from zero branches6679 behaves like audit event queue6680 when audit event queue is active6681 adds message to audit event queue6682 when audit event queue is not active6683 does not add message to audit event queue6684 when another branch is added6685 behaves like audit event queue6686 when audit event queue is active6687 adds message to audit event queue6688 when audit event queue is not active6689 does not add message to audit event queue6690 #audit_remove branches after :remove6691 when all the branches are removed6692 behaves like audit event queue6693 when audit event queue is active6694 adds message to audit event queue6695 when audit event queue is not active6696 does not add message to audit event queue6697 when a branch is removed6698 behaves like audit event queue6699 when audit event queue is active6700 adds message to audit event queue6701 when audit event queue is not active6702 does not add message to audit event queue6703 #audit_creation external status check after :create6704 when protected branches are added6705 behaves like audit event queue6706 when audit event queue is active6707 adds message to audit event queue6708 when audit event queue is not active6709 does not add message to audit event queue6710 when all branches are added6711 behaves like audit event queue6712 when audit event queue is active6713 adds message to audit event queue6714 when audit event queue is not active6715 does not add message to audit event queue6716 #audit_creation external status check after :create6717 behaves like audit event queue6718 when audit event queue is active6719 adds message to audit event queue6720 when audit event queue is not active6721 does not add message to audit event queue6722Resolvers::RequirementsManagement::RequirementsResolver6723 is expected to have nullable GraphQL type RequirementConnection6724 with a project6725 #resolve6726 finds all requirements6727 filters by state6728 filters by iid6729 filters by iids6730 preloads correct latest test report6731 finds only the requirements within the project we are looking at6732 when filtering by last test report state6733 filters by failed requirements6734 filters by passed requirements6735 filters requirements without test reports6736 sorting6737 when sorting by created_at6738 sorts requirements ascending6739 sorts requirements descending6740 with search6741 filters requirements by title6742 filtering by author_username6743 single author exists6744 filters requirements by author6745 single nonexistent author6746 behaves like returns no items6747 returns requirements without filtering by author6748 multiple nonexistent authors6749 behaves like returns no items6750 returns requirements without filtering by author6751 single author is not supplied6752 behaves like returns unfiltered6753 returns requirements without filtering by author6754 an empty array6755 behaves like returns unfiltered6756 returns requirements without filtering by author6757 multiple authors6758 filters requirements by author6759 multiple authors, one of whom does not exist6760 filters requirements by author6761Jira::Requests::Issues::ListService6762 #execute6763 without jira_integration6764 returns an error response6765 when jira_integration is nil6766 returns an error response6767 with jira_integration6768 when validations and params are ok6769 requests for default fields6770 behaves like a service that handles Jira API errors6771 allows unknown exception classes to bubble6772 logs the error6773 exception_class: Errno::ECONNRESET, exception_message: "", expected_message: "A connection error occurred"6774 handles the error6775 exception_class: Errno::ECONNREFUSED, exception_message: "", expected_message: "A connection error occurred"6776 handles the error6777 exception_class: Errno::ETIMEDOUT, exception_message: "", expected_message: "A timeout error occurred"6778 handles the error6779 exception_class: Timeout::Error, exception_message: "", expected_message: "A timeout error occurred"6780 handles the error6781 exception_class: URI::InvalidURIError, exception_message: "", expected_message: "The Jira API URL"6782 handles the error6783 exception_class: SocketError, exception_message: "", expected_message: "The Jira API URL"6784 handles the error6785 exception_class: OpenSSL::SSL::SSLError, exception_message: "foo", expected_message: "An SSL error occurred while connecting to Jira: foo"6786 handles the error6787 exception_class: JIRA::HTTPError, exception_message: "Unauthorized", expected_message: "The credentials for accessing Jira are not valid"6788 handles the error6789 exception_class: JIRA::HTTPError, exception_message: "Forbidden", expected_message: "The credentials for accessing Jira are not allowed"6790 handles the error6791 exception_class: JIRA::HTTPError, exception_message: "Bad Request", expected_message: "An error occurred while requesting data from Jira"6792 handles the error6793 exception_class: JIRA::HTTPError, exception_message: "Foo", expected_message: "An error occurred while requesting data from Jira."6794 handles the error6795 exception_class: JIRA::HTTPError, exception_message: "{\"errorMessages\":[\"foo\",\"bar\"]}", expected_message: "An error occurred while requesting data from Jira: foo and bar"6796 handles the error6797 exception_class: JIRA::HTTPError, exception_message: "{\"errorMessages\":[\"\"]}", expected_message: "An error occurred while requesting data from Jira."6798 handles the error6799 when the JSON in JIRA::HTTPError is unsafe6800 when JSON is malformed6801 returns the default error message6802 when JSON contains tags6803 sanitizes it6804 when jira runs on a subpath6805 takes the subpath into account6806 when the request does not return any values6807 returns a payload with no issues6808 when the request returns values6809 returns a payload with jira issues6810 when using pagination parameters6811 honors page and per_page6812 without pagination parameters6813 uses the default options6814Members::ActivateService6815 .for_invite6816 creates a new instance with the correct members6817 .for_users6818 creates a new instance with the correct members6819 .for_group6820 creates a new instance with the correct members6821 #execute6822 when unauthorized6823 behaves like returns an error6824 is expected to eq "You do not have permission to approve a member"6825 when current_user is nil6826 behaves like returns an error6827 is expected to eq "You do not have permission to approve a member"6828 when skipping authorization6829 behaves like successful member activation6830 activates the member and sets updated_at6831 calls UserProjectAccessChangedService6832 logs the approval in application logs6833 audit events6834 when licensed6835 tracks an audit event6836 when unlicensed6837 does not track audit event6838 when authorized6839 when there are awaiting members6840 behaves like successful member activation6841 activates the member and sets updated_at6842 calls UserProjectAccessChangedService6843 logs the approval in application logs6844 audit events6845 when licensed6846 tracks an audit event6847 when unlicensed6848 does not track audit event6849 when there are other awaiting members6850 with .for_invite6851 activates only provided invite6852 with .for_users6853 activates only provided invite6854 with .for_group6855 activates only provided invite6856 when there are other awaiting members for invite6857 activates only provided members6858 when users are no awaiting members6859 behaves like returns an error6860 is expected to eq "No memberships found"6861 when the members are only invites6862 does not call UserProjectAccessChangedService6863 behaves like when a user has memberships with invalid access levels6864 activates all memberships6865Geo::RepositoryVerificationFinder6866 #find_failed_repositories6867 returns projects where next retry attempt is in the past6868 does not return projects where next retry attempt is in the future6869 does not return projects where repository was recently updated6870 does not return projects where repository verification is pending6871 returns projects ordered by next retry time6872 with shard restriction6873 does not return projects on other shards6874 #find_failed_wikis6875 returns projects where next retry attempt is in the past6876 does not return projects where next retry attempt is in the future6877 does not return projects where wiki was recently updated6878 does not return projects where wiki verification is pending6879 returns projects ordered by next retry time6880 with shard restriction6881 does not return projects on other shards6882 #find_recently_updated_projects6883 returns projects where repository was recently updated6884 returns projects where repository verification is pending6885 does not return projects where repository verification failed6886 returns projects where wiki was recently updated6887 returns projects where wiki verification is pending6888 does not return projects where wiki verification failed6889 returns less active projects first6890 with shard restriction6891 does not return projects on other shards6892 #find_never_verified_projects6893 returns projects that never have been verified6894 with shard restriction6895 does not return projects on other shards6896 #find_reverifiable_repositories6897 behaves like find reverifiable projects6898 returns projects where repository was verified before the minimum re-verification interval6899 does not return projects where repository was recently updated6900 does not return projects where repository verification failed6901 returns less active projects first6902 with shard restriction6903 does not return projects on other shards6904 #find_reverifiable_wikis6905 behaves like find reverifiable projects6906 returns projects where wiki was verified before the minimum re-verification interval6907 does not return projects where wiki was recently updated6908 does not return projects where wiki verification failed6909 returns less active projects first6910 with shard restriction6911 does not return projects on other shards6912 #count_verified_repositories6913 when a repository is verified6914 includes the repository6915 when a repository failed verification6916 excludes the repository6917 when a repository has outdated verification6918 excludes the repository6919 #count_verified_wikis6920 when a wiki is verified6921 includes the wiki6922 when a wiki failed verification6923 excludes the wiki6924 when a wiki has outdated verification6925 excludes the wiki6926ProductivityAnalytics6927 metrics data6928 #histogram_data6929 metric: "days_to_merge", expected_result: {3=>2, 14=>1, 30=>1}6930 calculates correctly6931 metric: "time_to_first_comment", expected_result: {0=>3, 24=>1}6932 calculates correctly6933 metric: "time_to_last_commit", expected_result: {312=>1, 696=>1, 48=>2}6934 calculates correctly6935 metric: "time_to_merge", expected_result: {24=>3, 0=>1}6936 calculates correctly6937 metric: "commits_count", expected_result: {1=>2, 5=>1, 20=>1}6938 calculates correctly6939 metric: "loc_per_commit", expected_result: {15=>1, 16=>1, 14=>1, 5=>1}6940 calculates correctly6941 metric: "files_touched", expected_result: {15=>1, 3=>2, 1=>1}6942 calculates correctly6943 metric: "something_invalid", expected_result: nil6944 calculates correctly6945 for multiple labeled mrs6946 returns aggregated data6947 #scatterplot_data6948 returns metric values for each MR6949 for multiple labeled mrs6950 properly returns MRs with metrics calculated6951 #merge_requests_extended6952 returns MRs data with all the metrics calculated6953 with custom sorting6954 reorders MRs according to custom sorting6955 with unknown sorting6956 sorts by id desc6957 for multiple labeled mrs6958 properly returns MRs with metrics calculated6959 .start_date6960 delegates to ApplicationSetting6961Security::Ingestion::Tasks::IngestIssueLinks6962 #execute6963 ingests the issue links only for the new records6964 behaves like bulk insertable task6965 when the validation fails6966 can generate error messages correctly6967AutoMerge::AddToMergeTrainWhenPipelineSucceedsService6968 #execute6969 enables auto merge6970 #process6971 when the latest pipeline in the merge request has succeeded6972 executes MergeTrainService6973 when merge train strategy is not available for the merge request6974 aborts auto merge6975 when the latest pipeline in the merge request is running6976 does not initialize MergeTrainService6977 #cancel6978 cancels auto merge6979 #abort6980 aborts auto merge6981 #available_for?6982 is expected to eq true6983 memoizes the result6984 when merge trains option is disabled6985 is expected to eq false6986 when the latest pipeline in the merge request is not active6987 is expected to eq false6988 when merge request is not mergeable6989 is expected to eq false6990 when there is an open MR dependency6991 is expected to be falsy6992 when the user does not have permission to merge6993 is expected to be falsy6994Resolvers::Geo::PagesDeploymentRegistriesResolver6995 behaves like a Geo registries resolver6996 #resolve6997 when the parent object is the current node6998 when the user has permission to view Geo data6999 when admin mode is enabled7000 when the ids argument is null7001 returns registries, in order7002 when the ids argument is present7003 returns the requested registries, in order7004 when the replication_state argument is present7005 returns registries with requested replication state, in order7006 with verification enabled7007 when the verification_state argument is present7008 returns registries with requested verification state, in order7009 with verification disabled7010 when the verification_state argument is present7011 raises ArgumentError (PENDING: Skipping because verification is enabled for PagesDeployment)7012 when admin mode is disabled7013 returns nothing7014 when the user does not have permission to view Geo data7015 returns nothing7016 when the parent object is not the current node7017 when the user has permission to view Geo data7018 returns nothing, because we can't query other nodes' tracking databases7019TimeboxReportService7020 milestone charts7021 behaves like timebox chart7022 when license is not available7023 returns an error message7024 when license is available7025 returns an error when the number of events exceeds the limit7026 aggregates events before the start date to the start date7027 updates counts and weight when the milestone is added or removed7028 updates the completed counts when issue state is changed7029 updates the weight totals when issue weight is changed7030 when milestone does not have a start and due date7031 returns an error message7032 when events have the same timestamp for created_at7033 fetches events ordered by created_at and id7034 handles events for the same issue with exactly the same timestamp7035 when timebox is removed and then added back7036 event_types: [:add, :add], scope_count: 17037 updates the counts correspondingly7038 event_types: [:remove, :remove], scope_count: 07039 updates the counts correspondingly7040 event_types: [:add, :add, :remove], scope_count: 07041 updates the counts correspondingly7042 event_types: [:add, :remove, :remove], scope_count: 07043 updates the counts correspondingly7044 event_types: [:add, :remove, :add], scope_count: 17045 updates the counts correspondingly7046 event_types: [:add, :remove, :remove, :add], scope_count: 17047 updates the counts correspondingly7048 event_types: [:add, :add, :remove, :add, :add], scope_count: 17049 updates the counts correspondingly7050 with scoped_projects7051 scoped_projects is blank7052 scoped_projects: []7053 returns an empty response7054 scoped_projects: #<ActiveRecord::Relation []>7055 returns an empty response7056 scoped_projects: lazy { [project] }, expected_count: 2, expected_weight: 27057 aggregates events scoped to the given projects7058 scoped_projects: lazy { [other_project] }, expected_count: 1, expected_weight: 27059 aggregates events scoped to the given projects7060 scoped_projects: lazy { [subgroup_project] }, expected_count: 1, expected_weight: 37061 aggregates events scoped to the given projects7062 scoped_projects: lazy { [project, other_project, subgroup_project] }, expected_count: 4, expected_weight: 77063 aggregates events scoped to the given projects7064 iteration charts7065 behaves like timebox chart7066 when license is not available7067 returns an error message7068 when license is available7069 returns an error when the number of events exceeds the limit7070 aggregates events before the start date to the start date7071 updates counts and weight when the milestone is added or removed7072 updates the completed counts when issue state is changed7073 updates the weight totals when issue weight is changed7074 when milestone does not have a start and due date7075 returns an error message7076 when events have the same timestamp for created_at7077 fetches events ordered by created_at and id7078 handles events for the same issue with exactly the same timestamp7079 when timebox is removed and then added back7080 event_types: [:add, :add], scope_count: 17081 updates the counts correspondingly7082 event_types: [:remove, :remove], scope_count: 07083 updates the counts correspondingly7084 event_types: [:add, :add, :remove], scope_count: 07085 updates the counts correspondingly7086 event_types: [:add, :remove, :remove], scope_count: 07087 updates the counts correspondingly7088 event_types: [:add, :remove, :add], scope_count: 17089 updates the counts correspondingly7090 event_types: [:add, :remove, :remove, :add], scope_count: 17091 updates the counts correspondingly7092 event_types: [:add, :add, :remove, :add, :add], scope_count: 17093 updates the counts correspondingly7094 with scoped_projects7095 scoped_projects is blank7096 scoped_projects: []7097 returns an empty response7098 scoped_projects: #<ActiveRecord::Relation []>7099 returns an empty response7100 scoped_projects: lazy { [project] }, expected_count: 2, expected_weight: 27101 aggregates events scoped to the given projects7102 scoped_projects: lazy { [other_project] }, expected_count: 1, expected_weight: 27103 aggregates events scoped to the given projects7104 scoped_projects: lazy { [subgroup_project] }, expected_count: 1, expected_weight: 37105 aggregates events scoped to the given projects7106 scoped_projects: lazy { [project, other_project, subgroup_project] }, expected_count: 4, expected_weight: 77107 aggregates events scoped to the given projects7108Gitlab::Ci::Parsers::Security::Validators::SchemaValidator7109 report_type: :cluster_image_scanning, expected_errors: expected_error_messages, report_data: valid_data7110 #valid?7111 when given data is invalid according to the schema7112nil versions are discouraged and will be deprecated in Rubygems 47113 is expected to be falsey7114 when given data is valid according to the schema7115 is expected to be truthy7116 #deprecation_warnings7117 when report uses a deprecated version7118 is expected to eq ["Version 10.0.0 for report type cluster_image_scanning has been deprecated, supported versions for this report type are: 14.1.0. GitLab will attempt to parse and ingest this report if valid."]7119 when report uses a supported version7120 is expected to eq []7121 #warnings7122 when given data is valid according to the schema7123 is expected to eq []7124 when given data is invalid according to the schema7125 is expected to be empty7126 #errors7127 is expected to contain exactly "root is missing required keys: vulnerabilities", "Version V2.1.3 for report type cluster_image_scanning is unsupported, supported versions for this re...liest supported versions of this report type, to show all the errors but will not ingest the report", and "property '/version' does not match pattern: ^[0-9]+\\.[0-9]+\\.[0-9]+$"7128 report_type: :container_scanning, expected_errors: expected_error_messages, report_data: valid_data7129 #valid?7130 when given data is invalid according to the schema7131 is expected to be falsey7132 when given data is valid according to the schema7133 is expected to be truthy7134 #deprecation_warnings7135 when report uses a deprecated version7136 is expected to eq ["Version 10.0.0 for report type container_scanning has been deprecated, supported versions for this report type are: 14.1.0. GitLab will attempt to parse and ingest this report if valid."]7137 when report uses a supported version7138 is expected to eq []7139 #warnings7140 when given data is valid according to the schema7141 is expected to eq []7142 when given data is invalid according to the schema7143 is expected to be empty7144 #errors7145 is expected to contain exactly "root is missing required keys: vulnerabilities", "Version V2.1.3 for report type container_scanning is unsupported, supported versions for this report...liest supported versions of this report type, to show all the errors but will not ingest the report", and "property '/version' does not match pattern: ^[0-9]+\\.[0-9]+\\.[0-9]+$"7146 report_type: :coverage_fuzzing, expected_errors: expected_error_messages, report_data: valid_data7147 #valid?7148 when given data is invalid according to the schema7149 is expected to be falsey7150 when given data is valid according to the schema7151 is expected to be truthy7152 #deprecation_warnings7153 when report uses a deprecated version7154 is expected to eq ["Version 10.0.0 for report type coverage_fuzzing has been deprecated, supported versions for this report type are: 14.1.0. GitLab will attempt to parse and ingest this report if valid."]7155 when report uses a supported version7156 is expected to eq []7157 #warnings7158 when given data is valid according to the schema7159 is expected to eq []7160 when given data is invalid according to the schema7161 is expected to be empty7162 #errors7163 is expected to contain exactly "root is missing required keys: vulnerabilities", "Version V2.1.3 for report type coverage_fuzzing is unsupported, supported versions for this report t...liest supported versions of this report type, to show all the errors but will not ingest the report", and "property '/version' does not match pattern: ^[0-9]+\\.[0-9]+\\.[0-9]+$"7164 report_type: :dast, expected_errors: expected_error_messages, report_data: valid_data7165 #valid?7166 when given data is invalid according to the schema7167 is expected to be falsey7168 when given data is valid according to the schema7169 is expected to be truthy7170 #deprecation_warnings7171 when report uses a deprecated version7172 is expected to eq ["Version 10.0.0 for report type dast has been deprecated, supported versions for this report type are: 14.1.0. GitLab will attempt to parse and ingest this report if valid."]7173 when report uses a supported version7174 is expected to eq []7175 #warnings7176 when given data is valid according to the schema7177 is expected to eq []7178 when given data is invalid according to the schema7179 is expected to be empty7180 #errors7181 is expected to contain exactly "root is missing required keys: vulnerabilities", "Version V2.1.3 for report type dast is unsupported, supported versions for this report type are: 14....liest supported versions of this report type, to show all the errors but will not ingest the report", and "property '/version' does not match pattern: ^[0-9]+\\.[0-9]+\\.[0-9]+$"7182 report_type: :dependency_scanning, expected_errors: expected_error_messages_for_dependency_scanning, report_data: valid_data_for_dependency_scanning7183 #valid?7184 when given data is invalid according to the schema7185 is expected to be falsey7186 when given data is valid according to the schema7187 is expected to be truthy7188 #deprecation_warnings7189 when report uses a deprecated version7190 is expected to eq ["Version 10.0.0 for report type dependency_scanning has been deprecated, supported versions for this report type are: 14.1.0. GitLab will attempt to parse and ingest this report if valid."]7191 when report uses a supported version7192 is expected to eq []7193 #warnings7194 when given data is valid according to the schema7195 is expected to eq []7196 when given data is invalid according to the schema7197 is expected to be empty7198 #errors7199 is expected to contain exactly "root is missing required keys: dependency_files, vulnerabilities", "Version V2.1.3 for report type dependency_scanning is unsupported, supported versions for this repor...liest supported versions of this report type, to show all the errors but will not ingest the report", and "property '/version' does not match pattern: ^[0-9]+\\.[0-9]+\\.[0-9]+$"7200 report_type: :api_fuzzing, expected_errors: expected_error_messages, report_data: valid_data7201 #valid?7202 when given data is invalid according to the schema7203 is expected to be falsey7204 when given data is valid according to the schema7205 is expected to be truthy7206 #deprecation_warnings7207 when report uses a deprecated version7208 is expected to eq ["Version 10.0.0 for report type api_fuzzing has been deprecated, supported versions for this report type are: 14.1.0. GitLab will attempt to parse and ingest this report if valid."]7209 when report uses a supported version7210 is expected to eq []7211 #warnings7212 when given data is valid according to the schema7213 is expected to eq []7214 when given data is invalid according to the schema7215 is expected to be empty7216 #errors7217 is expected to contain exactly "root is missing required keys: vulnerabilities", "Version V2.1.3 for report type api_fuzzing is unsupported, supported versions for this report type a...liest supported versions of this report type, to show all the errors but will not ingest the report", and "property '/version' does not match pattern: ^[0-9]+\\.[0-9]+\\.[0-9]+$"7218Ci::BuildDependencies7219 for cross_project dependencies7220 when cross_dependencies are not defined7221 is expected to be empty7222 with missing dependency7223 is expected to be empty7224 with cross_dependencies to the same project7225 with artifacts true7226 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2022-11-11 08:53:29.000000000 +0000", created_at: "2022-...rocessed: false, scheduling_type: "stage", id: 177, stage_id: 177, partition_id: 100, tag_list: nil>7227 with artifacts false7228 is expected to be empty7229 with dependency names from environment variables7230 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2022-11-11 08:53:29.000000000 +0000", created_at: "2022-...rocessed: false, scheduling_type: "stage", id: 181, stage_id: 181, partition_id: 100, tag_list: nil>7231 with cross_dependencies to another ref in same project7232 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2022-11-11 08:53:29.000000000 +0000", created_at: "2022-...rocessed: false, scheduling_type: "stage", id: 183, stage_id: 182, partition_id: 100, tag_list: nil>7233 with cross_dependencies to a pipeline in another project7234 with permissions to other_project7235 contains both dependencies7236 when license does not have cross_project_pipelines7237 is expected to be empty7238 without permissions to other_project7239 is expected to contain exactly #<Ci::Build status: "success", finished_at: "2022-11-11 08:53:29.000000000 +0000", created_at: "2022-...rocessed: false, scheduling_type: "stage", id: 192, stage_id: 188, partition_id: 100, tag_list: nil>7240 with too many cross_dependencies7241 returns a limited number of dependencies7242 #all7243 with both cross project and cross pipeline dependencies7244 returns both dependencies7245Ci::Minutes::UsagePresenter7246 #monthly_minutes_report7247 when the usage is not enabled7248 when the namespace is not eligible7249 returns not supported report with no usage7250 when the namespace is eligible7251 when minutes are not used7252 returns unlimited report with no usage7253 when minutes are used7254 returns unlimited report with usage7255 when limited7256 when minutes are not all used7257 returns report with under usage7258 when minutes are all used7259 returns report with over quota7260 #purchased_minutes_report7261 when limit enabled7262 when extra minutes have been purchased7263 when all monthly minutes are used and some puarchased minutes are used7264 returns report with under quota7265 when all monthly and all puarchased minutes have been used7266 returns report with over quota7267 when not all monthly minutes have been used7268 returns report with no usage7269 when no extra minutes have been purchased7270 when all monthly minutes have been used7271 returns report without usage7272 when not all monthly minutes have been used7273 returns report with no usage7274 #monthly_percent_used7275 limit not enabled7276 returns the percentage7277 monthly limit set and no usage7278 returns the percentage7279 monthly limit set and usage lower than 100%7280 returns the percentage7281 monthly limit set and usage at 100%7282 returns the percentage7283 monthly limit set and usage above 100%7284 returns the percentage7285 monthly limit not set and no usage7286 returns the percentage7287 monthly limit not set and some usage7288 returns the percentage7289 monthly and purchased limits set and no usage7290 returns the percentage7291 monthly and purchased limits set and low usage7292 returns the percentage7293 usage capped to 100% and overflows into purchased minutes7294 returns the percentage7295 #purchased_percent_used7296 limit not enabled7297 returns the percentage7298 monthly limit not set and purchased limit set and low usage7299 returns the percentage7300 monthly limit set and purchased limit not set and usage below monthly7301 returns the percentage7302 monthly limit set and purchased limit not set and usage above monthly7303 returns the percentage7304 monthly and purchased limits set and no usage7305 returns the percentage7306 monthly and purchased limits set and usage below monthly7307 returns the percentage7308 monthly and purchased limits set and monthly minutes maxed out7309 returns the percentage7310 monthly and purchased limits set and some purchased minutes used7311 returns the percentage7312 monthly and purchased limits set and all minutes used7313 returns the percentage7314 monthly and purchased limits set and usage beyond all limits7315 returns the percentage7316 #any_project_enabled?7317 does not trigger additional queries when called multiple times7318 when namespace has any project with shared runners enabled7319 returns true7320 when namespace has no projects with shared runners enabled7321 returns false7322 #display_shared_runners_data?7323 when the namespace is root and it has a project with shared runners enabled7324 is expected to be truthy7325 when the namespace is not root7326 is expected to be falsey7327 when the namespaces has no project with shared runners enabled7328 is expected to be falsey7329IncidentManagement::OncallSchedule7330 .associations7331 is expected to belong to project required: false7332 is expected to have many rotations inverse_of => schedule7333 is expected to have many participants through rotations7334 .validations7335 is expected to validate that :name cannot be empty/falsy7336 is expected to validate that the length of :name is at most 2007337 is expected to validate that the length of :description is at most 10007338 is expected to validate that :timezone cannot be empty/falsy7339 is expected to validate that :timezone is either ‹"Etc/GMT+12"›, ‹"Pacific/Pago_Pago"›, ‹"Pacific/Midway"›, ‹"Pacific/Honolulu"›, ‹"America/Juneau"›, ‹"America/Los_Angeles"›, ‹"America/Tijuana"›, ‹"America/Phoenix"›, ‹"America/Chihuahua"›, ‹"America/Mazatlan"›, ‹"America/Denver"›, ‹"America/Guatemala"›, ‹"America/Chicago"›, ‹"America/Mexico_City"›, ‹"America/Mexico_City"›, ‹"America/Monterrey"›, ‹"America/Regina"›, ‹"America/Bogota"›, ‹"America/New_York"›, ‹"America/Indiana/Indianapolis"›, ‹"America/Lima"›, ‹"America/Lima"›, ‹"America/Halifax"›, ‹"America/Caracas"›, ‹"America/Guyana"›, ‹"America/La_Paz"›, ‹"America/Puerto_Rico"›, ‹"America/Santiago"›, ‹"America/St_Johns"›, ‹"America/Sao_Paulo"›, ‹"America/Argentina/Buenos_Aires"›, ‹"America/Godthab"›, ‹"America/Montevideo"›, ‹"Atlantic/South_Georgia"›, ‹"Atlantic/Azores"›, ‹"Atlantic/Cape_Verde"›, ‹"Europe/London"›, ‹"Europe/Lisbon"›, ‹"Europe/London"›, ‹"Africa/Monrovia"›, ‹"Etc/UTC"›, ‹"Europe/Amsterdam"›, ‹"Europe/Belgrade"›, ‹"Europe/Berlin"›, ‹"Europe/Zurich"›, ‹"Europe/Bratislava"›, ‹"Europe/Brussels"›, ‹"Europe/Budapest"›, ‹"Africa/Casablanca"›, ‹"Europe/Copenhagen"›, ‹"Europe/Dublin"›, ‹"Europe/Ljubljana"›, ‹"Europe/Madrid"›, ‹"Europe/Paris"›, ‹"Europe/Prague"›, ‹"Europe/Rome"›, ‹"Europe/Sarajevo"›, ‹"Europe/Skopje"›, ‹"Europe/Stockholm"›, ‹"Europe/Vienna"›, ‹"Europe/Warsaw"›, ‹"Africa/Algiers"›, ‹"Europe/Zagreb"›, ‹"Europe/Zurich"›, ‹"Europe/Athens"›, ‹"Europe/Bucharest"›, ‹"Africa/Cairo"›, ‹"Africa/Harare"›, ‹"Europe/Helsinki"›, ‹"Asia/Jerusalem"›, ‹"Europe/Kaliningrad"›, ‹"Europe/Kiev"›, ‹"Africa/Johannesburg"›, ‹"Europe/Riga"›, ‹"Europe/Sofia"›, ‹"Europe/Tallinn"›, ‹"Europe/Vilnius"›, ‹"Asia/Baghdad"›, ‹"Europe/Istanbul"›, ‹"Asia/Kuwait"›, ‹"Europe/Minsk"›, ‹"Europe/Moscow"›, ‹"Africa/Nairobi"›, ‹"Asia/Riyadh"›, ‹"Europe/Moscow"›, ‹"Europe/Volgograd"›, ‹"Asia/Tehran"›, ‹"Asia/Muscat"›, ‹"Asia/Baku"›, ‹"Asia/Muscat"›, ‹"Europe/Samara"›, ‹"Asia/Tbilisi"›, ‹"Asia/Yerevan"›, ‹"Asia/Kabul"›, ‹"Asia/Yekaterinburg"›, ‹"Asia/Karachi"›, ‹"Asia/Karachi"›, ‹"Asia/Tashkent"›, ‹"Asia/Kolkata"›, ‹"Asia/Kolkata"›, ‹"Asia/Kolkata"›, ‹"Asia/Kolkata"›, ‹"Asia/Colombo"›, ‹"Asia/Kathmandu"›, ‹"Asia/Almaty"›, ‹"Asia/Dhaka"›, ‹"Asia/Dhaka"›, ‹"Asia/Urumqi"›, ‹"Asia/Rangoon"›, ‹"Asia/Bangkok"›, ‹"Asia/Bangkok"›, ‹"Asia/Jakarta"›, ‹"Asia/Krasnoyarsk"›, ‹"Asia/Novosibirsk"›, ‹"Asia/Shanghai"›, ‹"Asia/Chongqing"›, ‹"Asia/Hong_Kong"›, ‹"Asia/Irkutsk"›, ‹"Asia/Kuala_Lumpur"›, ‹"Australia/Perth"›, ‹"Asia/Singapore"›, ‹"Asia/Taipei"›, ‹"Asia/Ulaanbaatar"›, ‹"Asia/Tokyo"›, ‹"Asia/Tokyo"›, ‹"Asia/Seoul"›, ‹"Asia/Tokyo"›, ‹"Asia/Yakutsk"›, ‹"Australia/Adelaide"›, ‹"Australia/Darwin"›, ‹"Australia/Brisbane"›, ‹"Australia/Melbourne"›, ‹"Pacific/Guam"›, ‹"Australia/Hobart"›, ‹"Australia/Melbourne"›, ‹"Pacific/Port_Moresby"›, ‹"Australia/Sydney"›, ‹"Asia/Vladivostok"›, ‹"Asia/Magadan"›, ‹"Pacific/Noumea"›, ‹"Pacific/Guadalcanal"›, ‹"Asia/Srednekolymsk"›, ‹"Pacific/Auckland"›, ‹"Pacific/Fiji"›, ‹"Asia/Kamchatka"›, ‹"Pacific/Majuro"›, ‹"Pacific/Auckland"›, ‹"Pacific/Chatham"›, ‹"Pacific/Tongatapu"›, ‹"Pacific/Apia"›, or ‹"Pacific/Fakaofo"›7340 when the oncall schedule with the same name exists7341 has validation errors7342 scopes7343 .for_project7344 is expected to contain exactly #<IncidentManagement::OncallSchedule id: 5, created_at: "2022-11-11 01:10:24.556791902 +0000", update...ct_id: 679, iid: 1, name: "On-call Schedule #4", description: [FILTERED], timezone: "Europe/Berlin">7345 behaves like AtomicInternalId7346 .has_internal_id7347 Module inclusion7348 is expected to includes the AtomicInternalId module7349 Validation7350 when presence validation is required7351 when creating an object7352 raises an error if the internal id is blank7353 when updating an object7354 raises an error if the internal id is blank7355 when presence validation is not required7356 when creating an object7357 does not raise an error if the internal id is blank (PENDING: No reason given)7358 when updating an object7359 does not raise an error if the internal id is blank (PENDING: No reason given)7360 Creating an instance7361 saves a new instance properly7362 internal id generation7363 calls InternalId.generate_next and sets internal id attribute7364 does not overwrite an existing internal id7365 when the instance has an internal ID set7366 calls InternalId.update_last_value and sets the `last_value` to that of the instance7367 unsetting the instance internal id on rollback7368 when the internal id has been changed7369 when the internal id is automatically set7370 clears it on the instance7371 when the internal id is manually set7372 does not clear it on the instance7373 when the internal id has not been changed7374 preserves the value on the instance7375 supply of internal ids7376 provides a persistent supply of IID values, sensitive to the current state7377 #reset_scope_internal_id_attribute7378 rewinds the allocated IID7379 allocates the same IID7380 .for_iid7381 returns only records with that IID7382GitlabSubscriptions::Reconciliations::CalculateSeatCountDataService7383 #execute7384 with no subscription7385 is expected to equal nil7386 when the max_seats_used has not been updated on the subscription7387 returns nil7388 when the subscription has expired7389 returns nil7390 when the subscription is a trial7391 returns nil7392 when conditions are not met7393 when it is not SaaS7394 is expected to equal nil7395 when namespace is not a group7396 is expected to equal nil7397 when the alert was dismissed7398 is expected to equal nil7399 when the user does not have admin rights to the group7400 is expected to equal nil7401 when the subscription is not eligible for usage alerts7402 is expected to equal nil7403 when max seats used are more than the subscription seats7404 is expected to equal nil7405 with threshold limits7406 when limits are not met7407 seats: 15, max_seats_used: 137408 is expected to equal nil7409 seats: 24, max_seats_used: 207410 is expected to equal nil7411 seats: 35, max_seats_used: 297412 is expected to equal nil7413 seats: 100, max_seats_used: 907414 is expected to equal nil7415 seats: 1000, max_seats_used: 9497416 is expected to equal nil7417 when limits are met7418 seats: 15, max_seats_used: 147419 is expected to eq {:namespace=>#<Group id:2072 @group216>, :remaining_seat_count=>1, :seats_in_use=>14, :total_seat_count=>15}7420 seats: 24, max_seats_used: 227421 is expected to eq {:namespace=>#<Group id:2072 @group216>, :remaining_seat_count=>2, :seats_in_use=>22, :total_seat_count=>24}7422 seats: 35, max_seats_used: 327423 is expected to eq {:namespace=>#<Group id:2072 @group216>, :remaining_seat_count=>3, :seats_in_use=>32, :total_seat_count=>35}7424 seats: 100, max_seats_used: 937425 is expected to eq {:namespace=>#<Group id:2072 @group216>, :remaining_seat_count=>7, :seats_in_use=>93, :total_seat_count=>100}7426 seats: 1000, max_seats_used: 9507427 is expected to eq {:namespace=>#<Group id:2072 @group216>, :remaining_seat_count=>50, :seats_in_use=>950, :total_seat_count=>1000}7428Mutations::Projects::SetLocked7429 #resolve7430 raises an error if the resource is not accessible to the user7431 when the user can lock the file7432 when file_locks feature is not available7433 raises an error7434 when file is not locked7435 sets path locks for the project7436 when file is already locked7437 does not change the lock7438 when LFS is enabled7439 locks the file in LFS7440 when file is not tracked in LFS7441 does not lock the file7442 when locking a directory7443 locks the directory7444 does not locks the directory through LFS7445 when the user can unlock the file7446 when file is already locked by the same user7447 unlocks the file7448 when file is already locked by somebody else7449 returns an error7450 when file is not locked7451 does nothing7452 when LFS is enabled7453 when file is locked7454 unlocks the file7455 unlocks the file in LFS7456 when file is not tracked in LFS7457 does not unlock the file7458 when unlocking a directory7459 unlocks the directory7460 does not call the LFS unlock service7461DastSiteToken7462 associations7463 is expected to belong to project required: false7464 validations7465 is expected to be valid7466 is expected to validate that :project_id cannot be empty/falsy7467 is expected to validate that the length of :token is at most 2557468 is expected to validate that the length of :url is at most 2557469 is expected to validate that :token cannot be empty/falsy7470 is expected to validate that :url cannot be empty/falsy7471 is expected to validate that :token is case-sensitively unique7472 is expected to validate that :url is case-sensitively unique within the scope of :project_id7473 behaves like dast url addressable7474 includes UrlAddressable7475 when the url is not public7476 is valid7477 #dast_site7478 when dast_site exists7479 finds the associated dast_site7480 when dast_site does not exist7481 returns nil7482Gitlab::SPDX::CatalogueGateway7483 #fetch7484 when feature flag is enabled7485 is expected to equal 4427486 when feature flag is disabled7487 when endpoint is healthy7488 is expected to equal 3967489 when the licenses.json endpoint is not reachable7490 is expected to be zero7491 is expected to have received add_event(:spdx_fetch_failed, {:http_status_code=>404}) 1 time7492 when an `Net::OpenTimeout` is raised while trying to connect to the endpoint7493 is expected to be zero7494 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7495 when an `Net::ReadTimeout` is raised while trying to connect to the endpoint7496 is expected to be zero7497 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7498 when an `Net::WriteTimeout` is raised while trying to connect to the endpoint7499 is expected to be zero7500 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7501 when an `Gitlab::HTTP::ReadTotalTimeout` is raised while trying to connect to the endpoint7502 is expected to be zero7503 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7504 when an `EOFError` is raised while trying to connect to the endpoint7505 is expected to be zero7506 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7507 when an `SocketError` is raised while trying to connect to the endpoint7508 is expected to be zero7509 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7510 when an `OpenSSL::SSL::SSLError` is raised while trying to connect to the endpoint7511 is expected to be zero7512 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7513 when an `OpenSSL::OpenSSLError` is raised while trying to connect to the endpoint7514 is expected to be zero7515 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7516 when an `Errno::ECONNRESET` is raised while trying to connect to the endpoint7517 is expected to be zero7518 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7519 when an `Errno::ECONNREFUSED` is raised while trying to connect to the endpoint7520 is expected to be zero7521 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7522 when an `Errno::EHOSTUNREACH` is raised while trying to connect to the endpoint7523 is expected to be zero7524 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7525 when an `Errno::ENETUNREACH` is raised while trying to connect to the endpoint7526 is expected to be zero7527 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7528 when an `Gitlab::HTTP::BlockedUrlError` is raised while trying to connect to the endpoint7529 is expected to be zero7530 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7531 when an `Gitlab::HTTP::RedirectionTooDeep` is raised while trying to connect to the endpoint7532 is expected to be zero7533 is expected to have received add_event(:spdx_fetch_failed, anything) 1 time7534BoardsHelper7535 #build_issue_link_base7536 when epic board7537 generates the correct url7538 #board_base_url7539 when epic board7540 generates the correct url7541 #board_data7542 issue board7543 when no iteration7544 serializes board without iteration7545 when board is scoped to an iteration7546 serializes board with iteration7547 group and project-level licensed features7548 when 'multiple_issue_assignees' is available7549 indicates that the feature is available in a boolean string7550 when 'multiple_issue_assignees' is unavailable7551 indicates that the feature is unavailable in a boolean string7552 when 'issue_weights' is available7553 indicates that the feature is available in a boolean string7554 when 'issue_weights' is unavailable7555 indicates that the feature is unavailable in a boolean string7556 when 'board_milestone_lists' is available7557 indicates that the feature is available in a boolean string7558 when 'board_milestone_lists' is unavailable7559 indicates that the feature is unavailable in a boolean string7560 when 'board_assignee_lists' is available7561 indicates that the feature is available in a boolean string7562 when 'board_assignee_lists' is unavailable7563 indicates that the feature is unavailable in a boolean string7564 when 'issuable_health_status' is available7565 indicates that the feature is available in a boolean string7566 when 'issuable_health_status' is unavailable7567 indicates that the feature is unavailable in a boolean string7568 when 'scoped_labels' is available7569 indicates that the feature is available in a boolean string7570 when 'scoped_labels' is unavailable7571 indicates that the feature is unavailable in a boolean string7572 when 'scoped_issue_board' is available7573 indicates that the feature is available in a boolean string7574 when 'scoped_issue_board' is unavailable7575 indicates that the feature is unavailable in a boolean string7576 group-level licensed features7577 when 'board_iteration_lists' is available7578 indicates that the feature is available in a boolean string7579 when 'board_iteration_lists' is unavailable7580 indicates that the feature is unavailable in a boolean string7581 when 'epics' is available7582 indicates that the feature is available in a boolean string7583 when 'epics' is unavailable7584 indicates that the feature is unavailable in a boolean string7585 when 'iterations' is available7586 indicates that the feature is available in a boolean string7587 when 'iterations' is unavailable7588 indicates that the feature is unavailable in a boolean string7589 when 'issuable_health_status' is available7590 indicates that the feature is available in a boolean string7591 when 'issuable_health_status' is unavailable7592 indicates that the feature is unavailable in a boolean string7593 when 'subepics' is available7594 indicates that the feature is available in a boolean string7595 when 'subepics' is unavailable7596 indicates that the feature is unavailable in a boolean string7597 epic board7598 returns the correct permission for creating an epic from board7599 returns the correct permission for updating the board7600 returns the correct permission for administering the boards lists7601 returns the correct permission for administering the boards7602AuditEventFinder7603 #execute7604 scoping the results7605 when project level7606 finds all project events7607 when group level7608 when audit_log_group_level feature enabled7609 finds all group and project events7610 when audit_log_group_level feature disabled7611 finds all group events7612 when instance level7613 finds all instance level events7614 when invalid level7615 raises exception7616 filtering by entity_id7617 no entity_type provided7618 behaves like no filtering7619 finds all the events7620 invalid entity_id7621 ignores entity_id and returns all events for given entity_type7622 User Event7623 behaves like finds the right event7624 finds the right event7625 Project Event7626 behaves like finds the right event7627 finds the right event7628 Group Event7629 behaves like finds the right event7630 finds the right event7631 filtering by entity_type7632 User Event7633 finds the right user event7634 Project Event7635 finds the right project event7636 Group Event7637 finds the right group event7638 invalid entity types7639 blank entity_type7640 behaves like no filtering7641 finds all the events7642 invalid entity_type7643 behaves like no filtering7644 finds all the events7645 filtering by author_id7646 no author_id provided7647 behaves like no filtering7648 finds all the events7649 invalid author_id7650 ignores author_id and returns all events irrespective of entity_type7651 Group Event7652 behaves like finds the right event7653 finds the right event7654 Project Event7655 behaves like finds the right event7656 finds the right event7657 filtering by created_at7658 through created_after7659 returns events created on or after the given date7660 through created_before7661 returns events created on or before the given date7662 through created_after and created_before7663 returns events created between the given dates7664 filtering by entity_username7665 User Event7666 finds the right event7667 filtering by author_username7668 username is too short7669 ignores author_username and returns all events irrespective of entity_type7670 username is too long7671 ignores author_username and returns all events irrespective of entity_type7672 Instance Event7673 finds all the events the user authored7674 Group Event7675 behaves like finds the right event7676 finds the right event7677 Project Event7678 behaves like finds the right event7679 finds the right event7680 #find_by!7681 is expected to eq #<AuditEvent id: 64, author_id: 1199, entity_id: 1196, entity_type: "User", details: {:change=>"email...Jones1383", created_at: "2022-11-08 01:11:02.984028975 +0000", target_type: "User", target_id: 1200>7682 non-existent id provided7683 raises exception7684SubscriptionPresenter7685 #plan7686 is expected to eq "ultimate"7687 #notify_admins?7688 remaining_days_count: nil, expected_result: false7689 is expected to equal false7690 remaining_days_count: 0, expected_result: true7691 is expected to equal true7692 remaining_days_count: -1 days and 15 seconds, expected_result: true7693 is expected to equal true7694 remaining_days_count: 15, expected_result: true7695 is expected to equal true7696 remaining_days_count: 1 day and 15 seconds, expected_result: false7697 is expected to equal false7698 #notify_users?7699 is expected to equal false7700 #block_changes_at7701 is expected to eq Sat, 25 Nov 20237702 when end_date is nil7703 is nil7704 #block_changes?7705 end_date is nil7706 is expected to equal false7707 is not expired7708 is false7709 is expired7710 is not past grace period7711 is false7712 is past grace period7713 is true7714 #will_block_changes?7715 when end_date exists7716 is expected to equal true7717 when end_date does not exist7718 is false7719 #remaining_days7720 is nil when end_date is nil7721 returns the number of days between end_date and today7722 is 0 if expired7723Gitlab::SubscriptionPortal::Clients::Graphql7724 #activate7725 returns success7726 when there are future subscriptions7727 returns success7728 when the activation code is invalid7729 returns failure7730 when remote server returns error7731 returns connectivity error7732 when the remote server is unreachable7733 returns connectivity error7734 #plan_upgrade_offer7735 when the response contains errors7736 returns a failure7737 when the response does not contain errors7738 eligible: true, assisted_plan_id: "111111", free_plan_id: "111111"7739 returns the correct response7740 eligible: true, assisted_plan_id: "111111", free_plan_id: nil7741 returns the correct response7742 eligible: true, assisted_plan_id: nil, free_plan_id: "111111"7743 returns the correct response7744 when subscription is nil7745 returns the correct response7746 #subscription_last_term7747 returns success7748 returns failure7749 with no namespace_id7750 returns failure7751 #subscription_seat_usage_alerts_eligibility7752 returns success when the subscription can be found7753 returns failure when the subscription cannot be found7754 with no namespace_id7755 returns failure7756 when there is a network connectivity error7757 returns an error response7758 #get_plans7759 when the request is successful7760 returns the data7761 when the request is unsuccessful7762 returns a failure response and logs the error7763 #filter_purchase_eligible_namespaces7764 when the response is successful7765 returns the namespace data7766 when the response is unsuccessful7767 returns the error message7768 #update_namespace_name7769 returns success7770 returns top level errors7771 returns errors as data7772 returns connectivity error when remote server returns error7773 returns connectivity error when the remote server is unreachable7774 #send_seat_overage_notification7775 when the subscription portal response is successful7776 returns successfully7777 when the subscription portal response is unsuccessful7778 returns an error response7779 when there is a network connectivity error7780 returns an error response7781Security::Ingestion::Tasks::IngestVulnerabilities::MarkResolvedAsDetected7782 changes state of resolved Vulnerabilities back to detected7783 creates state transition entry for each vulnerability7784GroupGroupLink7785 scopes7786 .in_shared_group7787 provides correct link records7788 .not_in_shared_with_group7789 provides correct link records7790 validations7791 #group_with_allowed_email_domains7792 shared group is the root ancestor7793 behaves like restricted membership by email domain7794 shared group has membership restricted by allowed email domains7795 shared with group with a subset of allowed email domains7796 is expected to be valid7797 shared with group containing domains outside the shared group allowed email domains7798 is expected to be invalid7799 shared with group does not have membership restricted by allowed domains7800 is expected to be invalid7801 shared group does not have membership restricted by allowed domains7802 shared with group has membership restricted by allowed email domains7803 is expected to be valid7804 shared with group does not have membership restricted by allowed domains7805 is expected to be valid7806 shared group is a subgroup7807 behaves like restricted membership by email domain7808 shared group has membership restricted by allowed email domains7809 shared with group with a subset of allowed email domains7810 is expected to be valid7811 shared with group containing domains outside the shared group allowed email domains7812 is expected to be invalid7813 shared with group does not have membership restricted by allowed domains7814 is expected to be invalid7815 shared group does not have membership restricted by allowed domains7816 shared with group has membership restricted by allowed email domains7817 is expected to be valid7818 shared with group does not have membership restricted by allowed domains7819 is expected to be valid7820 shared with group is a subgroup7821 behaves like restricted membership by email domain7822 shared group has membership restricted by allowed email domains7823 shared with group with a subset of allowed email domains7824 is expected to be valid7825 shared with group containing domains outside the shared group allowed email domains7826 is expected to be invalid7827 shared with group does not have membership restricted by allowed domains7828 is expected to be invalid7829 shared group does not have membership restricted by allowed domains7830 shared with group has membership restricted by allowed email domains7831 is expected to be valid7832 shared with group does not have membership restricted by allowed domains7833 is expected to be valid7834 shared and shared with group are subgroups7835 behaves like restricted membership by email domain7836 shared group has membership restricted by allowed email domains7837 shared with group with a subset of allowed email domains7838 is expected to be valid7839 shared with group containing domains outside the shared group allowed email domains7840 is expected to be invalid7841 shared with group does not have membership restricted by allowed domains7842 is expected to be invalid7843 shared group does not have membership restricted by allowed domains7844 shared with group has membership restricted by allowed email domains7845 is expected to be valid7846 shared with group does not have membership restricted by allowed domains7847 is expected to be valid7848Gitlab::Usage::Metrics::Instrumentations::CountDeploymentApprovalsMetric7849 for all time frame7850 behaves like a correct instrumented metric value and query7851 behaves like a correct instrumented metric value7852 has correct value7853 behaves like a correct instrumented metric query7854 has correct generate query7855 for 28d time frame7856 behaves like a correct instrumented metric value and query7857 behaves like a correct instrumented metric value7858 has correct value7859 behaves like a correct instrumented metric query7860 has correct generate query7861Gitlab::Auth::Smartcard::LdapCertificate7862 #find_or_create_user7863 user and smartcard ldap certificate already exists7864 finds existing user7865 does not create new user7866 user exists but it is using a new ldap certificate7867 finds existing user7868 does create new user identity7869 user already has a different ldap certificate identity7870 doesn't create a new identity7871 doesn't create a new user7872 user does not exist7873 creates user with correct attributes7874 creates identity7875 creates identity with correct attributes7876 calls Users::BuildService with correct params7877 behaves like creates user7878 is expected to change `User.count` from 0 to 17879 when the current minimum password length is different from the default minimum password length7880 behaves like creates user7881 is expected to change `User.count` from 0 to 17882 username generation7883 uses LDAP uid7884 creates user with correct username7885 avoids conflicting namespaces7886 creates user with correct username7887 behaves like a valid certificate is required7888 invalid certificate7889 returns nil7890 incorrect certificate7891 returns nil7892 behaves like a certificate store7893 .store7894 loads CA bundle7895 uses correct method7896 without valid CA file7897 raises error7898Resolvers::Epics::DefaultProjectForIssueCreationResolver7899 # order random7900 is expected to have nullable GraphQL type Project7901 #resolve7902 without sufficient rights7903 is expected to be nil7904 when there has been no event created7905 is expected to be nil7906 when there is no signed in user7907 is expected to be nil7908 with sufficient rights7909 when last event was an issue creation7910 is expected to eq #<Project id:736 group245/project728>>7911 when last event was not an issue creation7912 is expected to be nil7913 when there are multiple events on different projects7914 is expected to eq #<Project id:736 group245/project728>>7915 when project is outside of the group hierarchy7916 is expected to be nil7917Gitlab::Auth::GroupSaml::DynamicSettings7918 exposes a settings hash7919 behaves like an enumerator for settings7920 configures requests to transfrom redirect_to to RelayState7921 sets settings from saml_provider7922 assertion_consumer_service_url7923 issuer7924 idp_cert_fingerprint7925 idp_sso_target_url7926 name_identifier_format7927 sets default settings without saml_provider7928 assertion_consumer_service_url7929 issuer7930 name_identifier_format7931 excludes configured keys7932Gitlab::Auth::Ldap::Person7933 includes the EE module7934 .ldap_attributes7935 appends EE-specific attributes7936 appends first and last name attributes7937 .find_by_email7938 tries finding for each configured email attribute7939 returns nil when no user was found7940 .find_by_certificate_issuer_and_serial7941 searches by certificate assertion7942 .find_by_kerberos_principal7943 when simple LDAP linking is not configured7944 LDAP server is not for kerberos realm7945 returns nil without searching7946 LDAP server is for kerberos realm7947 searches by configured uid attribute7948 when simple LDAP linking is enabled7949 principal domain matches an allowed realm7950 searches by configured uid attribute7951 principal domain does not match an allowed realm7952 returns nil without searching7953 .ldap_attributes7954 includes a real attribute name7955 excludes integers7956 excludes false values7957 excludes true values7958 #kerberos_principal7959 returns the principal combining the configured UID and DC components of the distinguishedName7960 #ssh_keys7961 when the SSH key is literal7962 includes the SSH key7963 when the SSH key is prefixed7964 includes the SSH key7965 when the SSH key is suffixed7966 includes the SSH key7967 when the SSH key is followed by a newline7968 includes the SSH key7969 when the key is not an SSH key7970 is empty7971 when there are multiple keys7972 includes both SSH keys7973 #memberof7974 returns an empty array if the field was not present7975 returns the values of `memberof` if the field was present7976 #cn_from_memberof7977 gets the group cn from the memberof value7978 doesn't break when there is no CN property7979 supports dashes in the group cn7980 #group_cns7981 returns only CNs from the memberof values7982Releases::CreateService7983 group milestones7984 when a group milestone is passed7985 when licenced7986 adds the group milestone7987 when unlicensed7988 returns an error7989 when a supergroup milestone is passed7990 raises an error7991AppSec::Dast::Profiles::CreateAssociationsService7992 #execute7993 when the feature is licensed7994 when the user cannot create dast scans7995 behaves like an error occurred during the dast profile association7996 behaves like an error occurred7997 communicates failure7998 dast_site_profile7999 behaves like it attempts to associate the profile8000 when the profile exists8001 assigns the association8002 when the profile is not provided8003 behaves like it has no effect8004 does not assign the association8005 when the profile does not exist8006 behaves like an error occurred during the dast profile association8007 behaves like an error occurred8008 communicates failure8009 dast_scanner_profile8010 behaves like it attempts to associate the profile8011 when the profile exists8012 assigns the association8013 when the profile is not provided8014 behaves like it has no effect8015 does not assign the association8016 when the profile does not exist8017 behaves like an error occurred during the dast profile association8018 behaves like an error occurred8019 communicates failure8020 when the user cannot create dast scans8021 behaves like an error occurred during the dast profile association8022 behaves like an error occurred8023 communicates failure8024 when the build has multiple dast_configurations8025 with different name and same project8026 associate the associations correctly8027 with same named profiles from different project8028 associate the associations correctly8029 when not licensed8030 behaves like an error occurred during the dast profile association8031 behaves like an error occurred8032 communicates failure8033Security::TrainingUrlsFinder8034 no identifier with cwe external type8035 returns empty list8036 identifiers with cwe external type8037 when there is no training provider enabled for project8038 returns empty list8039 when there is training provider enabled for project8040 calls Security::TrainingProviders::KontraUrlFinder#execute8041 when training url has been reactively cached8042 returns training urls list with status completed8043 when a filename with extension .jsp is provided8044 requests urls with the language java8045 when a filename with extension .jspx is provided8046 requests urls with the language java8047 when a filename with extension .py is provided8048 requests urls with the language python8049 when a filename with extension .scala is provided8050 requests urls with the language scala8051 when a filename with extension .sc is provided8052 requests urls with the language scala8053 when a filename with extension .js is provided8054 requests urls with the language javascript8055 when a filename with extension .ts is provided8056 requests urls with the language typescript8057 when a filename with extension .php is provided8058 requests urls with the language php8059 when a filename with extension .rb is provided8060 requests urls with the language ruby8061 when a filename with extension .go is provided8062 requests urls with the language go8063 when a filename with extension .kt is provided8064 requests urls with the language kotlin8065 when a filename with extension .kts is provided8066 requests urls with the language kotlin8067 when a filename with extension .ktm is provided8068 requests urls with the language kotlin8069 when a filename with extension .cs is provided8070 requests urls with the language csharp8071 when training url has not yet been reactively cached8072 returns training urls list with status pending8073 when a filename is provided8074 returns training urls list with status pending8075 when training urls finder returns nil url8076 returns empty list when training urls finder returns nil8077 when sub class in not defined for provider8078 returns empty list8079Boards::BoardsFinder8080 behaves like multiple boards list service8081 #execute8082 returns all issue boards8083 returns boards ordered by name8084 when wanting a specific board8085 returns board specified by id8086 raises exception when board is not found8087 behaves like multiple boards list service8088 returns the first issue board when multiple issue boards is disabled8089 #execute8090 returns all issue boards8091 returns boards ordered by name8092 when wanting a specific board8093 returns board specified by id8094 raises exception when board is not found8095DAST-API.latest.gitlab-ci.yml8096 is expected not to be nil8097 the template file8098 uses the production repository8099 doesn't use the staging repository8100 the created pipeline8101 when no stages8102 when project has no stages8103 includes no jobs8104 when stages includes dast8105 when project has no license8106 includes job to display error8107 when project has Ultimate license8108 behaves like acts as branch pipeline8109 when branch pipeline8110 includes a job8111 behaves like acts as MR pipeline8112 when MR pipeline8113 includes a job8114 when DAST_API_DISABLED=18115 includes no jobs8116 when CI_GITLAB_FIPS_MODE=false8117 sets DAST_API_IMAGE_SUFFIX to ""8118 when CI_GITLAB_FIPS_MODE=true8119 sets DAST_API_IMAGE_SUFFIX to "-fips"8120VulnerabilityPolicy8121 read_security_resource8122 when the security_dashboard feature is enabled8123 when the current user is not a project member8124 is expected to be disallowed :read_security_resource8125 is expected to be disallowed :create_note8126 when the current user has developer access to the vulnerability's project8127 is expected to be allowed :read_security_resource8128 is expected to be allowed :create_note8129 when the user is project member but does not have proper access8130 is expected to be disallowed :create_note8131 when the security_dashboard feature is disabled8132 is expected to be disallowed :read_security_resource8133 is expected to be disallowed :create_note8134Ci::Runners::StaleGroupRunnersPruneService8135 on self-managed instance8136 behaves like perform on empty groups relation does not prune any runners8137 with empty groups relation8138 does not prune any runners and returns :success status8139 when stale_runner_cleanup_for_namespace licensed feature is available8140 with some stale group runners on group18141 behaves like pruning is executed on stale runners8142 prunes all runners in batches8143 when stale_runner_cleanup_for_namespace licensed feature is unavailable8144 with some stale group runners on group18145 behaves like pruning is not executed on stale runners8146 does not prune any runners8147 on .com8148 behaves like perform on empty groups relation does not prune any runners8149 with empty groups relation8150 does not prune any runners and returns :success status8151 with some stale group runners on group18152 behaves like pruning is executed on stale runners8153 prunes all runners in batches8154 with premium plan8155 behaves like pruning is not executed on stale runners8156 does not prune any runners8157ApprovalWrappedCodeOwnerRule8158 #approvals_required8159 feature_enabled: true, optional_section: false, approver_count: 0, expected_required_approvals: 08160 when project.code_owner_approval_required_available? is true8161 when the project doesn't require code owner approval on all MRs8162 returns the expected number of approvals for protected_branches that do require approval8163 when project.code_owner_approval_required_available? is falsy8164 returns nil8165 feature_enabled: true, optional_section: false, approver_count: 2, expected_required_approvals: 18166 when project.code_owner_approval_required_available? is true8167 when the project doesn't require code owner approval on all MRs8168 returns the expected number of approvals for protected_branches that do require approval8169 when project.code_owner_approval_required_available? is falsy8170 returns nil8171 feature_enabled: true, optional_section: true, approver_count: 2, expected_required_approvals: 08172 when project.code_owner_approval_required_available? is true8173 when the project doesn't require code owner approval on all MRs8174 returns the expected number of approvals for protected_branches that do require approval8175 when project.code_owner_approval_required_available? is falsy8176 returns nil8177 feature_enabled: false, optional_section: false, approver_count: 2, expected_required_approvals: 08178 when project.code_owner_approval_required_available? is true8179 when the project doesn't require code owner approval on all MRs8180 returns the expected number of approvals for protected_branches that do require approval8181 when project.code_owner_approval_required_available? is falsy8182 returns nil8183 feature_enabled: false, optional_section: false, approver_count: 0, expected_required_approvals: 08184 when project.code_owner_approval_required_available? is true8185 when the project doesn't require code owner approval on all MRs8186 returns the expected number of approvals for protected_branches that do require approval8187 when project.code_owner_approval_required_available? is falsy8188 returns nil8189RequirementsManagement::ExportCsvService8190 renders csv to string8191 #email8192 emails csv8193 renders with a target filesize8194 includes8195 includes the columns required for import8196 iid8197 title8198 description8199 author8200 author username8201 created date8202 when last test report failed8203 latest test report state8204 latest test report created at8205 when last test report passed8206 latest test report state8207 latest test report created at8208 when selected fields are present8209 returns data for requested fields8210MergeRequestPollWidgetEntity8211 Merge Trains8212 has merge train entity8213 when the merge train feature is disabled8214 does not have merge trains count8215 when the merge request is not on a merge train8216 does not have merge train index8217UsersFinder8218 #execute8219 with a normal user8220 with LDAP users8221 returns ldap users by default8222 returns only non-ldap users with skip_ldap: true8223 with SAML users8224 returns all users by default8225 returns only saml users from the provided saml_provider_id8226 with an admin user8227 with LDAP users8228 returns ldap users by default8229 returns only non-ldap users with skip_ldap: true8230 with SAML users8231 returns all users by default8232 returns only saml users from the provided saml_provider_id8233DAST-API.gitlab-ci.yml8234 is expected not to be nil8235 the template file8236 uses the production repository8237 doesn't use the staging repository8238 the created pipeline8239 when no stages8240 when project has no stages8241 includes no jobs8242 when stages includes dast8243 when project has no license8244 includes job to display error8245 when project has Ultimate license8246 by default8247 includes a job8248 when DAST_API_DISABLED=18249 includes no jobs8250 when CI_GITLAB_FIPS_MODE=false8251 sets DAST_API_IMAGE_SUFFIX to ""8252 when CI_GITLAB_FIPS_MODE=true8253 sets DAST_API_IMAGE_SUFFIX to "-fips"8254DescriptionVersion8255 associations8256 is expected to belong to epic required: false8257 validations8258 is valid when epic_id is set8259 #previous_version8260 returns the previous version for the same issuable8261 #delete!8262 expires issuable etag cache8263 when start_id is not present8264 only delayed deletes description_version8265 when start_id is present8266 delayed deletes description versions of same issuable up to start_id8267BilledUsersFinder8268 #execute8269 without members8270 returns an empty object8271 with members8272 when a search parameter is provided8273 when a sorting parameter is provided (eg name descending)8274 sorts results accordingly8275 when a sorting parameter is not provided8276 sorts expected results in name_asc order8277 when a search parameter is not present8278 returns expected users in name asc order when a sorting is not provided either8279 and when a sorting parameter is provided (eg name descending)8280 sorts results accordingly8281 with billable group members including shared members8282 returns a hash of users and user ids8283 returns the correct user ids8284Gitlab::Email::Handler::ServiceDeskHandler8285 service desk is enabled for the project8286 when everything is fine8287 when using inherited issue templates8288 from instance8289 appends instance issue description template8290 from groups8291 appends group issue description template8292Ci::Minutes::AdditionalPacks::ChangeNamespaceService8293 #execute8294 with a non-admin user8295 raises an error8296 with an admin user8297 with valid namespace and target namespace8298 when both namespaces are groups8299 when updating is successful8300 moves all existing packs to the target namespace8301 kicks off refresh ci minutes service for namespace and target8302 when updating packs fails8303 rolls back updates for all packs8304 when the namespace has no additional packs to move8305 returns success8306 when a namespace is a kind of user8307 when updating is successful8308 moves all existing packs to the target namespace8309 kicks off refresh ci minutes service for namespace and target8310 when updating packs fails8311 rolls back updates for all packs8312 when the namespace has no additional packs to move8313 returns success8314 when a target is a kind of user8315 when updating is successful8316 moves all existing packs to the target namespace8317 kicks off refresh ci minutes service for namespace and target8318 when updating packs fails8319 rolls back updates for all packs8320 when the namespace has no additional packs to move8321 returns success8322 when the namespace is not provided8323 returns an error8324 when the target namespace is not provided8325 returns an error8326 when the namespace is not a top-level namespace8327 returns an error8328 when the target namespace is not a top-level namespace8329 returns an error8330 when the namespace is the same as the target8331 returns an error8332Approvals::ScanFindingWrappedRuleSet8333 #wrapped_rules8334 returns only one rule8335 with various orchestration_policy_idx8336 returns one rule for each orchestration_policy_idx8337 with unapproved rules8338 returns sorted based on approval8339 with various security_orchestration_policy_configuration_id8340 returns one rule for each security_orchestration_policy_configuration_id8341EE::MergeRequestMetricsService8342 #merge8343 saves metrics with productivity_data8344 storing line counts8345 updates `added_lines`8346 updates `removed_lines`8347Ci::PlayBridgeService#execute8348 behaves like prevents playing job when credit card is required8349 when user has required credit card8350 does not raise any exception8351 when user does not have required credit card8352 raises an exception and logs the failure8353Gitlab::SeatLinkData8354 #initialize8355 when passing no params8356 returns object with default attributes set8357 when passing params8358 returns object with given attributes set8359 when passing date param only8360 returns object with attributes set using given date8361 .to_json8362 is expected to delegate #to_json to the #data object8363 returns payload data as a JSON string8364 when instance has no current license8365 returns payload data as a JSON string8366 #sync8367 when ready to sync seats8368 performs the sync8369 when not ready to sync seats8370 does not perform the sync8371 #should_sync_seats?8372 when all the pre conditions are valid8373 is expected to eq true8374 when license key is missing8375 is expected to be falsey8376 when not a cloud license8377 is expected to be falsey8378 when cloud license for offline use8379 is expected to be falsey8380 when expires_at is not set8381 is expected to be falsey8382 when license is trial8383 is expected to be falsey8384 when timestamp is out of the range8385 is expected to eq true8386 when historical data not found8387 is expected to eq true8388EE::AuthHelper8389 button_based_providers8390 excludes group_saml8391 providers_for_base_controller8392 excludes group_saml8393 form_based_auth_provider_has_active_class?8394 selects main LDAP server8395 form_based_providers8396 with smartcard_auth feature flag off8397 does not include smartcard provider8398 with smartcard_auth feature flag on8399 includes smartcard provider8400 smartcard_enabled_for_ldap?8401 LDAP server with optional smartcard auth8402 returns true8403 returns false with required flag8404 LDAP server with required smartcard auth8405 returns true8406 returns true with required flag8407 LDAP server with disabled smartcard auth8408 returns false8409 returns false with required flag8410 no matching LDAP server8411 returns false8412 smartcard_login_button_classes8413 when smartcard auth is optional8414 returns the correct CSS classes8415 when smartcard auth is required8416 returns the correct CSS classes8417 #password_rule_list8418 when password complexity feature is not available8419 returns nil8420 when password complexity feature is available8421 without any rules8422 returns an empty array8423 with one rule8424 returns only one rule8425 with all rules8426 returns all rules8427SystemNotes::VulnerabilitiesService8428 #change_vulnerability_state8429 state changed to dismissed8430 creates the note text correctly8431 behaves like a system note8432 has the correct attributes8433 state changed to resolved8434 creates the note text correctly8435 behaves like a system note8436 has the correct attributes8437 state changed to confirmed8438 creates the note text correctly8439 behaves like a system note8440 has the correct attributes8441 #mark_dropped_as_resolved8442 creates the note text correctly8443 behaves like a system note8444 has the correct attributes8445Security::TrainingProviders::BaseUrlFinder8446 #execute8447 raises an error if allowed_identifier_list is not implemented8448 raises an error if full_url is not implemented8449 when response_url is nil8450 returns a nil url with status pending8451 when a language is used on the finder8452 returns a nil url with status pending8453 when external_type is not present in allowed list8454 returns nil8455 when response_url is not nil8456 returns a url with status completed8457 when a language is used on the finder8458 returns a url with status completed8459 when response_url is not nil, but the url is8460 returns nil8461 when a language is used on the finder8462 returns nil8463 .from_cache8464 returns instance of finder object with expected attributes8465 when a language is used on the finder8466 returns instance of finder object with expected attributes8467 private8468 #id8469 returns a cache key for ReactiveCaching specific to the request trainign urls8470 when a language is used on the finder8471 returns a cache key for ReactiveCaching specific to the request trainign urls and language8472Security::Ingestion::Tasks::IngestFindingPipelines8473 #execute8474 associates the findings with pipeline8475 behaves like bulk insertable task8476 when the validation fails8477 can generate error messages correctly8478IncidentManagement::OncallRotations::CreateService8479 #execute8480 when the current_user is anonymous8481 behaves like error response8482 does not save the rotation and has an informative message8483 when the current_user does not have permissions to create on-call schedules8484 behaves like error response8485 does not save the rotation and has an informative message8486 when feature is not available8487 behaves like error response8488 does not save the rotation and has an informative message8489 when an on-call rotation already exists8490 behaves like error response8491 does not save the rotation and has an informative message8492 when too many participants8493 has an informative error message8494 when participant cannot read project8495 behaves like error response8496 does not save the rotation and has an informative message8497 participant is included multiple times8498 behaves like error response8499 does not save the rotation and has an informative message8500 with valid params8501 behaves like successfully creates rotation8502 successfully creates an on-call rotation with participants8503 with an active period given8504 behaves like successfully creates rotation8505 successfully creates an on-call rotation with participants8506 behaves like saved the active period times8507 saves the active period times8508 when end active time is before start active time8509 behaves like successfully creates rotation8510 successfully creates an on-call rotation with participants8511 behaves like saved the active period times8512 saves the active period times8513 when only active period end time is set8514 behaves like error response8515 does not save the rotation and has an informative message8516 when only active period start time is set8517 behaves like error response8518 does not save the rotation and has an informative message8519 for an in-progress rotation8520 trims & saves the current shift8521WorkItems::Widgets::IterationService::UpdateService8522 # order random8523 #update8524 when iteration param is not present8525 behaves like iteration is unchanged8526 does not change the iteration of the work item8527 when user can only update but not admin the work item8528 behaves like iteration is unchanged8529 does not change the iteration of the work item8530 when user can admin the work item8531 new_iteration: lazy { other_iteration }8532 sets the iteration for the work item8533 new_iteration: nil8534 sets the iteration for the work item8535 when iteration is from neither the work item's group nor its ancestors8536 does not set the iteration for the work item8537Gitlab::UsageDataCounters::HLLRedisCounter8538 .categories8539Skipping ./ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb[1:1:1] 'Gitlab::UsageDataCounters::HLLRedisCounter.categories gets all unique category names' because it's flaky.8540 gets all unique category names (PENDING: around hook at ./spec/support/flaky_tests.rb:21 did not execute the example)8541 .known_events8542 returns both ee and ce events85441st Try error in ./ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb:108:8545expected collection contained: [{"aggregation"=>"weekly", "category"=>"analytics", "expiry"=>84, "name"=>"ce_event", "redis_slot"=>"...n"=>"weekly", "category"=>"analytics", "expiry"=>84, "name"=>"ee_event", "redis_slot"=>"analytics"}]8546actual collection contained: [{"aggregation"=>"weekly", "category"=>"ci_users", "feature_flag"=>nil, "name"=>"ci_users_executing_d...activity", "name"=>"g_project_management_epic_blocked_removed", "redis_slot"=>"project_management"}]8547the missing elements were: [{"aggregation"=>"weekly", "category"=>"analytics", "expiry"=>84, "name"=>"ce_event", "redis_slot"=>"...n"=>"weekly", "category"=>"analytics", "expiry"=>84, "name"=>"ee_event", "redis_slot"=>"analytics"}]8548the extra elements were: [{"aggregation"=>"weekly", "category"=>"ci_users", "feature_flag"=>nil, "name"=>"ci_users_executing_d...activity", "name"=>"g_project_management_epic_blocked_removed", "redis_slot"=>"project_management"}]8550RSpec::Retry: 2nd try ./ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb:1088551 .track_event_in_context8552 with valid context8553 entity: "dfb9d2d2-f56c-4c77-8aeb-6cddc4a1f857", event_name: "context_event", context: "default"8554 increments context event counter8555 entity: "dfb9d2d2-f56c-4c77-8aeb-6cddc4a1f857", event_name: "context_event", context: "ultimate"8556 increments context event counter8557 entity: "dfb9d2d2-f56c-4c77-8aeb-6cddc4a1f857", event_name: "context_event", context: "gold"8558 increments context event counter8559 when sending empty context8560 is not incrementing the counter8561 .unique_events8562 does not include instrumented categories8563 with events tracked in context8564 with correct arguments8565 context: default_context, value: 28566 is expected to eq 28567 context: ultimate_context, value: 18568 is expected to eq 18569 context: gold_context, value: 18570 is expected to eq 18571 context: "", value: 08572 is expected to eq 08573 with invalid context8574 raise error8575 .track_event8576 with settings usage ping disabled8577 with license usage ping enabled8578 tracks the event8579groups/feature_discovery_moments/advanced_features_dashboard.html.haml8580 is expected to have text "Discover Premium & Ultimate."8581 is expected to have text "Access advanced features."8582 is expected to have text "Speed. Efficiency. Trust."8583 renders the start a trial CTA8584 renders the HandRaiseLeadButton Vue app glue8585InstanceSecurityDashboardPolicy8586 read_instance_security_dashboard8587 when the user is not logged in8588 is expected not to be allowed :read_instance_security_dashboard and :read_security_resource8589 when the user is logged in8590 is expected to be allowed :read_instance_security_dashboard and :read_security_resource8591 create_vulnerability_export8592 when the user is not logged in8593 is expected not to be allowed :create_vulnerability_export8594 when the user is logged in8595 is expected to be allowed :create_vulnerability_export8596 read_cluster8597 when the user is not logged in8598 is expected not to be allowed :read_cluster8599 when the user is logged in8600 is expected to be allowed :read_cluster8601EE::Gitlab::Auth::Ldap::Group8602 #member_dns8603 resolves the correct member_dns when member has a range8604 removes extraneous spaces from DNs8605 when there are nested groups8606 resolves the correct member_dns when there are nested groups8607 skips duplicate nested groups8608 does not include group dns or users outside of the base8609 logs an error when the LDAP base is invalid8610 logs a warning when an invalid member DN is found in an LDAP group8611 resolves the correct member_dns when the LDAP base is not normalized8612IncidentManagement::IssuableResourceLink8613 associations8614 is expected to belong to issue required: false8615 validations8616 is expected to validate that :issue cannot be empty/falsy8617 is expected to validate that :link cannot be empty/falsy8618 is expected to validate that the length of :link is at most 22008619 is expected to validate that the length of :link_text is at most 2558620 when link is invalid8621 will be invalid8622 link protocols8623 protocol: "http", result: #<RSpec::Rails::Matchers::BeValid:0x00007f5f322c2200 @args=[]>8624 is expected to be valid8625 protocol: "https", result: #<RSpec::Rails::Matchers::BeValid:0x00007f5f322c1fd0 @args=[]>8626 is expected to be valid8627 protocol: "ftp", result: #<RSpec::Matchers::BuiltIn::BePredicate:0x00007f5f31c2d340 @method_name=:be_invalid, @args=[], @block=nil>8628 is expected to be invalid8629 enums8630 is expected to define :link_type as an enum backed by an integer with values ‹{general: 0, zoom: 1, slack: 2}›8631AwardEmojis::AddService8632 #execute8633 publish to status page8634 when adding succeeds8635 with recognized emoji8636 triggers status page publish8637 with unrecognized emoji8638 does not trigger status page publish service8639 when adding fails8640 does not trigger status page publish service8641 tracking emoji adding8642 for epics8643 tracks usage8644 for awardables that are not epics8645 does not track epic emoji awarding8646EE::Gitlab::Ci::Pipeline::Quota::Activity8647 #enabled?8648 when limit is enabled in plan8649 is enabled8650 when limit is not enabled8651 is not enabled8652 when limit does not exist8653 is not enabled8654 #exceeded?8655 when limit is exceeded8656 is exceeded8657 when limit is not exceeded8658 is not exceeded8659 #message8660 when limit is exceeded8661 returns info about pipeline activity limit exceeded8662Gitlab::CIDR8663 validation8664 raises an exception when an octet is invalid8665 raises an exception when a bitmask is invalid8666 raises an exception when one IP from a set is invalid8667 matching8668 values: "192.1.1.1", ip: "192.1.1.1", match: true8669 is expected to eq true8670 values: "192.1.1.1, 192.1.2.1", ip: "192.1.2.1", match: true8671 is expected to eq true8672 values: "192.1.1.0/24", ip: "192.1.1.223", match: true8673 is expected to eq true8674 values: "192.1.0.0/16", ip: "192.1.223.223", match: true8675 is expected to eq true8676 values: "192.1.0.0/16, 192.1.2.0/24", ip: "192.1.2.223", match: true8677 is expected to eq true8678 values: "192.1.0.0/16", ip: "192.2.1.1", match: false8679 is expected to eq false8680 values: "192.1.0.1", ip: "192.2.1.1", match: false8681 is expected to eq false8682Banzai::Filter::CrossProjectIssuableInformationFilter8683 when the user cannot read cross project8684 skips links to issues within the same project8685 removes info from a cross project reference8686Namespaces::FreeUserCap::AlertComponent8687 when user is authorized to see alert8688 when limit has been reached8689 has content for the alert8690 renders all the expected tracking items8691 when limit has not been reached8692 does not render the alert8693 when user is not authorized to see alert8694 does not render the alert8695 when user does not exist8696 does not render the alert8697Ci::CopyCrossDatabaseAssociationsService8698 #execute8699 failure8700 returns an error response8701 drops the build8702 success8703 returns a success response8704 clones the profile associations8705 when the job is not a build8706 is successful8707ProductAnalytics::JitsuAuthentication8708 # order random8709 #create_api_key!8710 when request is successful8711 is expected to eq {:jsAuth=>"Mp1N4PYvRXNk1KIh2MLDE7BYghnSwdnt", :uid=>"yijlmncqjot0xy9h6rv54p.s7zz20"}8712 is expected to change `ProjectSetting#jitsu_key` from nil to "Mp1N4PYvRXNk1KIh2MLDE7BYghnSwdnt"8713 when request is unsuccessful8714 behaves like returns nil and logs the API error8715 is expected to be nil8716 when request throws an exception8717 behaves like returns nil and logs the exception8718 is expected to be nil8719 #generate_access_token8720 when request is successful8721 is expected to eq "thisisanaccesstoken"8722 when request is unsuccessful8723 behaves like returns nil and logs the API error8724 is expected to be nil8725 when request throws an exception8726 behaves like returns nil and logs the exception8727 is expected to be nil8728 #create_clickhouse_destination8729 when request is successful8730 is expected not to be nil8731 when request is unsuccessful8732 behaves like returns nil and logs the API error8733 is expected to be nil8734 when request throws an exception8735 behaves like returns nil and logs the exception8736 is expected to be nil8737IncidentManagement::OncallRotations::DestroyService8738 #execute8739 successfully deletes and returns the rotation8740 when the current_user is anonymous8741 behaves like error response8742 has an informative message8743 when the current_user does not have permissions to remove on-call rotations8744 behaves like error response8745 has an informative message8746 when feature is not available8747 behaves like error response8748 has an informative message8749 when an error occurs during removal8750 behaves like error response8751 has an informative message8752Security::SecurityOrchestrationPolicies::FetchPolicyService8753 #execute8754 when retrieving an existing policy by name8755 returns policy8756 when retrieving an non-existing policy by name8757 returns nil8758Projects::InactiveProjectsDeletionCronWorker8759 #perform8760 does not send deletion warning email for inactive projects that are already marked for deletion8761 invokes Projects::InactiveProjectsDeletionNotificationWorker for inactive projects and logs audit event8762 when adjourned_deletion_for_projects_and_groups feature is not available8763 invokes Projects::DestroyService for projects that are inactive even after being notified8764 when adjourned_deletion_for_projects_and_groups feature is available8765 when adjourned_deletion_configured is not configured for the project8766 invokes Projects::DestroyService if adjourned_deletion_configured not configured for the project8767 when adjourned_deletion_configured is configured for the project8768 invokes Projects::MarkForDeletionService for projects that are inactive even after being notified8769MergeRequests::BaseService8770 fires the correct number of compliance hooks8771 #filter_params8772 filter users and groups8773 calls ParamsFilteringService8774IncidentManagement::OncallSchedules::DestroyService8775 #execute8776 successfully returns the integration8777 when the current_user is anonymous8778 behaves like error response8779 has an informative message8780 when the current_user does not have permissions to remove on-call schedules8781 behaves like error response8782 has an informative message8783 when feature is not available8784 behaves like error response8785 has an informative message8786 when an error occurs during removal8787 behaves like error response8788 has an informative message8789Namespaces::InProductMarketingEmailsService#execute8790 when group has a plan8791 on the free plan8792 sends an email8793 on a trial8794 does not send an email8795 on a paid plan8796 does not send email8797Mutations::DastScannerProfiles::Delete8798 is expected to require graphql authorizations :create_on_demand_dast_scan8799 #resolve8800 when the user is not associated with the project8801 raises an exception8802 when the user can run a DAST scan8803 deletes the DAST scanner profile8804 when the dast_scanner_profile does not exist8805 raises an exception8806 when deletion fails8807 returns an error8808Identity8809 relations8810 is expected to belong to saml_provider required: false8811 with saml_provider8812 allows user to have records with different groups8813 doesn't allow NameID/extern_uid to be blank8814 with enforced_group_managed_accounts8815 when managing_group matches saml_provider group8816 is expected to be valid8817 when managing_group does not match provider group8818 is not valid8819Geo::RepositoryCleanupWorker8820 #perform8821 skips repository clean up if the current node is a primary8822 when node does not have selective sync restriction8823 does not delegate project removal8824 when node has selective sync restriction8825 does not delegate project removal for projects that belong to selected namespaces to replicate8826 delegates project removal for projects that do not belong to selected namespaces to replicate8827AuditEvents::ProtectedBranchAuditEventService8828 #security_event8829 when a protected_branch is add8830 creates an event8831 logs to a file with the provided details8832 behaves like sends correct event type in audit event stream8833 sends correct event type in audit event stream8834 when a protected_branch is remove8835 creates an event8836 logs to a file with the provided details8837 behaves like sends correct event type in audit event stream8838 sends correct event type in audit event stream8839 when not licensed8840 doesn't create an event or log to a file8841Gitlab::Usage::Metrics::Instrumentations::CountExternalStatusChecksMetric8842 behaves like a correct instrumented metric value and query8843 behaves like a correct instrumented metric value8844 has correct value8845 behaves like a correct instrumented metric query8846 has correct generate query8847Gitlab::Ci::Config::Entry::Needs8848 validations8849 when entry config value is correct8850 #valid?8851 is expected to be valid8852 when wrong needs type is used8853 #valid?8854 is expected not to be valid8855 #errors8856 returns error about incorrect type8857 when bridge needs has wrong attributes8858 #valid?8859 is expected not to be valid8860 cross dependencies limit8861 when enforcing limit for cross project dependencies8862 when limit is exceeded8863 #valid?8864 is expected not to be valid8865 #errors8866 returns error about incorrect type8867 when limit is not exceeded8868 does not count cross pipeline dependencies8869 when enforcing limit for cross pipeline dependencies8870 when limit is not exceeded8871 does not count cross project dependencies8872 .compose!8873 when valid job entries composed8874 is valid8875 #value8876 returns key value8877 #descendants8878 creates valid descendant nodes8879Users::MergeRequestInteraction8880 #applicable_approval_rules8881 when there are no approval rules8882 is expected to have attributes {:applicable_approval_rules => (be empty)}8883 when there are approval rules8884 when the feature is not available8885 is expected to have attributes {:applicable_approval_rules => (be empty)}8886 when the feature is available8887 is expected to have attributes {:applicable_approval_rules => (be empty)}8888 when the user is associated with a rule8889 is expected to have attributes {:applicable_approval_rules => (contain exactly (have attributes {:approval_rule => #<ApprovalMergeRequ..., vulnerability_states: ["newly_detected"], security_orchestration_policy_configuration_id: nil>}))}8890CiCd::GithubSetupService8891 #execute8892 creates the webhook in the background8893 sets up Github project integration8894Labels::CreateService8895 #execute8896 for scoped labels8897 for a project8898 behaves like records an onboarding progress action8899 is expected to receive execute({:action=>:scoped_label_created}) 1 time8900 for a group8901 behaves like records an onboarding progress action8902 is expected to receive execute({:action=>:scoped_label_created}) 1 time8903 without a group or project8904 behaves like does not record an onboarding progress action8905 is expected not to receive new(*(any args)) 0 times8906 without scoped label8907 behaves like does not record an onboarding progress action8908 is expected not to receive new(*(any args)) 0 times8909Gitlab::Ci::Pipeline::Chain::Validate::SecurityOrchestrationPolicy8910 #perform8911 when security policies feature is not licensed8912 does not return warning8913 when security policies feature is licensed8914 when policy file is missing8915 returns warning8916 when policy file is present8917 when policy file is invalid8918 returns warning8919 when policy file is valid8920 does not return warning8921Resolvers::AppSec::Dast::ProfileResolver8922 is expected to have nullable GraphQL type DastProfileConnection8923 when resolving a single DAST profile8924 when the DAST profile exists8925 is expected to eq #<Dast::Profile id: 1, project_id: 838, dast_site_profile_id: 7, dast_scanner_profile_id: 7, created_...876491 +0000", name: "Power Digital Viewer 40edaaf4 - 1", description: [FILTERED], branch_name: nil>8926 when the DAST profile does not exist8927 is expected to be nil8928 when resolving multiple DAST profiles8929 is expected to contain exactly #<Dast::Profile id: 1, project_id: 838, dast_site_profile_id: 7, dast_scanner_profile_id: 7, created_...876491 +0000", name: "Power Digital Viewer 40edaaf4 - 1", description: [FILTERED], branch_name: nil> and #<Dast::Profile id: 2, project_id: 838, dast_site_profile_id: 8, dast_scanner_profile_id: 8, created_...0.323476491 +0000", name: "Audible Adapter b6ea7ee0 - 2", description: [FILTERED], branch_name: nil>8930 when the feature is disabled8931 is expected to be empty8932 when the user does not have access8933 is expected to be empty8934EventsHelper8935 #event_note_target_url8936 for epic note events8937 returns an epic url8938 for vulnerability events8939 returns an appropriate URL8940projects/pipelines/_tabs_content8941 rendering the Vulnerability Findings API endpoint path8942Types::IncidentManagement::IssuableResourceLinkTypeEnum8943 is expected to eq "IssuableResourceLinkType"8944 exposes all the existing issuable resource link types values8945GitlabSubscriptionHistory8946 .create_from_change8947 when supplied an invalid change type8948 raises an error8949 when the required attributes are not present8950 returns an error8951 when supplied extra attributes than exist on the history table8952 saves the tracked attributes without error8953Types::VulnerabilityLocation::CoverageFuzzingType8954 is expected to have graphql fields :vulnerable_class, :end_line, :file, :vulnerable_method, :start_line, :blob_path, :crash_type, :crash_address, and :stacktrace_snippet8955 is expected to eq "VulnerabilityLocationCoverageFuzzing"8956 checking field contents8957 checks the contents of the VulnerabilityLocationCoverageFuzzing fields8958MigrateIssuesToSeparateIndex8959 behaves like a deprecated Advanced Search migration8960 #migrate8961 logs a message and halts the migration8962 #completed?8963 returns false8964 #obsolete?8965 returns true8966LearnGitlabHelper8967 #learn_gitlab_data8968 when in the new action URLs experiment8969 for trial- and subscription-related actions8970 when namespace plans are not enabled8971DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.8972Falling back to an asset that may be in the public folder.8973This behavior is deprecated and will be removed.8974To bypass the asset pipeline and preserve this behavior,8975use the `skip_pipeline: true` option.8976 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)8977DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.8978Falling back to an asset that may be in the public folder.8979This behavior is deprecated and will be removed.8980To bypass the asset pipeline and preserve this behavior,8981use the `skip_pipeline: true` option.8982 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)8983DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.8984Falling back to an asset that may be in the public folder.8985This behavior is deprecated and will be removed.8986To bypass the asset pipeline and preserve this behavior,8987use the `skip_pipeline: true` option.8988 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)8989DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.8990Falling back to an asset that may be in the public folder.8991This behavior is deprecated and will be removed.8992To bypass the asset pipeline and preserve this behavior,8993use the `skip_pipeline: true` option.8994 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)8995DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.8996Falling back to an asset that may be in the public folder.8997This behavior is deprecated and will be removed.8998To bypass the asset pipeline and preserve this behavior,8999use the `skip_pipeline: true` option.9000 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9001DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.9002Falling back to an asset that may be in the public folder.9003This behavior is deprecated and will be removed.9004To bypass the asset pipeline and preserve this behavior,9005use the `skip_pipeline: true` option.9006 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9007DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.9008Falling back to an asset that may be in the public folder.9009This behavior is deprecated and will be removed.9010To bypass the asset pipeline and preserve this behavior,9011use the `skip_pipeline: true` option.9012 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9013DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.9014Falling back to an asset that may be in the public folder.9015This behavior is deprecated and will be removed.9016To bypass the asset pipeline and preserve this behavior,9017use the `skip_pipeline: true` option.9018 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9019DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.9020Falling back to an asset that may be in the public folder.9021This behavior is deprecated and will be removed.9022To bypass the asset pipeline and preserve this behavior,9023use the `skip_pipeline: true` option.9024 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9025 provides the default URLs9026 when namespace plans are enabled9027 when namespace has free or no subscription9028DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.9029Falling back to an asset that may be in the public folder.9030This behavior is deprecated and will be removed.9031To bypass the asset pipeline and preserve this behavior,9032use the `skip_pipeline: true` option.9033 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9034DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.9035Falling back to an asset that may be in the public folder.9036This behavior is deprecated and will be removed.9037To bypass the asset pipeline and preserve this behavior,9038use the `skip_pipeline: true` option.9039 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9040DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.9041Falling back to an asset that may be in the public folder.9042This behavior is deprecated and will be removed.9043To bypass the asset pipeline and preserve this behavior,9044use the `skip_pipeline: true` option.9045 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9046DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.9047Falling back to an asset that may be in the public folder.9048This behavior is deprecated and will be removed.9049To bypass the asset pipeline and preserve this behavior,9050use the `skip_pipeline: true` option.9051 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9052DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.9053Falling back to an asset that may be in the public folder.9054This behavior is deprecated and will be removed.9055To bypass the asset pipeline and preserve this behavior,9056use the `skip_pipeline: true` option.9057 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9058DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.9059Falling back to an asset that may be in the public folder.9060This behavior is deprecated and will be removed.9061To bypass the asset pipeline and preserve this behavior,9062use the `skip_pipeline: true` option.9063 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9064DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.9065Falling back to an asset that may be in the public folder.9066This behavior is deprecated and will be removed.9067To bypass the asset pipeline and preserve this behavior,9068use the `skip_pipeline: true` option.9069 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9070DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.9071Falling back to an asset that may be in the public folder.9072This behavior is deprecated and will be removed.9073To bypass the asset pipeline and preserve this behavior,9074use the `skip_pipeline: true` option.9075 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9076DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.9077Falling back to an asset that may be in the public folder.9078This behavior is deprecated and will be removed.9079To bypass the asset pipeline and preserve this behavior,9080use the `skip_pipeline: true` option.9081 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9082 provides URLs to start a trial to namespace admins9083DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.9084Falling back to an asset that may be in the public folder.9085This behavior is deprecated and will be removed.9086To bypass the asset pipeline and preserve this behavior,9087use the `skip_pipeline: true` option.9088 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9089DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.9090Falling back to an asset that may be in the public folder.9091This behavior is deprecated and will be removed.9092To bypass the asset pipeline and preserve this behavior,9093use the `skip_pipeline: true` option.9094 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9095DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.9096Falling back to an asset that may be in the public folder.9097This behavior is deprecated and will be removed.9098To bypass the asset pipeline and preserve this behavior,9099use the `skip_pipeline: true` option.9100 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9101DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.9102Falling back to an asset that may be in the public folder.9103This behavior is deprecated and will be removed.9104To bypass the asset pipeline and preserve this behavior,9105use the `skip_pipeline: true` option.9106 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9107DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.9108Falling back to an asset that may be in the public folder.9109This behavior is deprecated and will be removed.9110To bypass the asset pipeline and preserve this behavior,9111use the `skip_pipeline: true` option.9112 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9113DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.9114Falling back to an asset that may be in the public folder.9115This behavior is deprecated and will be removed.9116To bypass the asset pipeline and preserve this behavior,9117use the `skip_pipeline: true` option.9118 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9119DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.9120Falling back to an asset that may be in the public folder.9121This behavior is deprecated and will be removed.9122To bypass the asset pipeline and preserve this behavior,9123use the `skip_pipeline: true` option.9124 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9125DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.9126Falling back to an asset that may be in the public folder.9127This behavior is deprecated and will be removed.9128To bypass the asset pipeline and preserve this behavior,9129use the `skip_pipeline: true` option.9130 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9131DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.9132Falling back to an asset that may be in the public folder.9133This behavior is deprecated and will be removed.9134To bypass the asset pipeline and preserve this behavior,9135use the `skip_pipeline: true` option.9136 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9137 provides URLs to Gitlab docs to namespace non-admins9138 when namespace has paid subscription9139DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.9140Falling back to an asset that may be in the public folder.9141This behavior is deprecated and will be removed.9142To bypass the asset pipeline and preserve this behavior,9143use the `skip_pipeline: true` option.9144 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9145DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.9146Falling back to an asset that may be in the public folder.9147This behavior is deprecated and will be removed.9148To bypass the asset pipeline and preserve this behavior,9149use the `skip_pipeline: true` option.9150 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9151DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.9152Falling back to an asset that may be in the public folder.9153This behavior is deprecated and will be removed.9154To bypass the asset pipeline and preserve this behavior,9155use the `skip_pipeline: true` option.9156 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9157DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.9158Falling back to an asset that may be in the public folder.9159This behavior is deprecated and will be removed.9160To bypass the asset pipeline and preserve this behavior,9161use the `skip_pipeline: true` option.9162 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9163DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.9164Falling back to an asset that may be in the public folder.9165This behavior is deprecated and will be removed.9166To bypass the asset pipeline and preserve this behavior,9167use the `skip_pipeline: true` option.9168 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9169DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.9170Falling back to an asset that may be in the public folder.9171This behavior is deprecated and will be removed.9172To bypass the asset pipeline and preserve this behavior,9173use the `skip_pipeline: true` option.9174 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9175DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.9176Falling back to an asset that may be in the public folder.9177This behavior is deprecated and will be removed.9178To bypass the asset pipeline and preserve this behavior,9179use the `skip_pipeline: true` option.9180 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9181DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.9182Falling back to an asset that may be in the public folder.9183This behavior is deprecated and will be removed.9184To bypass the asset pipeline and preserve this behavior,9185use the `skip_pipeline: true` option.9186 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9187DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.9188Falling back to an asset that may be in the public folder.9189This behavior is deprecated and will be removed.9190To bypass the asset pipeline and preserve this behavior,9191use the `skip_pipeline: true` option.9192 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9193 provides URLs to Gitlab docs to namespace admins9194DEPRECATION WARNING: The asset "learn_gitlab/pipeline_created.svg" is not present in the asset pipeline.9195Falling back to an asset that may be in the public folder.9196This behavior is deprecated and will be removed.9197To bypass the asset pipeline and preserve this behavior,9198use the `skip_pipeline: true` option.9199 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9200DEPRECATION WARNING: The asset "learn_gitlab/trial_started.svg" is not present in the asset pipeline.9201Falling back to an asset that may be in the public folder.9202This behavior is deprecated and will be removed.9203To bypass the asset pipeline and preserve this behavior,9204use the `skip_pipeline: true` option.9205 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9206DEPRECATION WARNING: The asset "learn_gitlab/required_mr_approvals_enabled.svg" is not present in the asset pipeline.9207Falling back to an asset that may be in the public folder.9208This behavior is deprecated and will be removed.9209To bypass the asset pipeline and preserve this behavior,9210use the `skip_pipeline: true` option.9211 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9212DEPRECATION WARNING: The asset "learn_gitlab/code_owners_enabled.svg" is not present in the asset pipeline.9213Falling back to an asset that may be in the public folder.9214This behavior is deprecated and will be removed.9215To bypass the asset pipeline and preserve this behavior,9216use the `skip_pipeline: true` option.9217 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9218DEPRECATION WARNING: The asset "learn_gitlab/issue_created.svg" is not present in the asset pipeline.9219Falling back to an asset that may be in the public folder.9220This behavior is deprecated and will be removed.9221To bypass the asset pipeline and preserve this behavior,9222use the `skip_pipeline: true` option.9223 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9224DEPRECATION WARNING: The asset "learn_gitlab/git_write.svg" is not present in the asset pipeline.9225Falling back to an asset that may be in the public folder.9226This behavior is deprecated and will be removed.9227To bypass the asset pipeline and preserve this behavior,9228use the `skip_pipeline: true` option.9229 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9230DEPRECATION WARNING: The asset "learn_gitlab/merge_request_created.svg" is not present in the asset pipeline.9231Falling back to an asset that may be in the public folder.9232This behavior is deprecated and will be removed.9233To bypass the asset pipeline and preserve this behavior,9234use the `skip_pipeline: true` option.9235 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9236DEPRECATION WARNING: The asset "learn_gitlab/user_added.svg" is not present in the asset pipeline.9237Falling back to an asset that may be in the public folder.9238This behavior is deprecated and will be removed.9239To bypass the asset pipeline and preserve this behavior,9240use the `skip_pipeline: true` option.9241 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9242DEPRECATION WARNING: The asset "learn_gitlab/security_scan_enabled.svg" is not present in the asset pipeline.9243Falling back to an asset that may be in the public folder.9244This behavior is deprecated and will be removed.9245To bypass the asset pipeline and preserve this behavior,9246use the `skip_pipeline: true` option.9247 (called from block in onboarding_actions_data at /builds/gitlab-org/gitlab/app/helpers/learn_gitlab_helper.rb:39)9248 provides URLs to Gitlab docs to namespace non-admins9249Gitlab::Ci::Config::Entry::Vault::Secret9250 validation9251 when entry config value is correct9252 when config is a hash9253 #value9254 returns Vault secret configuration9255 #valid?9256 is valid9257 when config is a string with engine path9258 #value9259 returns Vault secret configuration9260 #valid?9261 is valid9262 when config is a string without engine path9263 #value9264 returns Vault secret configuration9265 #valid?9266 is valid9267 when entry value is not correct9268 #errors9269 when there is an unknown key present9270 reports error9271 when path is not present9272 reports error9273 when field is not present9274 reports error9275 when engine is not a hash9276 reports error9277BackfillNamespaceAncestryForIssues9278 behaves like a deprecated Advanced Search migration9279 #migrate9280 logs a message and halts the migration9281 #completed?9282 returns false9283 #obsolete?9284 returns true9285SystemCheck::Geo::LicenseCheck9286 #check?9287 primary: true, geo_enabled: true, license_allows: true, check_result: true, pass_message: ""9288 checks the license9289 primary: true, geo_enabled: true, license_allows: false, check_result: false, pass_message: ""9290 checks the license9291 primary: true, geo_enabled: false, license_allows: true, check_result: true, pass_message: "License supports Geo, but Geo is not enabled"9292 checks the license9293 primary: true, geo_enabled: false, license_allows: false, check_result: true, pass_message: "License does not support Geo, and Geo is not enabled"9294 checks the license9295 primary: false, geo_enabled: true, license_allows: true, check_result: true, pass_message: ""9296 checks the license9297 primary: false, geo_enabled: true, license_allows: false, check_result: true, pass_message: "License only required on a primary site"9298 checks the license9299 primary: false, geo_enabled: false, license_allows: true, check_result: true, pass_message: ""9300 checks the license9301 primary: false, geo_enabled: false, license_allows: false, check_result: true, pass_message: ""9302 checks the license9303UserAnalyticsEntity9304 has all the user attributes9305 fetches push events for the user from the request9306 fetches issues_created events for the user from the request9307 fetches issues_closed events for the user from the request9308 fetches merge_requests_created events for the user from the request9309 fetches merge_requests_merged events for the user from the request9310 fetches merge_requests_approved events for the user from the request9311 fetches total_events events for the user from the request9312 sets 0 as the total when there were no events for a type9313Audit::ProjectCiCdSettingChangesAuditor9314 # order random9315 #execute9316 when auditable boolean column is changed9317 when column changes from boolean9318 prev_value: true, new_value: false9319 creates an audit event9320 prev_value: false, new_value: true9321 creates an audit event9322 when column changes to false from nil9323 does not create an audit event9324 when column changes from boolean9325 prev_value: true, new_value: false9326 creates an audit event9327 prev_value: false, new_value: true9328 creates an audit event9329 when column changes to false from nil9330 does not create an audit event9331projects/settings/merge_requests/_merge_request_approvals_settings9332 # order random9333 renders the loading spinner9334 renders the settings title9335 renders the settings app element9336Types::ProtectedEnvironments::ApprovalRuleType9337 # order random9338 is expected to eq "ProtectedEnvironmentApprovalRule"9339 includes the expected fields9340GitlabSubscriptions::Reconciliations::CheckSeatUsageAlertsEligibilityService9341 #execute9342 eligible_for_seat_usage_alerts: true, expected_response: true9343 returns the correct value9344 caches the query response9345 eligible_for_seat_usage_alerts: false, expected_response: false9346 returns the correct value9347 caches the query response9348 with an unsuccessful CustomersDot query9349 assumes the subscription is ineligible9350 when called with a group9351 uses the namespace id9352 when the namespace has no plan9353 is expected to equal false9354Vulnerabilities::RequestEntity9355 #as_json9356 contains required fields9357Geo::ContainerRepositoryRegistryRemovalService9358 # order random9359 #execute9360 when the registry record exists9361 removes the container repository and the registry9362 when something went wrong removing the container repository9363 logs an error message9364 does not remove the upload registry record9365 when the registry record does not exist9366 removes the container repository9367AuditEvents::RepositoryDownloadStartedAuditEventService9368 #security_event9369 creates an event and logs to a file with the provided details9370BlobHelper9371 #licenses_for_select9372 returns Group licenses when enabled9373 returns Instance licenses when enabled9374 returns no Group or Instance licenses when disabled9375EE::Projects::Security::ConfigurationHelper9376 when user can access discover security9377 is expected to eq "/namespace903/project851/-/security/discover"9378 when user can not access discover security9379 is expected to eq "https://about.gitlab.com/pricing/"9380Types::Dast::ProfileCadenceType9381 is expected to eq "DastProfileCadence"9382 is expected to have graphql fields :unit and :duration9383Mutations::Boards::EpicBoards::Update9384 field tests9385 is expected to have graphql arguments :id, :name, :hideBacklogList, :hideClosedList, :labels, and :labelIds9386 is expected to have graphql fields :epic_board9387 with epic feature enabled9388 when user does not have permission to update epic board9389 behaves like epic board update error9390 raises error9391 when user has permission to update epic board9392 updates the epic board9393 #ready?9394 raises an error when both labels and label_ids arguments are passed9395Gitlab::SlashCommands::Presenters::IssueShow9396 issue with issue weight9397 shows the weight9398VulnerabilityExternalIssueLinks::DestroyService9399 deletes the specified vulnerability-external issue link9400projects/security/discover/show9401 renders vue app root with correct link9402 candidate for pql_three_cta_test9403 renders vue app root with candidate url9404 candidate for showcase_free_security_features9405 renders showcase and not security discover element9406Gitlab::UsageDataCounters::WorkItemActivityUniqueCounter9407 .track_work_item_weight_changed_action9408 behaves like work item unique counter9409 when track_work_items_activity FF is enabled9410 tracks a unique event only once9411 when author is nil9412 behaves like counter that does not track the event9413 does not track the event9414 when track_work_items_activity FF is disabled9415 behaves like counter that does not track the event9416 does not track the event9417 .track_work_item_iteration_changed_action9418 behaves like work item unique counter9419 when track_work_items_activity FF is enabled9420 tracks a unique event only once9421 when author is nil9422 behaves like counter that does not track the event9423 does not track the event9424 when track_work_items_activity FF is disabled9425 behaves like counter that does not track the event9426 does not track the event9427WebHookService9428 #async_execute9429 when hook has custom context attributes9430 includes the subscription plan in the worker context9431GeoNodePolicy9432 when the user is an admin9433 when admin mode is enabled9434 allows read_geo_node for any GeoNode9435 when admin mode is disabled9436 disallows read_geo_node for any GeoNode9437 when the user is not an admin9438 disallows read_geo_node for any GeoNode9439EE::Gitlab::GonHelper9440 #add_gon_variables9441 includes ee exclusive settings9442 when GitLab.com9443 includes CustomersDot variables9444 #push_licensed_feature9445 no obj given9446 behaves like sets the licensed features flag9447 pushes the licensed feature flag to the frotnend9448 obj given9449 behaves like sets the licensed features flag9450 pushes the licensed feature flag to the frotnend9451LicensesFinder9452 raises an error if the user is not an admin9453 with admin mode enabled9454 returns a license by id9455 returns a collection of licenses9456 returns empty relation if the license doesnt exist9457 with admin mode disabled9458 raises an error9459Types::Geo::TerraformStateVersionRegistryType9460 has the expected fields (other than those included in RegistryType)9461 behaves like a Geo registry type9462 is expected to require graphql authorizations :read_geo_registry9463 has the expected fields9464Gitlab::Database::GitlabSchema9465 .tables_to_schema9466 all tables are unique9467 for geo using Geo::TrackingBase9468 new data sources are added9469 non-existing data sources are removed9470 .table_schema9471 name: "project_registry", classification: :gitlab_geo9472 is expected to eq :gitlab_geo9473 name: "my_schema.project_registry", classification: :gitlab_geo9474 is expected to eq :gitlab_geo9475IncidentManagement::PendingEscalations::IssueCheckWorker9476 #perform9477 with valid escalation9478 processes the escalation9479 without valid escalation9480 does nothing9481Geo::DesignRepositorySyncWorker9482 #perform9483 runs DesignRepositorySyncService9484 logs error when repository does not exist9485LicenseEntity9486 #as_json9487 produces the correct representation9488 when the url is blank9489 url: ""9490 is expected to be nil9491 url: nil9492 is expected to be nil9493IncidentManagement::IssuableEscalationStatuses::CreateService9494 creates an escalation status for the incident with no policy set9495Sbom::Ingestion::IngestReportService9496 # order random9497 #execute9498 executes IngestReportSliceService in batches9499trials/_skip_trial.html.haml9500 without glm_source9501 is expected to have text "Skip Trial"9502 with glm_source of about.gitlab.com9503 is expected to have text "Skip Trial"9504 with glm_source of gitlab.com9505 is expected to have text "Go back to GitLab"9506Audit::BaseChangesAuditor9507 # order random9508 #attributes_from_auditable_model9509 is expected to raise NotImplementedError9510Mutations::Ci::Runner::Update9511 #resolve9512 when user can update runner9513 when mutation includes cost factor arguments9514 updates cost factors to specified values9515MetricsReportsComparerEntity9516 #as_json9517 contains the new metrics9518 contains existing metrics9519 contains removed metrics9520ApplyMaxAnalyzedOffset9521 behaves like a deprecated Advanced Search migration9522 #migrate9523 logs a message and halts the migration9524 #completed?9525 returns false9526 #obsolete?9527 returns true9528Gitlab::CodeOwners::ReferenceExtractor9529 #emails9530 includes all mentioned email addresses9531 #names9532 includes all mentioned usernames and groupnames9533 #references9534 includes all user-references once9535Analytics::CycleAnalytics::EventEntity9536 #type9537 returns `simple` for non-label based events9538 returns `label` for label based events9539groups/_compliance_frameworks.html.haml9540 when the compliance frameworks should show9541 shows the compliance frameworks list9542 when the compliance frameworks should not show9543 hides the compliance frameworks list9544Types::SubscriptionType9545 # order random9546 has the expected fields9547Types::Geo::PagesDeploymentRegistryType9548 has the expected fields (other than those included in RegistryType)9549 behaves like a Geo registry type9550 is expected to require graphql authorizations :read_geo_registry9551 has the expected fields9552Types::IssuableType9553 returns possible types9554 .resolve_type9555 resolves epics9556admin/application_settings/_deletion_protection_settings9557 renders the deletion protection settings app root9558Uploads routing9559 allows fetching issuable metric images9560 allows fetching alert metric metric images9561Gitlab::StatusPage::Filter::MentionAnonymizationFilter9562 replaces user link with anonymized text9563Types::ProtectedEnvironments::ApprovalRuleForSummaryType9564 # order random9565 is expected to eq "ProtectedEnvironmentApprovalRuleForSummary"9566 includes the expected fields9567Types::VulnerabilityDetails::TextType9568 is expected to have graphql fields :name, :description, :fieldName, and :value9569Types::Ci::Minutes::ProjectMonthlyUsageType9570 is expected to have graphql fields :minutes, :name, and :shared_runners_duration9571Milestone9572 Associations9573 is expected to have many boards9574Knapsack report was generated. Preview:9575{9576 "ee/spec/services/ee/auth/container_registry_authentication_service_spec.rb": 149.97455440100003,9577 "ee/spec/lib/gitlab/geo/log_cursor/daemon_spec.rb": 138.11251884,9578 "ee/spec/models/approval_state_spec.rb": 40.656833273000075,9579 "ee/spec/models/ci/build_spec.rb": 51.50789290900002,9580 "ee/spec/lib/compliance_management/merge_request_approval_settings/resolver_spec.rb": 44.26893763600003,9581 "ee/spec/lib/gitlab/import_export/attributes_permitter_spec.rb": 10.240314058999957,9582 "ee/spec/models/ee/terraform/state_version_spec.rb": 57.10318852399996,9583 "ee/spec/workers/audit_events/audit_event_streaming_worker_spec.rb": 24.91202456999997,9584 "ee/spec/models/analytics/cycle_analytics/group_stage_spec.rb": 33.326545538999994,9585 "ee/spec/helpers/billing_plans_helper_spec.rb": 19.868837890000123,9586 "ee/spec/lib/gitlab/usage_data_metrics_spec.rb": 34.97720272400011,9587 "ee/spec/services/search_service_spec.rb": 24.752331278999918,9588 "ee/spec/services/registrations/standard_namespace_create_service_spec.rb": 21.41020218599988,9589 "ee/spec/lib/incident_management/oncall_shift_generator_spec.rb": 11.354593239999986,9590 "ee/spec/helpers/ee/users/callouts_helper_spec.rb": 9.0215776,9591 "ee/spec/services/vulnerabilities/resolve_service_spec.rb": 19.610862214999997,9592 "ee/spec/models/merge_requests/external_status_check_spec.rb": 12.775815741000088,9593 "ee/spec/graphql/resolvers/requirements_management/requirements_resolver_spec.rb": 18.0276044000002,9594 "ee/spec/services/jira/requests/issues/list_service_spec.rb": 13.610950721000108,9595 "ee/spec/services/members/activate_service_spec.rb": 13.405072177999955,9596 "ee/spec/finders/geo/repository_verification_finder_spec.rb": 11.500271605999842,9597 "ee/spec/models/productivity_analytics_spec.rb": 16.25962215200002,9598 "ee/spec/services/security/ingestion/tasks/ingest_issue_links_spec.rb": 13.878483857999981,9599 "ee/spec/services/auto_merge/add_to_merge_train_when_pipeline_succeeds_service_spec.rb": 11.425692968000021,9600 "ee/spec/graphql/resolvers/geo/pages_deployment_registries_resolver_spec.rb": 15.164763404000041,9601 "ee/spec/services/timebox_report_service_spec.rb": 8.882094598000094,9602 "ee/spec/lib/ee/gitlab/ci/parsers/security/validators/schema_validator_spec.rb": 3.3822498480001286,9603 "ee/spec/models/ee/ci/build_dependencies_spec.rb": 10.185090099000035,9604 "ee/spec/presenters/ci/minutes/usage_presenter_spec.rb": 4.651928581999982,9605 "ee/spec/models/incident_management/oncall_schedule_spec.rb": 8.14942856200014,9606 "ee/spec/services/gitlab_subscriptions/reconciliations/calculate_seat_count_data_service_spec.rb": 7.562219176999861,9607 "ee/spec/graphql/mutations/projects/set_locked_spec.rb": 6.632809594000037,9608 "ee/spec/models/dast_site_token_spec.rb": 7.9871762519999265,9609 "ee/spec/lib/gitlab/spdx/catalogue_gateway_spec.rb": 4.004723021000018,9610 "ee/spec/helpers/boards_helper_spec.rb": 4.729970950999814,9611 "ee/spec/finders/audit_event_finder_spec.rb": 3.9368843079998896,9612 "ee/spec/presenters/subscription_presenter_spec.rb": 4.734761591000051,9613 "ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb": 3.9242924459999813,9614 "ee/spec/services/security/ingestion/tasks/ingest_vulnerabilities/mark_resolved_as_detected_spec.rb": 7.228288138999915,9615 "ee/spec/models/ee/group_group_link_spec.rb": 4.824264385999868,9616 "ee/spec/lib/gitlab/usage/metrics/instrumentations/count_deployment_approvals_metric_spec.rb": 4.835252498000045,9617 "ee/spec/lib/gitlab/auth/smartcard/ldap_certificate_spec.rb": 2.928970586000105,9618 "ee/spec/graphql/resolvers/epics/default_project_for_issue_creation_resolver_spec.rb": 5.204645724999864,9619 "ee/spec/lib/gitlab/auth/group_saml/dynamic_settings_spec.rb": 3.7619310710001628,9620 "ee/spec/lib/gitlab/auth/ldap/person_spec.rb": 1.9911491479999768,9621 "ee/spec/services/releases/create_service_spec.rb": 4.521586551000155,9622 "ee/spec/services/app_sec/dast/profiles/create_associations_service_spec.rb": 3.9321753700000954,9623 "ee/spec/finders/security/training_urls_finder_spec.rb": 5.290082199999915,9624 "ee/spec/finders/boards/boards_finder_spec.rb": 4.860803809000117,9625 "ee/spec/lib/gitlab/ci/templates/dast_api_latest_gitlab_ci_yaml_spec.rb": 4.504364771999917,9626 "ee/spec/policies/vulnerability_policy_spec.rb": 5.940482556000006,9627 "ee/spec/services/ci/runners/stale_group_runners_prune_service_spec.rb": 3.0869196449998526,9628 "ee/spec/models/approval_wrapped_code_owner_rule_spec.rb": 4.103880149000133,9629 "ee/spec/services/requirements_management/export_csv_service_spec.rb": 2.353801805000103,9630 "ee/spec/serializers/merge_request_poll_widget_entity_spec.rb": 5.005796918999977,9631 "ee/spec/finders/users_finder_spec.rb": 2.6282060060000276,9632 "ee/spec/lib/gitlab/ci/templates/dast_api_gitlab_ci_yaml_spec.rb": 3.823220236999987,9633 "ee/spec/models/ee/description_version_spec.rb": 3.292594508999855,9634 "ee/spec/finders/billed_users_finder_spec.rb": 3.3592511790000117,9635 "ee/spec/lib/ee/gitlab/email/handler/service_desk_handler_spec.rb": 3.3289006590000554,9636 "ee/spec/services/ci/minutes/additional_packs/change_namespace_service_spec.rb": 2.578068307000194,9637 "ee/spec/models/approvals/scan_finding_wrapped_rule_set_spec.rb": 3.8570817690001604,9638 "ee/spec/services/ee/merge_request_metrics_service_spec.rb": 3.999341935999837,9639 "ee/spec/services/ci/play_bridge_service_spec.rb": 3.3932564290000755,9640 "ee/spec/models/gitlab/seat_link_data_spec.rb": 1.6418347639998956,9641 "ee/spec/helpers/ee/auth_helper_spec.rb": 1.6427091120001478,9642 "ee/spec/services/system_notes/vulnerabilities_service_spec.rb": 2.9899561800000356,9643 "ee/spec/finders/security/training_providers/base_url_finder_spec.rb": 1.7039068290000614,9644 "ee/spec/services/security/ingestion/tasks/ingest_finding_pipelines_spec.rb": 3.2847152249999,9645 "ee/spec/services/incident_management/oncall_rotations/create_service_spec.rb": 3.453133448000017,9646 "ee/spec/services/work_items/widgets/iteration_service/update_service_spec.rb": 2.071405254999945,9647 "ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb": 1.977263503000131,9648 "ee/spec/views/groups/feature_discovery_moments/advanced_features_dashboard.html.haml_spec.rb": 1.1610140999998748,9649 "ee/spec/policies/instance_security_dashboard_policy_spec.rb": 1.2341453309998087,9650 "ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb": 0.602375019000192,9651 "ee/spec/models/incident_management/issuable_resource_link_spec.rb": 1.1144416490001277,9652 "ee/spec/services/award_emojis/add_service_spec.rb": 1.9750041530001,9653 "ee/spec/lib/ee/gitlab/ci/pipeline/quota/activity_spec.rb": 1.2286262810000608,9654 "ee/spec/lib/gitlab/cidr_spec.rb": 0.6493619709999621,9655 "ee/spec/lib/banzai/filter/cross_project_issuable_information_filter_spec.rb": 1.964257263000036,9656 "ee/spec/components/namespaces/free_user_cap/alert_component_spec.rb": 1.6699612780000734,9657 "ee/spec/services/ci/copy_cross_database_associations_service_spec.rb": 1.8426311910000095,9658 "ee/spec/models/product_analytics/jitsu_authentication_spec.rb": 2.1060321850000037,9659 "ee/spec/services/incident_management/oncall_rotations/destroy_service_spec.rb": 1.6835883389999253,9660 "ee/spec/services/security/security_orchestration_policies/fetch_policy_service_spec.rb": 1.791426809999848,9661 "ee/spec/workers/ee/projects/inactive_projects_deletion_cron_worker_spec.rb": 2.83442922800009,9662 "ee/spec/services/ee/merge_requests/base_service_spec.rb": 1.8422656220000135,9663 "ee/spec/services/incident_management/oncall_schedules/destroy_service_spec.rb": 1.914562321999938,9664 "ee/spec/services/namespaces/in_product_marketing_emails_service_spec.rb": 1.796364603000029,9665 "ee/spec/graphql/mutations/dast_scanner_profiles/delete_spec.rb": 1.3151777540001603,9666 "ee/spec/models/identity_spec.rb": 0.9593281570000727,9667 "ee/spec/workers/geo/repository_cleanup_worker_spec.rb": 2.2903962400000637,9668 "ee/spec/services/audit_events/protected_branch_audit_event_service_spec.rb": 1.5595169840000835,9669 "ee/spec/lib/gitlab/usage/metrics/instrumentations/count_external_status_checks_metric_spec.rb": 1.9913629420000234,9670 "ee/spec/lib/ee/gitlab/ci/config/entry/needs_spec.rb": 0.6313956280000639,9671 "ee/spec/models/ee/users/merge_request_interaction_spec.rb": 1.9126445220001642,9672 "ee/spec/services/ci_cd/github_setup_service_spec.rb": 1.6658951329998217,9673 "ee/spec/services/ee/labels/create_service_spec.rb": 0.7087297380001019,9674 "ee/spec/lib/ee/gitlab/ci/pipeline/chain/validate/security_orchestration_policy_spec.rb": 1.0490381449999404,9675 "ee/spec/graphql/resolvers/app_sec/dast/profile_resolver_spec.rb": 1.369755644999941,9676 "ee/spec/helpers/ee/events_helper_spec.rb": 2.211384482000085,9677 "ee/spec/views/projects/pipelines/_tabs_content.html.haml_spec.rb": 4.922056631000032,9678 "ee/spec/graphql/types/incident_management/issuable_resource_link_type_enum_spec.rb": 0.444929977999891,9679 "ee/spec/models/gitlab_subscription_history_spec.rb": 0.45014100799994594,9680 "ee/spec/graphql/types/vulnerability_location/coverage_fuzzing_type_spec.rb": 1.8171170519999578,9681 "ee/spec/elastic/migrate/20201123123400_migrate_issues_to_separate_index_spec.rb": 0.4163322680001329,9682 "ee/spec/helpers/ee/learn_gitlab_helper_spec.rb": 1.1168897160000597,9683 "ee/spec/lib/gitlab/ci/config/entry/vault/secret_spec.rb": 1.0529420559998925,9684 "ee/spec/elastic/migrate/20210825110300_backfill_namespace_ancestry_for_issues_spec.rb": 0.361023977999821,9685 "ee/spec/lib/system_check/geo/license_check_spec.rb": 0.452448319000041,9686 "ee/spec/serializers/user_analytics_entity_spec.rb": 0.7882430560000557,9687 "ee/spec/lib/audit/project_ci_cd_setting_changes_auditor_spec.rb": 1.08201229600013,9688 "ee/spec/views/projects/settings/merge_requests/_merge_request_approvals.html.haml_spec.rb": 0.5524244880000424,9689 "ee/spec/graphql/types/protected_environments/approval_rule_type_spec.rb": 0.4527150790001997,9690 "ee/spec/services/gitlab_subscriptions/reconciliations/check_seat_usage_alerts_eligibility_service_spec.rb": 0.7965126159999727,9691 "ee/spec/serializers/vulnerabilities/request_entity_spec.rb": 1.5703528839999308,9692 "ee/spec/services/geo/container_repository_registry_removal_service_spec.rb": 0.9370734159999756,9693 "ee/spec/services/audit_events/repository_download_started_audit_event_service_spec.rb": 0.806841396999971,9694 "ee/spec/helpers/ee/blob_helper_spec.rb": 1.258459084999913,9695 "ee/spec/helpers/ee/projects/security/configuration_helper_spec.rb": 0.5917281069998808,9696 "ee/spec/graphql/types/dast/profile_cadence_type_spec.rb": 0.6054047279999395,9697 "ee/spec/graphql/mutations/boards/epic_boards/update_spec.rb": 0.9023954760000379,9698 "ee/spec/lib/gitlab/slash_commands/presenters/issue_show_spec.rb": 0.7744671870000275,9699 "ee/spec/services/vulnerability_external_issue_links/destroy_service_spec.rb": 1.460784004000061,9700 "ee/spec/views/projects/security/discover/show.html.haml_spec.rb": 1.0976096960000632,9701 "ee/spec/lib/ee/gitlab/usage_data_counters/work_item_activity_unique_counter_spec.rb": 0.6934329369998977,9702 "ee/spec/services/web_hook_service_spec.rb": 0.7660672559998147,9703 "ee/spec/policies/geo_node_policy_spec.rb": 0.9169386870000835,9704 "ee/spec/lib/ee/gitlab/gon_helper_spec.rb": 1.1485147850000885,9705 "ee/spec/finders/licenses_finder_spec.rb": 0.6324746579998646,9706 "ee/spec/graphql/types/geo/terraform_state_version_registry_type_spec.rb": 0.36259859899996627,9707 "ee/spec/lib/ee/gitlab/database/gitlab_schema_spec.rb": 0.46421712799997294,9708 "ee/spec/workers/incident_management/pending_escalations/issue_check_worker_spec.rb": 1.0504128259999561,9709 "ee/spec/workers/geo/design_repository_sync_worker_spec.rb": 0.7715689260001,9710 "ee/spec/serializers/license_entity_spec.rb": 0.41364906800004064,9711 "ee/spec/services/ee/incident_management/issuable_escalation_statuses/create_service_spec.rb": 0.7015869370000019,9712 "ee/spec/services/sbom/ingestion/ingest_report_service_spec.rb": 0.5526924779999263,9713 "ee/spec/views/trials/_skip_trial.html.haml_spec.rb": 0.47046803800003545,9714 "ee/spec/lib/audit/base_changes_auditor_spec.rb": 0.5269520780000221,9715 "ee/spec/graphql/ee/mutations/ci/runner/update_spec.rb": 0.5151423180000165,9716 "ee/spec/serializers/metrics_reports_comparer_entity_spec.rb": 0.3957193680000728,9717 "ee/spec/elastic/migrate/20201105181100_apply_max_analyzed_offset_spec.rb": 0.36415654799998265,9718 "ee/spec/lib/gitlab/code_owners/reference_extractor_spec.rb": 0.3782869980000214,9719 "ee/spec/serializers/analytics/cycle_analytics/event_entity_spec.rb": 0.2736707589999696,9720 "ee/spec/views/groups/_compliance_frameworks.html.haml_spec.rb": 0.2960385290000431,9721 "ee/spec/graphql/types/subscription_type_spec.rb": 0.366275448000124,9722 "ee/spec/graphql/types/geo/pages_deployment_registry_type_spec.rb": 0.3154809289999321,9723 "ee/spec/graphql/ee/types/issuable_type_spec.rb": 0.2763837180000337,9724 "ee/spec/views/admin/application_settings/_deletion_protection_settings.html.haml_spec.rb": 0.620413876999919,9725 "ee/spec/routing/uploads_routing_spec.rb": 0.3275429290001739,9726 "ee/spec/lib/gitlab/status_page/filter/mention_anonymization_filter_spec.rb": 0.33855232800010526,9727 "ee/spec/graphql/types/protected_environments/approval_rule_for_summary_type_spec.rb": 0.3302752590000182,9728 "ee/spec/graphql/types/vulnerability_details/text_type_spec.rb": 0.5397068479999234,9729 "ee/spec/graphql/types/ci/minutes/project_monthly_usage_type_spec.rb": 0.24465028899999197,9730 "ee/spec/models/milestone_spec.rb": 0.24473441899999679731}9732Knapsack global time execution for tests: 18m 24s9733Pending: (Failures listed here are expected and do not affect your suite's status)9734 1) Resolvers::Geo::PagesDeploymentRegistriesResolver behaves like a Geo registries resolver #resolve when the parent object is the current node when the user has permission to view Geo data when admin mode is enabled with verification disabled when the verification_state argument is present raises ArgumentError9735 # Skipping because verification is enabled for PagesDeployment9736 # ./ee/spec/support/shared_examples/graphql/geo/geo_registries_resolver_shared_examples.rb:779737 2) IncidentManagement::OncallSchedule 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 blank9738 # No reason given9739 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:499740 3) IncidentManagement::OncallSchedule 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 blank9741 # No reason given9742 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:579743 4) Gitlab::UsageDataCounters::HLLRedisCounter.categories gets all unique category names9744 # around hook at ./spec/support/flaky_tests.rb:21 did not execute the example9745 # ./ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb:399746Finished in 18 minutes 27 seconds (files took 43.87 seconds to load)97473752 examples, 0 failures, 4 pending9748Randomized with seed 633639749[TEST PROF INFO] Time spent in factories: 07:54.014 (42.58% of total time)9750RSpec exited with 0.9751No examples to retry, congrats!9753Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-16 due to policy9754Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 due to policy9756Uploading artifacts...9757coverage/: found 5 matching files and directories 9758crystalball/: found 2 matching files and directories 9759deprecations/: found 6 matching files and directories 9760knapsack/: found 3 matching files and directories 9761rspec/: found 10 matching files and directories 9762WARNING: tmp/capybara/: no matching files. Ensure that the artifact path is relative to the working directory 9763log/*.log: found 21 matching files and directories 9764WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3307837866/artifacts?artifact_format=zip&artifact_type=archive&expire_in=31d new-url=https://gitlab.com9765WARNING: Retrying... context=artifacts-uploader error=request redirected9766Uploading artifacts as "archive" to coordinator... 201 Created id=3307837866 responseStatus=201 Created token=d-n3bxcR9767Uploading artifacts...9768rspec/junit_rspec.xml: found 1 matching files and directories 9769WARNING: Upload request redirected location=https://gitlab.com/api/v4/jobs/3307837866/artifacts?artifact_format=gzip&artifact_type=junit&expire_in=31d new-url=https://gitlab.com9770WARNING: Retrying... context=artifacts-uploader error=request redirected9771Uploading artifacts as "junit" to coordinator... 201 Created id=3307837866 responseStatus=201 Created token=d-n3bxcR9773Job succeeded