Skip to content

Allow `source` and `test` definitions to be lists

Now, we map many sources to one test, one source to many tests, as well as many sources to many tests.

This enables the following redundant definitions:

mapping:
  - 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'

  - 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'

to be consolidated as

mapping:
  - source: 'db/(?:post_)?migrate/(?:[0-9]+)_(.+)\.rb'
    test:
      - 'spec/migrations/%s_spec.rb'
      - 'spec/migrations/%s_%s_spec.rb'

  - source:
      - 'ee/config/metrics/.*.yml'
      - '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/gitlab/-/blob/8597c87f5422ad4aefb57ccaae361f5416746909/tests.yml#L92-95 and https://gitlab.com/gitlab-org/gitlab/-/blob/8597c87f5422ad4aefb57ccaae361f5416746909/tests.yml#L114-117.

Edited by Peter Leitzen

Merge request reports

Loading