Commit 9a92c16a authored by Grzegorz Bizon's avatar Grzegorz Bizon

Refactor QA specs runners and improve specs

parent 3abae1a7
...@@ -16,11 +16,9 @@ module QA ...@@ -16,11 +16,9 @@ module QA
Runtime::Release.perform_before_hooks Runtime::Release.perform_before_hooks
Specs::Runner.perform do |specs| Specs::Runner.perform do |specs|
specs.rspec( specs.tty = true
tty: true, specs.tags = self.class.get_tags
tags: self.class.get_tags, specs.files = files.any? ? files : 'qa/specs/features'
files: files.any? ? files : 'qa/specs/features'
)
end end
end end
......
...@@ -3,7 +3,15 @@ require 'rspec/core' ...@@ -3,7 +3,15 @@ require 'rspec/core'
module QA module QA
module Specs module Specs
class Runner < Scenario::Template class Runner < Scenario::Template
def perform(tty: false, tags: [], files: ['qa/specs/features']) attr_accessor :tty, :tags, :files
def initialize
@tty = false
@tags = []
@files = ['qa/specs/features']
end
def perform
args = [] args = []
args.push('--tty') if tty args.push('--tty') if tty
tags.to_a.each { |tag| args.push(['-t', tag.to_s]) } tags.to_a.each { |tag| args.push(['-t', tag.to_s]) }
......
...@@ -29,8 +29,7 @@ describe QA::Scenario::Entrypoint do ...@@ -29,8 +29,7 @@ describe QA::Scenario::Entrypoint do
it 'should call runner with default arguments' do it 'should call runner with default arguments' do
subject.perform("test") subject.perform("test")
expect(runner).to have_received(:rspec) expect(runner).to have_received(:files=).with('qa/specs/features')
.with(hash_including(files: 'qa/specs/features'))
end end
end end
...@@ -38,8 +37,7 @@ describe QA::Scenario::Entrypoint do ...@@ -38,8 +37,7 @@ describe QA::Scenario::Entrypoint do
it 'should call runner with paths' do it 'should call runner with paths' do
subject.perform('test', 'path1', 'path2') subject.perform('test', 'path1', 'path2')
expect(runner).to have_received(:rspec) expect(runner).to have_received(:files=).with(%w[path1 path2])
.with(hash_including(files: %w(path1 path2)))
end end
end end
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment