Merge branch 'bw-qa-rspec-options' into 'master'
QA: allow rspec files/options to be handled more consistently See merge request gitlab-org/gitlab-ce!17990
This commit is contained in:
		
						commit
						fe5f7390f0
					
				|  | @ -23,7 +23,7 @@ module QA | |||
| 
 | ||||
|           arguments.parse!(argv) | ||||
| 
 | ||||
|           self.perform(**Runtime::Scenario.attributes) | ||||
|           self.perform(Runtime::Scenario.attributes, *arguments.default_argv) | ||||
|         end | ||||
| 
 | ||||
|         private | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ module QA | |||
| 
 | ||||
|         tags :core | ||||
| 
 | ||||
|         def perform(address, *files) | ||||
|         def perform(address, *rspec_options) | ||||
|           Runtime::Scenario.define(:gitlab_address, address) | ||||
| 
 | ||||
|           ## | ||||
|  | @ -22,9 +22,9 @@ module QA | |||
|           Specs::Runner.perform do |specs| | ||||
|             specs.tty = true | ||||
|             specs.tags = self.class.focus | ||||
|             specs.files = | ||||
|               if files.any? | ||||
|                 files | ||||
|             specs.options = | ||||
|               if rspec_options.any? | ||||
|                 rspec_options | ||||
|               else | ||||
|                 File.expand_path('../../specs/features', __dir__) | ||||
|               end | ||||
|  |  | |||
|  | @ -9,10 +9,10 @@ module QA | |||
|         class Mattermost < Test::Instance | ||||
|           tags :core, :mattermost | ||||
| 
 | ||||
|           def perform(address, mattermost, *files) | ||||
|           def perform(address, mattermost, *rspec_options) | ||||
|             Runtime::Scenario.define(:mattermost_address, mattermost) | ||||
| 
 | ||||
|             super(address, *files) | ||||
|             super(address, *rspec_options) | ||||
|           end | ||||
|         end | ||||
|       end | ||||
|  |  | |||
|  | @ -3,19 +3,19 @@ require 'rspec/core' | |||
| module QA | ||||
|   module Specs | ||||
|     class Runner < Scenario::Template | ||||
|       attr_accessor :tty, :tags, :files | ||||
|       attr_accessor :tty, :tags, :options | ||||
| 
 | ||||
|       def initialize | ||||
|         @tty = false | ||||
|         @tags = [] | ||||
|         @files = [File.expand_path('./features', __dir__)] | ||||
|         @options = [File.expand_path('./features', __dir__)] | ||||
|       end | ||||
| 
 | ||||
|       def perform | ||||
|         args = [] | ||||
|         args.push('--tty') if tty | ||||
|         tags.to_a.each { |tag| args.push(['-t', tag.to_s]) } | ||||
|         args.push(files) | ||||
|         args.push(options) | ||||
| 
 | ||||
|         Runtime::Browser.configure! | ||||
| 
 | ||||
|  |  | |||
|  | @ -29,7 +29,7 @@ describe QA::Scenario::Test::Instance do | |||
|       it 'should call runner with default arguments' do | ||||
|         subject.perform("test") | ||||
| 
 | ||||
|         expect(runner).to have_received(:files=) | ||||
|         expect(runner).to have_received(:options=) | ||||
|           .with(File.expand_path('../../../qa/specs/features', __dir__)) | ||||
|       end | ||||
|     end | ||||
|  | @ -38,7 +38,7 @@ describe QA::Scenario::Test::Instance do | |||
|       it 'should call runner with paths' do | ||||
|         subject.perform('test', 'path1', 'path2') | ||||
| 
 | ||||
|         expect(runner).to have_received(:files=).with(%w[path1 path2]) | ||||
|         expect(runner).to have_received(:options=).with(%w[path1 path2]) | ||||
|       end | ||||
|     end | ||||
|   end | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue