mapping: # EE code should map to respective spec - source: ee/app/(.+)\.rb test: ee/spec/%s_spec.rb # FOSS code should map to respective spec - source: app/(.+)\.rb test: spec/%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 lib should map to respective spec - source: ee/lib/(.+)\.rb test: ee/spec/lib/%s_spec.rb # See https://gitlab.com/gitlab-org/gitlab/-/issues/368628 - source: 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: lib/gitlab/ci/config/(.+)\.rb test: spec/lib/gitlab/ci/yaml_processor_spec.rb - 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 lib & tooling should map to respective spec - source: (tooling/)?lib/(.+)\.rb test: spec/%slib/%s_spec.rb # Initializers should map to respective spec - source: config/initializers/(.+)\.rb test: spec/initializers/%s_spec.rb # DB structure should map to schema spec - 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 - source: (ee/)?app/views/(.+)\.haml test: '%sspec/views/%s.haml_spec.rb' # EE/FOSS spec code should map to itself - source: (ee/)?spec/(.+)_spec\.rb test: '%sspec/%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 # Mailer previews - source: (ee/)?app/mailers/previews/.+\.rb test: spec/mailers/previews_spec.rb - source: ee/app/mailers/ee/preview/.+\.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