diff options
author | Grzegorz Bizon <grzegorz@gitlab.com> | 2018-08-26 11:17:25 +0300 |
---|---|---|
committer | Grzegorz Bizon <grzegorz@gitlab.com> | 2018-08-26 11:17:25 +0300 |
commit | 789fcae35eb54296959818e962a8dd3541eb00cd (patch) | |
tree | 8f92af209ce8501de6a544430ee8a89be53754b4 /qa | |
parent | a0cfc1b65ec959e187a4297bcab0b494cbe52cce (diff) | |
parent | 3f64b1ad204a6978543e74f8095be731ed4f287f (diff) |
Merge branch 'make-qa-scenario-test-instance-back-compatible' into 'master'
[QA] Re-add Test::Instance for back-compatibility with GitLab < 11.3
See merge request gitlab-org/gitlab-ce!21339
Diffstat (limited to 'qa')
-rw-r--r-- | qa/qa.rb | 1 | ||||
-rw-r--r-- | qa/qa/scenario/test/instance.rb | 36 |
2 files changed, 37 insertions, 0 deletions
@@ -83,6 +83,7 @@ module QA # Test scenario entrypoints. # module Test + autoload :Instance, 'qa/scenario/test/instance' module Instance autoload :All, 'qa/scenario/test/instance/all' autoload :Smoke, 'qa/scenario/test/instance/smoke' diff --git a/qa/qa/scenario/test/instance.rb b/qa/qa/scenario/test/instance.rb new file mode 100644 index 00000000000..b9a73d3ffb8 --- /dev/null +++ b/qa/qa/scenario/test/instance.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +module QA + module Scenario + module Test + # This class exists for back-compatibility so that gitlab-qa can continue + # to call Test::Instance instead of Test::Instance::All until at least + # the current latest GitLab version has the Test::Instance::All class. + # As of Aug, 22nd 2018. Only GitLab >= 11.3 has this class. + module Instance + include Bootable + + def self.perform(*args) + self.tap do |scenario| + yield scenario if block_given? + break scenario.do_perform(*args) + end + end + + def self.do_perform(address, *rspec_options) + Runtime::Scenario.define(:gitlab_address, address) + + Specs::Runner.perform do |specs| + specs.tty = true + specs.options = + if rspec_options.any? + rspec_options + else + ::File.expand_path('../specs/features', __dir__) + end + end + end + end + end + end +end |