summaryrefslogtreecommitdiff
path: root/qa/qa/scenario/entrypoint.rb
blob: ae099fd911e5417409bbf3719eabfdecfe9db867 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
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)
        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