summaryrefslogtreecommitdiff
path: root/qa/qa/scenario/entrypoint.rb
diff options
context:
space:
mode:
Diffstat (limited to 'qa/qa/scenario/entrypoint.rb')
-rw-r--r--qa/qa/scenario/entrypoint.rb35
1 files changed, 35 insertions, 0 deletions
diff --git a/qa/qa/scenario/entrypoint.rb b/qa/qa/scenario/entrypoint.rb
new file mode 100644
index 00000000000..b9d924651a0
--- /dev/null
+++ b/qa/qa/scenario/entrypoint.rb
@@ -0,0 +1,35 @@
+module QA
+ module Scenario
+ ##
+ # Base class for running the suite against any GitLab instance,
+ # including staging and on-premises installation.
+ #
+ class Entrypoint < Template
+ include Bootable
+
+ def perform(address, *files)
+ Specs::Config.act { configure_capybara! }
+ Runtime::Scenario.define(:gitlab_address, address)
+
+ ##
+ # Perform before hooks, which are different for CE and EE
+ #
+ Runtime::Release.perform_before_hooks
+
+ Specs::Runner.perform do |specs|
+ specs.tty = true
+ specs.tags = self.class.get_tags
+ specs.files = files.any? ? files : 'qa/specs/features'
+ end
+ end
+
+ def self.tags(*tags)
+ @tags = tags
+ end
+
+ def self.get_tags
+ @tags
+ end
+ end
+ end
+end