更新
更旧
# EE/FOSS app should map to respective spec
- source: '(ee/)?app/(.+)\.rb'
test: '%sspec/%s_spec.rb'
# EE extension should also map to its FOSS class spec
- source: 'ee/app/(.*/)ee/(.+)\.rb'
test: 'spec/%s%s_spec.rb'
# Some EE extensions also map to its EE class spec, but this is not recommended:
# https://docs.gitlab.com/ee/development/ee_features.html#testing-ee-features-based-on-ce-features
- source: 'ee/app/(.*/)ee/(.+)\.rb'
test: 'ee/spec/%s%s_spec.rb'
# EE/FOSS lib should map to respective spec
- source: '(ee/)?lib/(.+)\.rb'
test: '%sspec/lib/%s_spec.rb'
# Map rake tasks to its respective specs
- source: '(ee/)?lib/tasks/(.+)\.rake'
test: '%sspec/tasks/%s_rake_spec.rb'
# See https://gitlab.com/gitlab-org/gitlab/-/issues/368628
- source: '(ee/)?lib/gitlab/usage_data_counters/(.+)\.rb'
test: 'spec/lib/gitlab/usage_data_spec.rb'
# See https://gitlab.com/gitlab-org/quality/engineering-productivity/master-broken-incidents/-/issues/54#note_1160811638
- source: '(ee/)?lib/gitlab/ci/config/(.+)\.rb'
test: 'spec/lib/gitlab/ci/yaml_processor_spec.rb'
- source: 'ee/lib/gitlab/ci/config/(.+)\.rb'
test: 'ee/spec/lib/gitlab/ci/yaml_processor_spec.rb'
# FOSS tooling should map to respective spec
- source: 'tooling/(.+)\.rb'
test: 'spec/tooling/%s_spec.rb'
- source: 'rubocop/(.+)\.rb'
test: 'spec/rubocop/%s_spec.rb'
- source: 'config/initializers/(.+)\.rb'
test: 'spec/initializers/%s_spec.rb'
- source: 'db/structure.sql'
test: 'spec/db/schema_spec.rb'
# Migration should map to either timestamped or non-timestamped spec
- source: 'db/(?:post_)?migrate/(?:[0-9]+)_(.+)\.rb'
test: 'spec/migrations/%s_spec.rb'
- source: 'db/(?:post_)?migrate/([0-9]+)_(.+)\.rb'
test: 'spec/migrations/%s_%s_spec.rb'
# EE/FOSS views should map to respective spec
test: '%sspec/views/%s.haml_spec.rb'
# EE/FOSS spec code should map to itself
- source: '(.+)_spec\.rb'
test: '%s_spec.rb'
# EE extension spec should map to its FOSS class spec
- source: 'ee/spec/(.*/)ee/(.+)\.rb'
test: 'spec/%s%s.rb'
# EE/FOSS factory should map to factories spec
- source: '(ee/)?spec/factories/.+\.rb'
test: 'ee/spec/models/factories_spec.rb'
# Whats New should map to its respective spec
- source: 'data/whats_new/\w*.yml'
test: 'spec/lib/release_highlights/validator_spec.rb'
# The documentation index page is used in this haml_lint spec
- source: 'doc/index.md'
test: 'spec/haml_lint/linter/documentation_links_spec.rb'
- source: '(ee/)?app/workers/.+\.rb'
test: 'spec/workers/every_sidekiq_worker_spec.rb'
- source: 'lib/gitlab/usage_data_counters/known_events/.+\.yml'
test: 'spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb'
- source: 'lib/gitlab/usage_data_counters/known_events/.+\.yml'
test: 'spec/lib/gitlab/usage_data_spec.rb'
- source: '(ee/)?app/mailers/(ee/)?previews/.+\.rb'
test: 'spec/mailers/previews_spec.rb'
## GLFM spec and config files for CE and EE should map to respective markdown snapshot specs
- source: 'glfm_specification/.+'
test: 'spec/requests/api/markdown_snapshot_spec.rb'
- source: 'glfm_specification/.+'
test: 'ee/spec/requests/api/markdown_snapshot_spec.rb'
# Any change to metrics definition should trigger the specs in the ee/spec/config/metrics/ folder.
#
# Note: We only have those tests for ee, even though we have non-ee metrics.
#
# See https://gitlab.com/gitlab-org/quality/engineering-productivity/master-broken-incidents/-/issues/287#note_1192008962
- source: 'ee/config/metrics/.*.yml'
test: 'ee/spec/config/metrics/every_metric_definition_spec.rb'
- source: 'ee/lib/ee/gitlab/usage_data_counters/known_events/.*.yml'
test: 'ee/spec/config/metrics/every_metric_definition_spec.rb'
# See https://gitlab.com/gitlab-org/quality/engineering-productivity/team/-/issues/146
- source: 'config/feature_categories.yml'
test: 'spec/db/docs_spec.rb'
- source: 'config/feature_categories.yml'
test: 'ee/spec/lib/ee/gitlab/database/docs/docs_spec.rb'
# See https://gitlab.com/gitlab-org/quality/engineering-productivity/master-broken-incidents/-/issues/1360
- source: 'vendor/project_templates/.*'
test: 'spec/lib/gitlab/project_template_spec.rb'
# See https://gitlab.com/gitlab-org/quality/engineering-productivity/master-broken-incidents/-/issues/1683#note_1385966977
- source: 'app/finders/members_finder.rb'
test: 'spec/graphql/types/project_member_relation_enum_spec.rb'
- source: 'app/finders/group_members_finder.rb'
test: 'spec/graphql/types/group_member_relation_enum_spec.rb'