rutema 2.0.2 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce001ba104b5a1bb8b574e10a02a9d74d3a6af1e65b0e40b74aa5c41e6652451
4
- data.tar.gz: 4e8c71a5ebb6f960a874d186bd555927699606045e2aba4e7f277e923fc5ba03
3
+ metadata.gz: 96a5b7b6f8f16a37b94cf0ee1a209f6822651c0c951724e61eca0d71bca57528
4
+ data.tar.gz: 2aa98932712a8795e5c210d032698534361d022f936cd01979f65f91440b99bd
5
5
  SHA512:
6
- metadata.gz: d90e9c5bcb2adb9ebd6f6c9cdd1df33a30521796014d5bb6f451651ac096fa5a88d149a4bd5c398fc95e7f4cc98df0e65fd7bf7512feff01477a70cd031cc464
7
- data.tar.gz: 68e7173406f270d158af6a2acca1066b3539937ae07c30affa46f6a9c9ebab8327c49a22e7ff67341bac39782b1fd83d662bb744b7a56b71b60e9a50fb5d08b1
6
+ metadata.gz: 22d62da7dd41d77e111e895e82f2b69c2adeb7c826fab75c9782fff4b2c2e544419f18e2c57b80c51361b45c16fe3760e1b03efee82d8bea85af8501cae72ff9
7
+ data.tar.gz: c7161fa3f9cecb45390595cf9e23b8208f94887619313a250337aeea3e59e353ef9ca21fdf3e6c513b1293c09292f61466675c66113ff28a7e0953fba16430a1
data/History.txt CHANGED
@@ -1,6 +1,9 @@
1
+ == 2.0.3 /2026-09-23
2
+ * Updated gem dependencies (highline -> ~3.1)
3
+ * New rubocop version adds lint warnings - cleaned update
1
4
  == 2.0.2 /2026-03-26
2
5
  * Modernize the code base. Code style updated, gem versions updated, ruby 3.x and 4.x deprecations handled
3
- == 2.0.1/2026-03-02
6
+ == 2.0.1 /2026-03-02
4
7
  * Release the 10 year old changes that fix handling of execution context within steps
5
8
  == 2.0.0 /2017-09-23
6
9
  * Parsing behaviour has changed, parsing errors are not accepted and the run fails immediately
@@ -381,9 +381,8 @@ module Rutema
381
381
  fname = File.basename(filename)
382
382
  # evaluate in the working directory to enable relative paths in
383
383
  # configuration
384
- # rubocop:disable Security/Eval
384
+ # rubocop:disable-next Security/Eval
385
385
  Dir.chdir(cwd) { eval(cfg_txt, binding, fname, __LINE__) }
386
- # rubocop:enable Security/Eval
387
386
  rescue ConfigurationException
388
387
  # pass it on, do not wrap again
389
388
  raise
@@ -171,6 +171,7 @@ module Rutema
171
171
  end
172
172
  end
173
173
 
174
+ # rubocop:disable-next Style/OptionalBooleanParameter
174
175
  def run_test(specification, is_special = false)
175
176
  if specification.scenario
176
177
  status = @runner.run(specification, is_special)["status"]
@@ -280,16 +280,22 @@ module Rutema
280
280
  end
281
281
  end
282
282
 
283
- class Patir::ShellCommand
284
- # :nodoc:
285
- def to_s
286
- return @command
283
+ # rubocop:disable-next Style/OneClassPerFile
284
+ # Class functionality extensions - ye old good monkey patch
285
+ module Patir
286
+ # Decorates the class with a to_s
287
+ class ShellCommand
288
+ # :nodoc:
289
+ def to_s
290
+ return @command
291
+ end
287
292
  end
288
- end
289
293
 
290
- class Patir::RubyCommand
291
- # :nodoc:
292
- def to_s
293
- return @name
294
+ # Decorates the class with a to_s
295
+ class RubyCommand
296
+ # :nodoc:
297
+ def to_s
298
+ return @name
299
+ end
294
300
  end
295
301
  end
@@ -59,8 +59,7 @@ module Rutema
59
59
  # internally
60
60
  #
61
61
  # To avoid validating the configuration in element_* methods repeatedly, do all configuration validation here
62
- def validate_configuration
63
- end
62
+ def validate_configuration; end
64
63
  end
65
64
  end
66
65
  end
@@ -30,8 +30,7 @@ module Rutema
30
30
 
31
31
  ##
32
32
  #
33
- def report(specifications, states, errors)
34
- end
33
+ def report(specifications, states, errors); end
35
34
  end
36
35
 
37
36
  ##
@@ -57,8 +56,7 @@ module Rutema
57
56
  end
58
57
  end
59
58
 
60
- def update(data)
61
- end
59
+ def update(data); end
62
60
 
63
61
  def exit
64
62
  puts "Exiting #{self.class}" if $DEBUG
@@ -139,7 +137,7 @@ module Rutema
139
137
  @silent = configuration.reporters.fetch(self.class, {})["silent"]
