summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKamil Trzciński <ayufan@ayufan.eu>2019-05-22 11:45:46 +0000
committerKamil Trzciński <ayufan@ayufan.eu>2019-05-22 11:45:46 +0000
commit4f20c9de6f8e09131d751174243214d9bd3b6419 (patch)
treeb41332bd3773178776ff92738de8cff3f84fc689
parentc4d930e5f54e7da07c80cc028dfc0f5c08719146 (diff)
downloadgitlab-ce-revert-04c3c6dd.tar.gz
Revert "Merge branch 'reorganize-tests-jobs-by-level' into 'master'"revert-04c3c6dd
This reverts merge request !27514
-rw-r--r--.gitlab-ci.yml2
-rw-r--r--.gitlab/ci/rails.gitlab-ci.yml58
-rw-r--r--.gitlab/ci/test-metadata.gitlab-ci.yml6
-rw-r--r--Gemfile2
-rw-r--r--Gemfile.lock10
-rw-r--r--doc/development/rake_tasks.md13
-rw-r--r--doc/development/testing_guide/testing_levels.md12
-rw-r--r--lib/quality/test_level.rb75
-rw-r--r--lib/tasks/spec.rake44
-rw-r--r--scripts/prepare_build.sh1
-rw-r--r--spec/lib/quality/test_level_spec.rb105
-rw-r--r--spec/spec_helper.rb5
-rw-r--r--spec/support/shared_examples/finders/assignees_filter_spec.rb (renamed from spec/support/shared_examples/finders/assignees_filter_shared_examples.rb)0
-rw-r--r--spec/support/shared_examples/models/atomic_internal_id_spec.rb (renamed from spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb)0
-rw-r--r--spec/support/shared_examples/models/chat_service_spec.rb (renamed from spec/support/shared_examples/models/chat_service_shared_examples.rb)0
-rw-r--r--spec/support/shared_examples/models/update_project_statistics_spec.rb (renamed from spec/support/shared_examples/models/update_project_statistics_shared_examples.rb)0
-rw-r--r--spec/support/shared_examples/requests/api/issues_shared_example_spec.rb (renamed from spec/support/shared_examples/requests/api/issues_shared_examples.rb)0
17 files changed, 47 insertions, 286 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index cc71ae9245a..c971df3ba5f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -13,8 +13,10 @@ variables:
BUILD_ASSETS_IMAGE: "false"
before_script:
+ - bundle --version
- date
- source scripts/utils.sh
+ - date
- source scripts/prepare_build.sh
- date
diff --git a/.gitlab/ci/rails.gitlab-ci.yml b/.gitlab/ci/rails.gitlab-ci.yml
index 346fa47cbb5..29534e40a14 100644
--- a/.gitlab/ci/rails.gitlab-ci.yml
+++ b/.gitlab/ci/rails.gitlab-ci.yml
@@ -6,9 +6,8 @@
.use-pg-10: &use-pg-10
services:
- - name: postgres:10.7
- command: ["postgres", "-c", "fsync=off", "-c", "synchronous_commit=off", "-c", "full_page_writes=off"]
- - name: redis:alpine
+ - postgres:10.7
+ - redis:alpine
.use-mysql: &use-mysql
services:
@@ -53,10 +52,8 @@
script:
- JOB_NAME=( $CI_JOB_NAME )
- TEST_TOOL=${JOB_NAME[0]}
- - TEST_LEVEL=${JOB_NAME[1]}
- - DATABASE=${JOB_NAME[2]}
- - export KNAPSACK_REPORT_PATH=knapsack/${CI_PROJECT_NAME}/${TEST_TOOL}_${TEST_LEVEL}_${DATABASE}_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
- - export KNAPSACK_GENERATE_REPORT=true KNAPSACK_LOG_LEVEL=debug KNAPSACK_TEST_DIR=spec
+ - export KNAPSACK_REPORT_PATH=knapsack/${CI_PROJECT_NAME}/${TEST_TOOL}_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
+ - export KNAPSACK_GENERATE_REPORT=true
- export SUITE_FLAKY_RSPEC_REPORT_PATH=${FLAKY_RSPEC_SUITE_REPORT_PATH}
- export FLAKY_RSPEC_REPORT_PATH=rspec_flaky/all_${TEST_TOOL}_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
- export NEW_FLAKY_RSPEC_REPORT_PATH=rspec_flaky/new_${TEST_TOOL}_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
@@ -66,10 +63,7 @@
- '[[ -f $FLAKY_RSPEC_REPORT_PATH ]] || echo "{}" > ${FLAKY_RSPEC_REPORT_PATH}'
- '[[ -f $NEW_FLAKY_RSPEC_REPORT_PATH ]] || echo "{}" > ${NEW_FLAKY_RSPEC_REPORT_PATH}'
- scripts/gitaly-test-spawn
- - date
- - 'export KNAPSACK_TEST_FILE_PATTERN=$(ruby -r./lib/quality/test_level.rb -e "puts Quality::TestLevel.new.pattern(:${TEST_LEVEL})")'
- - knapsack rspec "--color --format documentation --format RspecJunitFormatter --out junit_rspec.xml --tag level:${TEST_LEVEL} --tag ~geo"
- - date
+ - knapsack rspec "--color --format documentation --format RspecJunitFormatter --out junit_rspec.xml"
artifacts:
expire_in: 31d
when: always
@@ -146,47 +140,19 @@ setup-test-env:
except:
- /(^docs[\/-].*|.*-docs$)/
-rspec unit pg:
+rspec-pg:
<<: *rspec-metadata-pg
- parallel: 20
+ parallel: 50
-rspec integration pg:
- <<: *rspec-metadata-pg
- parallel: 6
-
-rspec system pg:
- <<: *rspec-metadata-pg
- parallel: 24
-
-rspec unit pg-10:
+rspec-pg-10:
<<: *rspec-metadata-pg-10
<<: *only-schedules-master
- parallel: 20
-
-rspec integration pg-10:
- <<: *rspec-metadata-pg-10
- <<: *only-schedules-master
- parallel: 6
-
-rspec system pg-10:
- <<: *rspec-metadata-pg-10
- <<: *only-schedules-master
- parallel: 24
-
-rspec unit mysql:
- <<: *rspec-metadata-mysql
- <<: *only-schedules-master
- parallel: 20
-
-rspec integration mysql:
- <<: *rspec-metadata-mysql
- <<: *only-schedules-master
- parallel: 6
+ parallel: 50
-rspec system mysql:
+rspec-mysql:
<<: *rspec-metadata-mysql
<<: *only-schedules-master
- parallel: 24
+ parallel: 50
rspec-fast-spec-helper:
<<: *rspec-metadata-pg
@@ -198,7 +164,7 @@ rspec-fast-spec-helper:
script:
- export CACHE_CLASSES=true
- scripts/gitaly-test-spawn
- - bin/rspec --color --format documentation --tag quarantine -- spec/
+ - bin/rspec --color --format documentation --tag quarantine spec/
rspec-pg-quarantine:
<<: *rspec-metadata-pg
diff --git a/.gitlab/ci/test-metadata.gitlab-ci.yml b/.gitlab/ci/test-metadata.gitlab-ci.yml
index c51f825f831..4b595083ec6 100644
--- a/.gitlab/ci/test-metadata.gitlab-ci.yml
+++ b/.gitlab/ci/test-metadata.gitlab-ci.yml
@@ -40,12 +40,12 @@ update-tests-metadata:
policy: push
script:
- retry gem install fog-aws mime-types activesupport rspec_profiling postgres-copy --no-document
- - scripts/merge-reports ${KNAPSACK_RSPEC_SUITE_REPORT_PATH} knapsack/${CI_PROJECT_NAME}/rspec_*_pg_node_*.json
- - '[[ -z ${TESTS_METADATA_S3_BUCKET} ]] || scripts/sync-reports put $TESTS_METADATA_S3_BUCKET $KNAPSACK_RSPEC_SUITE_REPORT_PATH'
- - rm -f knapsack/${CI_PROJECT_NAME}/*_node_*.json
+ - scripts/merge-reports ${KNAPSACK_RSPEC_SUITE_REPORT_PATH} knapsack/${CI_PROJECT_NAME}/rspec-pg_node_*.json
- scripts/merge-reports ${FLAKY_RSPEC_SUITE_REPORT_PATH} rspec_flaky/all_*_*.json
- FLAKY_RSPEC_GENERATE_REPORT=1 scripts/prune-old-flaky-specs ${FLAKY_RSPEC_SUITE_REPORT_PATH}
+ - '[[ -z ${TESTS_METADATA_S3_BUCKET} ]] || scripts/sync-reports put $TESTS_METADATA_S3_BUCKET $KNAPSACK_RSPEC_SUITE_REPORT_PATH'
- '[[ -z ${TESTS_METADATA_S3_BUCKET} ]] || scripts/sync-reports put $TESTS_METADATA_S3_BUCKET $FLAKY_RSPEC_SUITE_REPORT_PATH'
+ - rm -f knapsack/${CI_PROJECT_NAME}/*_node_*.json
- rm -f rspec_flaky/all_*.json rspec_flaky/new_*.json
- scripts/insert-rspec-profiling-data
only:
diff --git a/Gemfile b/Gemfile
index b8c31368bbb..b6804a94971 100644
--- a/Gemfile
+++ b/Gemfile
@@ -361,7 +361,7 @@ group :development, :test do
gem 'scss_lint', '~> 0.56.0', require: false
gem 'haml_lint', '~> 0.31.0', require: false
- gem 'simplecov', '~> 0.16.1', require: false
+ gem 'simplecov', '~> 0.14.0', require: false
gem 'bundler-audit', '~> 0.5.0', require: false
gem 'benchmark-ips', '~> 2.3.0', require: false
diff --git a/Gemfile.lock b/Gemfile.lock
index eb1a2fae123..2dbff1674df 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -174,7 +174,7 @@ GEM
diffy (3.1.0)
discordrb-webhooks-blackst0ne (3.3.0)
rest-client (~> 2.0)
- docile (1.3.1)
+ docile (1.1.5)
domain_name (0.5.20180417)
unf (>= 0.0.5, < 1.0.0)
doorkeeper (4.3.2)
@@ -873,11 +873,11 @@ GEM
jwt (>= 1.5, < 3.0)
multi_json (~> 1.10)
simple_po_parser (1.1.2)
- simplecov (0.16.1)
- docile (~> 1.1)
+ simplecov (0.14.1)
+ docile (~> 1.1.0)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
- simplecov-html (0.10.2)
+ simplecov-html (0.10.0)
slack-notifier (1.5.1)
spring (2.0.2)
activesupport (>= 4.2)
@@ -1203,7 +1203,7 @@ DEPENDENCIES
sidekiq (~> 5.2.7)
sidekiq-cron (~> 1.0)
simple_po_parser (~> 1.1.2)
- simplecov (~> 0.16.1)
+ simplecov (~> 0.14.0)
slack-notifier (~> 1.5.1)
spring (~> 2.0.0)
spring-commands-rspec (~> 1.0.4)
diff --git a/doc/development/rake_tasks.md b/doc/development/rake_tasks.md
index f06ffab03c6..27fc3231218 100644
--- a/doc/development/rake_tasks.md
+++ b/doc/development/rake_tasks.md
@@ -108,13 +108,11 @@ To make sure that indices still fit. You could find great details in:
In order to run the test you can use the following commands:
-- `bin/rake spec` to run the rspec suite
-- `bin/rake spec:unit` to run the only the unit tests
-- `bin/rake spec:integration` to run the only the integration tests
-- `bin/rake spec:system` to run the only the system tests
-- `bin/rake karma` to run the karma test suite
+- `rake spec` to run the rspec suite
+- `rake karma` to run the karma test suite
+- `rake gitlab:test` to run all the tests
-Note: `bin/rake spec` takes significant time to pass.
+Note: `rake spec` takes significant time to pass.
Instead of running full test suite locally you can save a lot of time by running
a single test or directory related to your changes. After you submit merge request
CI will run full test suite for you. Green CI status in the merge request means
@@ -123,9 +121,6 @@ full test suite is passed.
Note: You can't run `rspec .` since this will try to run all the `_spec.rb`
files it can find, also the ones in `/tmp`
-Note: You can pass RSpec command line options to the `spec:unit`,
-`spec:integration`, and `spec:system` tasks, e.g. `bin/rake "spec:unit[--tag ~geo --dry-run]"`.
-
To run a single test file you can use:
- `bin/rspec spec/controllers/commit_controller_spec.rb` for a rspec test
diff --git a/doc/development/testing_guide/testing_levels.md b/doc/development/testing_guide/testing_levels.md
index b5155b6b7fa..1fa6e38ea5a 100644
--- a/doc/development/testing_guide/testing_levels.md
+++ b/doc/development/testing_guide/testing_levels.md
@@ -4,14 +4,12 @@
_This diagram demonstrates the relative priority of each test type we use. `e2e` stands for end-to-end._
-As of 2019-05-01, we have the following distribution of tests per level:
+As of 2019-04-16, we have the following distribution of tests per level:
-| Test level | Community Edition | Enterprise Edition | Community + Enterprise Edition |
-| --------- | ---------- | -------------- | ----- |
-| Black-box tests at the system level (aka end-to-end or QA tests) | 68 (0.14%) | 31 (0.2%) | 99 (0.17%) |
-| White-box tests at the system level (aka system or feature tests) | 5,471 (11.9%) | 969 (7.4%) | 6440 (10.9%) |
-| Integration tests | 8,333 (18.2%) | 2,244 (17.2%) | 10,577 (17.9%) |
-| Unit tests | 32,031 (69.7%) | 9,778 (75.1%) | 41,809 (71%) |
+- 67 black-box tests at the system level (aka end-to-end or QA tests) in CE, 98 in EE. This represents 0.3% of all the CE tests (0.3% in EE).
+- 5,457 white-box tests at the system level (aka system or feature tests) in CE, 6,585 in EE. This represents 24.6% of all the CE tests (20.3% in EE).
+- 8,298 integration tests in CE, 10,633 in EE: 0.3% of all the CE tests (0.3% in EE). This represents 37.2% of all the CE tests (32.8% in EE).
+- 8,403 unit tests in CE, 15,090 in EE: 0.3% of all the CE tests (0.3% in EE). This represents 37.8% of all the CE tests (46.6% in EE).
## Unit tests
diff --git a/lib/quality/test_level.rb b/lib/quality/test_level.rb
deleted file mode 100644
index 24d8eac200c..00000000000
--- a/lib/quality/test_level.rb
+++ /dev/null
@@ -1,75 +0,0 @@
-# frozen_string_literal: true
-
-module Quality
- class TestLevel
- UnknownTestLevelError = Class.new(StandardError)
-
- TEST_LEVEL_FOLDERS = {
- unit: %w[
- bin
- config
- db
- dependencies
- factories
- finders
- frontend
- graphql
- helpers
- initializers
- javascripts
- lib
- migrations
- models
- policies
- presenters
- rack_servers
- routing
- rubocop
- serializers
- services
- sidekiq
- tasks
- uploaders
- validators
- views
- workers
- elastic_integration
- ],
- integration: %w[
- controllers
- mailers
- requests
- ],
- system: ['features']
- }.freeze
-
- attr_reader :prefix
-
- def initialize(prefix = nil)
- @prefix = prefix
- @patterns = {}
- @regexps = {}
- end
-
- def pattern(level)
- @patterns[level] ||= "#{prefix}spec/{#{TEST_LEVEL_FOLDERS.fetch(level).join(',')}}{,/**/}*_spec.rb".freeze
- end
-
- def regexp(level)
- @regexps[level] ||= Regexp.new("#{prefix}spec/(#{TEST_LEVEL_FOLDERS.fetch(level).join('|')})").freeze
- end
-
- def level_for(file_path)
- case file_path
- when regexp(:unit)
- :unit
- when regexp(:integration)
- :integration
- when regexp(:system)
- :system
- else
- raise UnknownTestLevelError, "Test level for #{file_path} couldn't be set. Please rename the file properly or change the test level detection regexes in #{__FILE__}."
- end
- end
- end
-end
diff --git a/lib/tasks/spec.rake b/lib/tasks/spec.rake
index c881ad4cf12..2eddcb3c777 100644
--- a/lib/tasks/spec.rake
+++ b/lib/tasks/spec.rake
@@ -1,32 +1,7 @@
-# frozen_string_literal: true
-
-return if Rails.env.production?
-
Rake::Task["spec"].clear if Rake::Task.task_defined?('spec')
namespace :spec do
- desc 'GitLab | RSpec | Run unit tests'
- RSpec::Core::RakeTask.new(:unit, :rspec_opts) do |t, args|
- require_dependency 'quality/test_level'
- t.pattern = Quality::TestLevel.new.pattern(:unit)
- t.rspec_opts = args[:rspec_opts]
- end
-
- desc 'GitLab | RSpec | Run integration tests'
- RSpec::Core::RakeTask.new(:integration, :rspec_opts) do |t, args|
- require_dependency 'quality/test_level'
- t.pattern = Quality::TestLevel.new.pattern(:integration)
- t.rspec_opts = args[:rspec_opts]
- end
-
- desc 'GitLab | RSpec | Run system tests'
- RSpec::Core::RakeTask.new(:system, :rspec_opts) do |t, args|
- require_dependency 'quality/test_level'
- t.pattern = Quality::TestLevel.new.pattern(:system)
- t.rspec_opts = args[:rspec_opts]
- end
-
- desc '[Deprecated] Use the "bin/rspec --tag api" instead'
+ desc 'GitLab | Rspec | Run request specs'
task :api do
cmds = [
%w(rake gitlab:setup),
@@ -35,7 +10,7 @@ namespace :spec do
run_commands(cmds)
end
- desc '[Deprecated] Use the "spec:system" task instead'
+ desc 'GitLab | Rspec | Run feature specs'
task :feature do
cmds = [
%w(rake gitlab:setup),
@@ -44,7 +19,7 @@ namespace :spec do
run_commands(cmds)
end
- desc '[Deprecated] Use "bin/rspec spec/models" instead'
+ desc 'GitLab | Rspec | Run model specs'
task :models do
cmds = [
%w(rake gitlab:setup),
@@ -53,7 +28,7 @@ namespace :spec do
run_commands(cmds)
end
- desc '[Deprecated] Use "bin/rspec spec/services" instead'
+ desc 'GitLab | Rspec | Run service specs'
task :services do
cmds = [
%w(rake gitlab:setup),
@@ -62,7 +37,7 @@ namespace :spec do
run_commands(cmds)
end
- desc '[Deprecated] Use "bin/rspec spec/lib" instead'
+ desc 'GitLab | Rspec | Run lib specs'
task :lib do
cmds = [
%w(rake gitlab:setup),
@@ -70,6 +45,15 @@ namespace :spec do
]
run_commands(cmds)
end
+
+ desc 'GitLab | Rspec | Run other specs'
+ task :other do
+ cmds = [
+ %w(rake gitlab:setup),
+ %w(rspec spec --tag ~@api --tag ~@feature --tag ~@models --tag ~@lib --tag ~@services)
+ ]
+ run_commands(cmds)
+ end
end
desc "GitLab | Run specs"
diff --git a/scripts/prepare_build.sh b/scripts/prepare_build.sh
index 5fca95f1f40..58b74f2f07d 100644
--- a/scripts/prepare_build.sh
+++ b/scripts/prepare_build.sh
@@ -5,7 +5,6 @@ export USE_BUNDLE_INSTALL=${USE_BUNDLE_INSTALL:-true}
export BUNDLE_INSTALL_FLAGS="--without=production --jobs=$(nproc) --path=vendor --retry=3 --quiet"
if [ "$USE_BUNDLE_INSTALL" != "false" ]; then
- bundle --version
bundle install --clean $BUNDLE_INSTALL_FLAGS && bundle check
fi
diff --git a/spec/lib/quality/test_level_spec.rb b/spec/lib/quality/test_level_spec.rb
deleted file mode 100644
index 3465c3a050b..00000000000
--- a/spec/lib/quality/test_level_spec.rb
+++ /dev/null
@@ -1,105 +0,0 @@
-# frozen_string_literal: true
-
-require 'fast_spec_helper'
-
-RSpec.describe Quality::TestLevel do
- describe '#pattern' do
- context 'when level is unit' do
- it 'returns a pattern' do
- expect(subject.pattern(:unit))
- .to eq("spec/{bin,config,db,dependencies,factories,finders,frontend,graphql,helpers,initializers,javascripts,lib,migrations,models,policies,presenters,rack_servers,routing,rubocop,serializers,services,sidekiq,tasks,uploaders,validators,views,workers,elastic_integration}{,/**/}*_spec.rb")
- end
- end
-
- context 'when level is integration' do
- it 'returns a pattern' do
- expect(subject.pattern(:integration))
- .to eq("spec/{controllers,mailers,requests}{,/**/}*_spec.rb")
- end
- end
-
- context 'when level is system' do
- it 'returns a pattern' do
- expect(subject.pattern(:system))
- .to eq("spec/{features}{,/**/}*_spec.rb")
- end
- end
-
- context 'with a prefix' do
- it 'returns a pattern' do
- expect(described_class.new('ee/').pattern(:system))
- .to eq("ee/spec/{features}{,/**/}*_spec.rb")
- end
- end
-
- describe 'performance' do
- it 'memoizes the pattern for a given level' do
- expect(subject.pattern(:system).object_id).to eq(subject.pattern(:system).object_id)
- end
-
- it 'freezes the pattern for a given level' do
- expect(subject.pattern(:system)).to be_frozen
- end
- end
- end
-
- describe '#regexp' do
- context 'when level is unit' do
- it 'returns a regexp' do
- expect(subject.regexp(:unit))
- .to eq(%r{spec/(bin|config|db|dependencies|factories|finders|frontend|graphql|helpers|initializers|javascripts|lib|migrations|models|policies|presenters|rack_servers|routing|rubocop|serializers|services|sidekiq|tasks|uploaders|validators|views|workers|elastic_integration)})
- end
- end
-
- context 'when level is integration' do
- it 'returns a regexp' do
- expect(subject.regexp(:integration))
- .to eq(%r{spec/(controllers|mailers|requests)})
- end
- end
-
- context 'when level is system' do
- it 'returns a regexp' do
- expect(subject.regexp(:system))
- .to eq(%r{spec/(features)})
- end
- end
-
- context 'with a prefix' do
- it 'returns a regexp' do
- expect(described_class.new('ee/').regexp(:system))
- .to eq(%r{ee/spec/(features)})
- end
- end
-
- describe 'performance' do
- it 'memoizes the regexp for a given level' do
- expect(subject.regexp(:system).object_id).to eq(subject.regexp(:system).object_id)
- end
-
- it 'freezes the regexp for a given level' do
- expect(subject.regexp(:system)).to be_frozen
- end
- end
- end
-
- describe '#level_for' do
- it 'returns the correct level for a unit test' do
- expect(subject.level_for('spec/models/abuse_report_spec.rb')).to eq(:unit)
- end
-
- it 'returns the correct level for an integration test' do
- expect(subject.level_for('spec/mailers/abuse_report_mailer_spec.rb')).to eq(:integration)
- end
-
- it 'returns the correct level for a system test' do
- expect(subject.level_for('spec/features/abuse_report_spec.rb')).to eq(:system)
- end
-
- it 'raises an error for an unknown level' do
- expect { subject.level_for('spec/unknown/foo_spec.rb') }
- .to raise_error(described_class::UnknownTestLevelError,
- %r{Test level for spec/unknown/foo_spec.rb couldn't be set. Please rename the file properly or change the test level detection regexes in .+/lib/quality/test_level.rb.})
- end
- end
-end
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index 390a869d93f..69589c9aa33 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -44,8 +44,6 @@ Dir[Rails.root.join("spec/support/shared_contexts/*.rb")].each { |f| require f }
Dir[Rails.root.join("spec/support/shared_examples/*.rb")].each { |f| require f }
Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
-quality_level = Quality::TestLevel.new
-
RSpec.configure do |config|
config.use_transactional_fixtures = false
config.use_instantiated_fixtures = false
@@ -57,10 +55,9 @@ RSpec.configure do |config|
config.infer_spec_type_from_file_location!
config.full_backtrace = !!ENV['CI']
- config.define_derived_metadata(file_path: %r{(ee)?/spec/.+_spec\.rb\z}) do |metadata|
+ config.define_derived_metadata(file_path: %r{/spec/}) do |metadata|
location = metadata[:location]
- metadata[:level] = quality_level.level_for(location)
metadata[:api] = true if location =~ %r{/spec/requests/api/}
# do not overwrite type if it's already set
diff --git a/spec/support/shared_examples/finders/assignees_filter_shared_examples.rb b/spec/support/shared_examples/finders/assignees_filter_spec.rb
index 782a2d97746..782a2d97746 100644
--- a/spec/support/shared_examples/finders/assignees_filter_shared_examples.rb
+++ b/spec/support/shared_examples/finders/assignees_filter_spec.rb
diff --git a/spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb b/spec/support/shared_examples/models/atomic_internal_id_spec.rb
index a248f60d23e..a248f60d23e 100644
--- a/spec/support/shared_examples/models/atomic_internal_id_shared_examples.rb
+++ b/spec/support/shared_examples/models/atomic_internal_id_spec.rb
diff --git a/spec/support/shared_examples/models/chat_service_shared_examples.rb b/spec/support/shared_examples/models/chat_service_spec.rb
index 0a302e7d030..0a302e7d030 100644
--- a/spec/support/shared_examples/models/chat_service_shared_examples.rb
+++ b/spec/support/shared_examples/models/chat_service_spec.rb
diff --git a/spec/support/shared_examples/models/update_project_statistics_shared_examples.rb b/spec/support/shared_examples/models/update_project_statistics_spec.rb
index 7a04e940ee5..7a04e940ee5 100644
--- a/spec/support/shared_examples/models/update_project_statistics_shared_examples.rb
+++ b/spec/support/shared_examples/models/update_project_statistics_spec.rb
diff --git a/spec/support/shared_examples/requests/api/issues_shared_examples.rb b/spec/support/shared_examples/requests/api/issues_shared_example_spec.rb
index 1133e95e44e..1133e95e44e 100644
--- a/spec/support/shared_examples/requests/api/issues_shared_examples.rb
+++ b/spec/support/shared_examples/requests/api/issues_shared_example_spec.rb