allure-ruby-commons 2.15.0 → 2.16.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 284b37ad75460156a0b06aa8725ae5687b69a6ee7aa9a59691cf5148e51b1db0
4
- data.tar.gz: e635323b10208124ee787334132bde0c714fb70e42b1b969595e6c35e0eb989e
3
+ metadata.gz: ea5e2f8740282a4774b060a76b35522c1161d9f108c9c37fe3170481e3e70b0c
4
+ data.tar.gz: 3639b7df27592188870e198baad8c5cf97dd35895e78ec8414b8a2567819a2a5
5
5
  SHA512:
6
- metadata.gz: 2c90af87fa423669ec1bf027bbd32f316a567df317f9d07ea03a9dab86107f2753609f00208510bb1ca9b4f5c4f71a20cfda08f4332ad2f667bfb8053be4fb08
7
- data.tar.gz: 56bf9f7d9ea0ae31d8b35749d999a9b2a98d3dca0de6ee27124a428402a2d152a2c6b7874faa2f3b97e363155debfcea9b7ad2d76b40199eed7e6f663f322059
6
+ metadata.gz: 800e4c403a091f70bdadd4d0209681c80495acca7d2f6d786ad990987ec6feb75111ccc4af22febae88e6ea26ad8839c1c366c94ab7538926986bd43ce56fb3f
7
+ data.tar.gz: 3c1039e855756f4dc762e0bb022219dec79e534d14c3dbbe82dd0b93625372ed1232a809e738182aac8a69742c3c613a53c4703b6af331aa29aea7f8bda7738a
@@ -179,6 +179,33 @@ module Allure
179
179
  lifecycle.write_categories(categories)
180
180
  end
181
181
 
182
+ # Set test case status detail to flaky
183
+ #
184
+ # @return [void]
185
+ def set_flaky
186
+ lifecycle.update_test_case do |test_case|
187
+ test_case.status_details.flaky = true
188
+ end
189
+ end
190
+
191
+ # Set test case status detail to muted
192
+ #
193
+ # @return [void]
194
+ def set_muted
195
+ lifecycle.update_test_case do |test_case|
196
+ test_case.status_details.muted = true
197
+ end
198
+ end
199
+
200
+ # Set test case status detail to known
201
+ #
202
+ # @return [void]
203
+ def set_known
204
+ lifecycle.update_test_case do |test_case|
205
+ test_case.status_details.known = true
206
+ end
207
+ end
208
+
182
209
  # Add step with provided name and optional status to current test step, fixture or test case
183
210
  # @param [String] name
184
211
  # @param [Symbol] status {Status}, {Status::PASSED} by default
@@ -207,5 +234,15 @@ module Allure
207
234
  ensure
208
235
  lifecycle.stop_test_step
209
236
  end
237
+
238
+ # Add parameter to current test step
239
+ # @param [String] name
240
+ # @param [String] value
241
+ # @return [void]
242
+ def step_parameter(name, value)
243
+ lifecycle.update_test_step do |step|
244
+ step.parameters.push(Parameter.new(name, value))
245
+ end
246
+ end
210
247
  end
211
248
  # rubocop:enable Naming/FileName
@@ -13,6 +13,8 @@ module Allure
13
13
  ENVIRONMENT_FILE = "environment.properties"
14
14
  # @return [String] categories definition json
15
15
  CATEGORIES_FILE = "categories.json"
16
+ # @return [Hash] Oj json options
17
+ OJ_OPTIONS = { mode: :custom, use_to_hash: true, ascii_only: true }.freeze
16
18
 
17
19
  # File writer instance
18
20
  #
@@ -25,14 +27,14 @@ module Allure
25
27
  # @param [Allure::TestResult] test_result
26
28
  # @return [void]
27
29
  def write_test_result(test_result)
28
- write("#{test_result.uuid}#{TEST_RESULT_SUFFIX}", Oj.dump(test_result))
30
+ write("#{test_result.uuid}#{TEST_RESULT_SUFFIX}", Oj.dump(test_result, OJ_OPTIONS))
29
31
  end
30
32
 
31
33
  # Write test result container
