Class: TestRunner::Test
- Inherits:
-
Object
- Object
- TestRunner::Test
- Defined in:
- lib/test-runner/test.rb
Instance Attribute Summary collapse
- #description ⇒ String readonly
- #expect_failure ⇒ Boolean readonly
- #labels ⇒ Hash<String, String> readonly
- #name ⇒ String readonly
- #path ⇒ String readonly
- #tags ⇒ Array<String> readonly
- #template ⇒ String readonly
- #template_args ⇒ Hash readonly
- #test_args ⇒ Hash readonly
- #test_scripts ⇒ Hash<String, TestScript> readonly
- #type ⇒ String readonly
Instance Method Summary collapse
- #file_path ⇒ Object
-
#initialize(**opts) ⇒ Test
constructor
A new instance of Test.
- #template? ⇒ Boolean
Constructor Details
#initialize(**opts) ⇒ Test
Returns a new instance of Test.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/test-runner/test.rb', line 37 def initialize(**opts) @path = opts[:path] @type = opts[:type] @template = opts[:template] @template_args = opts[:template_args] @test_args = opts[:test_args] @name = opts[:name] @description = opts[:description] @expect_failure = opts[:expect_failure] @tags = opts[:tags] @labels = opts[:labels] @test_scripts = opts[:test_scripts].to_h do |ts_name, ts_opts| [ ts_name, TestScript.new( self, ts_name, description: ts_opts['description'], expect_failure: ts_opts['expectFailure'], tags: ts_opts.fetch('tags', []), labels: ts_opts.fetch('labels', {}) ) ] end return if @test_scripts.length != 1 || !@test_scripts.has_key?('default') @test_scripts['default'].set_singleton end |
Instance Attribute Details
#description ⇒ String (readonly)
22 23 24 |
# File 'lib/test-runner/test.rb', line 22 def description @description end |
#expect_failure ⇒ Boolean (readonly)
25 26 27 |
# File 'lib/test-runner/test.rb', line 25 def expect_failure @expect_failure end |
#labels ⇒ Hash<String, String> (readonly)
31 32 33 |
# File 'lib/test-runner/test.rb', line 31 def labels @labels end |
#name ⇒ String (readonly)
19 20 21 |
# File 'lib/test-runner/test.rb', line 19 def name @name end |
#path ⇒ String (readonly)
4 5 6 |
# File 'lib/test-runner/test.rb', line 4 def path @path end |
#tags ⇒ Array<String> (readonly)
28 29 30 |
# File 'lib/test-runner/test.rb', line 28 def @tags end |
#template ⇒ String (readonly)
10 11 12 |
# File 'lib/test-runner/test.rb', line 10 def template @template end |
#template_args ⇒ Hash (readonly)
13 14 15 |
# File 'lib/test-runner/test.rb', line 13 def template_args @template_args end |
#test_args ⇒ Hash (readonly)
16 17 18 |
# File 'lib/test-runner/test.rb', line 16 def test_args @test_args end |
#test_scripts ⇒ Hash<String, TestScript> (readonly)
34 35 36 |
# File 'lib/test-runner/test.rb', line 34 def test_scripts @test_scripts end |
#type ⇒ String (readonly)
7 8 9 |
# File 'lib/test-runner/test.rb', line 7 def type @type end |
Instance Method Details
#file_path ⇒ Object
71 72 73 74 75 76 77 |
# File 'lib/test-runner/test.rb', line 71 def file_path if template? "#{template}.nix" else "#{path}.nix" end end |
#template? ⇒ Boolean
67 68 69 |
# File 'lib/test-runner/test.rb', line 67 def template? type == 'template' end |