Sha256: 222860cd7217b41a6053c31924957bbc76922cf01b550bd1d603bd989d88a348

Contents?: true

Size: 1.7 KB

Versions: 28

Compression:

Stored size: 1.7 KB

Contents

require 'yaml'

module Gitlab
  module QA
    module Scenario
      module Test
        module Integration
          class SAML < Scenario::Template
            attr_reader :gitlab_name, :spec_suite, :saml_component

            def configure(gitlab, saml)
              raise NotImplementedError
            end

            def before_perform(release)
              # no-op
            end

            def perform(release, *rspec_args)
              release = Release.new(release)
              before_perform(release)

              Component::Gitlab.perform do |gitlab|
                gitlab.release = release
                gitlab.network = 'test'
                gitlab.name = gitlab_name
                gitlab.set_accept_insecure_certs

                if saml_component
                  Component::SAML.perform do |saml|
                    saml.network = 'test'
                    configure(gitlab, saml)

                    saml.instance do
                      run_specs(gitlab, release, *rspec_args)
                    end
                  end
                else
                  configure(gitlab, nil)
                  run_specs(gitlab, release, *rspec_args)
                end
              end
            end

            def run_specs(gitlab, release, *rspec_args)
              gitlab.instance do
                puts "Running #{spec_suite} specs!"

                Component::Specs.perform do |specs|
                  specs.suite = spec_suite
                  specs.release = release
                  specs.network = gitlab.network
                  specs.args = [gitlab.address, *rspec_args]
                end
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
gitlab-qa-5.0.3 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-5.0.2 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-5.0.0 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-4.20.0 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-4.19.3 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-4.19.2 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-4.19.1 lib/gitlab/qa/scenario/test/integration/saml.rb
gitlab-qa-4.19.0 lib/gitlab/qa/scenario/test/integration/saml.rb