140
138
  end
141
139
 
142
- # rubocop:disable Metrics/CyclomaticComplexity
140
+ # rubocop:disable-next Metrics/CyclomaticComplexity
143
141
  def report(specs, states, errors)
144
142
  failures = []
145
143
  states.each_value { |v| failures << v.test if v.status == :error }
@@ -154,11 +152,10 @@ module Rutema
154
152
  end
155
153
  return failures.size + errors.size
156
154
  end
157
- # rubocop:enable Metrics/CyclomaticComplexity
158
155
  end
159
156
  end
160
157
 
161
- # rubocop:disable Style/Documentation
158
+ # rubocop:disable-next Style/Documentation
162
159
  module Utilities
163
160
  require "fileutils"
164
161
  def self.write_file(filename, content)
@@ -166,5 +163,4 @@ module Rutema
166
163
  File.binwrite(filename, content)
167
164
  end
168
165
  end
169
- # rubocop:enable Style/Documentation
170
166
  end
@@ -20,6 +20,8 @@ module Rutema
20
20
  @cleanup_blocks = []
21
21
  end
22
22
 
23
+ # rubocop:disable-next Metrics/AbcSize
24
+ # rubocop:disable-next Style/OptionalBooleanParameter
23
25
  def run(spec, is_special = false)
24
26
  @context["spec_name"] = spec.name
25
27
  steps = []
@@ -82,7 +84,9 @@ module Rutema
82
84
  @cleanup_blocks = []
83
85
  end
84
86
 
85
- # rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
87
+ # rubocop:disable-next Metrics/CyclomaticComplexity
88
+ # rubocop:disable-next Metrics/PerceivedComplexity
89
+ # rubocop:disable-next Metrics/AbcSize
86
90
  def run_scenario(name, scenario, meta, is_special)
87
91
  executed_steps = []
88
92
  status = :skipped
@@ -109,7 +113,6 @@ module Rutema
109
113
  end
110
114
  return executed_steps, status
111
115
  end
112
- # rubocop:enable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
113
116
 
114
117
  def next_step(step_spec, test_name, meta, test_is_special)
115
118
  message(
@@ -120,11 +123,10 @@ module Rutema
120
123
  begin
121
124
  cache_cleanup(step_spec)
122
125
  executed_step = run_step(step_spec, meta)
123
- # rubocop:disable Lint/RescueException
126
+ # rubocop:disable-next Lint/RescueException
124
127
  rescue Exception => e
125
128
  throw e unless step_spec.continue?
126
129
  step_spec.status = :error
127
- # rubocop:enable Lint/RescueException
128
130
  end
129
131
  message(
130
132
  :test => test_name, :text => step_spec.to_s, "number" => step_spec.number,
@@ -106,6 +106,7 @@ module Rutema
106
106
  raise Rutema::ParserError, "missing #{ELEM_TITLE} element in #{xmldoc}" unless xmldoc.elements[ELEM_TITLE]
107
107
  end
108
108
 
109
+ # rubocop:disable-next Metrics/AbcSize
109
110
  # Parses the 'scenario' XML element and returns the Rutema::Scenario instance
110
111
  def parse_scenario(xmltxt)
111
112
  scenario = Rutema::Scenario.new([])
@@ -16,7 +16,7 @@ module Rutema
16
16
  MINOR = 0
17
17
  ##
18
18
  # The tiny version of the rutema gem
19
- TINY = 2
19
+ TINY = 3
20
20
  ##
21
21
  # The version information of the rutema gem as a string
22
22
  STRING = [MAJOR, MINOR, TINY].join(".")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rutema
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vassilis Rizopoulos
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-03-30 00:00:00.000000000 Z
11
+ date: 2026-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: patir
@@ -30,48 +30,48 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '2.0'
33
+ version: '3.1'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '2.0'
40
+ version: '3.1'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rdoc
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '6.0'
47
+ version: '7.0'
48
48
  - - "<"
49
49
  - !ruby/object:Gem::Version
50
- version: '8'
50
+ version: '9'
51
51
  type: :development
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
55
  - - ">="
56
56
  - !ruby/object:Gem::Version
57
- version: '6.0'
57
+ version: '7.0'
58
58
  - - "<"
59
59
  - !ruby/object:Gem::Version
60
- version: '8'
60
+ version: '9'
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: hoe
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '4.6'
67
+ version: '4.7'
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '4.6'
74
+ version: '4.7'
75
75
  description: |
76
76
  rutema is a test execution tool and a framework for organizing and managing test execution across different tools.
77
77
  It enables the combination of different test tools while it takes care of logging, reporting, archiving of results and formalizes execution of automated and manual tests.
@@ -83,7 +83,6 @@ executables:
83
83
  extensions: []
84
84
  extra_rdoc_files:
85
85
  - History.txt
86
- - Manifest.txt
87
86
  - README.md
88
87
  files:
89
88
  - History.txt