rspec-ee unit pg11 6/10
Passed Started
by
@lulalala

Mark Chao
1Running with gitlab-runner 13.3.1 (738bbe5a)2 on docker-auto-scale-com d5ae8d254Using Docker executor with image registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6.6-golang-1.14-git-2.28-lfs-2.9-chrome-84-node-12.x-yarn-1.21-postgresql-11-graphicsmagick-1.3.34 ...5Starting service postgres:11.6 ...6Pulling docker image postgres:11.6 ...7Using docker image sha256:2c963c0eb8c6efa49bb8352ea446f248d208d674cfc34fc9ea275b5f99f8dedd for postgres:11.6 ...8Starting service redis:4.0-alpine ...9Pulling docker image redis:4.0-alpine ...10Using docker image sha256:e3dd0e49bca555d559ca2e97f06a1efa108ebd230fddcb17606723994f18ae3b for redis:4.0-alpine ...11Starting service elasticsearch:6.4.2 ...12Pulling docker image elasticsearch:6.4.2 ...13Using docker image sha256:e47ebd7ec3eef5e48746af2ae376f180bbfbd23c7514b5b18a116f8349eb4c34 for elasticsearch:6.4.2 ...14Waiting for services to be up and running...15Authenticating with credentials from job payload (GitLab Registry)16Pulling docker image registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6.6-golang-1.14-git-2.28-lfs-2.9-chrome-84-node-12.x-yarn-1.21-postgresql-11-graphicsmagick-1.3.34 ...17Using docker image sha256:cd688957c9207f55272d81be6d4908692d78233833e3f09a9c0899b2f24eb3ff for registry.gitlab.com/gitlab-org/gitlab-build-images:ruby-2.6.6-golang-1.14-git-2.28-lfs-2.9-chrome-84-node-12.x-yarn-1.21-postgresql-11-graphicsmagick-1.3.34 ...19Running on runner-d5ae8d25-project-278964-concurrent-0 via runner-d5ae8d25-gsrm-1598834019-8976eeed...21$ eval "$CI_PRE_CLONE_SCRIPT"22Downloading archived master...23Connecting to storage.googleapis.com (172.217.193.128:443)24saving to '/tmp/gitlab.tar.gz'25gitlab.tar.gz 23% |******* | 237M 0:00:03 ETA26gitlab.tar.gz 56% |****************** | 567M 0:00:01 ETA27gitlab.tar.gz 85% |*************************** | 857M 0:00:00 ETA28gitlab.tar.gz 100% |********************************| 1007M 0:00:00 ETA29'/tmp/gitlab.tar.gz' saved30Extracting tarball into /builds/gitlab-org/gitlab...31Fetching changes with git depth set to 20...32Reinitialized existing Git repository in /builds/gitlab-org/gitlab/.git/33Created fresh repository.34Checking out 7a9c83cd as master...35Skipping Git submodules setup37Checking cache for rails-v2-3...38Downloading cache.zip from https://storage.googleapis.com/gitlab-com-runners-cache/project/278964/rails-v2-3 39Successfully extracted cache41Downloading artifacts for compile-test-assets (710807149)...42Downloading artifacts from coordinator... ok id=710807149 responseStatus=200 OK token=cMhXVmpy43Downloading artifacts for retrieve-tests-metadata (710807151)...44Downloading artifacts from coordinator... ok id=710807151 responseStatus=200 OK token=ySCBbL7Z45Downloading artifacts for setup-test-env (710807150)...46Downloading artifacts from coordinator... ok id=710807150 responseStatus=200 OK token=UGYkxRJB47WARNING: tmp/tests/gitlab-shell/.gitlab_shell_secret: chmod tmp/tests/gitlab-shell/.gitlab_shell_secret: no such file or directory (suppressing repeats) 49$ [ "$FOSS_ONLY" = "1" ] && rm -rf ee/ qa/spec/ee/ qa/qa/specs/features/ee/ qa/qa/ee/ qa/qa/ee.rb50$ export GOPATH=$CI_PROJECT_DIR/.go51$ mkdir -p $GOPATH52$ source scripts/utils.sh53$ source scripts/prepare_build.sh54Bundler version 1.17.255$ bundle install --clean --without=production --without=development --jobs=2 --path=vendor --retry=3 --quiet56==> 'bundle install --clean --without=production --without=development --jobs=2 --path=vendor --retry=3 --quiet' succeeded in 2 seconds.57$ bundle check58Warning: the running version of Bundler (1.17.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.59The Gemfile's dependencies are satisfied60==> 'bundle check' succeeded in 0 seconds.61$ bundle pristine pg62Warning: the running version of Bundler (1.17.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.63Installing pg 1.2.2 with native extensions64==> 'bundle pristine pg' succeeded in 13 seconds.65$ gem install knapsack --no-document66Successfully installed knapsack-1.18.0671 gem installed68==> 'gem install knapsack --no-document' succeeded in 0 seconds.69$ setup_db_user_only70CREATE ROLE71GRANT72==> 'setup_db_user_only' succeeded in 0 seconds.73$ bundle exec rake db:drop db:create db:structure:load db:migrate gitlab:db:setup_ee74Dropped database 'gitlabhq_test'75Created database 'gitlabhq_test'76Dropped database 'gitlabhq_geo_test'77Created database 'gitlabhq_geo_test'78==> 'bundle exec rake db:drop db:create db:structure:load db:migrate gitlab:db:setup_ee' succeeded in 38 seconds.79$ run_timed_command "scripts/gitaly-test-build"80$ scripts/gitaly-test-build81Settings are listed in order of priority. The top value will be used.82retry83Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config/config): 384path85Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config/config): "/builds/gitlab-org/gitlab/vendor/gitaly-ruby"86jobs87Set for your local app (/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config/config): 488app_config89Set via BUNDLE_APP_CONFIG: "/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/.bundle/config"90gemfile91Set via BUNDLE_GEMFILE: "/builds/gitlab-org/gitlab/tmp/tests/gitaly/ruby/Gemfile"92flags93Set via BUNDLE_FLAGS: "--jobs=4 --retry=3 --quiet --path=/builds/gitlab-org/gitlab/vendor/gitaly-ruby"94silence_root_warning95Set via BUNDLE_SILENCE_ROOT_WARNING: true96go install -ldflags '-X gitlab.com/gitlab-org/gitaly/internal/version.version=13.3.0-rc5 -X gitlab.com/gitlab-org/gitaly/internal/version.buildtime=20200831.023704' -tags "tracer_static,tracer_static_jaeger,continuous_profiler_stackdriver" gitlab.com/gitlab-org/gitaly/cmd/praefect gitlab.com/gitlab-org/gitaly/cmd/gitaly-hooks gitlab.com/gitlab-org/gitaly/cmd/gitaly-blackbox gitlab.com/gitlab-org/gitaly/cmd/gitaly gitlab.com/gitlab-org/gitaly/cmd/gitaly-debug gitlab.com/gitlab-org/gitaly/cmd/gitaly-ssh gitlab.com/gitlab-org/gitaly/cmd/gitaly-wrapper97install /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/praefect /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/gitaly-hooks /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/gitaly-blackbox /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/gitaly /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/gitaly-debug /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/gitaly-ssh /builds/gitlab-org/gitlab/tmp/tests/gitaly/_build/bin/gitaly-wrapper /builds/gitlab-org/gitlab/tmp/tests/gitaly98Checking gitaly-ruby Gemfile...99Checking gitaly-ruby bundle...100Warning: the running version of Bundler (1.17.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.101The Gemfile's dependencies are satisfied102Trying to connect to gitaly: ......... OK103Trying to connect to praefect: ....... OK104==> 'scripts/gitaly-test-build' succeeded in 50 seconds.105$ run_timed_command "scripts/gitaly-test-spawn"106$ scripts/gitaly-test-spawn107Checking gitaly-ruby Gemfile...108Checking gitaly-ruby bundle...109Warning: the running version of Bundler (1.17.2) is older than the version that created the lockfile (1.17.3). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.110The Gemfile's dependencies are satisfied111Trying to connect to gitaly: ......... OK112Trying to connect to praefect: ........ OK113==> 'scripts/gitaly-test-spawn' succeeded in 3 seconds.114$ source scripts/rspec_helpers.sh115$ rspec_paralellized_job "--tag ~quarantine --tag ~geo --tag ~level:migration"116KNAPSACK_TEST_FILE_PATTERN: ee/spec/{bin,channels,config,db,dependencies,factories,finders,frontend,graphql,haml_lint,helpers,initializers,javascripts,lib,models,policies,presenters,rack_servers,replicators,routing,rubocop,serializers,services,sidekiq,support_specs,tasks,uploaders,validators,views,workers,elastic_integration,tooling}{,/**/}*_spec.rb117Report specs:118ee/spec/models/geo_node_status_spec.rb119ee/spec/models/epic_issue_spec.rb120ee/spec/models/burndown_spec.rb121ee/spec/policies/project_policy_spec.rb122ee/spec/services/todo_service_spec.rb123ee/spec/lib/gitlab/ci/reports/security/vulnerability_reports_comparer_spec.rb124ee/spec/models/sca/license_compliance_spec.rb125ee/spec/workers/geo/file_download_dispatch_worker_spec.rb126ee/spec/services/ee/git/branch_push_service_spec.rb127ee/spec/lib/gitlab/custom_file_templates_spec.rb128ee/spec/lib/gitlab/elastic/indexer_spec.rb129ee/spec/services/feature_flags/update_service_spec.rb130ee/spec/services/audit_event_service_spec.rb131ee/spec/serializers/dashboard_operations_project_entity_spec.rb132ee/spec/models/productivity_analytics_spec.rb133ee/spec/models/geo/design_registry_spec.rb134ee/spec/services/security/waf_anomaly_summary_service_spec.rb135ee/spec/workers/geo/repository_verification/primary/shard_worker_spec.rb136ee/spec/helpers/vulnerabilities_helper_spec.rb137ee/spec/finders/ci/daily_build_group_report_results_by_group_finder_spec.rb138ee/spec/services/epic_links/update_service_spec.rb139ee/spec/replicators/geo/package_file_replicator_spec.rb140ee/spec/services/ee/issue_links/create_service_spec.rb141ee/spec/lib/ee/api/entities/geo_node_status_spec.rb142ee/spec/workers/network_policy_metrics_worker_spec.rb143ee/spec/policies/requirements_management/requirement_policy_spec.rb144ee/spec/services/wiki_pages/update_service_spec.rb145ee/spec/services/ee/issues/create_from_vulnerability_data_service_spec.rb146ee/spec/models/protected_environment_spec.rb147ee/spec/graphql/mutations/dast_site_profiles/delete_spec.rb148ee/spec/models/vulnerabilities/issue_link_spec.rb149ee/spec/services/projects/operations/update_service_spec.rb150ee/spec/models/requirements_management/test_report_spec.rb151ee/spec/finders/feature_flags_finder_spec.rb152ee/spec/models/operations/feature_flags/user_list_spec.rb153ee/spec/services/ee/system_notes/merge_train_service_spec.rb154ee/spec/models/instance_security_dashboard_spec.rb155ee/spec/services/security/report_summary_service_spec.rb156ee/spec/lib/gitlab/code_owners_spec.rb157ee/spec/graphql/mutations/dast_site_profiles/create_spec.rb158ee/spec/lib/gitlab/ci/templates/Verify/browser_performance_testing_gitlab_ci_yaml_spec.rb159ee/spec/lib/omni_auth/strategies/group_saml_spec.rb160ee/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb161ee/spec/services/ee/resource_events/change_weight_service_spec.rb162ee/spec/services/projects/update_pages_service_spec.rb163ee/spec/lib/gitlab/ci/parsers/security/dependency_list_spec.rb164ee/spec/serializers/epic_note_entity_spec.rb165ee/spec/lib/gitlab/elastic/group_search_results_spec.rb166ee/spec/services/projects/transfer_service_spec.rb167ee/spec/services/ci/trigger_downstream_subscription_service_spec.rb168ee/spec/presenters/ci/build_runner_presenter_spec.rb169ee/spec/services/security/dependency_list_service_spec.rb170ee/spec/services/merge_requests/sync_code_owner_approval_rules_spec.rb171ee/spec/models/concerns/ee/project_security_scanners_information_spec.rb172ee/spec/serializers/licenses_list_entity_spec.rb173ee/spec/lib/gitlab/auth/saml/user_spec.rb174ee/spec/models/scoped_label_set_spec.rb175ee/spec/serializers/status_page/incident_comment_entity_spec.rb176ee/spec/workers/elastic_namespace_indexer_worker_spec.rb177ee/spec/presenters/audit_event_presenter_spec.rb178ee/spec/lib/analytics/refresh_reassign_data_spec.rb179ee/spec/services/jira/requests/issues/list_service_spec.rb180ee/spec/routing/admin_routing_spec.rb181ee/spec/services/ee/users/update_service_spec.rb182ee/spec/policies/approval_merge_request_rule_policy_spec.rb183ee/spec/lib/gitlab/code_owners/groups_loader_spec.rb184ee/spec/models/namespace/root_storage_size_spec.rb185ee/spec/services/groups/mark_for_deletion_service_spec.rb186ee/spec/lib/gitlab/com_spec.rb187ee/spec/serializers/productivity_analytics_merge_request_entity_spec.rb188ee/spec/services/projects/setup_ci_cd_spec.rb189ee/spec/models/project_alias_spec.rb190ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb191ee/spec/services/projects/update_service_spec.rb192ee/spec/services/ee/audit_events/repository_push_audit_event_service_spec.rb193ee/spec/finders/geo/project_registry_finder_spec.rb194ee/spec/lib/gitlab/background_migration/fix_orphan_promoted_issues_spec.rb195ee/spec/workers/store_security_reports_worker_spec.rb196ee/spec/lib/gitlab/code_owners/entry_spec.rb197ee/spec/services/ee/issuable/clone/attributes_rewriter_spec.rb198ee/spec/views/layouts/application.html.haml_spec.rb199ee/spec/services/vulnerability_issue_links/delete_service_spec.rb200ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb201ee/spec/services/ee/git/wiki_push_service_spec.rb202ee/spec/lib/gitlab/ci/reports/security/aggregated_report_spec.rb203ee/spec/services/geo/hashed_storage_migrated_event_store_spec.rb204ee/spec/services/security/report_fetch_service_spec.rb205ee/spec/services/projects/licenses/update_policy_service_spec.rb206ee/spec/policies/geo/registry_policy_spec.rb207ee/spec/routing/webhook_routes_spec.rb208ee/spec/models/analytics/cycle_analytics/project_stage_spec.rb209ee/spec/services/merge_requests/build_service_spec.rb210ee/spec/workers/analytics/code_review_metrics_worker_spec.rb211ee/spec/workers/geo/batch/project_registry_worker_spec.rb212ee/spec/services/ci/audit_variable_change_service_spec.rb213ee/spec/services/slash_commands/global_slack_handler_spec.rb214ee/spec/graphql/mutations/instance_security_dashboard/add_project_spec.rb215ee/spec/models/concerns/deprecated_approvals_before_merge_spec.rb216ee/spec/models/namespace_statistics_spec.rb217ee/spec/serializers/ee/evidences/release_entity_spec.rb218ee/spec/elastic_integration/repository_index_spec.rb219ee/spec/serializers/dashboard_environment_entity_spec.rb220ee/spec/services/security/store_scans_service_spec.rb221ee/spec/serializers/managed_license_entity_spec.rb222ee/spec/serializers/vulnerability_entity_spec.rb223ee/spec/presenters/vulnerabilities/finding_presenter_spec.rb224ee/spec/models/project_services/hipchat_service_spec.rb225ee/spec/lib/gitlab/ci/parsers/security/coverage_fuzzing_spec.rb226ee/spec/services/geo/blob_verification_secondary_service_spec.rb227ee/spec/finders/requirements_management/requirements_finder_spec.rb228ee/spec/services/ee/resource_events/synthetic_iteration_notes_builder_service_spec.rb229ee/spec/lib/ee/gitlab/verify/uploads_spec.rb230ee/spec/views/projects/settings/operations/show.html.haml_spec.rb231ee/spec/models/ee/description_version_spec.rb232ee/spec/models/concerns/health_status_spec.rb233ee/spec/services/ee/ip_restrictions/update_service_spec.rb234ee/spec/workers/geo/repository_cleanup_worker_spec.rb235ee/spec/graphql/mutations/requirements_management/create_requirement_spec.rb236ee/spec/services/geo/container_repository_sync_spec.rb237ee/spec/serializers/merge_request_compliance_entity_spec.rb238ee/spec/lib/ee/api/entities/analytics/code_review/merge_request_spec.rb239ee/spec/workers/purge_dependency_proxy_cache_worker_spec.rb240ee/spec/helpers/compliance_management/compliance_framework/project_settings_helper_spec.rb241ee/spec/services/security/vulnerability_counting_service_spec.rb242ee/spec/workers/remove_unreferenced_lfs_objects_worker_spec.rb243ee/spec/lib/gitlab/ci/parsers/license_compliance/license_scanning_spec.rb244ee/spec/models/geo/repositories_changed_event_spec.rb245ee/spec/services/milestones/promote_service_spec.rb246ee/spec/lib/ee/gitlab/url_builder_spec.rb247ee/spec/services/group_saml/sign_up_service_spec.rb248ee/spec/policies/project_snippet_policy_spec.rb249ee/spec/services/ci/destroy_pipeline_service_spec.rb250ee/spec/views/shared/credentials_inventory/_expiry_date.html.haml_spec.rb251ee/spec/services/elastic/index_projects_service_spec.rb252ee/spec/lib/atlassian/jira_connect/serializers/branch_entity_spec.rb253ee/spec/services/analytics/cycle_analytics/stages/list_service_spec.rb254ee/spec/graphql/mutations/vulnerabilities/dismiss_spec.rb255ee/spec/models/scim_identity_spec.rb256ee/spec/models/project_security_setting_spec.rb257ee/spec/lib/gitlab/slash_commands/presenters/issue_show_spec.rb258ee/spec/services/ee/integrations/test/project_service_spec.rb259ee/spec/services/dependency_proxy/download_blob_service_spec.rb260ee/spec/graphql/resolvers/requirements_management/test_reports_resolver_spec.rb261ee/spec/services/dependency_proxy/find_or_create_blob_service_spec.rbKnapsack report generator started!262RSpec's reporter has already been initialized with #<IO:<STDERR>> as the deprecation stream, so your change to `deprecation_stream` will be ignored. You should configure it earlier for it to take effect, or use the `--deprecation-out` CLI option. (Called from /builds/gitlab-org/gitlab/spec/support/rspec.rb:12:in `block in <top (required)>')263Run options:264 include {:focus=>true}265 exclude {:quarantine=>true, :geo=>true, :level=>"migration"}266All examples were filtered out; ignoring {:focus=>true}267==> Setting up gitlab-test bare repository in /builds/gitlab-org/gitlab/tmp/tests/gitlab-test_bare...268 /builds/gitlab-org/gitlab/tmp/tests/gitlab-test_bare set up in 0.050524582 seconds...269EpicIssue270 validations271 is valid to add non-confidential issue to non-confidential epic272 is valid to add confidential issue to confidential epic273 is valid to add confidential issue to non-confidential epic274 is not valid to add non-confidential issue to confidential epic275 relative positioning276 behaves like a class that supports relative positioning277 .move_nulls_to_end278 moves items with null relative_position to the end279 preserves relative position280 moves the item near the start position when there are no existing positions281 does not perform any moves if all items have their relative_position set282 manages to move nulls to the end even if there is a sequence at the end283 manages to move nulls to the end even if there is not enough space284 manages to move nulls to the end, stacking if we cannot create enough space285 does not have an N+1 issue286 .move_nulls_to_start287 moves items with null relative_position to the start288 moves the item near the start position when there are no existing positions289 preserves relative position290 does not perform any moves if all items have their relative_position set291 manages to move nulls to the start even if there is not enough space292 manages to move nulls to the end, stacking if we cannot create enough space293 #max_relative_position294 returns maximum position295 #prev_relative_position296 returns previous position if there is an item above297 returns nil if there is no item above298 #next_relative_position299 returns next position if there is an item below300 returns nil if there is no item below301 #find_next_gap_before302 is expected to be between -2147483648 and 2147483647 (inclusive)303 deals with there not being any items to the left304 finds the next gap to the left, skipping adjacent values305 finds the next gap to the left306 there is no gap307 returns nil308 there is a sequence ending at MAX_POSITION309 can find the gap at the start for any item in the sequence310 respects lower bounds311 #find_next_gap_after312 is expected to be between -2147483648 and 2147483647 (inclusive)313 deals with there not being any items to the right314 finds the next gap to the right, skipping adjacent values315 finds the next gap to the right316 there is no gap317 returns nil318 there is a sequence starting at MIN_POSITION319 can find the gap at the end for any item in the sequence320 respects upper bounds321 #move_before322 moves item before323 can move the item before an item at the start324 can move the item before an item at MIN_POSITION325 can move the item before an item bunched up at MIN_POSITION326 when there is no space327 moves items correctly328 leap-frogging to the left329 can leap-frog STEPS - 1 times before needing to rebalance330 rebalances after leap-frogging STEPS times331 #move_after332 moves item after333 can move the item after an item bunched up at MAX_POSITION334 when there is no space335 can move the item after an item at MAX_POSITION336 moves items correctly337 leap-frogging338 can leap-frog STEPS times before needing to rebalance339 rebalances after leap-frogging STEPS+1 times340 #move_to_start341 moves item to the end342 positions the item at MIN_POSITION when there is only one space left343 rebalances when there is already an item at the MIN_POSITION344 deals with a run of elements at the start345 #move_to_end346 moves item to the end347 positions the item at MAX_POSITION when there is only one space left348 rebalances when there is already an item at the MAX_POSITION349 deals with a run of elements at the end350 #move_between351 positions item between two other352 positions item between on top353 positions item between to end354 positions items even when after and before positions are the same355 positions item in the middle of other two if distance is big enough356 positions item closer to the middle if we are at the very top357 positions item closer to the middle if we are at the very bottom358 positions item in the middle of other two359 positions item right if we pass non-sequential parameters360 avoids N+1 queries when rebalancing other items361 the two items are next to each other362 behaves like moves item between363 moves the middle item to between left and right364 there is no space365 behaves like moves item between366 moves the middle item to between left and right367 there is a bunch of items368 handles bunches correctly369 behaves like moves item between370 moves the middle item to between left and right371 #move_sequence_before372 moves the whole sequence of items to the middle of the nearest gap373 raises an error if there is no space374 finds a gap if there are unused positions375 #move_sequence_after376 moves the whole sequence of items to the middle of the nearest gap377 finds a gap if there are unused positions378 raises an error if there is no space379 with a mixed tree level380 can create space by using move_sequence_after381 can create space by using move_sequence_before382 moves nulls to the end383Burndown384 project milestone burndown385 behaves like burndown for milestone386 generates an array of issues with date, issue weight and action387 returns empty array if milestone start date is nil388 returns empty array if milestone due date is nil389 counts until today if milestone due date > Date.today390 sets attribute accurate to true391 is accurate with no issues392 ignores follow-up events with the same action393 when issues belong to a public project394 does not include confidential issues for users who are not project members395 when there are no closed issues396 sets attribute empty to false397 when all closed issues do not have closed events398 considers closed_at as milestone start date399 sets attribute empty to true400 when one but not all closed issues does not have a closed event401 sets attribute accurate to false402 group milestone burndown403 when nested group milestone404 behaves like burndown for milestone405 generates an array of issues with date, issue weight and action406 returns empty array if milestone start date is nil407 returns empty array if milestone due date is nil408 counts until today if milestone due date > Date.today409 sets attribute accurate to true410 is accurate with no issues411 ignores follow-up events with the same action412 when issues belong to a public project413 does not include confidential issues for users who are not project members414 when there are no closed issues415 sets attribute empty to false416 when all closed issues do not have closed events417 considers closed_at as milestone start date418 sets attribute empty to true419 when one but not all closed issues does not have a closed event420 sets attribute accurate to false421 when non-nested group milestone422 behaves like burndown for milestone423 generates an array of issues with date, issue weight and action424 returns empty array if milestone start date is nil425 returns empty array if milestone due date is nil426 counts until today if milestone due date > Date.today427 sets attribute accurate to true428 is accurate with no issues429 ignores follow-up events with the same action430 when issues belong to a public project431 does not include confidential issues for users who are not project members432 when there are no closed issues433 sets attribute empty to false434 when all closed issues do not have closed events435 considers closed_at as milestone start date436 sets attribute empty to true437 when one but not all closed issues does not have a closed event438 sets attribute accurate to false439 load burndown events440 avoids N+1 database queries441ProjectPolicy442 basic permissions443 behaves like project policies as anonymous444 abilities for public projects445 when a project has pending invites446 does not grant owner access447 behaves like archived project policies448 when the project is archived449 disables write actions on all relevant project features450 disables some other important write actions451 does not disable other abilities452 abilities for non-public projects453 is expected to be banned454 behaves like project policies as guest455 abilities for non-public projects456 is expected not to be allowed :set_note_created_at457 behaves like deploy token does not get confused with user458 is expected not to be allowed :set_note_created_at459 behaves like archived project policies460 when the project is archived461 disables write actions on all relevant project features462 disables some other important write actions463 does not disable other abilities464 public builds enabled465 is expected to be allowed :read_pipeline466 when public builds disabled467 is expected not to be allowed :read_pipeline468 when builds are disabled469 is expected to be allowed :read_pipeline470 behaves like project policies as reporter471 abilities for non-public projects472 is expected not to be allowed :set_note_created_at473 behaves like deploy token does not get confused with user474 is expected not to be allowed :set_note_created_at475 behaves like archived project policies476 when the project is archived477 disables write actions on all relevant project features478 disables some other important write actions479 does not disable other abilities480 behaves like project policies as developer481 abilities for non-public projects482 is expected not to be allowed :set_note_created_at483 behaves like deploy token does not get confused with user484 is expected not to be allowed :set_note_created_at485 behaves like archived project policies486 when the project is archived487 disables write actions on all relevant project features488 disables some other important write actions489 does not disable other abilities490 behaves like project policies as maintainer491 abilities for non-public projects492 is expected not to be allowed :set_note_created_at493 behaves like deploy token does not get confused with user494 is expected not to be allowed :set_note_created_at495 behaves like archived project policies496 when the project is archived497 disables write actions on all relevant project features498 disables some other important write actions499 does not disable other abilities500 behaves like project policies as owner501 abilities for non-public projects502 is expected to be allowed :set_note_created_at503 behaves like deploy token does not get confused with user504 is expected not to be allowed :set_note_created_at505 behaves like archived project policies506 when the project is archived507 disables write actions on all relevant project features508 disables some other important write actions509 does not disable other abilities510 behaves like project policies as admin with admin mode511 abilities for non-public projects512 is expected to be allowed :set_note_created_at513 deploy token does not get confused with user514 is expected not to be allowed :set_note_created_at515 behaves like archived project policies516 when the project is archived517 disables write actions on all relevant project features518 disables some other important write actions519 does not disable other abilities520 abilities for all project visibility521 behaves like project private features with read_all_resources ability522 for public projects523 allows the download_code ability524 for internal projects525 allows the download_code ability526 for private projects527 allows the download_code ability528 behaves like project policies as admin without admin mode529 abilities for non-public projects530 is expected to be banned531 deploy token does not get confused with user532 is expected to be banned533 auditor534 who is not a team member535 is expected to be allowed :download_code, :download_wiki_code, :read_project, :read_board, :read_list, :read_project_for_iids, :read_issue_iid, :read_merge_request_iid, :read_wiki, :read_issue, :read_label, :read_issue_link, :read_milestone, :read_iteration, :read_snippet, :read_project_member, :read_note, :read_cycle_analytics, :read_pipeline, :read_build, :read_commit_status, :read_container_image, :read_environment, :read_deployment, :read_merge_request, :read_pages, :create_merge_request_in, :award_emoji, :read_project_security_dashboard, :read_vulnerability, :read_vulnerability_scanner, :read_software_license_policy, :read_threat_monitoring, and :read_merge_train536 who is a team member537 is expected to be allowed :download_code, :download_wiki_code, :read_project, :read_board, :read_list, :read_project_for_iids, :read_issue_iid, :read_merge_request_iid, :read_wiki, :read_issue, :read_label, :read_issue_link, :read_milestone, :read_iteration, :read_snippet, :read_project_member, :read_note, :read_cycle_analytics, :read_pipeline, :read_build, :read_commit_status, :read_container_image, :read_environment, :read_deployment, :read_merge_request, :read_pages, :create_merge_request_in, :award_emoji, :read_project_security_dashboard, :read_vulnerability, :read_vulnerability_scanner, :read_software_license_policy, :read_threat_monitoring, and :read_merge_train538 behaves like project private features with read_all_resources ability539 for public projects540 allows the download_code ability541 for internal projects542 allows the download_code ability543 for private projects544 allows the download_code ability545 iterations546 when feature is disabled547 is expected to be disallowed :read_iteration, :create_iteration, and :admin_iteration548 when feature is enabled549 is expected to be allowed :read_iteration, :create_iteration, and :admin_iteration550 when issues are disabled but merge requests are enabled551 is expected to be allowed :read_iteration, :create_iteration, and :admin_iteration552 when issues are enabled but merge requests are enabled553 is expected to be allowed :read_iteration, :create_iteration, and :admin_iteration554 when both issues and merge requests are disabled555 is expected to be disallowed :read_iteration, :create_iteration, and :admin_iteration556 when user is a developer557 is expected to be allowed :read_iteration, :create_iteration, and :admin_iteration558 when user is a guest559 is expected to be allowed :read_iteration560 is expected to be disallowed :create_iteration and :admin_iteration561 when user is not a member562 is expected to be allowed :read_iteration563 is expected to be disallowed :create_iteration and :admin_iteration564 when user is logged out565 is expected to be allowed :read_iteration566 is expected to be disallowed :create_iteration and :admin_iteration567 when the project is private568 when user is not a member569 is expected to be disallowed :read_iteration, :create_iteration, and :admin_iteration570 when user is logged out571 is expected to be disallowed :read_iteration, :create_iteration, and :admin_iteration572 issues feature573 when the feature is disabled574 disables boards permissions575 admin_mirror576 with remote mirror setting enabled577 with admin578 when admin mode enabled579 is expected to be allowed :admin_mirror580 when admin mode disabled581 is expected to be disallowed :admin_mirror582 with owner583 is expected to be allowed :admin_mirror584 with developer585 is expected to be disallowed :admin_mirror586 with remote mirror setting disabled587 with admin588 when admin mode enabled589 is expected to be allowed :admin_mirror590 when admin mode disabled591 is expected to be disallowed :admin_mirror592 with owner593 is expected to be disallowed :admin_mirror594 with remote mirrors feature disabled595 with admin596 is expected to be disallowed :admin_mirror597 with owner598 is expected to be disallowed :admin_mirror599 with remote mirrors feature enabled600 with admin601 when admin mode enabled602 is expected to be allowed :admin_mirror603 when admin mode disabled604 is expected to be disallowed :admin_mirror605 with owner606 is expected to be allowed :admin_mirror607 reading a project608 with an external authorization service609 allows auditors610 with sso enforcement enabled611 when the session has been set globally612 prevents access without a SAML session613 allows access with a SAML session614 as an admin615 when admin mode enabled616 allows access617 when admin mode disabled618 does not allow access619 as a group owner620 prevents access without a SAML session621 with public access622 allows access desipte group enforcement623 in a personal namespace624 allows access625 when there is no global session or sso state626 allows access because we haven't yet restricted all use cases627 with ip restriction628 group without restriction629 is expected to be allowed :read_project630 group with restriction631 address is within the range632 is expected to be allowed :read_project633 address is outside the range634 is expected to be disallowed :read_project635 with admin enabled636 is expected to be allowed :read_project637 with admin disabled638 is expected to be disallowed :read_project639 without group640 is expected to be allowed :read_project641 vulnerability feedback permissions642 permission: :read_vulnerability_feedback643 with admin644 when admin mode enabled645 is expected to be allowed :read_vulnerability_feedback646 when admin mode disabled647 is expected to be disallowed :read_vulnerability_feedback648 with owner649 is expected to be allowed :read_vulnerability_feedback650 with maintainer651 is expected to be allowed :read_vulnerability_feedback652 with developer653 is expected to be allowed :read_vulnerability_feedback654 with reporter655 is expected to be disallowed :read_vulnerability_feedback656 with guest657 is expected to be disallowed :read_vulnerability_feedback658 with non member659 is expected to be disallowed :read_vulnerability_feedback660 with anonymous661 is expected to be disallowed :read_vulnerability_feedback662 permission: :create_vulnerability_feedback663 with admin664 when admin mode enabled665 is expected to be allowed :create_vulnerability_feedback666 when admin mode disabled667 is expected to be disallowed :create_vulnerability_feedback668 with owner669 is expected to be allowed :create_vulnerability_feedback670 with maintainer671 is expected to be allowed :create_vulnerability_feedback672 with developer673 is expected to be allowed :create_vulnerability_feedback674 with reporter675 is expected to be disallowed :create_vulnerability_feedback676 with guest677 is expected to be disallowed :create_vulnerability_feedback678 with non member679 is expected to be disallowed :create_vulnerability_feedback680 with anonymous681 is expected to be disallowed :create_vulnerability_feedback682 permission: :update_vulnerability_feedback683 with admin684 when admin mode enabled685 is expected to be allowed :update_vulnerability_feedback686 when admin mode disabled687 is expected to be disallowed :update_vulnerability_feedback688 with owner689 is expected to be allowed :update_vulnerability_feedback690 with maintainer691 is expected to be allowed :update_vulnerability_feedback692 with developer693 is expected to be allowed :update_vulnerability_feedback694 with reporter695 is expected to be disallowed :update_vulnerability_feedback696 with guest697 is expected to be disallowed :update_vulnerability_feedback698 with non member699 is expected to be disallowed :update_vulnerability_feedback700 with anonymous701 is expected to be disallowed :update_vulnerability_feedback702 permission: :destroy_vulnerability_feedback703 with admin704 when admin mode enabled705 is expected to be allowed :destroy_vulnerability_feedback706 when admin mode disabled707 is expected to be disallowed :destroy_vulnerability_feedback708 with owner709 is expected to be allowed :destroy_vulnerability_feedback710 with maintainer711 is expected to be allowed :destroy_vulnerability_feedback712 with developer713 is expected to be allowed :destroy_vulnerability_feedback714 with reporter715 is expected to be disallowed :destroy_vulnerability_feedback716 with guest717 is expected to be disallowed :destroy_vulnerability_feedback718 with non member719 is expected to be disallowed :destroy_vulnerability_feedback720 with anonymous721 is expected to be disallowed :destroy_vulnerability_feedback722 read_project_security_dashboard723 with developer724 is expected to be disallowed :read_project_security_dashboard725 vulnerability permissions726 dismiss_vulnerability727 with developer728 is expected to be disallowed :create_vulnerability729 is expected to be disallowed :admin_vulnerability730 is expected to be disallowed :create_vulnerability_export731 read_threat_monitoring732 when threat monitoring feature is available733 with developer or higher role734 role: "owner"735 is expected to be allowed :read_threat_monitoring736 role: "maintainer"737 is expected to be allowed :read_threat_monitoring738 role: "developer"739 is expected to be allowed :read_threat_monitoring740 with admin741 when admin mode enabled742 is expected to be allowed :read_threat_monitoring743 when admin mode disabled744 is expected to be disallowed :read_threat_monitoring745 with less than developer role746 role: "reporter"747 is expected to be disallowed :read_threat_monitoring748 role: "guest"749 is expected to be disallowed :read_threat_monitoring750 with non member751 is expected to be disallowed :read_threat_monitoring752 with anonymous753 is expected to be disallowed :read_threat_monitoring754 when threat monitoring feature is not available755 is expected to be disallowed :read_threat_monitoring756 remove_project when default_project_deletion_protection is set to true757 with admin758 when admin mode enabled759 is expected to be allowed :remove_project760 when admin mode disabled761 is expected to be disallowed :remove_project762 who owns the project763 is expected to be disallowed :remove_project764 with owner765 is expected to be disallowed :remove_project766 read_feature_flag767 with admin768 when repository is disabled769 is expected to be disallowed :read_feature_flag770 with developer771 when feature flags features is not available772 is expected to be disallowed :read_feature_flag773 admin_software_license_policy774 without license scanning feature available775 is expected to be disallowed :admin_software_license_policy776 with admin777 when admin mode enabled778 is expected to be allowed :admin_software_license_policy779 when admin mode disabled780 is expected to be disallowed :admin_software_license_policy781 with owner782 is expected to be allowed :admin_software_license_policy783 with maintainer784 is expected to be allowed :admin_software_license_policy785 with developer786 is expected to be disallowed :admin_software_license_policy787 with reporter788 is expected to be disallowed :admin_software_license_policy789 with guest790 is expected to be disallowed :admin_software_license_policy791 with non member792 is expected to be disallowed :admin_software_license_policy793 with anonymous794 is expected to be disallowed :admin_software_license_policy795 read_software_license_policy796 without license scanning feature available797 is expected to be disallowed :read_software_license_policy798 read_dependencies799 when dependency scanning feature available800 with public project801 with public access to repository802 is expected to be allowed :read_dependencies803 with limited access to repository804 is expected not to be allowed :read_dependencies805 with private project806 with admin807 when admin mode enabled808 is expected to be allowed :read_dependencies809 when admin mode disabled810 is expected to be disallowed :read_dependencies811 with owner812 is expected to be allowed :read_dependencies813 with maintainer814 is expected to be allowed :read_dependencies815 with developer816 is expected to be allowed :read_dependencies817 with reporter818 is expected to be allowed :read_dependencies819 with guest820 is expected to be disallowed :read_dependencies821 with non member822 is expected to be disallowed :read_dependencies823 with anonymous824 is expected to be disallowed :read_dependencies825 when dependency list feature not available826 is expected not to be allowed :read_dependencies827 read_licenses828 when license management feature available829 with public project830 with public access to repository831 is expected to be allowed :read_licenses832 with private project833 role: "owner"834 is expected to be allowed :read_licenses835 role: "maintainer"836 is expected to be allowed :read_licenses837 role: "developer"838 is expected to be allowed :read_licenses839 role: "reporter"840 is expected to be allowed :read_licenses841 with admin842 when admin mode enabled843 is expected to be allowed :read_licenses844 when admin mode disabled845 is expected to be disallowed :read_licenses846 with guest847 is expected to be disallowed :read_licenses848 with non member849 is expected to be disallowed :read_licenses850 with anonymous851 is expected to be disallowed :read_licenses852 when license management feature in not available853 is expected to be disallowed :read_licenses854 publish_status_page855 when feature is available856 role: :anonymous, admin_mode: nil, allowed: false857 is expected to be disallowed :publish_status_page858 when feature is not available859 is expected to be disallowed :publish_status_page860 when feature flag is disabled861 is expected to be disallowed :publish_status_page862 role: :guest, admin_mode: nil, allowed: false863 is expected to be disallowed :publish_status_page864 when feature is not available865 is expected to be disallowed :publish_status_page866 when feature flag is disabled867 is expected to be disallowed :publish_status_page868 role: :reporter, admin_mode: nil, allowed: false869 is expected to be disallowed :publish_status_page870 when feature is not available871 is expected to be disallowed :publish_status_page872 when feature flag is disabled873 is expected to be disallowed :publish_status_page874 role: :developer, admin_mode: nil, allowed: true875 is expected to be allowed :publish_status_page876 when feature is not available877 is expected to be disallowed :publish_status_page878 when feature flag is disabled879 is expected to be disallowed :publish_status_page880 role: :maintainer, admin_mode: nil, allowed: true881 is expected to be allowed :publish_status_page882 when feature is not available883 is expected to be disallowed :publish_status_page884 when feature flag is disabled885 is expected to be disallowed :publish_status_page886 role: :owner, admin_mode: nil, allowed: true887 is expected to be allowed :publish_status_page888 when feature is not available889 is expected to be disallowed :publish_status_page890 when feature flag is disabled891 is expected to be disallowed :publish_status_page892 role: :admin, admin_mode: false, allowed: false893 is expected to be disallowed :publish_status_page894 when feature is not available895 is expected to be disallowed :publish_status_page896 when feature flag is disabled897 is expected to be disallowed :publish_status_page898 role: :admin, admin_mode: true, allowed: true899 is expected to be allowed :publish_status_page900 when feature is not available901 is expected to be disallowed :publish_status_page902 when feature flag is disabled903 is expected to be disallowed :publish_status_page904 visual review bot905 is expected to be allowed :create_note906 is expected not to be allowed :read_note907 is expected not to be allowed :resolve_note908 commit_committer_check is not enabled by the current license909 is expected not to be allowed :change_commit_committer_check910 is expected not to be allowed :read_commit_committer_check911 commit_committer_check is enabled by the current license912 the user is a maintainer913 is expected to be allowed :change_commit_committer_check914 is expected to be allowed :read_commit_committer_check915 the user is a developer916 is expected not to be allowed :change_commit_committer_check917 is expected to be allowed :read_commit_committer_check918 it is enabled on global level919 when the user is a maintainer920 is expected not to be allowed :change_commit_committer_check921 is expected to be allowed :read_commit_committer_check922 when the user is a developer923 is expected not to be allowed :change_commit_committer_check924 is expected to be allowed :read_commit_committer_check925 it is enabled on group level926 when the user is a maintainer927 is expected not to be allowed :change_commit_committer_check928 is expected to be allowed :read_commit_committer_check929 when the user is a developer930 is expected not to be allowed :change_commit_committer_check931 is expected to be allowed :read_commit_committer_check932 reject_unsigned_commits is not enabled by the current license933 is expected not to be allowed :change_reject_unsigned_commits934 is expected not to be allowed :read_reject_unsigned_commits935 reject_unsigned_commits is enabled by the current license936 when the user is a maintainer937 is expected to be allowed :change_reject_unsigned_commits938 is expected to be allowed :read_reject_unsigned_commits939 when the user is a developer940 is expected not to be allowed :change_reject_unsigned_commits941 is expected to be allowed :read_reject_unsigned_commits942 it is enabled on global level943 when the user is a maintainer944 is expected not to be allowed :change_reject_unsigned_commits945 is expected to be allowed :read_reject_unsigned_commits946 when the user is a developer947 is expected not to be allowed :change_reject_unsigned_commits948 is expected to be allowed :read_reject_unsigned_commits949 it is enabled on group level950 when the user is a maintainer951 is expected not to be allowed :change_reject_unsigned_commits952 is expected to be allowed :read_reject_unsigned_commits953 when the user is a developer954 is expected not to be allowed :change_reject_unsigned_commits955 is expected to be allowed :read_reject_unsigned_commits956 when timelogs report feature is enabled957 admin958 when admin mode enabled959 is expected to be allowed :read_group_timelogs960 when admin mode disabled961 is expected to be disallowed :read_group_timelogs962 with owner963 is expected to be allowed :read_group_timelogs964 with maintainer965 is expected to be allowed :read_group_timelogs966 with reporter967 is expected to be allowed :read_group_timelogs968 with guest969 is expected to be disallowed :read_group_timelogs970 with non member971 is expected to be disallowed :read_group_timelogs972 with anonymous973 is expected to be disallowed :read_group_timelogs974 when timelogs report feature is disabled975 is expected to be disallowed :read_group_timelogs976 :read_code_review_analytics977 role: :guest, admin_mode: nil, allowed: false978 is expected to be disallowed :read_code_review_analytics979 role: :reporter, admin_mode: nil, allowed: true980 is expected to be allowed :read_code_review_analytics981 role: :developer, admin_mode: nil, allowed: true982 is expected to be allowed :read_code_review_analytics983 role: :maintainer, admin_mode: nil, allowed: true984 is expected to be allowed :read_code_review_analytics985 role: :owner, admin_mode: nil, allowed: true986 is expected to be allowed :read_code_review_analytics987 role: :admin, admin_mode: false, allowed: false988 is expected to be disallowed :read_code_review_analytics989 role: :admin, admin_mode: true, allowed: true990 is expected to be allowed :read_code_review_analytics991 with code review analytics is not available in license992 is expected to be disallowed :read_code_review_analytics993 :modify_approvers_rules994 behaves like merge request rules995 with merge request approvers rules available in license996 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false997 is expected to be disallowed :modify_approvers_rules998 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false999 is expected to be disallowed :modify_approvers_rules1000 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1001 is expected to be disallowed :modify_approvers_rules1002 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1003 is expected to be allowed :modify_approvers_rules1004 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: false1005 is expected to be disallowed :modify_approvers_rules1006 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1007 is expected to be allowed :modify_approvers_rules1008 role: :owner, regulated_setting: true, admin_mode: nil, allowed: false1009 is expected to be disallowed :modify_approvers_rules1010 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1011 is expected to be disallowed :modify_approvers_rules1012 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1013 is expected to be allowed :modify_approvers_rules1014 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1015 is expected to be disallowed :modify_approvers_rules1016 role: :admin, regulated_setting: true, admin_mode: true, allowed: false1017 is expected to be disallowed :modify_approvers_rules1018 with merge request approvers not available in license1019 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1020 is expected to be disallowed :modify_approvers_rules1021 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1022 is expected to be disallowed :modify_approvers_rules1023 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1024 is expected to be disallowed :modify_approvers_rules1025 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1026 is expected to be allowed :modify_approvers_rules1027 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: true1028 is expected to be allowed :modify_approvers_rules1029 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1030 is expected to be allowed :modify_approvers_rules1031 role: :owner, regulated_setting: true, admin_mode: nil, allowed: true1032 is expected to be allowed :modify_approvers_rules1033 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1034 is expected to be disallowed :modify_approvers_rules1035 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1036 is expected to be allowed :modify_approvers_rules1037 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1038 is expected to be disallowed :modify_approvers_rules1039 role: :admin, regulated_setting: true, admin_mode: true, allowed: true1040 is expected to be allowed :modify_approvers_rules1041 :modify_merge_request_author_setting1042 behaves like merge request rules1043 with merge request approvers rules available in license1044 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1045 is expected to be disallowed :modify_merge_request_author_setting1046 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1047 is expected to be disallowed :modify_merge_request_author_setting1048 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1049 is expected to be disallowed :modify_merge_request_author_setting1050 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1051 is expected to be allowed :modify_merge_request_author_setting1052 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: false1053 is expected to be disallowed :modify_merge_request_author_setting1054 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1055 is expected to be allowed :modify_merge_request_author_setting1056 role: :owner, regulated_setting: true, admin_mode: nil, allowed: false1057 is expected to be disallowed :modify_merge_request_author_setting1058 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1059 is expected to be disallowed :modify_merge_request_author_setting1060 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1061 is expected to be allowed :modify_merge_request_author_setting1062 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1063 is expected to be disallowed :modify_merge_request_author_setting1064 role: :admin, regulated_setting: true, admin_mode: true, allowed: false1065 is expected to be disallowed :modify_merge_request_author_setting1066 with merge request approvers not available in license1067 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1068 is expected to be disallowed :modify_merge_request_author_setting1069 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1070 is expected to be disallowed :modify_merge_request_author_setting1071 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1072 is expected to be disallowed :modify_merge_request_author_setting1073 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1074 is expected to be allowed :modify_merge_request_author_setting1075 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: true1076 is expected to be allowed :modify_merge_request_author_setting1077 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1078 is expected to be allowed :modify_merge_request_author_setting1079 role: :owner, regulated_setting: true, admin_mode: nil, allowed: true1080 is expected to be allowed :modify_merge_request_author_setting1081 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1082 is expected to be disallowed :modify_merge_request_author_setting1083 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1084 is expected to be allowed :modify_merge_request_author_setting1085 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1086 is expected to be disallowed :modify_merge_request_author_setting1087 role: :admin, regulated_setting: true, admin_mode: true, allowed: true1088 is expected to be allowed :modify_merge_request_author_setting1089 :modify_merge_request_committer_setting1090 behaves like merge request rules1091 with merge request approvers rules available in license1092 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1093 is expected to be disallowed :modify_merge_request_committer_setting1094 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1095 is expected to be disallowed :modify_merge_request_committer_setting1096 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1097 is expected to be disallowed :modify_merge_request_committer_setting1098 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1099 is expected to be allowed :modify_merge_request_committer_setting1100 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: false1101 is expected to be disallowed :modify_merge_request_committer_setting1102 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1103 is expected to be allowed :modify_merge_request_committer_setting1104 role: :owner, regulated_setting: true, admin_mode: nil, allowed: false1105 is expected to be disallowed :modify_merge_request_committer_setting1106 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1107 is expected to be disallowed :modify_merge_request_committer_setting1108 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1109 is expected to be allowed :modify_merge_request_committer_setting1110 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1111 is expected to be disallowed :modify_merge_request_committer_setting1112 role: :admin, regulated_setting: true, admin_mode: true, allowed: false1113 is expected to be disallowed :modify_merge_request_committer_setting1114 with merge request approvers not available in license1115 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1116 is expected to be disallowed :modify_merge_request_committer_setting1117 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1118 is expected to be disallowed :modify_merge_request_committer_setting1119 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1120 is expected to be disallowed :modify_merge_request_committer_setting1121 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1122 is expected to be allowed :modify_merge_request_committer_setting1123 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: true1124 is expected to be allowed :modify_merge_request_committer_setting1125 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1126 is expected to be allowed :modify_merge_request_committer_setting1127 role: :owner, regulated_setting: true, admin_mode: nil, allowed: true1128 is expected to be allowed :modify_merge_request_committer_setting1129 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1130 is expected to be disallowed :modify_merge_request_committer_setting1131 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1132 is expected to be allowed :modify_merge_request_committer_setting1133 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1134 is expected to be disallowed :modify_merge_request_committer_setting1135 role: :admin, regulated_setting: true, admin_mode: true, allowed: true1136 is expected to be allowed :modify_merge_request_committer_setting1137 :modify_approvers_list1138 behaves like merge request rules1139 with merge request approvers rules available in license1140 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1141 is expected to be disallowed :modify_approvers_list1142 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1143 is expected to be disallowed :modify_approvers_list1144 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1145 is expected to be disallowed :modify_approvers_list1146 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1147 is expected to be allowed :modify_approvers_list1148 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: false1149 is expected to be disallowed :modify_approvers_list1150 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1151 is expected to be allowed :modify_approvers_list1152 role: :owner, regulated_setting: true, admin_mode: nil, allowed: false1153 is expected to be disallowed :modify_approvers_list1154 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1155 is expected to be disallowed :modify_approvers_list1156 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1157 is expected to be allowed :modify_approvers_list1158 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1159 is expected to be disallowed :modify_approvers_list1160 role: :admin, regulated_setting: true, admin_mode: true, allowed: false1161 is expected to be disallowed :modify_approvers_list1162 with merge request approvers not available in license1163 role: :guest, regulated_setting: true, admin_mode: nil, allowed: false1164 is expected to be disallowed :modify_approvers_list1165 role: :reporter, regulated_setting: true, admin_mode: nil, allowed: false1166 is expected to be disallowed :modify_approvers_list1167 role: :developer, regulated_setting: true, admin_mode: nil, allowed: false1168 is expected to be disallowed :modify_approvers_list1169 role: :maintainer, regulated_setting: false, admin_mode: nil, allowed: true1170 is expected to be allowed :modify_approvers_list1171 role: :maintainer, regulated_setting: true, admin_mode: nil, allowed: true1172 is expected to be allowed :modify_approvers_list1173 role: :owner, regulated_setting: false, admin_mode: nil, allowed: true1174 is expected to be allowed :modify_approvers_list1175 role: :owner, regulated_setting: true, admin_mode: nil, allowed: true1176 is expected to be allowed :modify_approvers_list1177 role: :admin, regulated_setting: false, admin_mode: false, allowed: false1178 is expected to be disallowed :modify_approvers_list1179 role: :admin, regulated_setting: false, admin_mode: true, allowed: true1180 is expected to be allowed :modify_approvers_list1181 role: :admin, regulated_setting: true, admin_mode: false, allowed: false1182 is expected to be disallowed :modify_approvers_list1183 role: :admin, regulated_setting: true, admin_mode: true, allowed: true1184 is expected to be allowed :modify_approvers_list1185 behaves like resource with requirement permissions1186 when requirements feature is enabled1187 with admin1188 behaves like user with read only permissions1189 is expected to be allowed :read_requirement1190 is expected to be disallowed :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1191 with owner1192 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1193 with maintainer1194 behaves like user with manage permissions1195 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, and :create_requirement_test_report1196 is expected to be disallowed :destroy_requirement1197 with developer1198 behaves like user with manage permissions1199 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, and :create_requirement_test_report1200 is expected to be disallowed :destroy_requirement1201 with reporter1202 behaves like user with manage permissions1203 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, and :create_requirement_test_report1204 is expected to be disallowed :destroy_requirement1205 with guest1206 behaves like user with read only permissions1207 is expected to be allowed :read_requirement1208 is expected to be disallowed :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1209 with non member1210 behaves like user with read only permissions1211 is expected to be allowed :read_requirement1212 is expected to be disallowed :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1213 with private resource parent1214 is expected to be disallowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1215 when requirements feature is disabled1216 with owner1217 is expected to be disallowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1218 with admin1219 is expected to be disallowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1220 :compliance_framework_available1221 role: :guest, feature_enabled: false, admin_mode: nil, allowed: false1222 is expected to be disallowed :admin_compliance_framework1223 role: :guest, feature_enabled: true, admin_mode: nil, allowed: false1224 is expected to be disallowed :admin_compliance_framework1225 role: :reporter, feature_enabled: false, admin_mode: nil, allowed: false1226 is expected to be disallowed :admin_compliance_framework1227 role: :reporter, feature_enabled: true, admin_mode: nil, allowed: false1228 is expected to be disallowed :admin_compliance_framework1229 role: :developer, feature_enabled: false, admin_mode: nil, allowed: false1230 is expected to be disallowed :admin_compliance_framework1231 role: :developer, feature_enabled: true, admin_mode: nil, allowed: false1232 is expected to be disallowed :admin_compliance_framework1233 role: :maintainer, feature_enabled: false, admin_mode: nil, allowed: false1234 is expected to be disallowed :admin_compliance_framework1235 role: :maintainer, feature_enabled: true, admin_mode: nil, allowed: true1236 is expected to be allowed :admin_compliance_framework1237 role: :owner, feature_enabled: false, admin_mode: nil, allowed: false1238 is expected to be disallowed :admin_compliance_framework1239 role: :owner, feature_enabled: true, admin_mode: nil, allowed: true1240 is expected to be allowed :admin_compliance_framework1241 role: :admin, feature_enabled: false, admin_mode: false, allowed: false1242 is expected to be disallowed :admin_compliance_framework1243 role: :admin, feature_enabled: false, admin_mode: true, allowed: false1244 is expected to be disallowed :admin_compliance_framework1245 role: :admin, feature_enabled: true, admin_mode: false, allowed: false1246 is expected to be disallowed :admin_compliance_framework1247 role: :admin, feature_enabled: true, admin_mode: true, allowed: true1248 is expected to be allowed :admin_compliance_framework1249 :read_ci_minutes_quota1250 role: :guest, admin_mode: nil, allowed: false1251 is expected to be disallowed :read_ci_minutes_quota1252 role: :reporter, admin_mode: nil, allowed: false1253 is expected to be disallowed :read_ci_minutes_quota1254 role: :developer, admin_mode: nil, allowed: true1255 is expected to be allowed :read_ci_minutes_quota1256 role: :maintainer, admin_mode: nil, allowed: true1257 is expected to be allowed :read_ci_minutes_quota1258 role: :owner, admin_mode: nil, allowed: true1259 is expected to be allowed :read_ci_minutes_quota1260 role: :admin, admin_mode: false, allowed: false1261 is expected to be disallowed :read_ci_minutes_quota1262 role: :admin, admin_mode: true, allowed: true1263 is expected to be allowed :read_ci_minutes_quota1264 when project is readonly because the storage usage limit has been exceeded on the root namespace1265 when the group has exceeded its storage limit1266 is expected to be disallowed :create_issue, :update_issue, :admin_issue, :create_list, :update_list, :admin_list, :create_merge_request, :update_merge_request, :admin_merge_request, :create_label, :update_label, :admin_label, :create_milestone, :update_milestone, :admin_milestone, :create_snippet, :update_snippet, :admin_snippet, :create_wiki, :update_wiki, :admin_wiki, :create_design, :update_design, :admin_design, :create_note, :update_note, :admin_note, :create_pipeline, :update_pipeline, :admin_pipeline, :create_pipeline_schedule, :update_pipeline_schedule, :admin_pipeline_schedule, :create_build, :update_build, :admin_build, :create_trigger, :update_trigger, :admin_trigger, :create_environment, :update_environment, :admin_environment, :create_deployment, :update_deployment, :admin_deployment, :create_commit_status, :update_commit_status, :admin_commit_status, :create_container_image, :update_container_image, :admin_container_image, :create_pages, :update_pages, :admin_pages, :create_cluster, :update_cluster, :admin_cluster, :create_release, :update_release, :admin_release, :create_board, :update_board, :admin_board, :create_issue_link, :update_issue_link, :admin_issue_link, :create_approvers, :update_approvers, :admin_approvers, :create_vulnerability_feedback, :update_vulnerability_feedback, :admin_vulnerability_feedback, :create_vulnerability, :update_vulnerability, :admin_vulnerability, :create_feature_flag, :update_feature_flag, :admin_feature_flag, :create_feature_flags_client, :update_feature_flags_client, :admin_feature_flags_client, :create_iteration, :update_iteration, :admin_iteration, :admin_tag, :push_code, :push_to_delete_protected_branch, :request_access, :upload_file, :resolve_note, :create_merge_request_from, :create_merge_request_in, :award_emoji, :admin_software_license_policy, and :modify_auto_fix_setting1267 when the group has not exceeded its storage limit1268 is expected to be allowed :create_issue, :update_issue, :admin_issue, :admin_list, :update_merge_request, :admin_merge_request, :admin_label, :admin_milestone, :create_snippet, :update_snippet, :admin_snippet, :create_wiki, :admin_wiki, :create_design, :create_note, :admin_note, :create_pipeline, :update_pipeline, :admin_pipeline, :create_pipeline_schedule, :create_build, :update_build, :admin_build, :create_environment, :update_environment, :admin_environment, :create_deployment, :update_deployment, :admin_deployment, :create_commit_status, :update_commit_status, :admin_commit_status, :create_container_image, :update_container_image, :admin_container_image, :update_pages, :admin_pages, :create_cluster, :update_cluster, :admin_cluster, :create_release, :update_release, :admin_board, :admin_issue_link, :update_approvers, :create_vulnerability_feedback, :update_vulnerability_feedback, :create_vulnerability, :admin_vulnerability, :create_feature_flag, :update_feature_flag, :admin_feature_flag, :admin_feature_flags_client, :create_iteration, :admin_iteration, :admin_tag, :push_code, :push_to_delete_protected_branch, :upload_file, :resolve_note, :create_merge_request_from, :create_merge_request_in, :award_emoji, :admin_software_license_policy, and :modify_auto_fix_setting1269 when subject is not public1270 is expected to be disallowed :view_embedded_analytics_report1271 when subject is public1272 is expected to be allowed :view_embedded_analytics_report1273TodoService1274 Epics1275 Epics1276 #new_epic1277 when an epic belongs to a public group1278 for mentioned users1279 creates todos for users mentioned1280 does not create todos for users not mentioned or without permissions1281 for directly addressed users1282 creates todos for users mentioned1283 does not create todos for users not mentioned or without permissions1284 combined1285 mentioned users1286 creates todos for users mentioned1287 does not create todos for users not mentioned or without permissions1288 directly addressed users1289 creates todos for users mentioned1290 does not create todos for users not mentioned or without permissions1291 when an epic belongs to a private group1292 for mentioned users1293 creates todos for users mentioned1294 does not create todos for users not mentioned or without permissions1295 for directly addressed users1296 creates todos for users mentioned1297 does not create todos for users not mentioned or without permissions1298 creates todos for group members when a group is mentioned1299 creates todos for users mentioned1300 does not create todos for users not mentioned or without permissions1301 #update_epic1302 for mentioned users1303 creates todos for users mentioned1304 does not create todos for users not mentioned or without permissions1305 for directly addressed users1306 creates todos for users mentioned1307 does not create todos for users not mentioned or without permissions1308 #new_note1309 when a note is created for an epic1310 marks pending epic todos for the note author as done1311 does not marka pending epic todos for the note author as done for system notes1312 mentions1313 for mentioned users1314 creates todos for users mentioned1315 does not create todos for users not mentioned or without permissions1316 for directly addressed users1317 creates todos for users mentioned1318 does not create todos for users not mentioned or without permissions1319 combined1320 mentioned users1321 creates todos for users mentioned1322 does not create todos for users not mentioned or without permissions1323 directly addressed users1324 creates todos for users mentioned1325 does not create todos for users not mentioned or without permissions1326 Merge Requests1327 #new_merge_request1328 when the merge request has approvers1329 creates a todo1330 when code owner is mentioned1331 creates a todo1332 Merge Requests1333 an approver has lost access to the project1334 #new_merge_request1335 does not create a todo for the approver1336 #merge_train_removed1337 creates a pending todo for each merge_participant1338Gitlab::Ci::Reports::Security::VulnerabilityReportsComparer1339 #base_report_out_of_date1340 no base report1341 is not out of date1342 base report older than one week1343 is not out of date1344 base report less than one week old1345 is not out of date1346 #existing1347 with existing reports1348 points to source tree1349 when comparing reports with different fingerprints1350 does not find any overlap1351 new vulnerabilities1352 does not change order1353 #added1354 with new vulnerability1355 points to source tree1356 when comparing reports with different fingerprints1357 does not find any overlap1358 order1359 does not change1360 #fixed1361 with fixed vulnerability1362 points to base tree1363 when comparing reports with different fingerprints1364 does not find any overlap1365 order1366 does not change1367 with empty vulnerabilities1368 returns empty array when reports are not present1369 returns added vulnerability when base is empty and head is not empty1370 returns fixed vulnerability when head is empty and base is not empty1371SCA::LicenseCompliance1372 #policies1373 when a pipeline has not been run for this project1374 is expected to be zero1375 when the project has policies configured1376 includes an a policy for a classified license that was not detected in the scan report1377 when a pipeline has run1378 when a license scan job is not configured1379 is expected to be empty1380 when the license scan job has not finished1381 is expected to be empty1382 when the license scan produces a poorly formatted report1383 is expected to be empty1384 when the dependency scan produces a poorly formatted report1385 is expected to contain exactly "BSD-3-Clause", "MIT", and nil1386 when a pipeline has successfully produced a v2.0 license scan report1387 includes a policy for each detected license and classified license1388 includes a policy for a detected license that is unclassified1389 includes a policy for a classified license that was also detected in the scan report1390 includes a policy for a classified license that was not detected in the scan report1391 includes a policy for an unclassified and unknown license that was detected in the scan report1392 when a pipeline has successfully produced a v2.1 license scan report1393 includes a policy for each detected license and classified license1394 includes a policy for a detected license that is unclassified1395 includes a policy for a classified license that was also detected in the scan report1396 includes a policy for a classified license that was not detected in the scan report1397 includes a policy for an unclassified and unknown license that was detected in the scan report1398 when a pipeline has successfully produced a v1.1 license scan report1399 includes a policy for an unclassified license detected in the scan report1400 includes a policy for a denied license found in the scan report1401 includes a policy for an allowed license NOT found in the scan report1402 includes a policy for an unclassified and unknown license found in the scan report1403 #find_policies1404 when searching for policies for licenses that were detected in a scan report1405 only includes licenses that appear in the latest license scan report1406 includes a policy for an unclassified and known license that was detected in the scan report1407 includes an entry for a denied license found in the scan report1408 includes an entry for an allowed license found in the scan report1409 when searching for policies with a specific classification1410 includes an entry for each `allowed` licensed1411 when searching for policies by multiple classifications1412 includes an entry for each `allowed` and `denied` licensed1413 when searching for detected policies matching a classification1414 includes an entry for each entry that was detected in the report and matches a classification1415 when sorting policies1416 attribute: :classification, direction: :asc, expected: ["SOFTWARE-LICENSE", "BSD 3-Clause \"New\" or \"Revised\" License", "unknown", "MIT"]1417 is expected to eq ["SOFTWARE-LICENSE", "BSD 3-Clause \"New\" or \"Revised\" License", "unknown", "MIT"]1418 attribute: :classification, direction: :desc, expected: ["MIT", "unknown", "BSD 3-Clause \"New\" or \"Revised\" License", "SOFTWARE-LICENSE"]1419 is expected to eq ["MIT", "unknown", "BSD 3-Clause \"New\" or \"Revised\" License", "SOFTWARE-LICENSE"]1420 attribute: :name, direction: :desc, expected: ["unknown", "SOFTWARE-LICENSE", "MIT", "BSD 3-Clause \"New\" or \"Revised\" License"]1421 is expected to eq ["unknown", "SOFTWARE-LICENSE", "MIT", "BSD 3-Clause \"New\" or \"Revised\" License"]1422 attribute: :invalid, direction: :asc, expected: ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1423 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1424 attribute: :name, direction: :invalid, expected: ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1425 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1426 attribute: :name, direction: nil, expected: ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1427 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1428 attribute: nil, direction: :asc, expected: ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1429 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1430 attribute: nil, direction: nil, expected: ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1431 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1432 when using the default sort options1433 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1434 when `nil` sort options are provided1435 is expected to eq ["BSD 3-Clause \"New\" or \"Revised\" License", "MIT", "SOFTWARE-LICENSE", "unknown"]1436 #latest_build_for_default_branch1437 when a pipeline has never been completed for the project1438 is expected to be nil1439 when a pipeline has completed successfully and produced a license scan report1440 is expected to eq #<Ci::Build id: 39, status: "success", finished_at: "2020-08-31 08:53:29", trace: nil, created_at: "2...up_id: nil, waiting_for_resource_at: nil, processed: false, scheduling_type: "stage", tag_list: nil>1441 when a pipeline has completed but does not contain a license scan report1442 is expected to be nil1443 when latest pipeline doesn't contain license job1444 is expected to eq #<Ci::Build id: 41, status: "success", finished_at: "2020-08-31 08:53:29", trace: nil, created_at: "2...up_id: nil, waiting_for_resource_at: nil, processed: false, scheduling_type: "stage", tag_list: nil>1445Git::BranchPushService1446 with pull project1447 deleted branch1448 handles when remote branch exists1449 ElasticSearch indexing1450 runs ElasticCommitIndexerWorker1451 triggers indexer when push to default branch1452 when push to non-default branch1453 does not trigger indexer when push to non-default branch1454 when limited indexing is on1455 when the project is not enabled specifically1456 does not run ElasticCommitIndexerWorker1457 when a project is enabled specifically1458 runs ElasticCommitIndexerWorker1459 when a group is enabled1460 runs ElasticCommitIndexerWorker1461 External pull requests1462 runs UpdateExternalPullRequestsWorker1463 when project is not mirror1464 does nothing1465 when param skips pipeline creation1466 does nothing1467 Jira Connect hooks1468 has Jira dev panel integration license1469 with a Jira subscription1470 branch name contains Jira issue key1471 behaves like enqueues Jira sync worker1472 is expected to change `Array#size` by 11473 commit message contains Jira issue key1474 behaves like enqueues Jira sync worker1475 is expected to change `Array#size` by 11476 branch name and commit message does not contain Jira issue key1477 behaves like does not enqueue Jira sync worker1478 is expected not to change `Array#size`1479 without a Jira subscription1480 behaves like does not enqueue Jira sync worker1481 is expected not to change `Array#size`1482 does not have Jira dev panel integration license1483 behaves like does not enqueue Jira sync worker1484 is expected not to change `Array#size`1485Gitlab::CustomFileTemplates1486 #enabled?1487 instance_licensed: false, namespace_licensed: false, instance_enabled: false, namespace_enabled: false1488 is expected to eq false1489 instance_licensed: false, namespace_licensed: false, instance_enabled: false, namespace_enabled: true1490 is expected to eq false1491 instance_licensed: false, namespace_licensed: false, instance_enabled: true, namespace_enabled: false1492 is expected to eq false1493 instance_licensed: false, namespace_licensed: false, instance_enabled: true, namespace_enabled: true1494 is expected to eq false1495 instance_licensed: false, namespace_licensed: true, instance_enabled: false, namespace_enabled: false1496 is expected to eq false1497 instance_licensed: false, namespace_licensed: true, instance_enabled: false, namespace_enabled: true1498 is expected to eq true1499 instance_licensed: false, namespace_licensed: true, instance_enabled: true, namespace_enabled: false1500 is expected to eq false1501 instance_licensed: false, namespace_licensed: true, instance_enabled: true, namespace_enabled: true1502 is expected to eq true1503 instance_licensed: true, namespace_licensed: false, instance_enabled: false, namespace_enabled: false1504 is expected to eq false1505 instance_licensed: true, namespace_licensed: false, instance_enabled: false, namespace_enabled: true1506 is expected to eq false1507 instance_licensed: true, namespace_licensed: false, instance_enabled: true, namespace_enabled: false1508 is expected to eq true1509 instance_licensed: true, namespace_licensed: false, instance_enabled: true, namespace_enabled: true1510 is expected to eq true1511 instance_licensed: true, namespace_licensed: true, instance_enabled: false, namespace_enabled: false1512 is expected to eq false1513 instance_licensed: true, namespace_licensed: true, instance_enabled: false, namespace_enabled: true1514 is expected to eq true1515 instance_licensed: true, namespace_licensed: true, instance_enabled: true, namespace_enabled: false1516 is expected to eq true1517 instance_licensed: true, namespace_licensed: true, instance_enabled: true, namespace_enabled: true1518 is expected to eq true1519 #all1520 template_finder: Gitlab::Template::CustomDockerfileTemplate, type: :dockerfile1521 unlicensed1522 is expected to be empty1523 licensed1524 in a toplevel group1525 orders results from most specific to least specific1526 in a subgroup1527 orders results from most specific to least specific1528 template_finder: Gitlab::Template::CustomGitignoreTemplate, type: :gitignore1529 unlicensed1530 is expected to be empty1531 licensed1532 in a toplevel group1533 orders results from most specific to least specific1534 in a subgroup1535 orders results from most specific to least specific1536 template_finder: Gitlab::Template::CustomGitlabCiYmlTemplate, type: :gitlab_ci_yml1537 unlicensed1538 is expected to be empty1539 licensed1540 in a toplevel group1541 orders results from most specific to least specific1542 in a subgroup1543 orders results from most specific to least specific1544 template_finder: Gitlab::Template::CustomLicenseTemplate, type: :license1545 unlicensed1546 is expected to be empty1547 licensed1548 in a toplevel group1549 orders results from most specific to least specific1550 in a subgroup1551 orders results from most specific to least specific1552 #find1553 template_finder: Gitlab::Template::CustomDockerfileTemplate, type: :dockerfile1554 unlicensed1555 is expected to be nil1556 is expected to be nil1557 licensed1558 in a toplevel group1559 finds a group template1560 finds an instance template1561 returns nil for an unknown key1562 in a subgroup1563 finds a template from the subgroup1564 finds a template from the parent group1565 finds an instance template1566 returns nil for an unknown key1567 template_finder: Gitlab::Template::CustomGitignoreTemplate, type: :gitignore1568 unlicensed1569 is expected to be nil1570 is expected to be nil1571 licensed1572 in a toplevel group1573 finds a group template1574 finds an instance template1575 returns nil for an unknown key1576 in a subgroup1577 finds a template from the subgroup1578 finds a template from the parent group1579 finds an instance template1580 returns nil for an unknown key1581 template_finder: Gitlab::Template::CustomGitlabCiYmlTemplate, type: :gitlab_ci_yml1582 unlicensed1583 is expected to be nil1584 is expected to be nil1585 licensed1586 in a toplevel group1587 finds a group template1588 finds an instance template1589 returns nil for an unknown key1590 in a subgroup1591 finds a template from the subgroup1592 finds a template from the parent group1593 finds an instance template1594 returns nil for an unknown key1595 template_finder: Gitlab::Template::CustomLicenseTemplate, type: :license1596 unlicensed1597 is expected to be nil1598 is expected to be nil1599 licensed1600 in a toplevel group1601 finds a group template1602 finds an instance template1603 returns nil for an unknown key1604 in a subgroup1605 finds a template from the subgroup1606 finds a template from the parent group1607 finds an instance template1608 returns nil for an unknown key1609Gitlab::Elastic::Indexer1610 empty project1611 updates the index status without running the indexing command1612 when indexing an unborn head1613 updates the index status without running the indexing command1614 #find_indexable_commit1615 is truthy for reachable commits1616 is falsey for unreachable commits1617 with an indexed project1618 when indexing a HEAD commit1619 runs the indexing command1620 behaves like index up to the specified commit1621 updates the index status when the indexing is a success1622 leaves the index status untouched when the indexing fails1623 when IndexStatus exists1624 when last_commit exists1625 uses last_commit as from_sha1626 when indexing a non-HEAD commit1627 behaves like index up to the specified commit1628 updates the index status when the indexing is a success1629 leaves the index status untouched when the indexing fails1630 after reverting a change1631 when IndexStatus#last_commit is no longer in repository1632 reindexes from scratch1633 when branch is reset to an earlier commit1634 reverses already indexed commits1635 when indexing a project's wiki1636 runs the indexer with the right flags1637 when IndexStatus#last_wiki_commit is no longer in repository1638 reindexes from scratch1639 when SSL env vars are not set explicitly1640 they will be set to default values determined by Ruby1641 when SSL env vars are set1642 when building env vars for child process1643 SSL env vars will be included1644 when no aws credentials available1645 credentials env vars will not be included1646 when aws credentials are available1647 when AWS config is not enabled1648 credentials env vars will not be included1649 when AWS config is enabled1650 credentials env vars will be included1651 when a file is larger than elasticsearch_indexed_file_size_limit_kb1652 does not index that file1653 when a file path is larger than elasticsearch max size of 512 bytes1654 indexes the file1655FeatureFlags::UpdateService1656 #execute1657 returns success status1658 creates audit event with correct message1659 with invalid params1660 returns error status1661 returns error messages1662 does not create audit event1663 when user is reporter1664 returns error status1665 when nothing is changed1666 returns success status1667 does not create audit event1668 description is being changed1669 creates audit event with changed description1670 when flag active state is changed1671 creates audit event about changing active state1672 when scope active state is changed1673 creates audit event about changing active state1674 when scope is renamed1675 creates audit event with changed name1676 when scope can not be updated1677 returns error status1678 returns error messages1679 does not create audit event1680 when scope is deleted1681 creates audit event with deleted scope1682 when scope can not be deleted1683 does not create audit event1684 when new scope is being added1685 creates audit event with new scope1686 when scope can not be created1687 returns error status1688 returns error messages1689 does not create audit event1690 when the strategy is changed1691 creates an audit event1692AuditEventService1693 #for_member1694 generates event1695 handles deleted users1696 generates a system event1697 user access expiry1698 generates a system event1699 create user access1700 stores author name1701 updating membership1702 records the change in expiry date1703 #security_event1704 unlicensed1705 does not create an event1706 licensed1707 creates an event1708 on a read-only instance1709 does not create an event1710 admin audit log licensed1711 for an unauthenticated user1712 defaults to the IP address in the details hash1713 for an authenticated user1714 has the user IP address1715 for an impersonated user1716 has the impersonator IP address1717 has the impersonator name1718 #enabled?1719 admin_audit_log: true, audit_events: false, extended_audit_events: false, result: true1720 returns the correct result when feature is available1721 admin_audit_log: false, audit_events: true, extended_audit_events: false, result: true1722 returns the correct result when feature is available1723 admin_audit_log: false, audit_events: false, extended_audit_events: true, result: true1724 returns the correct result when feature is available1725 admin_audit_log: false, audit_events: false, extended_audit_events: false, result: false1726 returns the correct result when feature is available1727 #entity_audit_events_enabled?1728 entity is a project1729 returns false when project is unlicensed1730 returns true when project is licensed1731 entity is a group1732 returns false when group is unlicensed1733 returns true when group is licensed1734 entity is a user1735 returns false when unlicensed1736 returns true when licensed with extended events1737 auth event1738 returns true when unlicensed1739 #for_failed_login1740 has the right type1741 has the right author1742 has the right target_details1743 has the right auth method for OAUTH1744 admin audit log licensed1745 has the right IP address1746 admin audit log unlicensed1747 does not have the ip_address1748 #for_project_group_link1749 sets the target_type attribute1750 #for_user1751 with destroy action1752 sets the details attribute1753 with create action1754 sets the details attribute1755 with custom action1756 sets the details attribute1757 #for_changes1758 sets the details attribute1759 #for_project1760 sets the details attribute1761 sets the target_type column1762 #for_group1763 sets the details attribute1764 stores target_type in a database column1765 license1766 has the audit_admin feature1767 logs an audit event1768 has the entity_path1769 request IP address is provided1770 has the IP address in the details hash1771 has the IP address stored in a separate attribute1772 request IP address is not provided1773 has the IP address in the details hash1774 has the IP address stored in a separate attribute1775 has the extended_audit_events feature1776 logs an audit event1777 does not have the entity_path1778 does not have the ip_address1779 entity has the audit_events feature1780 logs an audit event1781 does not have the entity_path1782 does not have the ip_address1783 does not have any audit event feature1784 does not log the audit event1785DashboardOperationsProjectEntity1786 the project supports the ops dashboard1787 has all required fields1788 does not have optional fields1789 when there is a pipeline1790 has the last pipeline field1791 when there is an upstream status1792 has the triggered_by pipeline field1793 when there is a downstream status1794 has the triggered pipeline field1795 when there are multiple downstream statuses1796 has the downstream pipeline field1797 when there are both an upstream and downstream pipelines1798 has the upstream pipeline field1799 has the downstream pipeline field1800 the project does not support the ops dashboard1801 has the expected fields1802 the user has permission to upgrade plan1803 shows the profile upgrade path1804 the user has permission to upgrade group1805 shows the group upgrade path1806ProductivityAnalytics1807 metrics data1808 #histogram_data1809 metric: "days_to_merge", expected_result: {3=>2, 14=>1, 30=>1}1810 calculates correctly1811 metric: "time_to_first_comment", expected_result: {0=>3, 24=>1}1812 calculates correctly1813 metric: "time_to_last_commit", expected_result: {312=>1, 696=>1, 48=>2}1814 calculates correctly1815 metric: "time_to_merge", expected_result: {24=>3, 0=>1}1816 calculates correctly1817 metric: "commits_count", expected_result: {1=>2, 5=>1, 20=>1}1818 calculates correctly1819 metric: "loc_per_commit", expected_result: {15=>1, 16=>1, 14=>1, 5=>1}1820 calculates correctly1821 metric: "files_touched", expected_result: {15=>1, 3=>2, 1=>1}1822 calculates correctly1823 metric: "something_invalid", expected_result: nil1824 calculates correctly1825 for multiple labeled mrs1826 returns aggregated data1827 #scatterplot_data1828 returns metric values for each MR1829 for multiple labeled mrs1830 properly returns MRs with metrics calculated1831 #merge_requests_extended1832 returns MRs data with all the metrics calculated1833 with custom sorting1834 reorders MRs according to custom sorting1835 with unknown sorting1836 sorts by id desc1837 for multiple labeled mrs1838 properly returns MRs with metrics calculated1839 .start_date1840 delegates to ApplicationSetting1841Security::WafAnomalySummaryService1842 #execute1843 without cluster1844 returns no results1845 without elastic_stack1846 returns no results1847 with environment missing external_url1848 returns nil1849 with default histogram1850 no requests1851 returns results1852 when totals_only is set to true1853 returns totals only1854 no violations1855 returns results1856 when totals_only is set to true1857 returns totals only1858 with violations1859 returns results1860 when totals_only is set to true1861 returns totals only1862 with legacy es6 cluster1863 returns results1864 with review app1865 resolves transaction_id from external_url1866 with time window1867 passes time frame to ElasticSearch1868 with interval1869 passes interval to ElasticSearch1870VulnerabilitiesHelper1871 #vulnerability_details1872 [:can_modify_related_issues]1873 with security dashboard feature enabled1874 when user can manage related issues1875 is expected to include {:can_modify_related_issues => true}1876 when user cannot manage related issues1877 is expected to include {:can_modify_related_issues => false}1878 with security dashboard feature disabled1879 is expected to include {:can_modify_related_issues => false}1880 when pipeline exists1881 has expected vulnerability properties1882 returns expected pipeline data1883 when pipeline is nil1884 has expected vulnerability properties1885 returns no pipeline data1886 #vulnerability_finding_data1887 returns finding information1888 when there is no file1889 does not have a blob_path if there is no file1890Ci::DailyBuildGroupReportResultsByGroupFinder1891 #execute1892 when current user is allowed to :read_group_build_report_results1893 returns only coverages belonging to the passed group1894 with a limit below 10001895 uses the provided limit1896 with a limit above 10001897 uses the max constant1898 without a limit1899 uses the max constant1900 without permmissions1901 returns an empty result1902EpicLinks::UpdateService1903 #execute1904 when subepics feature is not available1905 returns an error1906 when subepics feature is available1907 when params are nil1908 does not change order of child epics1909 when moving to start1910 reorders child epics1911 behaves like updating timestamps1912 does not update moved epic1913 does not update parent epic1914 when moving to end1915 reorders child epics1916 behaves like updating timestamps1917 does not update moved epic1918 does not update parent epic1919 when moving between siblings1920 reorders child epics1921 behaves like updating timestamps1922 does not update moved epic1923 does not update parent epic1924 when params are invalid1925 when move_before_id is not a child of parent epic1926 behaves like returns error1927 does not change order of child epics and returns error1928 when move_after_id is not a child of parent epic1929 behaves like returns error1930 does not change order of child epics and returns error1931IssueLinks::CreateService1932 #execute1933 when there is an issue to relate1934 creates relationships1935 returns success status1936 when feature is not available1937 returns error1938 no relationship is created1939 when reference of any already related issue is present1940 sets the same type of relation for selected references1941NetworkPolicyMetricsWorker1942 #perform1943 updates usage counter1944 with prometheus application on another cluster1945 does not count clusters without cilium1946 with prometheus service on another project1947 does not count projects without cilium1948 with Prometheus client error1949 adds usage of the rest1950 with unconfigured adapter1951 adds usage of the rest1952RequirementsManagement::RequirementPolicy1953 behaves like resource with requirement permissions1954 when requirements feature is enabled1955 with admin1956 behaves like user with read only permissions1957 is expected to be allowed :read_requirement1958 is expected to be disallowed :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1959 with owner1960 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1961 with maintainer1962 behaves like user with manage permissions1963 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, and :create_requirement_test_report1964 is expected to be disallowed :destroy_requirement1965 with developer1966 behaves like user with manage permissions1967 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, and :create_requirement_test_report1968 is expected to be disallowed :destroy_requirement1969 with reporter1970 behaves like user with manage permissions1971 is expected to be allowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, and :create_requirement_test_report1972 is expected to be disallowed :destroy_requirement1973 with guest1974 behaves like user with read only permissions1975 is expected to be allowed :read_requirement1976 is expected to be disallowed :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1977 with non member1978 behaves like user with read only permissions1979 is expected to be allowed :read_requirement1980 is expected to be disallowed :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1981 with private resource parent1982 is expected to be disallowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1983 when requirements feature is disabled1984 with owner1985 is expected to be disallowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1986 with admin1987 is expected to be disallowed :read_requirement, :create_requirement, :admin_requirement, :update_requirement, :destroy_requirement, and :create_requirement_test_report1988WikiPages::UpdateService1989 #execute1990 calls Geo::RepositoryUpdatedService when running on a Geo primary node1991 does not call Geo::RepositoryUpdatedService when not running on a Geo primary node1992 behaves like WikiPages::UpdateService#execute1993 updates the wiki page1994 executes webhooks1995 counts edit events1996 does not call Geo::RepositoryUpdatedService when container is group1997 the page is at the top level1998 adds a new wiki page activity event (PENDING: group wiki support)1999 the page is in a subsection2000 adds a new wiki page activity event (PENDING: group wiki support)2001 when the options are bad2002 does not count an edit event2003 does not record the activity2004 reports the error2005Issues::CreateFromVulnerabilityDataService#execute2006 when user does not have permission to create issue2007 returns expected error2008 when issues are disabled on project2009 returns expected error2010 when params are valid2011 when category is SAST2012 when a description is present2013 behaves like a created issue2014 creates the issue with the given params2015 when a description is NOT present2016 behaves like a created issue2017 creates the issue with the given params2018 when category is dependency scanning2019 when a description is present2020 behaves like a created issue2021 creates the issue with the given params2022 when a description is NOT present2023 behaves like a created issue2024 creates the issue with the given params2025 when category is container scanning2026 when a description is present2027 behaves like a created issue2028 creates the issue with the given params2029 when a description is NOT present2030 behaves like a created issue2031 creates the issue with the given params2032 when category is DAST2033 behaves like a created issue2034 creates the issue with the given params2035 when params are invalid2036 when category is unknown2037 return expected error2038 when category is missing2039 return expected error2040ProtectedEnvironment2041 associations2042 is expected to belong to project required:2043 is expected to have many deploy_access_levels2044 validation2045 is expected to validate that :project cannot be empty/falsy2046 is expected to validate that :name cannot be empty/falsy2047 is expected to validate that the length of :deploy_access_levels2048 #accessible_to?2049 when user is admin2050 is expected to be truthy2051 when access has been granted to user2052 is expected to be truthy2053 when specific access has been assigned to a group2054 allows members of the group2055 rejects non-members of the group2056 when access has been granted to maintainers2057 allows maintainers2058 rejects developers2059 when access has been granted to developers2060 allows maintainers2061 allows developers2062 .sorted_by_name2063 sorts protected environments by name2064 .with_environment_id2065 sets corresponding environment id if there is environment matching by name and project2066 .deploy_access_levels_by_group2067 returns matching deploy access levels for the given group2068Mutations::DastSiteProfiles::Delete2069 #resolve2070 when on demand scan feature is enabled2071 when the project does not exist2072 raises an exception2073 when the user is not associated with the project2074 raises an exception2075 when the user is an owner2076 has no errors2077 when the user is a maintainer2078 has no errors2079 when the user is a developer2080 has no errors2081 when the user is a reporter2082 raises an exception2083 when the user is a guest2084 raises an exception2085 when the user can run a dast scan2086 deletes the dast_site_profile2087 when there is an issue deleting the dast_site_profile2088 returns an error2089 when on demand scan feature is not enabled2090 raises an exception2091 when on demand scan licensed feature is not available2092 raises an exception2093Vulnerabilities::IssueLink2094 associations and fields2095 is expected to belong to vulnerability required:2096 is expected to belong to issue required:2097 is expected to define :link_type as an enum, backed by an integer, with possible values ‹{related: 1, created: 2}›2098 provides the "related" as default link_type2099 validations2100 is expected to validate that :vulnerability cannot be empty/falsy2101 is expected to validate that :issue cannot be empty/falsy2102 uniqueness2103 is expected to validate that :issue_id is case-sensitively unique within the scope of :vulnerability_id, producing a custom validation error on failure2104 only one "created" link allowed per vulnerability2105 is expected to validate that :vulnerability_id is case-sensitively unique, producing a custom validation error on failure2106 data consistency constraints2107 when a link between the same vulnerability and issue already exists2108 raises the uniqueness violation error2109 when there is an existing "created" issue link for vulnerability2110 prevents the creation of a new "created" issue link2111 allows the creation of a new "related" issue link2112 .by_link_type2113 when the given argument is `nil`2114 is expected to contain exactly #<Vulnerabilities::IssueLink id: 10, vulnerability_id: 16, issue_id: 582, link_type: "created", created_at: "2020-08-31 02:52:38", updated_at: "2020-08-31 02:52:38"> and #<Vulnerabilities::IssueLink id: 11, vulnerability_id: 17, issue_id: 583, link_type: "related", created_at: "2020-08-31 02:52:39", updated_at: "2020-08-31 02:52:39">2115 when the given argument is an uppercase string enum value2116 is expected to contain exactly #<Vulnerabilities::IssueLink id: 10, vulnerability_id: 16, issue_id: 582, link_type: "created", created_at: "2020-08-31 02:52:38", updated_at: "2020-08-31 02:52:38">2117 when the given argument is an uppercase symbol enum value2118 is expected to contain exactly #<Vulnerabilities::IssueLink id: 11, vulnerability_id: 17, issue_id: 583, link_type: "related", created_at: "2020-08-31 02:52:39", updated_at: "2020-08-31 02:52:39">2119 .for_issue2120 is expected to contain exactly #<Vulnerabilities::IssueLink id: 12, vulnerability_id: 18, issue_id: 584, link_type: "created", created_at: "2020-08-31 02:52:40", updated_at: "2020-08-31 02:52:40"> and #<Vulnerabilities::IssueLink id: 13, vulnerability_id: 19, issue_id: 584, link_type: "related", created_at: "2020-08-31 02:52:40", updated_at: "2020-08-31 02:52:40">2121Projects::Operations::UpdateService2122 #execute2123 tracing setting2124 with valid params2125 with an existing setting2126 updates the setting2127 with missing external_url2128 behaves like setting deletion2129 deletes the setting2130 does not modify original params2131 with empty external_url2132 behaves like setting deletion2133 deletes the setting2134 does not modify original params2135 with blank external_url2136 behaves like setting deletion2137 deletes the setting2138 does not modify original params2139 without an existing setting2140 creates a setting2141 with empty params2142 does nothing2143 status page setting2144 with valid params2145 with an existing setting2146 updates the setting2147 with aws key and secret blank2148 destroys the status_page_setting entry in DB2149 with not all keys blank2150 returns a validation error2151 without an existing setting2152 creates a setting2153RequirementsManagement::TestReport2154 associations2155 is expected to belong to author class_name => User required:2156 is expected to belong to requirement required:2157 is expected to belong to build required:2158 validations2159 is expected to validate that :requirement cannot be empty/falsy2160 is expected to validate that :state cannot be empty/falsy2161 scopes2162 for_user_build2163 returns only test reports matching build's user and pipeline2164 .persist_requirement_reports2165 if the CI report contains no entries2166 does not create any test reports2167 if the CI report contains some entries2168 and the entries are valid2169 creates test report with expected status for each open requirement2170 and the entries are not valid2171 creates test report with expected status for each open requirement2172FeatureFlagsFinder2173 #execute2174 returns feature flags ordered by name2175 preloads relations by default2176 when user is a reporter2177 returns an empty list2178 when scope is given2179 when scope is enabled2180 returns active feature flag2181 when scope is disabled2182 returns inactive feature flag2183 when preload option is false2184 does not preload relations2185 when new version flags are enabled2186 returns new and legacy flags2187 when new version flags are disabled2188 returns only legacy flags2189Operations::FeatureFlags::UserList2190 validations2191 is expected to validate that :project cannot be empty/falsy2192 is expected to validate that :name cannot be empty/falsy2193 is expected to validate that :name is case-sensitively unique within the scope of :project_id2194 is expected to validate that the length of :name is between 1 and 2552195 user_xids2196 valid_value: ""2197 is valid with a string of comma separated values2198 valid_value: "sam"2199 is valid with a string of comma separated values2200 valid_value: "1"2201 is valid with a string of comma separated values2202 valid_value: "a"2203 is valid with a string of comma separated values2204 valid_value: "uuid-of-some-kind"2205 is valid with a string of comma separated values2206 valid_value: "sam,fred,tom,jane,joe,mike"2207 is valid with a string of comma separated values2208 valid_value: "gitlab@example.com"2209 is valid with a string of comma separated values2210 valid_value: "123,4"2211 is valid with a string of comma separated values2212 valid_value: "UPPER,Case,charActeRS"2213 is valid with a string of comma separated values2214 valid_value: "0"2215 is valid with a string of comma separated values2216 valid_value: "$valid$email#2345\#$%..{}+=-)?\\/@example.com"2217 is valid with a string of comma separated values2218 valid_value: "spaces allowed"2219 is valid with a string of comma separated values2220 valid_value: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"2221 is valid with a string of comma separated values2222 valid_value: "a,bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb,ccc"2223 is valid with a string of comma separated values2224 valid_value: "many spaces"2225 is valid with a string of comma separated values2226 typecast_value: 12227 automatically casts values of other types2228 typecast_value: 2.52229 automatically casts values of other types2230 typecast_value: {}2231 automatically casts values of other types2232 typecast_value: []2233 automatically casts values of other types2234 invalid_value: nil2235 is invalid2236 invalid_value: "123\n456"2237 is invalid2238 invalid_value: "1,2,3,12\t3"2239 is invalid2240 invalid_value: "\n"2241 is invalid2242 invalid_value: "\n\r"2243 is invalid2244 invalid_value: "joe\r,sam"2245 is invalid2246 invalid_value: "1,2,2"2247 is invalid2248 invalid_value: "1,,2"2249 is invalid2250 invalid_value: "1,2,,,,"2251 is invalid2252 invalid_value: "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"2253 is invalid2254 invalid_value: "1, ,2"2255 is invalid2256 invalid_value: "tim, ,7"2257 is invalid2258 invalid_value: " "2259 is invalid2260 invalid_value: " "2261 is invalid2262 invalid_value: " ,1"2263 is invalid2264 invalid_value: "1, "2265 is invalid2266 invalid_value: " leading,1"2267 is invalid2268 invalid_value: "1,trailing "2269 is invalid2270 invalid_value: "1, both ,2"2271 is invalid2272 url_helpers2273 generates paths based on the internal id2274 #destroy2275 deletes the model if it is not associated with any feature flag strategies2276 does not delete the model if it is associated with a feature flag strategy2277 behaves like AtomicInternalId2278 .has_internal_id2279 Module inclusion2280 is expected to includes the AtomicInternalId module2281 Validation2282 when presence validation is required2283 validates presence2284 when presence validation is not required2285 does not validate presence (PENDING: No reason given)2286 Creating an instance2287 saves a new instance properly2288 internal id generation2289 calls InternalId.generate_next and sets internal id attribute2290 does not overwrite an existing internal id2291 when the instance has an internal ID set2292 calls InternalId.update_last_value and sets the `last_value` to that of the instance2293 #reset_scope_internal_id_attribute2294 rewinds the allocated IID2295 allocates the same IID2296EE::SystemNotes::MergeTrainService2297 #enqueue2298 posts the 'merge train' system note2299 behaves like a system note2300 has the correct attributes2301 when index of the merge request is not zero2302 posts the 'merge train' system note2303 #cancel2304 posts the 'merge train' system note2305 behaves like a system note2306 has the correct attributes2307 #abort2308 posts the 'merge train' system note2309 behaves like a system note2310 has the correct attributes2311 behaves like creates a removed merge train TODO2312 creates Todo of MERGE_TRAIN_REMOVED2313 #add_when_pipeline_succeeds2314 posts the 'add to merge train when pipeline succeeds' system note2315 behaves like a system note2316 has the correct attributes2317 #cancel_add_when_pipeline_succeeds2318 posts the 'add to merge train when pipeline succeeds' system note2319 behaves like a system note2320 has the correct attributes2321 #abort_add_when_pipeline_succeeds2322 posts the 'add to merge train when pipeline succeeds' system note2323 behaves like a system note2324 has the correct attributes2325 behaves like creates a removed merge train TODO2326 creates Todo of MERGE_TRAIN_REMOVED2327InstanceSecurityDashboard2328 #all_pipelines2329 returns pipelines for the projects with security reports2330 #project_ids_with_security_reports2331 when given project IDs2332 returns the project IDs that are also on the user's security dashboard2333 when not given project IDs2334 returns the security dashboard projects' IDs2335 when the user cannot read all resources2336 only includes projects they can read2337 when the user can read all resources2338 includes all dashboard projects2339 #feature_available?2340 when the feature is available for the instance's license2341 returns true2342 when the feature is not available for the instance's license2343 returns false2344 #projects2345 when the user cannot read all resources2346 returns only projects on their dashboard that they can read2347 when the user can read all resources2348 returns all projects on the user's dashboard2349 #vulnerabilities2350 when the user cannot read all resources2351 returns only vulnerabilities from projects on their dashboard that they can read2352 when the user can read all resources2353 returns vulnerabilities from all projects on the user's dashboard2354 #vulnerability_scanners2355 when the user cannot read all resources2356 returns only vulnerability scanners from projects on their dashboard that they can read2357 when the user can read all resources2358 returns vulnerability scanners from all projects on the user's dashboard2359 #vulnerability_historical_statistics2360 when the user cannot read all resources2361 returns only vulnerability scanners from projects on their dashboard that they can read2362 when the user can read all resources2363 returns vulnerability scanners from all projects on the user's dashboard2364 #full_path2365 returns the full_path of the user2366Security::ReportSummaryService#execute2367 Some fields are requested2368 returns only the request fields2369 When some fields are not requested2370 does not make needless queries2371 All fields are requested2372 returns the scanned_resources_count2373 returns the vulnerability count2374 returns the scanned resources limited to 202375 returns the scanned_resources_csv_path2376 When no security scans ran2377 returns nil2378Gitlab::CodeOwners2379 .for_blob2380 when the feature is available2381 returns users for a blob2382 when the feature is not available2383 returns no users2384 .fast_path_lookup and .slow_path_lookup2385 return equivalent results2386 .entries_for_merge_request2387 when the feature is available2388 returns owners for merge request2389 when merge_request_diff is specified2390 returns owners at the specified ref2391 when the merge request is large (>1_000 files)2392 generates paths via .slow_path_lookup2393 when the feature is not available2394 skips reading codeowners and returns an empty array2395Mutations::DastSiteProfiles::Create2396 #resolve2397 when on demand scan feature is enabled2398 when the project does not exist2399 raises an exception2400 when the user is not associated with the project2401 raises an exception2402 when the user is an owner2403 returns the dast_site_profile id2404 when the user is a maintainer2405 returns the dast_site_profile id2406 when the user can run a dast scan2407 returns the dast_site_profile id2408 calls the dast_site_profile creation service2409 when the project name already exists2410 returns an error2411 when on demand scan feature is not enabled2412 raises an exception2413 when on demand scan licensed feature is not available2414 raises an exception2415Verify/Browser-Performance.gitlab-ci.yml2416 the created pipeline2417 has no errors2418 on master2419 behaves like browser_performance job on tag or branch2420 by default2421 on another branch2422 behaves like browser_performance job on tag or branch2423 by default2424 on tag2425 behaves like browser_performance job on tag or branch2426 by default2427 on merge request2428 has no jobs2429OmniAuth::Strategies::GroupSaml2430 callback_path option2431 dynamically detects /groups/:group_path/-/saml/callback2432 rejects default callback paths2433 POST /groups/:group_path/-/saml/callback2434 returns 404 when the group is not found2435 with valid SAMLResponse2436{"severity":"INFO","timestamp":"2020-08-31T02:54:09.280Z","pid":1864,"progname":"omniauth","message":"(group_saml) Callback phase initiated."}2437 sets the auth hash based on the response2438{"severity":"INFO","timestamp":"2020-08-31T02:54:09.612Z","pid":1864,"progname":"omniauth","message":"(group_saml) Callback phase initiated."}2439 sets omniauth setings from configured settings2440 returns 404 when SAML is disabled for the group2441 user is testing SAML response2442{"severity":"INFO","timestamp":"2020-08-31T02:54:10.293Z","pid":1864,"progname":"omniauth","message":"(group_saml) Callback phase initiated."}2443 stores the saml response for retrieval after redirect2444{"severity":"INFO","timestamp":"2020-08-31T02:54:10.600Z","pid":1864,"progname":"omniauth","message":"(group_saml) Callback phase initiated."}2445 redirects back to the settings page2446 with invalid SAMLResponse2447{"severity":"INFO","timestamp":"2020-08-31T02:54:10.893Z","pid":1864,"progname":"omniauth","message":"(group_saml) Callback phase initiated."}2448{"severity":"ERROR","timestamp":"2020-08-31T02:54:11.403Z","pid":1864,"progname":"omniauth","message":"(group_saml) Authentication failure! invalid_ticket: OneLogin::RubySaml::ValidationError, Current time is on or after NotOnOrAfter condition (2020-08-31 02:54:11 UTC \u003e= 2012-11-08 20:44:54 UTC)"}2449 redirects somewhere so failure messages can be displayed2450 Group SAML not licensed for group2451 returns 4042452 POST /users/auth/group_saml2453{"severity":"INFO","timestamp":"2020-08-31T02:54:12.041Z","pid":1864,"progname":"omniauth","message":"(group_saml) Request phase initiated."}2454 redirects to the provider login page2455 returns 404 for groups without SAML configured2456 returns 404 when the group is not found2457 returns 404 when missing group_path param2458{"severity":"INFO","timestamp":"2020-08-31T02:54:13.243Z","pid":1864,"progname":"omniauth","message":"(group_saml) Request phase initiated."}2459 stores request ID during request phase2460 POST /users/auth/group_saml/metadata2461 returns 404 when the group is not found2462 returns 404 to avoid disclosing group existence2463 returns metadata when a valid token is provided2464 returns 404 when an invalid token is provided2465 returns 404 when if group is not found but a token is provided2466 sets omniauth setings from default settings2467 POST /users/auth/group_saml/slo2468 returns 404 to avoid disclosing group existence2469 POST /users/auth/group_saml/spslo2470 returns 404 to avoid disclosing group existence2471Verify/Load-Performance-Testing.gitlab-ci.yml2472 the created pipeline2473 has no errors2474 on master2475 behaves like load_performance job on tag or branch2476 by default2477 on another branch2478 behaves like load_performance job on tag or branch2479 by default2480 on tag2481 behaves like load_performance job on tag or branch2482 by default2483 on merge request2484 has no jobs2485EE::ResourceEvents::ChangeWeightService2486 creates the expected event record2487 when weight is nil2488 creates an event record2489 when there is no existing weight event record2490 creates the expected event records2491 bulk issue weight updates2492 bulk insert weight changes2493 calls first_weight_event? once per resource2494Projects::UpdatePagesService2495 maximum pages artifacts size2496 uses closest setting for max_pages_size2497 behaves like pages size limit is2498 when size is below the limit2499 updates pages correctly2500 when size is above the limit2501 limits the maximum size of gitlab pages2502 when pages_size_limit feature is not available2503 behaves like pages size limit is2504 when size is below the limit2505 updates pages correctly2506 when size is above the limit2507 limits the maximum size of gitlab pages2508Gitlab::Ci::Parsers::Security::DependencyList2509 #parse!2510 with dependency_list artifact2511 parses all files2512 merge vulnerabilities data2513 with dependency scanning artifact without dependency_list2514 list of dependencies with vulnerabilities2515 #parse_licenses!2516 with existing license2517 apply license to dependency2518 without existing license2519 does not apply any license if name mismatch2520EpicNoteEntity2521 exposes epic-specific elements2522 behaves like note entity2523 basic note2524 exposes correct elements2525 does not expose elements for specific notes cases2526 exposes author correctly2527 does not expose web_url for author2528 when note was edited2529 exposes last_edited_at and last_edited_by elements2530 when note is a system note2531 exposes system_note_icon_name element2532 on a system note2533 sets system_note_icon_name for epic system notes2534Gitlab::Elastic::GroupSearchResults2535 user search2536 is expected to contain exactly #<User id:1942 @user1734>2537 is expected to eq 12538 pagination2539 returns the correct page of results2540 returns the correct number of results for one page2541 query performance2542 for scope projects2543 makes 1 Elasticsearch query2544 for scope notes2545 makes 1 Elasticsearch query2546 for scope blobs2547 makes 1 Elasticsearch query2548 for scope wiki_blobs2549 makes 1 Elasticsearch query2550 for scope commits2551 makes 1 Elasticsearch query2552 for scope issues2553 makes 1 Elasticsearch query2554 for scope merge_requests2555 makes 1 Elasticsearch query2556 for scope milestones2557 makes 1 Elasticsearch query2558Projects::TransferService2559 when running on a primary node2560 logs an event to the Geo event log2561 audit events2562 when licensed2563 does not log audit event if operation fails2564 when operation succeeds2565 logs an audit event2566 logs the audit event info2567 when not licensed2568 does not log audit event2569Ci::TriggerDownstreamSubscriptionService2570 #execute2571 when pipeline project has downstream projects2572 creates a pipeline2573 associates the downstream pipeline with the upstream project2574 when pipeline project does not have downstream projects2575 does not call the create pipeline service2576Ci::BuildRunnerPresenter2577 #secrets_configuration2578 build has no secrets2579 returns empty hash2580 build has secrets2581 Vault server URL2582 VAULT_SERVER_URL CI variable is present2583 returns the URL2584 VAULT_SERVER_URL CI variable is not present2585 returns nil2586 Vault auth role2587 VAULT_AUTH_ROLE CI variable is present2588 contains the auth role2589 VAULT_AUTH_ROLE CI variable is not present2590 skips the auth role2591 Vault auth path2592 VAULT_AUTH_PATH CI variable is present2593 contains user defined auth path2594 VAULT_AUTH_PATH CI variable is not present2595 contains the default auth path2596Security::DependencyListService2597 #execute2598 without params2599 returns array of dependencies2600 is sorted by names by default2601 with params2602 filtered by package_managers2603 returns filtered items2604 filtered by vulnerable2605 returns filtered items2606 sorted desc by packagers2607 returns array of data properly sorted2608 sorted asc by packagers2609 returns array of data properly sorted2610 sorted desc by names2611 returns array of data properly sorted2612 sorted by desc severity2613 returns array of data properly sorted2614MergeRequests::SyncCodeOwnerApprovalRules2615 #execute2616 creates rules for code owner entries that don't have a rule2617 deletes rules that are not relevant anymore2618 updates rules for which the users changed2619EE::ProjectSecurityScannersInformation2620 #available_scanners2621 returns a list of all scanners available for the project2622 #enabled_scanners2623 returns a list of all scanners enabled for the project2624 #scanners_run_by_last_pipeline2625 returns a list of all scanners which were run successfully in the latest pipeline2626 does not include non-security scanners2627LicensesListEntity2628 behaves like report list2629 #as_json2630 with success build2631 with provided items2632 has array of items with status ok2633 with no items2634 has empty array of items with status no_items2635 with failed build2636 with authorized user2637 has job_path with status failed_job2638 without authorized user2639 has only status failed_job2640 with no build2641 has status job_not_set_up and no job_path2642Gitlab::Auth::Saml::User2643 #save2644 account exists on server2645 admin/auditor groups2646DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2647 marks the user as admin when the user is in the configured group2648DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2649 does not mark the user as admin when the user is not in the configured group2650DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2651 demotes from admin if not in the configured group2652DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2653 does not demote from admin if not configured2654DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2655 skips admin if not configured2656DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2657 marks the user as auditor when the user is in the configured group2658DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2659 does not mark the user as auditor when the user is not in the configured group2660DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2661 demotes from auditor if not in the configured group2662DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2663 does not demote from auditor if not configured2664DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2665 skips auditor if not configured2666 no account exists on server2667 required groups2668 not defined2669DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2670 lets anyone in2671 are defined2672DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2673 lets members in2674DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2675 unblocks already blocked members2676DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2677 does not unblock manually blocked members2678DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2679 does not allow non-members2680DEPRECATION WARNING: ActiveSupport::Multibyte::Chars#normalize is deprecated and will be removed from Rails 6.1. Use #unicode_normalize(:nfkd) instead. (called from generate_username at /builds/gitlab-org/gitlab/lib/gitlab/auth/o_auth/auth_hash.rb:84)2681 blocks non-members2682ScopedLabelSet2683 .from_label_ids2684 groups labels by their key2685 #valid?2686 returns true for not scoped labels2687 returns true for scoped labels with single label2688 returns false for scoped labels with multiple labels2689 #add2690 adds a label to the set2691 #contains_any?2692 returns true if any of label ids is in set2693 returns false if certain label ids is not in set2694 #last_id_by_order2695 returns last label present in the set ordered by custom order of superset of label ids2696 returns last label present in the set ordered by custom order if there is single item2697StatusPage::IncidentCommentEntity2698 exposes JSON fields2699 field #note2700 behaves like reference links for status page2701 with public project2702 with public issue2703 shows link anchor with HTML data attributes2704 with confidential issue2705 redacts link anchor and HTML data attributes2706 with private project2707 with public issue2708 redacts link anchor and HTML data attributes2709 mentions2710 with username2711 anonymizes mention2712 with arbitrary username2713 shows the mention2714 with @all2715 anonymizes mention2716 with groups2717 group_visibility: :public2718 anonymizes mention2719 group_visibility: :internal2720 anonymizes mention2721 group_visibility: :private2722 anonymizes mention2723 behaves like img upload tags for status page2724 converts to html2725ElasticNamespaceIndexerWorker2726 when ES is disabled2727 returns true2728 when ES is enabled2729 returns true if limited indexing is not enabled2730 indexing and deleting2731 indexes all projects belonging to the namespace2732 deletes all projects belonging to the namespace2733AuditEventPresenter2734 exposes the date2735 exposes the action2736 exposes the author2737 gets the event author name2738 event authored by a user that exists2739 returns a url2740 event authored by a user that no longer exists2741 when `author_name` is not included in the details2742 does not return a url2743 when `author_name` is included in the details and not in the author_name column2744 shows the author name as provided in the details2745 event authored by an unauthenticated user2746 when `author_name` is not included in details and not in the author_name column2747 shows `An unauthenticated user` as the author name2748 when `author_name` is included in details and not in the author_name column2749 shows the author name as provided in the details2750 #target2751 delegates to the model object2752 exposes the ip address2753 exposes the database value by default2754 survives a round trip from JSON2755 falls back to the details hash2756 exposes the object2757 returns the object path if it exists2758 returns the stored name if it has been deleted2759 returns the object url if it exists2760 returns no object url if it has been deleted2761Analytics::RefreshReassignData2762 #execute2763 updates first_reassigned_at2764 when first_reassigned_at is already present2765 does not change first_reassigned_at2766 updates first_reassigned_at if forced2767 when no merge request metric is present2768 creates one2769Jira::Requests::Issues::ListService2770 #execute2771 without jira_service2772 returns an error response2773 when jira_service is nil2774 returns an error response2775 with jira_service2776 when validations and params are ok2777 requests for default fields2778 when the request to Jira returns an error2779 returns an error response2780 when the request does not return any values2781 returns a payload with no issues2782 when the request returns values2783 returns a payload with jira issues2784 when using pagination parameters2785 honors page and per_page2786 without pagination parameters2787 uses the default options2788EE-specific admin routing2789 Admin::Geo::ProjectsController routing2790 routes / to #index2791 routes delete /:id to #destroy2792 routes post /:id/reverify to #reverify2793 routes post /:id/resync to #resync2794 routes post /:id/force_redownload to #force_redownload2795 Admin::Geo::UploadsController routing2796 routes / to #index2797 routes delete /:id to #destroy2798 Admin::Geo::DesignsController routing2799 routes / to #index2800 Admin::Geo::ReplicablesController routing2801 routes /admin/geo/replication/package_files to replicables#index2802 routes /admin/geo/replication/terraform_states to replicables#index2803 Admin::Geo::NodesController routing2804 routes / to #index2805 routes /new to #new2806 routes /edit to #edit2807 routes post / to #create2808 routes patch /:id to #update2809 Admin::Geo::SettingsController routing2810 routes / to #show2811 routes patch / to #update2812 Admin::EmailsController routing2813 routes to #show2814 routes to #create2815 Admin::ApplicationSettingsController routing2816 redirects #geo to #geo_redirection2817 routes to #templates2818Users::UpdateService2819 #execute2820 does not update email if an user has group managed account2821 does not update commit email if an user has group managed account2822 does not update public if an user has group managed account2823 does not update public if an user has group managed account2824 updating name2825 when `disable_name_update_for_users` feature is available2826 when the ability to update their name is not disabled for users2827 behaves like a user can update the name2828 updates the name2829 behaves like a user can update the name2830 updates the name2831 when the ability to update their name is disabled for users2832 as a regular user2833 does not update the name2834 behaves like a user can update the name2835 updates the name2836 when `disable_name_update_for_users` feature is not available2837 behaves like a user can update the name2838 updates the name2839 behaves like a user can update the name2840 updates the name2841 audit events2842 licensed2843 updating username2844 logs audit event2845 with an admin user2846 allowed params2847 with identity2848 adds identity to user2849 adds two different identities to user2850ApprovalMergeRequestRulePolicy2851 when user can update merge request2852 allows updating approval rule2853 when rule is any-approval2854 allows updating approval rule2855 when rule is not user editable2856 disallows updating approval rule2857 when user cannot update merge request2858 disallows updating approval rule2859Gitlab::CodeOwners::GroupsLoader2860 #load_to2861 input has no matching group paths2862 returns an empty list of groups2863 nil input2864 returns an empty relation when nil was passed2865 input matches group paths2866 returns the groups case insensitive for names2867 input matches project.group2868 returns the project's group2869 input as array of strings2870 is treated as one string2871 nested groups2872 returns nested groups by mentioned full paths2873EE::Namespace::RootStorageSize2874 #above_size_limit?2875 when limit enforcement is off2876 is expected to eq false2877 when limit enforcement is on2878 when limit is 02879 is expected to eq false2880 when below limit2881 is expected to eq false2882 when above limit2883 when temporary storage increase is disabled2884 is expected to eq true2885 when temporary storage increase is enabled2886 is expected to eq false2887 #usage_ratio2888 is expected to eq 0.52889 when limit is 02890 is expected to eq 02891 when there are no root_storage_statistics2892 is expected to eq 02893 #current_size2894 is expected to eq 524288002895 caches values2896 caches the value2897 #limit2898 when there is additional purchased storage and a plan2899 is expected to eq 262144000002900 when there is no additionl purchased storage2901 is expected to eq 157286400002902 when there is no additional purchased storage or plan limit set2903 is expected to eq 02904 caches values2905 caches the value2906 #enforce_limit?2907 when current date is before enforcement date2908 is expected to eq false2909 when current date is on or after enforcement date2910 when no subscription is found for namespace2911 is expected to eq true2912 when subscription is for a free plan2913 is expected to eq true2914 when subscription is for a paid plan2915 when subscription start date is before effective date2916 is expected to eq false2917 when subscription start date is on or after effective date2918 is expected to eq true2919Groups::MarkForDeletionService2920 marking the group for deletion2921 with user that can admin the group2922 for a group that has not been marked for deletion2923 marks the group for deletion2924 returns success2925 marking for deletion fails2926 returns error2927 for a group that has been marked for deletion2928 does not change the attributes associated with delayed deletion2929 returns error2930 audit events2931 logs audit event2932 with a user that cannot admin the group2933 does not mark the group for deletion2934 returns error2935 audit events2936 does not log audit event2937Gitlab::Com2938 is expected to eq <#ActiveSupport::Cache::MemoryStore entries=0, size=0, options={}>2939 is expected to eq <ActiveSupport::Cache::NullStore>2940 .gitlab_team_member?2941 when user is a gitlab team member2942 is expected to equal true2943 caching of allowed user IDs2944 behaves like allowed user IDs are cached2945 caches the allowed user IDs in cache2946 caches the allowed user IDs in L1 cache for 1 minute2947 caches the allowed user IDs in L2 cache for 5 minutes2948 when user is not a gitlab team member2949 is expected to equal false2950 caching of allowed user IDs2951 behaves like allowed user IDs are cached2952 caches the allowed user IDs in cache2953 caches the allowed user IDs in L1 cache for 1 minute2954 caches the allowed user IDs in L2 cache for 5 minutes2955 when user is nil2956 is expected to equal false2957 when gitlab-com group does not exist2958 is expected to equal false2959 when feature flag is turned off2960 is expected to equal false2961ProductivityAnalyticsMergeRequestEntity2962 exposes all additional metrics2963 exposes author_avatar_url2964 exposes merge_request_url2965Projects::SetupCiCd2966 sets up pull mirroring on the project2967 disables some features2968 when import_url is blank2969 doesn't update the project2970ProjectAlias2971 is expected to belong to project required:2972 is expected to validate that :project cannot be empty/falsy2973 is expected to validate that :name cannot be empty/falsy2974 is expected to validate that :name is case-sensitively unique2975 is expected not to allow :name to be ‹"/foo"›2976 is expected not to allow :name to be ‹"foo/foo"›2977 is expected not to allow :name to be ‹"foo.git"›2978Resolvers::NamespaceProjectsResolver2979 with a group2980 #resolve2981 when the `has_vulnerabilities` parameter is not truthy2982 is expected to contain exactly #<Project id:1301 group249/project1302>> and #<Project id:1302 group249/project1303>>2983 when the `has_vulnerabilities` parameter is truthy2984 is expected to contain exactly #<Project id:1303 group250/project1304>>2985Projects::UpdateService#execute2986 returns an error result when record cannot be updated2987 calls remove_import_data if mirror was disabled in previous change2988 repository mirror2989 sets mirror attributes2990 does not touch mirror_user_id for non-mirror changes2991 forbids non-admins from setting mirror_user_id explicitly2992 allows admins to set mirror_user_id2993 forces an import job2994 audit events2995 #name2996 when licensed2997 does not log audit event if operation fails2998 when operation succeeds2999 logs an audit event3000 logs the audit event info3001 when not licensed3002 does not log audit event3003 #path3004 when licensed3005 does not log audit event if operation fails3006 when operation succeeds3007 logs an audit event3008 logs the audit event info3009 when not licensed3010 does not log audit event3011 #visibility3012 when licensed3013 does not log audit event if operation fails3014 when operation succeeds3015 logs an audit event3016 logs the audit event info3017 when not licensed3018 does not log audit event3019 repository_size_limit assignment as Bytes3020 when param present3021 converts from MB to Bytes3022 when param not present3023 assign nil value3024 when there are merge requests in merge train3025 when merge pipelines option is disabled3026 drops all merge request in the train3027 when merge pipelines option stays enabled3028 does not drop all merge request in the train3029 when compliance frameworks is set3030 when framework is not blank3031 saves the framework3032 when framework is blank3033 removes the framework record3034 when compliance framework feature is disabled3035 the project had the feature before3036 does not save the new framework and retains the old setting3037 the project never had the feature3038 does not save the framework3039EE::AuditEvents::RepositoryPushAuditEventService3040 #attributes3041 when branch push3042 returns audit event attributes3043 when tag push3044 returns audit event attributes3045 #enabled?3046 when not licensed and not enabled3047 is expected to equal false3048 when licensed but not enabled3049 is expected to equal false3050 when licensed and enabled3051 is expected to equal true3052StoreSecurityReportsWorker3053 #perform3054 when at least one security report feature is enabled3055 report_type: :sast3056 executes StoreReportsService for given pipeline3057 report_type: :dast3058 executes StoreReportsService for given pipeline3059 report_type: :dependency_scanning3060 executes StoreReportsService for given pipeline3061 report_type: :container_scanning3062 executes StoreReportsService for given pipeline3063 when security reports feature is not available3064 does not execute StoreReportsService3065Gitlab::CodeOwners::Entry3066 is uniq by the pattern and owner line3067 #users3068 raises an error if no users have been added3069 returns the users in an array3070 #all_users3071 raises an error if users have not been loaded for groups3072 returns users and users from groups3073 #groups3074 raises an error if no groups have been added3075 returns mentioned groups3076 #add_matching_groups_from3077 returns only mentioned groups, case-insensitively3078 #add_matching_users_from3079 does not add the same user twice3080 raises an error when adding a user without emails preloaded3081 only adds users mentioned in the owner line3082 adds users by username, case-insensitively3083 adds users by primary email, case-insensitively3084 adds users by secondary email, case-insensitively3085Issuable::Clone::AttributesRewriter3086 when a new object is a group entity3087 when entity is an epic3088 setting labels3089 keeps group labels and merges project labels where possible3090 setting milestones3091 ignores milestone attribute3092layouts/application3093 layouts/_user_notification_dot3094 when we show the notification dot3095 has the notification dot3096 when we do not show the notification dot3097 does not have the notification dot3098VulnerabilityIssueLinks::DeleteService3099 with an authorized user with proper permissions3100 with valid params3101 deletes the specified vulnerability-issue link3102 when security dashboard feature is disabled3103 raises an "access denied" error3104 permissions3105 is expected to be allowed for :admin3106 is expected to be allowed for :owner3107 is expected to be allowed for :maintainer3108 is expected to be allowed for :developer3109 is expected to be denied for :auditor3110 is expected to be denied for :reporter3111 is expected to be denied for :guest3112 is expected to be denied for :anonymous3113ApprovalRules::ProjectRuleDestroyService3114 #execute3115 when there is no merge request rules3116 destroys project rule3117 when there is a merge request rule3118 when open3119 destroys merge request rules3120 when merged3121 does nothing3122Git::WikiPushService3123 when elasticsearch is enabled3124 when changes include master ref3125 triggers a wiki update3126 when changes do not include master ref3127 does not trigger a wiki update3128 when elasticsearch is disabled3129 when changes include master ref3130 does nothing even if changes include master ref3131Gitlab::Ci::Reports::Security::AggregatedReport3132 #created_at3133 no reports3134 has no created date3135 report with no created date3136 has no created date3137 has reports3138 has oldest created date3139Security::ReportFetchService3140 #pipeline3141 with found pipeline3142 is expected to eq #<Ci::Pipeline id: 215, ref: "master", sha: "b83d6e391c22777fca1ed3012fce84f633d7fed0", before_sha: n...source_sha: nil, target_sha: nil, external_pull_request_id: nil, ci_ref_id: 230, locked: "unlocked">3143 without any pipelines3144 is expected to be nil3145 #build3146 with right artifacts3147 is expected to eq #<Ci::Build id: 163, status: "success", finished_at: "2020-08-31 08:53:29", trace: nil, created_at: "...up_id: nil, waiting_for_resource_at: nil, processed: false, scheduling_type: "stage", tag_list: nil>3148 without right kind of artifacts3149 is expected to be nil3150 without found pipeline3151 is expected to be nil3152 #able_to_fetch?3153 with successful build3154 is expected to be truthy3155 with failed build3156 is expected to be falsey3157 without build3158 is expected to be falsey3159Projects::Licenses::UpdatePolicyService3160 #execute3161 when the user is authorized3162 when updating a policy3163 updates the policy3164 when the classification is invalid3165 returns an error3166 when the user is not authorized3167 when updating a policy3168 returns an error3169routes to the proper webhooks controller3170 with a project context3171 routes the test action3172 routes a single record3173 with a group context3174 routes the test action3175 routes a single record3176Analytics::CycleAnalytics::ProjectStage3177 when creating label based event3178 when the label id is not passed3179 returns validation error when `start_event_label_id` is missing3180 returns validation error when `end_event_label_id` is missing3181 when group label is defined on the root group3182 succeeds3183 when subgroup is given3184 succeeds3185 when label is defined for a different group3186 returns validation for `start_event_label_id`3187 returns validation for `end_event_label_id`3188 when `ProjectLabel is given3189 raises error when `ProjectLabel` is given for `start_event_label`3190 raises error when `ProjectLabel` is given for `end_event_label`3191 project without group3192 returns validation error when end event is label based3193 returns validation error when start event is label based3194MergeRequests::BuildService3195 project default template configured3196 issuable default templates feature not available3197 does not set the MR description from template3198 when description is provided3199 sets the user's description3200 issuable default templates feature available3201 sets the MR description from template3202 when description is provided3203 prefers user's description to the default template3204Analytics::CodeReviewMetricsWorker3205 #perform3206 with code review analytics feature available3207 executes operation for provided MR3208 for invalid MR id3209 does not execute operation3210 for invalid operation3211 raises an error3212Ci::AuditVariableChangeService3213 when audits are available3214 when creating variable3215 logs audit event3216 logs variable creation3217 when updating variable protection3218 logs audit event3219 logs variable protection update3220 when destroying variable3221 logs audit event3222 logs variable destruction3223 when audits are not available3224 when creating variable3225 does not log an audit event3226 when updating variable protection3227 does not log an audit event3228 when destroying variable3229 does not log an audit event3230SlashCommands::GlobalSlackHandler3231 does not serve a request if token is invalid3232 Valid token3233 calls command handler if project alias is valid3234 returns error if project alias not found3235 returns authorization request3236 calls help presenter3237Mutations::InstanceSecurityDashboard::AddProject3238 #resolve3239 when user is not logged_in3240 raises Gitlab::Graphql::Errors::ResourceNotAvailable error3241 when user is logged_in3242 when security_dashboard is not enabled3243 raises Gitlab::Graphql::Errors::ResourceNotAvailable error3244 when security_dashboard is enabled3245 when project is available to the user and can be added to the security dashboard3246 adds project to the security dashboard3247 when project is not available to the user3248 raises Gitlab::Graphql::Errors::ResourceNotAvailable error3249 when project is already added to the security dashboard3250 does not add project to the security dashboard3251DeprecatedApprovalsBeforeMerge3252 merge request3253 behaves like with approvals before merge deprecated3254 updating approvals_before_merge3255 creates any_approver rule3256 project3257 behaves like with approvals before merge deprecated3258 updating approvals_before_merge3259 creates any_approver rule3260NamespaceStatistics3261 is expected to belong to namespace required:3262 is expected to validate that :namespace cannot be empty/falsy3263 #shared_runners_minutes3264 is expected to eq 23265 #extra_shared_runners_minutes3266 when limit is defined3267 when usage is above the main quota3268 is expected to eq 13269 when usage is below the main quota3270 is expected to eq 03271 without limit3272 is expected to eq 03273 when limit is defined globally3274 when usage is above the main quota3275 and extra CI minutes have been assigned3276 is expected to eq 13277 and extra CI minutes have not been assigned3278 is expected to eq 03279 when usage is below the main quota3280 and extra CI minutes have been assigned3281 is expected to eq 03282Evidences::ReleaseEntity3283 when report artifacts are passed3284 has no report_artifacts if feature is unlicenced3285 exposes build artifacts if feature is licenced3286Repository index3287 when fresh master branch is first pushed, followed by another update, then indexed3288 indexes initial push3289DashboardEnvironmentEntity3290 .as_json3291 includes environment attributes3292Security::StoreScansService3293 build has security reports3294 saves security scans3295 scan already exists3296 does not save3297ManagedLicenseEntity3298 #as_json3299 contains required fields3300 #approval_status3301 classification: "allowed", approval_status: "approved"3302 is expected to eql "approved"3303 classification: "denied", approval_status: "blacklisted"3304 is expected to eql "blacklisted"3305VulnerabilityEntity3306 exposes vulnerability-specific elements3307Vulnerabilities::FindingPresenter3308 #blob_path3309 without a sha3310 is expected to be blank3311 with a sha3312 is expected to include "abc"3313 without start_line or end_line3314 is expected to end with "a.txt"3315 with start_line only3316 is expected to end with "#L1"3317 with start_line and end_line3318 is expected to end with "#L1-2"3319 without file3320 is expected to be blank3321 without location3322 is expected to be blank3323HipchatService3324 creates a message for approved merge requests3325Gitlab::Ci::Parsers::Security::CoverageFuzzing3326 #parse!3327 parses all identifiers and findings3328 generates expected location3329RequirementsManagement::RequirementsFinder3330 #execute3331 when requirements are enabled3332 when project is not set3333 does not return any requirements3334 when project is set3335 returns all requirements in the project3336 when state is set3337 returns matched requirements3338 when iid is set3339 returns matched requirements3340 when user can not read requirements in the project3341 does not return any requirements3342 filter by author3343 author_username: "projectusername", filtered_requirements: [:requirement1, :requirement2]3344 returns the requirements filtered3345 author_username: "nonexistent_user", filtered_requirements: []3346 returns the requirements filtered3347 author_username: nil, filtered_requirements: [:requirement3, :requirement2, :requirement1]3348 returns the requirements filtered3349 author_username: ["projectusername", "otheruser123"], filtered_requirements: [:requirement3, :requirement2, :requirement1]3350 returns the requirements filtered3351 author_username: ["nonexistentuser", "nonsense"], filtered_requirements: []3352 returns the requirements filtered3353 filter by search3354 query: "nonsense", filtered_requirements: []3355 returns the requirements filtered3356 query: "serverless", filtered_requirements: [:requirement1]3357 returns the requirements filtered3358 query: "with", filtered_requirements: [:requirement1, :requirement3]3359 returns the requirements filtered3360 query: nil, filtered_requirements: [:requirement3, :requirement2, :requirement1]3361 returns the requirements filtered3362 query: "", filtered_requirements: [:requirement3, :requirement2, :requirement1]3363 returns the requirements filtered3364 ordering3365 sort: "id_asc", ordered_requirements: [:requirement1, :requirement2, :requirement3]3366 returns the requirements ordered3367 sort: "id_desc", ordered_requirements: [:requirement3, :requirement2, :requirement1]3368 returns the requirements ordered3369 sort: "updated_at_asc", ordered_requirements: [:requirement1, :requirement3, :requirement2]3370 returns the requirements ordered3371 sort: "updated_at_desc", ordered_requirements: [:requirement2, :requirement3, :requirement1]3372 returns the requirements ordered3373 sort: "err", ordered_requirements: [:requirement3, :requirement2, :requirement1]3374 returns the requirements ordered3375 when requirements are disabled3376 when project is set3377 does not return any requirements3378EE::ResourceEvents::SyntheticIterationNotesBuilderService3379 #execute3380 when resource iteration events are disabled3381 still builds notes for existing resource iteration events3382Gitlab::Verify::Uploads3383 includes uploads in object storage3384projects/settings/operations/show3385 Operations > Tracing3386 with project.tracing_external_url3387 links to project.tracing_external_url3388 with malicious external_url3389 sanitizes external_url3390 without project.tracing_external_url3391 links to Tracing page3392DescriptionVersion3393 associations3394 is expected to belong to epic required:3395 validations3396 is valid when epic_id is set3397 #previous_version3398 returns the previous version for the same issuable3399 #delete!3400 expires issuable etag cache3401 when start_id is not present3402 only delayed deletes description_version3403 when start_id is present3404 delayed deletes description versions of same issuable up to start_id3405HealthStatus3406 #supports_health_status?3407 issuable_type: :issue, issuable_health_status: true, save_issuable_health_status: true, supports_health_status: true3408 is expected to eq true3409 issuable_type: :issue, issuable_health_status: false, save_issuable_health_status: false, supports_health_status: false3410 is expected to eq false3411 issuable_type: :issue, issuable_health_status: false, save_issuable_health_status: true, supports_health_status: false3412 is expected to eq false3413 issuable_type: :issue, issuable_health_status: true, save_issuable_health_status: false, supports_health_status: false3414 is expected to eq false3415 issuable_type: :incident, issuable_health_status: true, save_issuable_health_status: true, supports_health_status: false3416 is expected to eq false3417 issuable_type: :incident, issuable_health_status: false, save_issuable_health_status: false, supports_health_status: false3418 is expected to eq false3419 issuable_type: :incident, issuable_health_status: false, save_issuable_health_status: true, supports_health_status: false3420 is expected to eq false3421 issuable_type: :incident, issuable_health_status: true, save_issuable_health_status: false, supports_health_status: false3422 is expected to eq false3423 issuable_type: :merge_request, issuable_health_status: true, save_issuable_health_status: true, supports_health_status: false3424 is expected to eq false3425 issuable_type: :merge_request, issuable_health_status: false, save_issuable_health_status: false, supports_health_status: false3426 is expected to eq false3427 issuable_type: :merge_request, issuable_health_status: false, save_issuable_health_status: true, supports_health_status: false3428 is expected to eq false3429 issuable_type: :merge_request, issuable_health_status: true, save_issuable_health_status: false, supports_health_status: false3430 is expected to eq false3431EE::IpRestrictions::UpdateService3432 #execute3433 for a group that has no ip restriction3434 with valid IP subnets3435 builds new ip_restriction records3436 builds new ip_restriction records with the provided ranges3437 for a group that already has ip restriction3438 with empty range3439 marks all existing ip_restriction records for destruction3440 with valid IP subnets3441 with an entirely new set of ranges3442 each range in the list is unique3443 builds new ip_restriction records with all of the specified ranges3444 behaves like removes all existing ip_restriction records3445 marks all the existing ip_restriction records for destruction3446 ranges in the list repeats3447 builds new ip_restriction records with only the unique ranges in the specified ranges3448 behaves like removes all existing ip_restriction records3449 marks all the existing ip_restriction records for destruction3450 replacing one of the existing range with another3451 marks the ip_restriction record of the replaced range for destruction3452 retains the ip_restriction record of the other existing range3453 builds a new ip_restriction record with the newly specified range3454Mutations::RequirementsManagement::CreateRequirement3455 #resolve3456 behaves like requirements not available3457 raises a not accessible error3458 when the user can update the epic3459 when requirements feature is available3460 creates new requirement3461 when requirements_management flag is disabled3462 behaves like requirements not available3463 raises a not accessible error3464 when requirements feature is disabled3465 behaves like requirements not available3466 raises a not accessible error3467MergeRequestComplianceEntity3468 .as_json3469 includes merge request attributes for compliance3470 with an approver3471 includes only set of approver details3472 includes approver user details3473 with a head pipeline3474 and the user cannot read the pipeline3475 does not include pipeline status attribute3476 and the user can read the pipeline3477 includes pipeline status attribute3478 with an approval status3479 all approval checks pass3480 behaves like the approval status3481 is correct3482 only some of the approval checks pass3483 behaves like the approval status3484 is correct3485 none of the approval checks pass3486 behaves like the approval status3487 is correct3488EE::API::Entities::Analytics::CodeReview::MergeRequest3489 exposes mr attributes3490PurgeDependencyProxyCacheWorker3491 #perform3492 an admin user3493 is labeled as idempotent3494 performs multiple times sequentially without raising an exception3495 deletes the blobs and returns ok3496 a non-admin user3497 behaves like returns nil3498 returns nil3499 an invalid user id3500 behaves like returns nil3501 returns nil3502 an invalid group3503 behaves like returns nil3504 returns nil3505ComplianceManagement::ComplianceFramework::ProjectSettingsHelper3506 #compliance_framework_options3507 has all the options3508 #compliance_framework_checkboxes3509 has all the checkboxes3510 #compliance_framework_description3511 framework: :gdpr, description: "GDPR - General Data Protection Regulation"3512 is expected to eq "GDPR - General Data Protection Regulation"3513 framework: :hipaa, description: "HIPAA - Health Insurance Portability and Accountability Act"3514 is expected to eq "HIPAA - Health Insurance Portability and Accountability Act"3515 framework: :pci_dss, description: "PCI-DSS - Payment Card Industry-Data Security Standard"3516 is expected to eq "PCI-DSS - Payment Card Industry-Data Security Standard"3517 framework: :soc_2, description: "SOC 2 - Service Organization Control 2"3518 is expected to eq "SOC 2 - Service Organization Control 2"3519 framework: :sox, description: "SOX - Sarbanes-Oxley"3520 is expected to eq "SOX - Sarbanes-Oxley"3521 #compliance_framework_title3522 framework: :gdpr, title: "GDPR"3523 is expected to eq "GDPR"3524 framework: :hipaa, title: "HIPAA"3525 is expected to eq "HIPAA"3526 framework: :pci_dss, title: "PCI-DSS"3527 is expected to eq "PCI-DSS"3528 framework: :soc_2, title: "SOC 2"3529 is expected to eq "SOC 2"3530 framework: :sox, title: "SOX"3531 is expected to eq "SOX"3532 #compliance_framework_color3533 framework: :gdpr, color: "gl-bg-green-500"3534 is expected to eq "gl-bg-green-500"3535 framework: :hipaa, color: "gl-bg-blue-500"3536 is expected to eq "gl-bg-blue-500"3537 framework: :pci_dss, color: "gl-bg-theme-indigo-500"3538 is expected to eq "gl-bg-theme-indigo-500"3539 framework: :soc_2, color: "gl-bg-red-500"3540 is expected to eq "gl-bg-red-500"3541 framework: :sox, color: "gl-bg-orange-500"3542 is expected to eq "gl-bg-orange-500"3543 #compliance_framework_tooltip3544 framework: :gdpr, tooltip: "This project is regulated by GDPR."3545 is expected to eq "This project is regulated by GDPR."3546 framework: :hipaa, tooltip: "This project is regulated by HIPAA."3547 is expected to eq "This project is regulated by HIPAA."3548 framework: :pci_dss, tooltip: "This project is regulated by PCI-DSS."3549 is expected to eq "This project is regulated by PCI-DSS."3550 framework: :soc_2, tooltip: "This project is regulated by SOC 2."3551 is expected to eq "This project is regulated by SOC 2."3552 framework: :sox, tooltip: "This project is regulated by SOX."3553 is expected to eq "This project is regulated by SOX."3554Security::VulnerabilityCountingService#execute3555 The pipeline has security builds3556 All report types are requested3557 is expected to match (a hash including {"sast" => 33, "dast" => 20, "container_scanning" => 8, "dependency_scanning" => 4})3558 Only the report type dast is requested3559 is expected to eq {"dast"=>20}3560 The Pipeline has no security builds3561 is expected to match (a hash including {"sast" => 0, "dast" => 0, "container_scanning" => 0, "dependency_scanning" => 0})3562 performance3563 performs only one query3564RemoveUnreferencedLfsObjectsWorker3565 #perform3566 when running in a Geo primary node3567 logs an event to the Geo event log for every unreferenced LFS objects3568Gitlab::Ci::Parsers::LicenseCompliance::LicenseScanning3569 #parse!3570 when parsing a valid v1 report3571 is expected to eql "1.0"3572 is expected to eq 43573 is expected to eql "Apache 2.0"3574 is expected to eql "http://www.apache.org/licenses/LICENSE-2.0.txt"3575 is expected to equal 13576 is expected to equal 13577 is expected to eql "thread_safe"3578 is expected to eql "MIT"3579 is expected to eql "http://opensource.org/licenses/mit-license"3580 is expected to equal 523581 is expected to equal 523582 is expected to eql "actioncable"3583 is expected to eql "New BSD"3584 is expected to eql "http://opensource.org/licenses/BSD-3-Clause"3585 is expected to equal 33586 is expected to equal 33587 is expected to contain exactly "ffi", "puma", and "sqlite3"3588 is expected to eql "unknown"3589 is expected to be nil3590 is expected to equal 13591 is expected to equal 13592 is expected to eql "ruby-bundler-rails"3593 when parsing a valid v1.1 report3594 is expected to eql "1.1"3595 is expected to eq 33596 is expected to eql "BSD-4-Clause"3597 is expected to eql "BSD"3598 is expected to eql "http://spdx.org/licenses/BSD-4-Clause.json"3599 is expected to equal 23600 is expected to equal 23601 is expected to contain exactly "b" and "c"3602 is expected to eql "MIT"3603 is expected to eql "MIT"3604 is expected to eql "http://opensource.org/licenses/mit-license"3605 is expected to equal 23606 is expected to equal 23607 is expected to contain exactly "a" and "c"3608 is expected to be nil3609 is expected to eql "unknown"3610 is expected to eql ""3611 is expected to equal 13612 is expected to equal 13613 is expected to contain exactly "d"3614 when parsing a valid v2 report3615 is expected to eql "2.0"3616 is expected to eq 33617 is expected to eql "BSD-3-Clause"3618 is expected to eql "BSD 3-Clause \"New\" or \"Revised\" License"3619 is expected to eql "http://spdx.org/licenses/BSD-3-Clause.json"3620 is expected to equal 23621 is expected to equal 23622 is expected to contain exactly "b" and "c"3623 is expected to eql "MIT"3624 is expected to eql "MIT License"3625 is expected to eql "http://spdx.org/licenses/MIT.json"3626 is expected to equal 23627 is expected to equal 23628 is expected to contain exactly "a" and "c"3629 is expected to be nil3630 is expected to eql "unknown"3631 is expected to eql ""3632 is expected to equal 13633 is expected to equal 13634 is expected to contain exactly "d"3635 when parsing a valid v2.1 report3636 is expected to eql "2.1"3637 is expected to eq 33638 parses the BSD license3639 parses the MIT license3640 parses an unknown license3641 when parsing a v2 report with a missing license definition3642 is expected to equal 13643 is expected to eql "MIT"3644 is expected to eql "unknown"3645 is expected to equal 13646 is expected to eql "saml-kit"3647 when the report version is not recognized3648 is expected to raise KeyError3649 when the report version is missing3650 is expected to eq "1.0"3651 is expected to be empty3652 when the report version is nil3653 is expected to eq "1.0"3654 is expected to be empty3655 when the report version is blank3656 is expected to eq "1.0"3657 is expected to be empty3658 when the report is structured as an array3659 is expected to be empty3660 when the report is not a valid JSON document3661 is expected to eql "1.0"3662 is expected to be empty3663Milestones::PromoteService3664 #execute3665 updates board with new milestone3666Gitlab::UrlBuilder3667 .build3668 factory: :epic, path_generator: ->(epic) { "/groups/#{epic.group.full_path}/-/epics/#{epic.iid}" }3669 returns the full URL3670 returns only the path if only_path is set3671 factory: :vulnerability, path_generator: ->(vulnerability) { "/#{vulnerability.project.full_path}/-/security/vulnerabilities/#{vulnerability.id}" }3672 returns the full URL3673 returns only the path if only_path is set3674 factory: :note_on_epic, path_generator: ->(note) { "/groups/#{note.noteable.group.full_path}/-/epics/#{note.noteable.iid}#note_#{note.id}" }3675 returns the full URL3676 returns only the path if only_path is set3677 factory: :note_on_vulnerability, path_generator: ->(note) { "/#{note.project.full_path}/-/security/vulnerabilities/#{note.noteable.id}#note_#{note.id}" }3678 returns the full URL3679 returns only the path if only_path is set3680 factory: :group_wiki, path_generator: ->(wiki) { "/groups/#{wiki.container.full_path}/-/wikis/home" }3681 returns the full URL3682 returns only the path if only_path is set3683GroupSaml::SignUpService3684 #execute3685 creates new user3686 links new user to oauth identity3687 when group has enforced_group_managed_accounts enabled3688 creates new user managed by given group3689ProjectSnippetPolicy3690 private snippet3691 auditor user3692 is expected to be disallowed :update_snippet and :admin_snippet3693Ci::DestroyPipelineService3694 when audit events is enabled3695 does not log an audit event3696shared/credentials_inventory/_expiry_date.html.haml3697 when a non-expirable credential is used3698 shows "Never" if expires? method does not exist3699 when an expirable credential is used3700 shows "Never" when not expirable3701 and is not expired3702 shows the correct date3703 does not have an expiry icon3704 and is near expiry3705 shows the correct date3706 has an icon3707 and has expired3708 shows the correct date3709 has an icon3710Elastic::IndexProjectsService3711 #execute3712 when elasticsearch_limit_indexing? is true3713 schedules indexing for selected projects and namespaces3714 when elasticsearch_limit_indexing? is false3715 schedules indexing for all projects3716Atlassian::JiraConnect::Serializers::BranchEntity3717 sets the hash of the branch name as the id3718Analytics::CycleAnalytics::Stages::ListService3719 returns only the default stages3720 provides the default stages as non-persisted objects3721 does not persist the value stream record3722 behaves like permission check for cycle analytics stage services3723 when user has no access3724 is expected to be error3725 is expected to eq :forbidden3726 when license is missing3727 is expected to be error3728 is expected to eq :forbidden3729 when there are persisted stages3730 returns the persisted stages in order3731Mutations::Vulnerabilities::Dismiss3732 #resolve3733 when the user can dismiss the vulnerability3734 when user doe not have access to the project3735 raises an error3736 when user has access to the project3737 returns the dismissed vulnerability3738ScimIdentity3739 relations3740 is expected to belong to group required:3741 is expected to belong to user required:3742 validations3743 with existing user and group3744 returns false for a duplicate identity with the same extern_uid3745 returns false for a duplicate identity with different extern_uid3746 returns true when a different group is used3747 returns false for a duplicate extern_uid with different case3748 .with_extern_uid3749 finds identity regardless of case3750ProjectSecuritySetting3751 associations3752 is expected to belong to project required:3753 .safe_find_or_create_for3754 without existing setting3755 creates a new entry3756 with existing setting3757 reuses existing entry3758Gitlab::SlashCommands::Presenters::IssueShow3759 issue with issue weight3760 shows the weight3761Integrations::Test::ProjectService3762 #execute3763 without event specified3764 GitHubService3765 behaves like tests for integration with pipeline data3766 tests the integration with pipeline data3767DependencyProxy::DownloadBlobService3768 remote request is successful3769 is expected to eq :success3770 is expected to be a kind of Tempfile3771 is expected to eq 63772 remote request is not found3773 is expected to eq :error3774 is expected to eq 4043775 is expected to eq "Non-success response code on downloading blob fragment"3776 net timeout exception3777 is expected to eq :error3778 is expected to eq 5993779 is expected to eq "execution expired"3780Resolvers::RequirementsManagement::TestReportsResolver3781 with a project3782 #resolve3783 finds all test_reports3784 sorting3785 when sorting by created_at3786 sorts test reports ascending3787 sorts test reports descending3788DependencyProxy::FindOrCreateBlobService3789 no cache3790 downloads blob from remote registry if there is no cached one3791 cached blob3792 uses cached blob instead of downloading one3793 no such blob exists remotely3794 returns error message and http status3795RequirementsManagement::CreateRequirementService3796 #execute3797 when user can create requirements3798 creates new requirement3799 uses only permitted params3800 when user is not allowed to create requirements3801 raises an exception3802Vulnerabilities::HistoricalStatistic3803 associations3804 is expected to belong to project required: true3805 validations3806 is expected to validate that :date cannot be empty/falsy3807 is expected to validate that :letter_grade cannot be empty/falsy3808 is expected to validate that :total looks like a number greater than or equal to 03809 is expected to validate that :critical looks like a number greater than or equal to 03810 is expected to validate that :high looks like a number greater than or equal to 03811 is expected to validate that :medium looks like a number greater than or equal to 03812 is expected to validate that :low looks like a number greater than or equal to 03813 is expected to validate that :unknown looks like a number greater than or equal to 03814 is expected to validate that :info looks like a number greater than or equal to 03815 is expected to define :letter_grade as an enum, backed by an integer, with possible values ‹[:a, :b, :c, :d, :f]›3816 .older_than3817 is expected to contain exactly #<Vulnerabilities::HistoricalStatistic id: 4, created_at: "2020-08-31 03:00:10", updated_at: "2020-08...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-05-23", letter_grade: "a"> and #<Vulnerabilities::HistoricalStatistic id: 5, created_at: "2020-08-31 03:00:11", updated_at: "2020-08...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-05-22", letter_grade: "a">3818 .between_dates3819 is expected to contain exactly #<Vulnerabilities::HistoricalStatistic id: 7, created_at: "2020-08-31 03:00:11", updated_at: "2020-08...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-08-11", letter_grade: "a">, #<Vulnerabilities::HistoricalStatistic id: 8, created_at: "2020-08-31 03:00:12", updated_at: "2020-08...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-08-12", letter_grade: "a">, and #<Vulnerabilities::HistoricalStatistic id: 9, created_at: "2020-08-31 03:00:12", updated_at: "2020-08...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-08-13", letter_grade: "a">3820 is expected not to include #<Vulnerabilities::HistoricalStatistic id: 6, created_at: "2020-08-31 03:00:11", updated_at: "2020-08...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-08-10", letter_grade: "a">3821 .for_project3822 is expected to contain exactly #<Vulnerabilities::HistoricalStatistic id: 10, created_at: "2020-08-31 03:00:13", updated_at: "2020-0...critical: 0, high: 0, medium: 0, low: 0, unknown: 0, info: 0, date: "2020-08-31", letter_grade: "a">3823 .grouped_by_date3824 is expected to contain exactly [Mon, 10 Aug 2020, 2] and [Tue, 11 Aug 2020, 1]3825 .aggregated_by_date3826 is expected to contain exactly {"critical"=>12, "date"=>"2020-08-10", "high"=>10, "id"=>nil, "info"=>2, "low"=>6, "medium"=>8, "total"=>42, "unknown"=>4} and {"critical"=>12, "date"=>"2020-08-11", "high"=>11, "id"=>nil, "info"=>7, "low"=>9, "medium"=>10, "total"=>57, "unknown"=>8}3827Vulnerabilities::HistoricalStatistics::AdjustmentService3828 .execute3829 instantiates the service object for given project ids and calls `execute` on them3830 #execute3831 when more than 1000 projects is provided3832 raises error3833 when there is no vulnerability_statistic record for project3834 does not create a new record in database3835 when there is vulnerability_statistic record for project3836 when there is no vulnerability_historical_statistic record for project3837 creates a new record3838 sets the correct values for the record3839 when there is already a vulnerability_historical_statistic record for project3840 does not create a new record in database3841 sets the correct values for the record3842Projects::OnDemandScansHelper3843 #on_demand_scans_data3844 returns proper data3845subscriptions/groups/edit3846 a single user3847 displays the correct notification for 1 user3848 multiple users3849 displays the correct notification for 2 users3850 with new_user in the params3851 displays the progress bar3852 without new_user in the params3853 does not display the progress bar3854Resolvers::VulnerabilitiesHistoryResolver3855 #resolve3856 fetches historical vulnerability data from the start date to the end date3857 when given more than 10 days3858 raises an error stating that no more than 10 days can be requested3859Vulnerabilities::HistoricalStatistics::DeletionService3860 .execute3861 instantiates the service object and calls `execute`3862 #execute3863 when there is no historical statistics older than 100 days3864 does not delete historical statistics3865 when there is a historical statistic entry that was created 99 days ago3866 does not delete historical statistics3867 and there are more than one entries that are older than 100 days3868 deletes historical statistics older than 90 days3869AuditEventSerializer3870 .represent3871 returns an empty array when there are no audit events3872 includes audit event attributes3873StatusPage::PublishWorker3874 #perform3875 behaves like an idempotent worker3876 is labeled as idempotent3877 performs multiple times sequentially without raising an exception3878 when service succeeds3879 execute the service3880 with unknown project3881 does not execute the service3882 when service returns an error3883 succeeds and logs the error3884 when service raises an exception3885 re-raises exception3886BaseCountService3887 #cache_options3888 returns the default3889 returns default on a Geo primary3890 returns cache of 20 mins on a Geo secondary3891Elastic::Latest::SnippetInstanceProxy3892 #as_indexed_json3893 serializes snippet as hash3894EE::Gitlab::Scim::ParamsParser3895 #filter_params3896 returns the correct filter attributes3897 returns an empty hash for the wrong filter3898 #filter_operator3899 returns the operator as a symbol3900 returns nil if the filter is invalid3901 #update_params3902 when path key is present3903 behaves like scim operation active false3904 returns the correct operation attributes3905 behaves like scim operation empty3906 returns an empty hash for the wrong operations3907 behaves like scim operation update name3908 can update name from displayName3909 when path key is not present3910 behaves like scim operation active false3911 returns the correct operation attributes3912 behaves like scim operation empty3913 returns an empty hash for the wrong operations3914 behaves like scim operation update name3915 can update name from displayName3916 with capitalized op values for Azure3917 behaves like scim operation active false3918 returns the correct operation attributes3919 #post_params3920 returns a parsed hash for POST params3921 can construct a name from givenName and familyName3922 falls back to displayName when other names are missing3923 #deprovision_user?3924 returns true when deprovisioning3925 returns false when not deprovisioning3926 returns true when deprovisioning without a path key3927 #reprovision_user?3928 returns true when reprovisioning3929 returns false when not reprovisioning3930Analytics::ProductivityAnalyticsRequestParams3931 validations3932 is valid3933 `merged_at` params3934 when `merged_before` is earlier than `merged_after`3935 is invalid3936 when `merged_after` is earlier than `productivity_analytics_start_date`3937 is invalid3938 when `merged_before` is earlier than `productivity_analytics_start_date`3939 is invalid3940 default values3941 `merged_before`3942 defaults to today date3943 `merged_after`3944 when `productivity_analytics_start_date` is within the last 30 days3945 defaults to `productivity_analytics_start_date`3946 when `productivity_analytics_start_date` older than 30 days3947 defaults to 30 days ago3948Ci::Minutes::Quota3949 #monthly_minutes_report3950 when unlimited3951 when minutes are not used3952 returns unlimited report with no usage3953 when minutes are used3954 returns unlimited report with usage3955 when limited3956 when minutes are not all used3957 returns report with under quota3958 when minutes are all used3959 returns report with over quota3960 #purchased_minutes_report3961 when limit enabled3962 when extra minutes have been purchased3963 when all monthly minutes are used and some puarchased minutes are used3964 returns report with under quota3965 when all monthly and all puarchased minutes have been used3966 returns report with over quota3967 when not all monthly minutes have been used3968 returns report with no usage3969 when no extra minutes have been purchased3970 when all monthly minutes have been used3971 returns report without usage3972 when not all monthly minutes have been used3973 returns report with no usage3974 #monthly_percent_used3975 limit_enabled: false, monthly_limit: 200, purchased_limit: 0, minutes_used: 40, result: 0, title: "limit not enabled"3976 returns the percentage3977 limit_enabled: true, monthly_limit: 200, purchased_limit: 0, minutes_used: 0, result: 0, title: "monthly limit set and no usage"3978 returns the percentage3979 limit_enabled: true, monthly_limit: 200, purchased_limit: 0, minutes_used: 40, result: 20, title: "monthly limit set and usage lower than 100%"3980 returns the percentage3981 limit_enabled: true, monthly_limit: 200, purchased_limit: 0, minutes_used: 200, result: 100, title: "monthly limit set and usage at 100%"3982 returns the percentage3983 limit_enabled: true, monthly_limit: 200, purchased_limit: 0, minutes_used: 210, result: 105, title: "monthly limit set and usage above 100%"3984 returns the percentage3985 limit_enabled: true, monthly_limit: 0, purchased_limit: 0, minutes_used: 0, result: 0, title: "monthly limit not set and no usage"3986 returns the percentage3987 limit_enabled: true, monthly_limit: 0, purchased_limit: 0, minutes_used: 40, result: 0, title: "monthly limit not set and some usage"3988 returns the percentage3989 limit_enabled: true, monthly_limit: 200, purchased_limit: 100, minutes_used: 0, result: 0, title: "monthly and purchased limits set and no usage"3990 returns the percentage3991 limit_enabled: true, monthly_limit: 200, purchased_limit: 100, minutes_used: 40, result: 20, title: "monthly and purchased limits set and low usage"3992 returns the percentage3993 limit_enabled: true, monthly_limit: 200, purchased_limit: 100, minutes_used: 210, result: 100, title: "usage capped to 100% and overflows into purchased minutes"3994 returns the percentage3995 #purchased_percent_used3996 limit_enabled: false, monthly_limit: 0, purchased_limit: 0, minutes_used: 40, result: 0, title: "limit not enabled"3997 returns the percentage3998 limit_enabled: true, monthly_limit: 0, purchased_limit: 200, minutes_used: 40, result: 20, title: "monthly limit not set and purchased limit set and low usage"3999 returns the percentage4000 limit_enabled: true, monthly_limit: 200, purchased_limit: 0, minutes_used: 40, result: 0, title: "monthly limit set and purchased limit not set and usage below monthly"4001 returns the percentage4002 limit_enabled: true, monthly_limit: 200, purchased_limit: 0, minutes_used: 240, result: 0, title: "monthly limit set and purchased limit not set and usage above monthly"4003 returns the percentage4004 limit_enabled: true, monthly_limit: 200, purchased_limit: 200, minutes_used: 0, result: 0, title: "monthly and purchased limits set and no usage"4005 returns the percentage4006 limit_enabled: true, monthly_limit: 200, purchased_limit: 200, minutes_used: 40, result: 0, title: "monthly and purchased limits set and usage below monthly"4007 returns the percentage4008 limit_enabled: true, monthly_limit: 200, purchased_limit: 200, minutes_used: 200, result: 0, title: "monthly and purchased limits set and monthly minutes maxed out"4009 returns the percentage4010 limit_enabled: true, monthly_limit: 200, purchased_limit: 200, minutes_used: 300, result: 50, title: "monthly and purchased limits set and some purchased minutes used"4011 returns the percentage4012 limit_enabled: true, monthly_limit: 200, purchased_limit: 200, minutes_used: 400, result: 100, title: "monthly and purchased limits set and all minutes used"4013 returns the percentage4014 limit_enabled: true, monthly_limit: 200, purchased_limit: 200, minutes_used: 430, result: 115, title: "monthly and purchased limits set and usage beyond all limits"4015 returns the percentage4016Elastic::ReindexingTask4017 only allows one running task at a time4018 sets in_progress flag4019 .drop_old_indices!4020 deletes the correct indices4021Pseudonymizer::Uploader4022 #upload4023 upload all file in the directory4024 #cleanup4025 cleans the directory4026GroupIssuableAutocompleteEntity4027 #represent4028 includes the iid, title, and reference4029LicensesFinder4030 returns a license by id4031 returns a collection of licenses4032 returns empty relation if the license doesnt exist4033 raises an error if the user is not an admin4034EE::AuditEvents::ImpersonationAuditEventService4035 #security_event4036 creates an event and logs to a file with the provided details4037Gitlab::Vulnerabilities::ContainerScanningVulnerability4038 getters4039 getter: :severity4040 returns right value4041 getter: :confidence4042 returns right value4043 getter: :identifiers4044 returns right value4045 getter: :links4046 returns right value4047 getter: :target_branch4048 returns right value4049 getter: :remediations4050 returns right value4051 #title4052 when there is a name4053 returns the provided name4054 when there is no featurename4055 formats title using the vulnerability only4056 when there is a featurename4057 formats title using the featurename4058 #description4059 when there is a description4060 returns the provided description4061 when there is no featurename4062 formats description using the namespace4063 when there is no featureversion4064 formats description using the featurename only4065 when featurename and featureversion are present4066 formats description using the featurename and featureversion4067 #solution4068 when there is a solution4069 returns the provided solution4070 when there is no fixedby4071 returns nil4072 when there is no featurename4073 formats solution using the fixedby only4074 when there is no featureversion4075 formats solution using the featurename only4076 when featurename and featureversion are present4077 formats solution using the featurename and featureversion4078EE::Gitlab::Auth::Ldap::Group4079 #member_dns4080 resolves the correct member_dns when member has a range4081 removes extraneous spaces from DNs4082 when there are nested groups4083 resolves the correct member_dns when there are nested groups4084 skips duplicate nested groups4085 does not include group dns or users outside of the base4086 logs an error when the LDAP base is invalid4087 logs a warning when an invalid member DN is found in an LDAP group4088 resolves the correct member_dns when the LDAP base is not normalized4089Epics::DescendantCountService4090 #opened_epics4091 behaves like descendants state count4092 includes inaccessible epics4093 #closed_epics4094 behaves like descendants state count4095 includes inaccessible epics4096 #opened_issues4097 behaves like descendants state count4098 includes inaccessible epics4099 #closed_issues4100 behaves like descendants state count4101 includes inaccessible epics4102 #issues_on_track4103 behaves like descendants state count4104 includes inaccessible epics4105 #issues_needing_attention4106 behaves like descendants state count4107 includes inaccessible epics4108 #issues_at_risk4109 behaves like descendants state count4110 includes inaccessible epics4111projects/dast_site_profiles/edit4112 renders Vue app root4113 passes project's full path4114 passes DAST profiles library URL4115 passes DAST site profile's data4116LicenseTemplateFinder4117 #execute4118 custom templates enabled4119 returns custom templates4120 popular_only requested4121 does not return any custom templates4122 a custom template is specified by name4123 returns the custom template if its name is specified4124 custom templates disabled4125 does not return any custom templates4126Gitlab::Graphql::Aggregations::Epics::LazyEpicAggregate4127 #initialize4128 requires either :weight_sum or :count as a facet4129 adds the epic_id to lazy state4130 with valid facets :weight_sum or :count4131 as a symbol4132 as a string4133 #epic_aggregate4134 if the record has already been loaded4135 does not make the query again4136 if the record has not been loaded4137 clears the pending IDs4138 creates the parent-child associations4139 if a block is provided4140 calls the block4141 for a parent-child relationship4142 assembles recursive sums for the parent4143 for a standalone epic with no issues4144 assembles recursive sums4145Gitlab::Ci::Reports::Security::Reports4146 #get_report4147 when report type is sast4148 is expected to eq "sast"4149 is expected to eq 2020-08-31 03:01:03.681619311 +00004150 initializes a new report and returns it4151 when report type is already allocated4152 does not initialize a new report4153 #findings4154 is expected to contain exactly #<Gitlab::Ci::Reports::Security::Finding:0x000056374217cd28 @compare_key="find_sec_bugs_type:PREDICTA...b4a96-70b2-4dcf-a953-9f1865f1feec", @project_fingerprint="2022699924e21aad89e1df0a59c227aa6e9234fe"> and #<Gitlab::Ci::Reports::Security::Finding:0x0000563742197c68 @compare_key="find_sec_bugs_type:PREDICTA...dd423-ad36-4ad3-bece-0ce267d65f58", @project_fingerprint="2022699924e21aad89e1df0a59c227aa6e9234fe">4155 #violates_default_policy_against?4156 when the target_reports is `nil`4157 when a report has unsafe vulnerability4158 is expected to equal true4159 when none of the reports have an unsafe vulnerability4160 is expected to equal false4161 when the target_reports is not `nil`4162 when a report has a new unsafe vulnerability4163 is expected to equal true4164 when none of the reports have a new unsafe vulnerability4165 is expected to equal false4166HistoricalDataWorker4167 #perform4168 with a trial license4169 does not track historical data4170 with a non trial license4171 tracks historical data4172 when there is not a license key4173 does not track historical data4174Gitlab::Ci::Reports::DependencyList::Report4175 #add_dependency4176 stores given dependency params in the map4177 does not duplicate same dependency4178 does not duplicate same vulnerability for dependency4179 updates dependency4180 #apply_license4181 with matching dependency4182 with empty license list4183 applies license4184 with full license list4185 does not apply the license a second time4186 without matching dependency4187 does not apply the license at all4188 #dependencies_with_licenses4189 with found dependencies4190 with existing license4191 returns only dependency with license4192 without existing license4193 returns empty array4194 without found dependencies4195 returns empty array4196VulnerabilityExports::ExportDeletionWorker4197 #perform4198 when vulnerability export does not exist4199 does not raise exception4200 does not delete any vulnerability export from database4201 when vulnerability export exists4202 when destroy can be performed successfully4203 destroys vulnerability export4204 when destroy fails4205 raises exception4206subscriptions/new4207 is expected to have visible css "#checkout[data-setup-for-company='true']"4208 is expected to have visible css "#checkout[data-full-name='First Last']"4209 is expected to have visible css "#checkout[data-plan-data='[{\"id\":\"bronze_id\",\"code\":\"bronze\",\"price_per_year\":48.0}]']"4210 is expected to have visible css "#checkout[data-plan-id='bronze_id']"4211JiraConnectSubscription4212 associations4213 is expected to belong to installation class_name => JiraConnectInstallation required:4214 is expected to belong to namespace class_name => Namespace required:4215 validations4216 is expected to validate that :installation cannot be empty/falsy4217 is expected to validate that :namespace cannot be empty/falsy4218Gitlab::Kubernetes::Deployment4219 #name4220 is expected to eq :selected4221 #labels4222 is expected to eq :selected4223 #outdated?4224 when outdated4225 is expected to be truthy4226 when up to date4227 is expected to be falsy4228 when ahead of latest4229 is expected to be falsy4230 #instances4231 when unnamed4232 returns all pods with generated names and pending4233 when number of pods is less than wanted replicas4234 returns not spawned pods as pending and unknown and running4235 when outdated4236 returns all instances as named and waiting4237 with pods of each type4238 returns all instances4239 with track label4240 when marked as stable4241 returns all instances4242 when marked as canary4243 returns all instances4244Elastic::Latest::Routing4245 #search4246 calls routing_options with empty hash4247 calls routing_options with correct routing4248 #routing_options4249 returns correct options for project_id4250 returns correct options for repository_id4251 returns correct options for project_ids4252 returns empty hash when provided an empty array4253 returns empty hash when provided :any to project_ids4254 returns empty hash when public projects flag is passed4255 uses project_ids rather than repository_id when both are supplied4256 returns empty hash when there are too many project_ids4257trials/_skip_trial.html.haml4258 without glm_source4259 displays skip trial4260 with glm_source4261 displays skip trial when using about.gitlab.com4262 displays go back to GitLab when using GitLab.com4263EpicUserMention4264 associations4265 is expected to belong to epic required:4266 is expected to belong to note required:4267 behaves like has user mentions4268 #has_mentions?4269 when no mentions4270 returns false4271 when mentioned_users_ids not null4272 returns true4273 when mentioned projects4274 returns true4275 when mentioned groups4276 returns true4277GroupMemberPresenter4278 #group_sso?4279 calls through to User#group_sso?4280 #group_managed_account?4281 when user is part of the group managed account4282 returns `true`4283 when user is not part of the group managed account4284 returns `false`4285 #can_update?4286 when user cannot update_group_member but can override_group_member4287 is expected to eq true4288 when user cannot update_group_member and cannot override_group_member4289 is expected to eq false4290Gitlab::Analytics::CycleAnalytics::StageEvents::IssueLabelRemoved4291 behaves like cycle analytics event4292 is expected to be a kind of String4293 is expected to be a kind of Symbol4294 is expected to include ApplicationRecord(abstract)4295 is expected to respond to #timestamp_projection4296 is expected to be a kind of Array4297 #apply_query_customization4298 expects an ActiveRecord::Relation object as argument and returns a modified version of it4299Gitlab::Ci::Reports::Security::Locations::SecretDetection4300 behaves like vulnerability location4301 #initialize4302 when all params are given4303 initializes an instance4304 param: :file_path4305 when param file_path is missing4306 raises an error4307 param: :start_line4308 when param start_line is missing4309 raises an error4310 #fingerprint4311 generates expected fingerprint4312 #==4313 returns true when fingerprints are equal4314 returns false when fingerprints are different4315Elastic::MultiVersionClassProxy4316 #version4317 returns class proxy in specified version4318 repository4319 returns class proxy in specified version4320 method forwarding4321 forwards methods which should touch all write targets4322 forwards read methods to only reading target4323 does not forward write methods which should touch specific version4324Elastic::IndexProjectsByRangeService4325 #execute4326 when without project4327 does not err4328 when range not specified4329 schedules for all projects4330 respects batch_size setting4331 when range specified4332 schedules for projects within range4333 respects batch_size setting4334Gitlab::Analytics::CycleAnalytics::StageEvents::IssueFirstMentionedInCommit4335 behaves like cycle analytics event4336 is expected to be a kind of String4337 is expected to be a kind of Symbol4338 is expected to include ApplicationRecord(abstract)4339 is expected to respond to #timestamp_projection4340 is expected to be a kind of Array4341 #apply_query_customization4342 expects an ActiveRecord::Relation object as argument and returns a modified version of it4343Gitlab::Audit::Levels::Group4344 #apply4345 when audit_log_group_level feature enabled4346 finds all group and project events4347 when audit_log_group_level feature disabled4348 finds all group events4349RolloutStatusEntity4350 exposes status4351 exposes has_legacy_app_label4352 when kube deployment is valid4353 exposes deployment data4354 when kube deployment is empty4355 exposes status4356 does not expose deployment data4357Ci::Minutes::Context4358 delegation4359 is expected to delegate #shared_runners_remaining_minutes_below_threshold? to the #level object4360 is expected to delegate #shared_runners_minutes_used? to the #level object4361 is expected to delegate #shared_runners_minutes_limit_enabled? to the #level object4362 is expected to delegate #namespace_name to the #namespace object as #name4363 is expected to delegate #last_ci_minutes_usage_notification_level to the #namespace object4364KerberosSpnegoHelper4365 #spnego_credentials!4366 with Kerberos service_principal_name present4367 behaves like a method that decodes a spnego token4368 decodes the given spnego token4369 when gss_result is not true4370 behaves like a method that decodes a spnego token4371 decodes the given spnego token4372 with Kerberos service_principal_name missing4373 behaves like a method that decodes a spnego token4374 decodes the given spnego token4375EE::FlipperSessionHelper4376 .flipper_session4377 when a FlipperSession has not be previously set4378 returns an instance of FlipperSession4379 sets a predictable FlipperSession id to session4380 when a FlipperSession has been previously set4381 returns a FlipperSession with the same ID4382ChatMessage::MergeMessage4383 approved4384 returns a message regarding completed approval of merge requests4385 unapproved4386 returns a message regarding revocation of completed approval of merge requests4387 approval4388 returns a message regarding added approval of merge requests4389 unapproval4390 returns a message regarding revoking approval of merge requests4391EE::API::Entities::Scim::Error4392 contains the schemas4393 contains the detail4394 contains the status4395Projects::IncidentsHelper4396 #incidents_data4397 when status page feature is available4398 is expected to match {"project-path"=>"namespace1381/project1519", "new-issue-path"=>"/namespace1381/project1519/-/issues/new", "incident-template-name"=>"incident", "incident-type"=>"incident", "issue-path"=>"/namespace1381/project1519/-/issues", "empty-list-svg-path"=>(match asset path "/assets/illustrations/incident-empty-state.svg"), "published-available"=>"true"}4399 when status page issue is not available4400 is expected to match {"project-path"=>"namespace1381/project1519", "new-issue-path"=>"/namespace1381/project1519/-/issues/new", "incident-template-name"=>"incident", "incident-type"=>"incident", "issue-path"=>"/namespace1381/project1519/-/issues", "empty-list-svg-path"=>(match asset path "/assets/illustrations/incident-empty-state.svg")}4401PersonalAccessTokens::Instance::UpdateLifetimeService4402 #execute4403 when we can obtain the lease4404 schedules the worker4405 when we can't obtain the lease4406 does not schedule the worker4407EE::VersionCheckHelper4408 #link_to_version4409 for a pre-release4410 links to an ee-commit4411 for a normal release4412 links to an ee-tag4413Gitlab::Ci::Reports::LicenseScanning::Dependency4414 value equality4415 cannot add the same dependency to a set twice4416 is expected to eql #<Gitlab::Ci::Reports::LicenseScanning::Dependency:0x0000563723769ac0 @name="bundler", @path=nil>4417Gitlab::StatusPage::Pipeline::PostProcessPipeline4418 .filters4419 is expected to eq [Gitlab::StatusPage::Filter::MentionAnonymizationFilter, Banzai::Filter::ReferenceRedactorFilter, Ban...Filter, Banzai::Filter::BroadcastMessagePlaceholdersFilter, Gitlab::StatusPage::Filter::ImageFilter]4420 is expected to be frozen4421Types::CiConfiguration::Sast::OptionsEntityType4422 is expected to eq "SastCiConfigurationOptionsEntity"4423 is expected to have graphql fields :label and :value4424FlipperSession4425 #flipper_id4426 without passing in an ID4427 returns a flipper_session:UUID4428 passing in an ID4429 returns a flipper_session:def4564430Types::RequirementsManagement::RequirementStateEnum4431 is expected to eq "RequirementState"4432 exposes all the existing requirement states4433Gitlab::EtagCaching::Router4434 matches epic notes endpoint4435 does not match invalid epic notes endpoint4436Types::SecurityReportSummarySectionType4437 is expected to eq "SecurityReportSummarySection"4438 has specific fields4439Types::CiConfiguration::Sast::Type4440 is expected to eq "SastCiConfiguration"4441 is expected to have graphql fields :global, :pipeline, and :analyzers4442Vulnerabilities::Statistics::AdjustmentWorker4443 #perform4444 calls `Vulnerabilities::Statistics::AdjustmentService` with given project_ids4445 calls `Vulnerabilities::HistoricalStatistics::AdjustmentService` with given project_ids4446Types::EpicDescendantCountType4447 is expected to eq "EpicDescendantCount"4448 has specific fields4449Types::VulnerabilityLocation::SecretDetectionType4450 is expected to have graphql fields :end_line, :file, :start_line, :vulnerable_class, and :vulnerable_method4451Types::VulnerableDependencyType4452 is expected to have graphql fields :package and :version4453Types::BoardType4454 includes the ee specific fields4455Types::VulnerabilitiesCountByDayType4456 is expected to have graphql fields :total, :date, :info, :unknown, :low, :medium, :high, and :critical4457Types::VulnerabilityLocation::SastType4458 is expected to have graphql fields :end_line, :file, :start_line, :vulnerable_class, and :vulnerable_method4459Types::Vulnerability::IssueLinkTypeEnum4460 is expected to contain exactly "RELATED" and "CREATED"4461Types::VulnerabilityGradeEnum4462 exposes all vulnerability grades4463Knapsack report was generated. Preview:4464{4465 "ee/spec/models/epic_issue_spec.rb": 133.72216963768005,4466 "ee/spec/models/burndown_spec.rb": 71.59120512008667,4467 "ee/spec/policies/project_policy_spec.rb": 62.996097564697266,4468 "ee/spec/services/todo_service_spec.rb": 47.84320044517517,4469 "ee/spec/lib/gitlab/ci/reports/security/vulnerability_reports_comparer_spec.rb": 44.7426381111145,4470 "ee/spec/models/sca/license_compliance_spec.rb": 32.78415584564209,4471 "ee/spec/services/ee/git/branch_push_service_spec.rb": 15.996712684631348,4472 "ee/spec/lib/gitlab/custom_file_templates_spec.rb": 15.680632829666138,4473 "ee/spec/lib/gitlab/elastic/indexer_spec.rb": 24.027048587799072,4474 "ee/spec/services/feature_flags/update_service_spec.rb": 17.57108211517334,4475 "ee/spec/services/audit_event_service_spec.rb": 17.733558893203735,4476 "ee/spec/serializers/dashboard_operations_project_entity_spec.rb": 22.681648015975952,4477 "ee/spec/models/productivity_analytics_spec.rb": 16.926852703094482,4478 "ee/spec/services/security/waf_anomaly_summary_service_spec.rb": 13.983495473861694,4479 "ee/spec/helpers/vulnerabilities_helper_spec.rb": 11.249080419540405,4480 "ee/spec/finders/ci/daily_build_group_report_results_by_group_finder_spec.rb": 10.39880919456482,4481 "ee/spec/services/epic_links/update_service_spec.rb": 10.657020092010498,4482 "ee/spec/services/ee/issue_links/create_service_spec.rb": 6.858826398849487,4483 "ee/spec/workers/network_policy_metrics_worker_spec.rb": 8.468181133270264,4484 "ee/spec/policies/requirements_management/requirement_policy_spec.rb": 8.45431399345398,4485 "ee/spec/services/wiki_pages/update_service_spec.rb": 8.226306676864624,4486 "ee/spec/services/ee/issues/create_from_vulnerability_data_service_spec.rb": 8.100191831588745,4487 "ee/spec/models/protected_environment_spec.rb": 6.544819593429565,4488 "ee/spec/graphql/mutations/dast_site_profiles/delete_spec.rb": 6.816465377807617,4489 "ee/spec/models/vulnerabilities/issue_link_spec.rb": 5.524042844772339,4490 "ee/spec/services/projects/operations/update_service_spec.rb": 6.251265048980713,4491 "ee/spec/models/requirements_management/test_report_spec.rb": 6.693560361862183,4492 "ee/spec/finders/feature_flags_finder_spec.rb": 5.855271100997925,4493 "ee/spec/models/operations/feature_flags/user_list_spec.rb": 6.307417154312134,4494 "ee/spec/services/ee/system_notes/merge_train_service_spec.rb": 4.87009334564209,4495 "ee/spec/models/instance_security_dashboard_spec.rb": 5.741647958755493,4496 "ee/spec/services/security/report_summary_service_spec.rb": 3.829301118850708,4497 "ee/spec/lib/gitlab/code_owners_spec.rb": 5.889582633972168,4498 "ee/spec/graphql/mutations/dast_site_profiles/create_spec.rb": 4.512087821960449,4499 "ee/spec/lib/gitlab/ci/templates/Verify/browser_performance_testing_gitlab_ci_yaml_spec.rb": 4.401099443435669,4500 "ee/spec/lib/omni_auth/strategies/group_saml_spec.rb": 3.744391679763794,4501 "ee/spec/lib/gitlab/ci/templates/Verify/load_performance_testing_gitlab_ci_yaml_spec.rb": 4.167936325073242,4502 "ee/spec/services/ee/resource_events/change_weight_service_spec.rb": 4.3168370723724365,4503 "ee/spec/services/projects/update_pages_service_spec.rb": 3.969419479370117,4504 "ee/spec/lib/gitlab/ci/parsers/security/dependency_list_spec.rb": 3.6833975315093994,4505 "ee/spec/serializers/epic_note_entity_spec.rb": 4.7137415409088135,4506 "ee/spec/lib/gitlab/elastic/group_search_results_spec.rb": 3.750826597213745,4507 "ee/spec/services/projects/transfer_service_spec.rb": 3.3535516262054443,4508 "ee/spec/services/ci/trigger_downstream_subscription_service_spec.rb": 3.4513704776763916,4509 "ee/spec/presenters/ci/build_runner_presenter_spec.rb": 4.448287010192871,4510 "ee/spec/services/security/dependency_list_service_spec.rb": 3.7920732498168945,4511 "ee/spec/services/merge_requests/sync_code_owner_approval_rules_spec.rb": 3.5446279048919678,4512 "ee/spec/models/concerns/ee/project_security_scanners_information_spec.rb": 2.326972007751465,4513 "ee/spec/serializers/licenses_list_entity_spec.rb": 3.631009578704834,4514 "ee/spec/lib/gitlab/auth/saml/user_spec.rb": 2.2658655643463135,4515 "ee/spec/models/scoped_label_set_spec.rb": 2.326507091522217,4516 "ee/spec/serializers/status_page/incident_comment_entity_spec.rb": 2.618250846862793,4517 "ee/spec/workers/elastic_namespace_indexer_worker_spec.rb": 2.455353260040283,4518 "ee/spec/presenters/audit_event_presenter_spec.rb": 3.5625803470611572,4519 "ee/spec/lib/analytics/refresh_reassign_data_spec.rb": 2.6260592937469482,4520 "ee/spec/services/jira/requests/issues/list_service_spec.rb": 2.7491259574890137,4521 "ee/spec/routing/admin_routing_spec.rb": 2.618313789367676,4522 "ee/spec/services/ee/users/update_service_spec.rb": 2.3043410778045654,4523 "ee/spec/policies/approval_merge_request_rule_policy_spec.rb": 3.353955030441284,4524 "ee/spec/lib/gitlab/code_owners/groups_loader_spec.rb": 2.469398260116577,4525 "ee/spec/models/namespace/root_storage_size_spec.rb": 2.0866146087646484,4526 "ee/spec/services/groups/mark_for_deletion_service_spec.rb": 2.0747733116149902,4527 "ee/spec/lib/gitlab/com_spec.rb": 1.6291263103485107,4528 "ee/spec/serializers/productivity_analytics_merge_request_entity_spec.rb": 1.9757719039916992,4529 "ee/spec/services/projects/setup_ci_cd_spec.rb": 1.3480474948883057,4530 "ee/spec/models/project_alias_spec.rb": 2.7445240020751953,4531 "ee/spec/graphql/ee/resolvers/namespace_projects_resolver_spec.rb": 1.7810542583465576,4532 "ee/spec/services/projects/update_service_spec.rb": 14.486395359039307,4533 "ee/spec/services/ee/audit_events/repository_push_audit_event_service_spec.rb": 1.9495775699615479,4534 "ee/spec/workers/store_security_reports_worker_spec.rb": 1.5497076511383057,4535 "ee/spec/lib/gitlab/code_owners/entry_spec.rb": 1.6503803730010986,4536 "ee/spec/services/ee/issuable/clone/attributes_rewriter_spec.rb": 1.77778959274292,4537 "ee/spec/views/layouts/application.html.haml_spec.rb": 1.2581777572631836,4538 "ee/spec/services/vulnerability_issue_links/delete_service_spec.rb": 1.594977855682373,4539 "ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb": 1.895669937133789,4540 "ee/spec/services/ee/git/wiki_push_service_spec.rb": 1.2141168117523193,4541 "ee/spec/lib/gitlab/ci/reports/security/aggregated_report_spec.rb": 1.5094401836395264,4542 "ee/spec/services/security/report_fetch_service_spec.rb": 1.4178009033203125,4543 "ee/spec/services/projects/licenses/update_policy_service_spec.rb": 1.8075079917907715,4544 "ee/spec/routing/webhook_routes_spec.rb": 1.6237833499908447,4545 "ee/spec/models/analytics/cycle_analytics/project_stage_spec.rb": 0.9557156562805176,4546 "ee/spec/services/merge_requests/build_service_spec.rb": 2.543611764907837,4547 "ee/spec/workers/analytics/code_review_metrics_worker_spec.rb": 1.3755602836608887,4548 "ee/spec/services/ci/audit_variable_change_service_spec.rb": 1.2392017841339111,4549 "ee/spec/services/slash_commands/global_slack_handler_spec.rb": 1.2379977703094482,4550 "ee/spec/graphql/mutations/instance_security_dashboard/add_project_spec.rb": 1.3367588520050049,4551 "ee/spec/models/concerns/deprecated_approvals_before_merge_spec.rb": 1.1379504203796387,4552 "ee/spec/models/namespace_statistics_spec.rb": 0.726870059967041,4553 "ee/spec/serializers/ee/evidences/release_entity_spec.rb": 1.7205798625946045,4554 "ee/spec/elastic_integration/repository_index_spec.rb": 1.132197618484497,4555 "ee/spec/serializers/dashboard_environment_entity_spec.rb": 0.8622963428497314,4556 "ee/spec/services/security/store_scans_service_spec.rb": 0.9506499767303467,4557 "ee/spec/serializers/managed_license_entity_spec.rb": 1.0086853504180908,4558 "ee/spec/serializers/vulnerability_entity_spec.rb": 0.39455747604370117,4559 "ee/spec/presenters/vulnerabilities/finding_presenter_spec.rb": 0.5296633243560791,4560 "ee/spec/models/project_services/hipchat_service_spec.rb": 0.7924685478210449,4561 "ee/spec/lib/gitlab/ci/parsers/security/coverage_fuzzing_spec.rb": 1.0788819789886475,4562 "ee/spec/finders/requirements_management/requirements_finder_spec.rb": 0.8563308715820312,4563 "ee/spec/services/ee/resource_events/synthetic_iteration_notes_builder_service_spec.rb": 0.3148536682128906,4564 "ee/spec/lib/ee/gitlab/verify/uploads_spec.rb": 1.133075475692749,4565 "ee/spec/views/projects/settings/operations/show.html.haml_spec.rb": 0.6392221450805664,4566 "ee/spec/models/ee/description_version_spec.rb": 0.7992074489593506,4567 "ee/spec/models/concerns/health_status_spec.rb": 0.5431077480316162,4568 "ee/spec/services/ee/ip_restrictions/update_service_spec.rb": 0.9575328826904297,4569 "ee/spec/graphql/mutations/requirements_management/create_requirement_spec.rb": 0.6967198848724365,4570 "ee/spec/serializers/merge_request_compliance_entity_spec.rb": 0.8329877853393555,4571 "ee/spec/lib/ee/api/entities/analytics/code_review/merge_request_spec.rb": 0.8480603694915771,4572 "ee/spec/workers/purge_dependency_proxy_cache_worker_spec.rb": 0.23177886009216309,4573 "ee/spec/helpers/compliance_management/compliance_framework/project_settings_helper_spec.rb": 0.10909867286682129,4574 "ee/spec/services/security/vulnerability_counting_service_spec.rb": 0.497896671295166,4575 "ee/spec/workers/remove_unreferenced_lfs_objects_worker_spec.rb": 0.46127891540527344,4576 "ee/spec/lib/gitlab/ci/parsers/license_compliance/license_scanning_spec.rb": 0.5090968608856201,4577 "ee/spec/services/milestones/promote_service_spec.rb": 0.6833083629608154,4578 "ee/spec/lib/ee/gitlab/url_builder_spec.rb": 0.49457335472106934,4579 "ee/spec/services/group_saml/sign_up_service_spec.rb": 0.4156372547149658,4580 "ee/spec/policies/project_snippet_policy_spec.rb": 0.9760546684265137,4581 "ee/spec/services/ci/destroy_pipeline_service_spec.rb": 0.4239528179168701,4582 "ee/spec/views/shared/credentials_inventory/_expiry_date.html.haml_spec.rb": 0.47730469703674316,4583 "ee/spec/services/elastic/index_projects_service_spec.rb": 0.41563987731933594,4584 "ee/spec/lib/atlassian/jira_connect/serializers/branch_entity_spec.rb": 0.37056446075439453,4585 "ee/spec/services/analytics/cycle_analytics/stages/list_service_spec.rb": 0.47146153450012207,4586 "ee/spec/graphql/mutations/vulnerabilities/dismiss_spec.rb": 0.47125840187072754,4587 "ee/spec/models/scim_identity_spec.rb": 0.344402551651001,4588 "ee/spec/models/project_security_setting_spec.rb": 0.3534691333770752,4589 "ee/spec/lib/gitlab/slash_commands/presenters/issue_show_spec.rb": 0.3888072967529297,4590 "ee/spec/services/ee/integrations/test/project_service_spec.rb": 0.40405845642089844,4591 "ee/spec/services/dependency_proxy/download_blob_service_spec.rb": 0.7787532806396484,4592 "ee/spec/graphql/resolvers/requirements_management/test_reports_resolver_spec.rb": 0.3836171627044678,4593 "ee/spec/services/dependency_proxy/find_or_create_blob_service_spec.rb": 0.2858273983001709,4594 "ee/spec/services/requirements_management/create_requirement_service_spec.rb": 0.36214256286621094,4595 "ee/spec/models/vulnerabilities/historical_statistic_spec.rb": 0.2492516040802002,4596 "ee/spec/services/vulnerabilities/historical_statistics/adjustment_service_spec.rb": 0.11502861976623535,4597 "ee/spec/helpers/projects/on_demand_scans_helper_spec.rb": 0.3355088233947754,4598 "ee/spec/views/subscriptions/groups/edit.html.haml_spec.rb": 0.21481800079345703,4599 "ee/spec/graphql/resolvers/vulnerabilities_history_resolver_spec.rb": 0.33873486518859863,4600 "ee/spec/services/vulnerabilities/historical_statistics/deletion_service_spec.rb": 0.1792316436767578,4601 "ee/spec/serializers/audit_event_serializer_spec.rb": 0.18844318389892578,4602 "ee/spec/workers/status_page/publish_worker_spec.rb": 0.15535998344421387,4603 "ee/spec/services/base_count_service_spec.rb": 0.12150144577026367,4604 "ee/spec/lib/elastic/latest/snippet_instance_proxy_spec.rb": 0.12651324272155762,4605 "ee/spec/lib/ee/gitlab/scim/params_parser_spec.rb": 0.07097983360290527,4606 "ee/spec/lib/analytics/productivity_analytics_request_params_spec.rb": 0.10317730903625488,4607 "ee/spec/models/ci/minutes/quota_spec.rb": 0.46652936935424805,4608 "ee/spec/models/elastic/reindexing_task_spec.rb": 0.15526556968688965,4609 "ee/spec/lib/pseudonymizer/uploader_spec.rb": 0.0431668758392334,4610 "ee/spec/serializers/group_issuable_autocomplete_entity_spec.rb": 0.12000465393066406,4611 "ee/spec/finders/licenses_finder_spec.rb": 0.12501811981201172,4612 "ee/spec/services/ee/audit_events/impersonation_audit_event_service_spec.rb": 0.1216118335723877,4613 "ee/spec/lib/gitlab/vulnerabilities/container_scanning_vulnerability_spec.rb": 0.08006072044372559,4614 "ee/spec/lib/ee/gitlab/auth/ldap/group_spec.rb": 0.07142472267150879,4615 "ee/spec/services/epics/descendant_count_service_spec.rb": 0.0960383415222168,4616 "ee/spec/views/projects/dast_site_profiles/edit.html.haml_spec.rb": 0.05628776550292969,4617 "ee/spec/finders/license_template_finder_spec.rb": 0.062160491943359375,4618 "ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate_spec.rb": 0.06177711486816406,4619 "ee/spec/lib/gitlab/ci/reports/security/reports_spec.rb": 0.05319666862487793,4620 "ee/spec/workers/historical_data_worker_spec.rb": 0.04936552047729492,4621 "ee/spec/lib/gitlab/ci/reports/dependency_list/report_spec.rb": 0.0461118221282959,4622 "ee/spec/workers/vulnerability_exports/export_deletion_worker_spec.rb": 0.051714420318603516,4623 "ee/spec/views/subscriptions/new.html.haml_spec.rb": 0.04932427406311035,4624 "ee/spec/models/jira_connect_subscription_spec.rb": 0.04279208183288574,4625 "ee/spec/lib/gitlab/kubernetes/deployment_spec.rb": 0.04303169250488281,4626 "ee/spec/lib/elastic/latest/routing_spec.rb": 0.03830599784851074,4627 "ee/spec/views/trials/_skip_trial.html.haml_spec.rb": 0.033060550689697266,4628 "ee/spec/models/epic_user_mention_spec.rb": 0.027088642120361328,4629 "ee/spec/presenters/group_member_presenter_spec.rb": 0.021260499954223633,4630 "ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/issue_label_removed_spec.rb": 0.03361845016479492,4631 "ee/spec/lib/gitlab/ci/reports/security/locations/secret_detection_spec.rb": 0.024428606033325195,4632 "ee/spec/lib/elastic/multi_version_class_proxy_spec.rb": 0.026845216751098633,4633 "ee/spec/services/elastic/index_projects_by_range_service_spec.rb": 0.02783679962158203,4634 "ee/spec/lib/gitlab/analytics/cycle_analytics/stage_events/issue_first_mentioned_in_commit_spec.rb": 0.024178504943847656,4635 "ee/spec/lib/gitlab/audit/levels/group_spec.rb": 0.0268709659576416,4636 "ee/spec/serializers/rollout_status_entity_spec.rb": 0.032652854919433594,4637 "ee/spec/models/ci/minutes/context_spec.rb": 0.02695012092590332,4638 "ee/spec/helpers/kerberos_spnego_helper_spec.rb": 0.02022719383239746,4639 "ee/spec/helpers/ee/flipper_session_helper_spec.rb": 0.0216825008392334,4640 "ee/spec/models/project_services/chat_message/merge_message_spec.rb": 0.015955209732055664,4641 "ee/spec/lib/ee/api/entities/scim/error_spec.rb": 0.012580633163452148,4642 "ee/spec/helpers/ee/projects/incidents_helper_spec.rb": 0.01594233512878418,4643 "ee/spec/services/personal_access_tokens/instance/update_lifetime_service_spec.rb": 0.012864351272583008,4644 "ee/spec/helpers/ee/version_check_helper_spec.rb": 0.013236761093139648,4645 "ee/spec/lib/gitlab/ci/reports/license_scanning/dependency_spec.rb": 0.010202169418334961,4646 "ee/spec/lib/gitlab/status_page/pipeline/post_process_pipeline_spec.rb": 0.01217794418334961,4647 "ee/spec/graphql/types/ci_configuration/sast/options_entity_spec.rb": 0.00886225700378418,4648 "ee/spec/lib/flipper_session_spec.rb": 0.009464502334594727,4649 "ee/spec/graphql/types/requirements_management/requirement_state_enum_spec.rb": 0.008004903793334961,4650 "ee/spec/lib/ee/gitlab/etag_caching/router_spec.rb": 0.009641408920288086,4651 "ee/spec/graphql/types/security_report_summary_section_type_spec.rb": 0.007563114166259766,4652 "ee/spec/graphql/types/ci_configuration/sast/type_spec.rb": 0.008360147476196289,4653 "ee/spec/workers/vulnerabilities/statistics/adjustment_worker_spec.rb": 0.008352041244506836,4654 "ee/spec/graphql/types/epic_descendant_count_type_spec.rb": 0.007688283920288086,4655 "ee/spec/graphql/types/vulnerability_location/secret_detection_type_spec.rb": 0.00414586067199707,4656 "ee/spec/graphql/types/vulnerable_dependency_type_spec.rb": 0.004273414611816406,4657 "ee/spec/graphql/ee/types/board_type_spec.rb": 0.0036687850952148438,4658 "ee/spec/graphql/types/vulnerabilities_count_by_day_type_spec.rb": 0.004144906997680664,4659 "ee/spec/graphql/types/vulnerability_location/sast_type_spec.rb": 0.003947734832763672,4660 "ee/spec/graphql/types/vulnerability/issue_link_type_enum_spec.rb": 0.003462076187133789,4661 "ee/spec/graphql/types/vulnerability_grade_enum_spec.rb": 0.00358343124389648444662}4663Knapsack global time execution for tests: 14m 15s4664Pending: (Failures listed here are expected and do not affect your suite's status)4665 1) WikiPages::UpdateService behaves like WikiPages::UpdateService#execute the page is at the top level adds a new wiki page activity event4666 # group wiki support4667 Failure/Error: expect { service.execute(page) }.to change { Event.count }.by 14668 expected `Event.count` to have changed by 1, but was changed by 04669 Shared Example Group: "adds activity event" called from ./spec/support/shared_examples/services/wiki_pages/update_service_shared_examples.rb:634670 Shared Example Group: "WikiPages::UpdateService#execute" called from ./ee/spec/services/wiki_pages/update_service_spec.rb:414671 # ./vendor/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support.rb:97:in `block in <module:Support>'4672 # ./vendor/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support.rb:106:in `notify_failure'4673 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/fail_with.rb:35:in `fail_with'4674 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:40:in `handle_failure'4675 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:50:in `block in handle_matcher'4676 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:27:in `with_matcher'4677 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:48:in `handle_matcher'4678 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/expectation_target.rb:65:in `to'4679 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/expectation_target.rb:101:in `to'4680 # ./spec/support/shared_examples/services/wiki_pages/update_service_shared_examples.rb:50:in `block (3 levels) in <top (required)>'4681 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:257:in `instance_exec'4682 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:257:in `block in run'4683 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'4684 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'4685 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `block in run'4686 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:612:in `block in run_around_example_hooks_for'4687 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4688 # ./vendor/ruby/2.6.0/gems/rspec-rails-4.0.0/lib/rspec/rails/adapters.rb:75:in `block (2 levels) in <module:MinitestLifecycleAdapter>'4689 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4690 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4691 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4692 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4693 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4694 # ./spec/spec_helper.rb:320:in `block (3 levels) in <top (required)>'4695 # ./vendor/ruby/2.6.0/gems/sidekiq-5.2.9/lib/sidekiq/testing.rb:55:in `server_middleware'4696 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4697 # ./spec/spec_helper.rb:311:in `block (2 levels) in <top (required)>'4698 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4699 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4700 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4701 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4702 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4703 # ./spec/spec_helper.rb:307:in `block (3 levels) in <top (required)>'4704 # ./vendor/ruby/2.6.0/gems/gitlab-labkit-0.12.1/lib/labkit/context.rb:32:in `with_context'4705 # ./spec/spec_helper.rb:307:in `block (2 levels) in <top (required)>'4706 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4707 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4708 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4709 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4710 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4711 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:123:in `block in run'4712 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `loop'4713 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `run'4714 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'4715 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:37:in `block (2 levels) in setup'4716 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4717 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4718 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4719 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4720 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4721 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:615:in `run_around_example_hooks_for'4722 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `run'4723 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `with_around_example_hooks'4724 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'4725 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:254:in `run'4726 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:633:in `block in run_examples'4727 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `map'4728 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `run_examples'4729 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:595:in `run'4730 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run'4731 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map'4732 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run'4733 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run'4734 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map'4735 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run'4736 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs'4737 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `map'4738 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs'4739 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/configuration.rb:2031:in `with_suite_hooks'4740 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:116:in `block in run_specs'4741 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/reporter.rb:74:in `report'4742 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:115:in `run_specs'4743 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:89:in `run'4744 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:71:in `run'4745 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:45:in `invoke'4746 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/exe/rspec:4:in `<top (required)>'4747 # ./vendor/ruby/2.6.0/bin/rspec:23:in `load'4748 # ./vendor/ruby/2.6.0/bin/rspec:23:in `<top (required)>'4749 # /usr/local/lib/ruby/2.6.0/bundler/cli/exec.rb:74:in `load'4750 # /usr/local/lib/ruby/2.6.0/bundler/cli/exec.rb:74:in `kernel_load'4751 # /usr/local/lib/ruby/2.6.0/bundler/cli/exec.rb:28:in `run'4752 # /usr/local/lib/ruby/2.6.0/bundler/cli.rb:463:in `exec'4753 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'4754 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'4755 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'4756 # /usr/local/lib/ruby/2.6.0/bundler/cli.rb:27:in `dispatch'4757 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/base.rb:466:in `start'4758 # /usr/local/lib/ruby/2.6.0/bundler/cli.rb:18:in `start'4759 # /usr/local/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:30:in `block in <top (required)>'4760 # /usr/local/lib/ruby/2.6.0/bundler/friendly_errors.rb:124:in `with_friendly_errors'4761 # /usr/local/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:22:in `<top (required)>'4762 # /usr/local/bin/bundle:23:in `load'4763 # /usr/local/bin/bundle:23:in `<main>'4764 2) WikiPages::UpdateService behaves like WikiPages::UpdateService#execute the page is in a subsection adds a new wiki page activity event4765 # group wiki support4766 Failure/Error: expect { service.execute(page) }.to change { Event.count }.by 14767 expected `Event.count` to have changed by 1, but was changed by 04768 Shared Example Group: "adds activity event" called from ./spec/support/shared_examples/services/wiki_pages/update_service_shared_examples.rb:694769 Shared Example Group: "WikiPages::UpdateService#execute" called from ./ee/spec/services/wiki_pages/update_service_spec.rb:414770 # ./vendor/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support.rb:97:in `block in <module:Support>'4771 # ./vendor/ruby/2.6.0/gems/rspec-support-3.9.2/lib/rspec/support.rb:106:in `notify_failure'4772 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/fail_with.rb:35:in `fail_with'4773 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:40:in `handle_failure'4774 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:50:in `block in handle_matcher'4775 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:27:in `with_matcher'4776 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/handler.rb:48:in `handle_matcher'4777 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/expectation_target.rb:65:in `to'4778 # ./vendor/ruby/2.6.0/gems/rspec-expectations-3.9.1/lib/rspec/expectations/expectation_target.rb:101:in `to'4779 # ./spec/support/shared_examples/services/wiki_pages/update_service_shared_examples.rb:50:in `block (3 levels) in <top (required)>'4780 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:257:in `instance_exec'4781 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:257:in `block in run'4782 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'4783 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'4784 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `block in run'4785 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:612:in `block in run_around_example_hooks_for'4786 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4787 # ./vendor/ruby/2.6.0/gems/rspec-rails-4.0.0/lib/rspec/rails/adapters.rb:75:in `block (2 levels) in <module:MinitestLifecycleAdapter>'4788 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4789 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4790 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4791 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4792 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4793 # ./spec/spec_helper.rb:320:in `block (3 levels) in <top (required)>'4794 # ./vendor/ruby/2.6.0/gems/sidekiq-5.2.9/lib/sidekiq/testing.rb:55:in `server_middleware'4795 # ./spec/support/sidekiq_middleware.rb:9:in `with_sidekiq_server_middleware'4796 # ./spec/spec_helper.rb:311:in `block (2 levels) in <top (required)>'4797 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4798 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4799 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4800 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4801 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4802 # ./spec/spec_helper.rb:307:in `block (3 levels) in <top (required)>'4803 # ./vendor/ruby/2.6.0/gems/gitlab-labkit-0.12.1/lib/labkit/context.rb:32:in `with_context'4804 # ./spec/spec_helper.rb:307:in `block (2 levels) in <top (required)>'4805 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4806 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4807 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4808 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4809 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4810 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:123:in `block in run'4811 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `loop'4812 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `run'4813 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'4814 # ./vendor/ruby/2.6.0/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:37:in `block (2 levels) in setup'4815 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4816 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:450:in `instance_exec'4817 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:381:in `execute_with'4818 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:614:in `block (2 levels) in run_around_example_hooks_for'4819 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:345:in `call'4820 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:615:in `run_around_example_hooks_for'4821 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/hooks.rb:472:in `run'4822 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:460:in `with_around_example_hooks'4823 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'4824 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example.rb:254:in `run'4825 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:633:in `block in run_examples'4826 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `map'4827 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:629:in `run_examples'4828 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:595:in `run'4829 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run'4830 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map'4831 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run'4832 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `block in run'4833 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `map'4834 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/example_group.rb:596:in `run'4835 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs'4836 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `map'4837 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs'4838 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/configuration.rb:2031:in `with_suite_hooks'4839 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:116:in `block in run_specs'4840 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/reporter.rb:74:in `report'4841 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:115:in `run_specs'4842 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:89:in `run'4843 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:71:in `run'4844 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/lib/rspec/core/runner.rb:45:in `invoke'4845 # ./vendor/ruby/2.6.0/gems/rspec-core-3.9.1/exe/rspec:4:in `<top (required)>'4846 # ./vendor/ruby/2.6.0/bin/rspec:23:in `load'4847 # ./vendor/ruby/2.6.0/bin/rspec:23:in `<top (required)>'4848 # /usr/local/lib/ruby/2.6.0/bundler/cli/exec.rb:74:in `load'4849 # /usr/local/lib/ruby/2.6.0/bundler/cli/exec.rb:74:in `kernel_load'4850 # /usr/local/lib/ruby/2.6.0/bundler/cli/exec.rb:28:in `run'4851 # /usr/local/lib/ruby/2.6.0/bundler/cli.rb:463:in `exec'4852 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'4853 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'4854 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'4855 # /usr/local/lib/ruby/2.6.0/bundler/cli.rb:27:in `dispatch'4856 # /usr/local/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/base.rb:466:in `start'4857 # /usr/local/lib/ruby/2.6.0/bundler/cli.rb:18:in `start'4858 # /usr/local/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:30:in `block in <top (required)>'4859 # /usr/local/lib/ruby/2.6.0/bundler/friendly_errors.rb:124:in `with_friendly_errors'4860 # /usr/local/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:22:in `<top (required)>'4861 # /usr/local/bin/bundle:23:in `load'4862 # /usr/local/bin/bundle:23:in `<main>'4863 3) Operations::FeatureFlags::UserList behaves like AtomicInternalId .has_internal_id Validation when presence validation is not required does not validate presence4864 # No reason given4865 # ./spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb:334866Finished in 22 minutes 35 seconds (files took 1 minute 23.97 seconds to load)48672051 examples, 0 failures, 3 pending4868Mon Aug 31 03:02:12 UTC 20204870Not uploading cache rails-v2-3 due to policy4872Uploading artifacts...4873coverage/: found 5 matching files and directories 4874knapsack/: found 3 matching files and directories 4875rspec_flaky/: found 4 matching files and directories 4876rspec_profiling/: found 2 matching files and directories 4877WARNING: tmp/capybara/: no matching files 4878tmp/memory_test/: found 2 matching files and directories 4879log/*.log: found 14 matching files and directories 4880Uploading artifacts as "archive" to coordinator... ok id=710807248 responseStatus=201 Created token=otygjcsa4881Uploading artifacts...4882junit_rspec.xml: found 1 matching files and directories 4883Uploading artifacts as "junit" to coordinator... ok id=710807248 responseStatus=201 Created token=otygjcsa4884Job succeeded