32
34
  # @param [Allure::TestResultContainer] test_container_result
33
35
  # @return [void]
34
36
  def write_test_result_container(test_container_result)
35
- write("#{test_container_result.uuid}#{TEST_RESULT_CONTAINER_SUFFIX}", Oj.dump(test_container_result))
37
+ write("#{test_container_result.uuid}#{TEST_RESULT_CONTAINER_SUFFIX}", Oj.dump(test_container_result, OJ_OPTIONS))
36
38
  end
37
39
 
38
40
  # Write allure attachment file
@@ -59,7 +61,7 @@ module Allure
59
61
  if categories.is_a?(File)
60
62
  copy(categories.path, CATEGORIES_FILE)
61
63
  else
62
- write(CATEGORIES_FILE, Oj.dump(categories))
64
+ write(CATEGORIES_FILE, Oj.dump(categories, OJ_OPTIONS))
63
65
  end
64
66
  end
65
67
 
@@ -73,7 +75,7 @@ module Allure
73
75
 
74
76
  def write(name, source)
75
77
  filename = File.join(output_dir, name)
76
- File.open(filename, "w") { |file| file.write(source) }
78
+ File.write(filename, source)
77
79
  end
78
80
 
79
81
  def copy(from, to)
@@ -5,8 +5,6 @@ require "oj"
5
5
  module Allure
6
6
  # General jsonable object implementation
7
7
  class JSONable
8
- Oj.default_options = { mode: :custom, use_to_hash: true, ascii_only: true }
9
-
10
8
  # Return object hash represantation
11
9
  # @return [Hash]
12
10
  def to_hash
@@ -24,6 +24,7 @@ module Allure
24
24
  @stage = options[:stage] || Stage::SCHEDULED
25
25
  @steps = options[:steps] || []
26
26
  @attachments = options[:attachments] || []
27
+ @parameters = options[:parameters] || []
27
28
  end
28
29
 
29
30
  attr_accessor :name,
@@ -34,6 +35,7 @@ module Allure
34
35
  :description_html,
35
36
  :steps,
36
37
  :attachments,
38
+ :parameters,
37
39
  :start,
38
40
  :stop
39
41
  end
@@ -28,27 +28,13 @@ module Allure
28
28
  @full_name = options[:full_name] || "Unnamed"
29
29
  @labels = options[:labels] || []
30
30
  @links = options[:links] || []
31
- @parameters = updated_parameters(options[:parameters] || [], environment)
31
+ @parameters << Parameter.new("environment", environment) if environment
32
32
  end
33
33
 
34
34
  attr_accessor :uuid,
35
35
  :history_id,
36
36
  :full_name,
37
37
  :labels,
38
- :links,
39
- :parameters
40
-
41
- private
42
-
43
- # Test name prefixed with allure environment
44
- #
45
- # @param [Array] parameters
46
- # @param [String] environment
47
- # @return [Array]
48
- def updated_parameters(parameters, environment)
49
- return parameters unless environment
50
-
51
- parameters << Parameter.new("environment", environment)
52
- end
38
+ :links
53
39
  end
54
40
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: allure-ruby-commons
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.15.0
4
+ version: 2.16.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrejs Cunskis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-04 00:00:00.000000000 Z
11
+ date: 2022-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mime-types
@@ -129,6 +129,7 @@ metadata:
129
129
  documentation_uri: https://github.com/allure-framework/allure-ruby/blob/master/allure-ruby-commons/README.md
130
130
  source_code_uri: https://github.com/allure-framework/allure-ruby/tree/master/allure-ruby-commons
131
131
  wiki_uri: https://github.com/allure-framework/allure-ruby/wiki
132
+ rubygems_mfa_required: 'false'
132
133
  post_install_message:
133
134
  rdoc_options: []
134
135
  require_paths:
@@ -144,7 +145,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
145
  - !ruby/object:Gem::Version
145
146
  version: '0'
146
147
  requirements: []
147
- rubygems_version: 3.2.22
148
+ rubygems_version: 3.3.7
148
149
  signing_key:
149
150
  specification_version: 4
150
151
  summary: Common library for allure results generation