allure-ruby-commons 2.13.6.3 → 2.13.6.4
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a51c9949322455ac55cd973f942ba0392f51171fad89f23d0e16cbe16224014b
|
4
|
+
data.tar.gz: 7b4c8ccfca17187f553e9f5192a19fbe23dc84c780b73d057a29da9eed92ed61
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e71a93d78c8efdfd477953644f58a1495fa6baca06592ddd5206c4abfc088d292a8f3a61ae72fe98d4db589144d4c0c8194a18a9e675cbecaeeb98d80265079b
|
7
|
+
data.tar.gz: 6d44b2fed79aa4258cfca49e4f0bc709f2aef144292fa6760191772eae4d4a4b763510f9ded50c8b146df635a44d80bf6725ac059843839f030ecd649553ad2c
|
data/lib/allure-ruby-commons.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
|
4
4
|
require "require_all"
|
5
5
|
require "uuid"
|
6
|
+
|
6
7
|
require_rel "allure_ruby_commons/**/*rb"
|
7
8
|
|
8
9
|
# Namespace for classes that handle allure report generation and different framework adaptors
|
@@ -169,7 +170,7 @@ module Allure
|
|
169
170
|
lifecycle.start_test_step(StepResult.new(name: name, stage: Stage::RUNNING))
|
170
171
|
yield
|
171
172
|
lifecycle.update_test_step { |step| step.status = Status::PASSED }
|
172
|
-
rescue => e
|
173
|
+
rescue StandardError => e
|
173
174
|
lifecycle.update_test_step do |step|
|
174
175
|
step.status = ResultUtils.status(e)
|
175
176
|
step.status_details = ResultUtils.status_details(e)
|
@@ -5,13 +5,13 @@ require "forwardable"
|
|
5
5
|
|
6
6
|
module Allure
|
7
7
|
# Main class for creating and writing allure results
|
8
|
-
class AllureLifecycle
|
8
|
+
class AllureLifecycle # rubocop:disable Metrics/ClassLength
|
9
9
|
extend Forwardable
|
10
10
|
|
11
11
|
def initialize
|
12
12
|
@test_context = []
|
13
13
|
@step_context = []
|
14
|
-
@logger = Logger.new(
|
14
|
+
@logger = Logger.new($stdout, level: Config.instance.logging_level)
|
15
15
|
@file_writer = FileWriter.new
|
16
16
|
end
|
17
17
|
|
@@ -204,13 +204,13 @@ module Allure
|
|
204
204
|
# @param [Boolean] test_case add attachment to current test case
|
205
205
|
# @return [void]
|
206
206
|
def add_attachment(name:, source:, type:, test_case: false)
|
207
|
-
attachment = ResultUtils.prepare_attachment(name, type)
|
208
|
-
|
209
|
-
|
210
|
-
executable_item =
|
211
|
-
|
212
|
-
|
213
|
-
|
207
|
+
attachment = ResultUtils.prepare_attachment(name, type)
|
208
|
+
return logger.error { "Can't add attachment, unrecognized mime type: #{type}" } unless attachment
|
209
|
+
|
210
|
+
executable_item = test_case ? @current_test_case : current_executable
|
211
|
+
return logger.error { "Can't add attachment, no test, step or fixture is running" } unless executable_item
|
212
|
+
|
213
|
+
executable_item.attachments.push(attachment)
|
214
214
|
logger.debug { "Adding attachment '#{name}' to '#{executable_item.name}'" }
|
215
215
|
write_attachment(source, attachment)
|
216
216
|
end
|
@@ -18,17 +18,14 @@ module Allure
|
|
18
18
|
# @param [Allure::TestResult] test_result
|
19
19
|
# @return [void]
|
20
20
|
def write_test_result(test_result)
|
21
|
-
write("#{test_result.uuid}#{TEST_RESULT_SUFFIX}",
|
21
|
+
write("#{test_result.uuid}#{TEST_RESULT_SUFFIX}", Oj.dump(test_result))
|
22
22
|
end
|
23
23
|
|
24
24
|
# Write test result container
|
25
25
|
# @param [Allure::TestResultContainer] test_container_result
|
26
26
|
# @return [void]
|
27
27
|
def write_test_result_container(test_container_result)
|
28
|
-
write(
|
29
|
-
"#{test_container_result.uuid}#{TEST_RESULT_CONTAINER_SUFFIX}",
|
30
|
-
JSON.generate(test_container_result, max_nesting: false),
|
31
|
-
)
|
28
|
+
write("#{test_container_result.uuid}#{TEST_RESULT_CONTAINER_SUFFIX}", Oj.dump(test_container_result))
|
32
29
|
end
|
33
30
|
|
34
31
|
# Write allure attachment file
|
@@ -55,7 +52,7 @@ module Allure
|
|
55
52
|
if categories.is_a?(File)
|
56
53
|
copy(categories.path, CATEGORIES_FILE)
|
57
54
|
else
|
58
|
-
write(CATEGORIES_FILE, categories
|
55
|
+
write(CATEGORIES_FILE, Oj.dump(categories))
|
59
56
|
end
|
60
57
|
end
|
61
58
|
|
@@ -1,14 +1,15 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "
|
3
|
+
require "oj"
|
4
4
|
|
5
5
|
module Allure
|
6
6
|
# General jsonable object implementation
|
7
7
|
class JSONable
|
8
|
-
|
9
|
-
|
8
|
+
Oj.default_options = { mode: :custom, use_to_hash: true, ascii_only: true }
|
9
|
+
|
10
|
+
# Return object hash represantation
|
10
11
|
# @return [Hash]
|
11
|
-
def
|
12
|
+
def to_hash
|
12
13
|
instance_variables.each_with_object({}) do |var, map|
|
13
14
|
key = camelcase(var.to_s.delete_prefix("@"))
|
14
15
|
value = instance_variable_get(var)
|
@@ -16,13 +17,6 @@ module Allure
|
|
16
17
|
end
|
17
18
|
end
|
18
19
|
|
19
|
-
# Convert object to json string
|
20
|
-
# @param [Array<Object>] options
|
21
|
-
# @return [String]
|
22
|
-
def to_json(*options)
|
23
|
-
as_json.to_json(*options)
|
24
|
-
end
|
25
|
-
|
26
20
|
# Object comparator
|
27
21
|
# @param [JSONable] other
|
28
22
|
# @return [Booelan]
|
metadata
CHANGED
@@ -1,83 +1,77 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: allure-ruby-commons
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.13.6.
|
4
|
+
version: 2.13.6.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrejs Cunskis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: mime-types
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '3.3'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '3.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: oj
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
34
|
-
- - "<"
|
35
|
-
- !ruby/object:Gem::Version
|
36
|
-
version: '4'
|
33
|
+
version: '3.10'
|
37
34
|
type: :runtime
|
38
35
|
prerelease: false
|
39
36
|
version_requirements: !ruby/object:Gem::Requirement
|
40
37
|
requirements:
|
41
38
|
- - ">="
|
42
39
|
- !ruby/object:Gem::Version
|
43
|
-
version: '
|
44
|
-
- - "<"
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version: '4'
|
40
|
+
version: '3.10'
|
47
41
|
- !ruby/object:Gem::Dependency
|
48
|
-
name:
|
42
|
+
name: require_all
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
50
44
|
requirements:
|
51
45
|
- - ">="
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
47
|
+
version: '2'
|
54
48
|
- - "<"
|
55
49
|
- !ruby/object:Gem::Version
|
56
|
-
version: '
|
50
|
+
version: '4'
|
57
51
|
type: :runtime
|
58
52
|
prerelease: false
|
59
53
|
version_requirements: !ruby/object:Gem::Requirement
|
60
54
|
requirements:
|
61
55
|
- - ">="
|
62
56
|
- !ruby/object:Gem::Version
|
63
|
-
version: '
|
57
|
+
version: '2'
|
64
58
|
- - "<"
|
65
59
|
- !ruby/object:Gem::Version
|
66
|
-
version: '
|
60
|
+
version: '4'
|
67
61
|
- !ruby/object:Gem::Dependency
|
68
|
-
name:
|
62
|
+
name: uuid
|
69
63
|
requirement: !ruby/object:Gem::Requirement
|
70
64
|
requirements:
|
71
|
-
- - "
|
65
|
+
- - ">="
|
72
66
|
- !ruby/object:Gem::Version
|
73
|
-
version: '
|
67
|
+
version: '2.3'
|
74
68
|
type: :runtime
|
75
69
|
prerelease: false
|
76
70
|
version_requirements: !ruby/object:Gem::Requirement
|
77
71
|
requirements:
|
78
|
-
- - "
|
72
|
+
- - ">="
|
79
73
|
- !ruby/object:Gem::Version
|
80
|
-
version: '
|
74
|
+
version: '2.3'
|
81
75
|
description: Utilities allowing to implement allure result generation by other test
|
82
76
|
frameworks
|
83
77
|
email: andrejs.cunskis@gmail.com
|