cucumber-messages 28.0.0 → 28.1.0
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 +4 -4
- data/VERSION +1 -1
- data/lib/cucumber/messages/attachment.rb +31 -37
- data/lib/cucumber/messages/comment.rb +1 -2
- data/lib/cucumber/messages/duration.rb +4 -4
- data/lib/cucumber/messages/envelope.rb +0 -8
- data/lib/cucumber/messages/feature_child.rb +1 -2
- data/lib/cucumber/messages/gherkin_document.rb +7 -9
- data/lib/cucumber/messages/git.rb +1 -1
- data/lib/cucumber/messages/location.rb +1 -2
- data/lib/cucumber/messages/meta.rb +3 -5
- data/lib/cucumber/messages/pickle.rb +14 -20
- data/lib/cucumber/messages/pickle_step.rb +2 -3
- data/lib/cucumber/messages/pickle_tag.rb +1 -2
- data/lib/cucumber/messages/rule_child.rb +1 -2
- data/lib/cucumber/messages/source.rb +4 -8
- data/lib/cucumber/messages/source_reference.rb +2 -3
- data/lib/cucumber/messages/step_match_argument.rb +7 -9
- data/lib/cucumber/messages/tag.rb +1 -2
- data/lib/cucumber/messages/test_case.rb +1 -4
- data/lib/cucumber/messages/test_case_started.rb +4 -6
- data/lib/cucumber/messages/test_step.rb +4 -5
- data/lib/cucumber/messages/timestamp.rb +5 -5
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3cc648c1bbc47f10e819e846a0abba287b8a2bbf17df3376c48b656130947992
|
4
|
+
data.tar.gz: af14b472bdeb1e66f0d8f5c3fe28871f36f7c187a85c0b2bff8bce523756d643
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c21f00aa9a8db8d70ac4db29afbf660920ff9db1fc97f1eff2a9e81eabc92fdc1ca9603ad7dc9db2dd4cde73b2518cdc2fc9ea1e4a68cc0ee43a55f7f9aeea0f
|
7
|
+
data.tar.gz: 3586df87e8a29d95fac2974d098b95c40ccf7d98abfa75b89d312ecaac11e2b70453b48f3ff7d68f162f4f671de6d55690df347cd475c876b54f3228b414a5cf
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
28.
|
1
|
+
28.1.0
|
@@ -7,53 +7,48 @@ module Cucumber
|
|
7
7
|
# Represents the Attachment message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# Attachments (parse errors, execution errors, screenshots, links...)
|
11
11
|
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
# [Source](#io.cucumber.messages.Source) file. It can be used for:
|
12
|
+
# An attachment represents any kind of data associated with a line in a
|
13
|
+
# [Source](#io.cucumber.messages.Source) file. It can be used for:
|
15
14
|
#
|
16
|
-
#
|
17
|
-
#
|
18
|
-
#
|
15
|
+
# * Syntax errors during parse time
|
16
|
+
# * Screenshots captured and attached during execution
|
17
|
+
# * Logs captured and attached during execution
|
19
18
|
#
|
20
|
-
#
|
21
|
-
#
|
19
|
+
# It is not to be used for runtime errors raised/thrown during execution. This
|
20
|
+
# is captured in `TestResult`.
|
22
21
|
##
|
23
22
|
class Attachment < Message
|
24
23
|
##
|
25
|
-
#
|
26
|
-
#
|
27
|
-
#
|
28
|
-
# obtain the attachment.
|
24
|
+
# The body of the attachment. If `contentEncoding` is `IDENTITY`, the attachment
|
25
|
+
# is simply the string. If it's `BASE64`, the string should be Base64 decoded to
|
26
|
+
# obtain the attachment.
|
29
27
|
##
|
30
28
|
attr_reader :body
|
31
29
|
|
32
30
|
##
|
33
|
-
#
|
34
|
-
# Whether to interpret `body` "as-is" (IDENTITY) or if it needs to be Base64-decoded (BASE64).
|
31
|
+
# Whether to interpret `body` "as-is" (IDENTITY) or if it needs to be Base64-decoded (BASE64).
|
35
32
|
#
|
36
|
-
#
|
37
|
-
#
|
33
|
+
# Content encoding is *not* determined by the media type, but rather by the type
|
34
|
+
# of the object being attached:
|
38
35
|
#
|
39
|
-
#
|
40
|
-
#
|
41
|
-
#
|
36
|
+
# - string: IDENTITY
|
37
|
+
# - byte array: BASE64
|
38
|
+
# - stream: BASE64
|
42
39
|
##
|
43
40
|
attr_reader :content_encoding
|
44
41
|
|
45
42
|
##
|
46
|
-
#
|
47
|
-
# Suggested file name of the attachment. (Provided by the user as an argument to `attach`)
|
43
|
+
# Suggested file name of the attachment. (Provided by the user as an argument to `attach`)
|
48
44
|
##
|
49
45
|
attr_reader :file_name
|
50
46
|
|
51
47
|
##
|
52
|
-
#
|
53
|
-
#
|
54
|
-
#
|
55
|
-
#
|
56
|
-
# and `text/x.cucumber.stacktrace+plain`
|
48
|
+
# The media type of the data. This can be any valid
|
49
|
+
# [IANA Media Type](https://www.iana.org/assignments/media-types/media-types.xhtml)
|
50
|
+
# as well as Cucumber-specific media types such as `text/x.cucumber.gherkin+plain`
|
51
|
+
# and `text/x.cucumber.stacktrace+plain`
|
57
52
|
##
|
58
53
|
attr_reader :media_type
|
59
54
|
|
@@ -70,18 +65,17 @@ module Cucumber
|
|
70
65
|
attr_reader :test_step_id
|
71
66
|
|
72
67
|
##
|
73
|
-
#
|
74
|
-
#
|
75
|
-
#
|
76
|
-
# each Attachment message:
|
68
|
+
# A URL where the attachment can be retrieved. This field should not be set by Cucumber.
|
69
|
+
# It should be set by a program that reads a message stream and does the following for
|
70
|
+
# each Attachment message:
|
77
71
|
#
|
78
|
-
#
|
79
|
-
#
|
80
|
-
#
|
72
|
+
# - Writes the body (after base64 decoding if necessary) to a new file.
|
73
|
+
# - Sets `body` and `contentEncoding` to `null`
|
74
|
+
# - Writes out the new attachment message
|
81
75
|
#
|
82
|
-
#
|
83
|
-
#
|
84
|
-
#
|
76
|
+
# This will result in a smaller message stream, which can improve performance and
|
77
|
+
# reduce bandwidth of message consumers. It also makes it easier to process and download attachments
|
78
|
+
# separately from reports.
|
85
79
|
##
|
86
80
|
attr_reader :url
|
87
81
|
|
@@ -8,16 +8,16 @@ module Cucumber
|
|
8
8
|
##
|
9
9
|
#
|
10
10
|
# The structure is pretty close of the Timestamp one. For clarity, a second type
|
11
|
-
#
|
11
|
+
# of message is used.
|
12
12
|
##
|
13
13
|
class Duration < Message
|
14
14
|
attr_reader :seconds
|
15
15
|
|
16
16
|
##
|
17
17
|
# Non-negative fractions of a second at nanosecond resolution. Negative
|
18
|
-
#
|
19
|
-
#
|
20
|
-
#
|
18
|
+
# second values with fractions must still have non-negative nanos values
|
19
|
+
# that count forward in time. Must be from 0 to 999,999,999
|
20
|
+
# inclusive.
|
21
21
|
##
|
22
22
|
attr_reader :nanos
|
23
23
|
|
@@ -6,14 +6,6 @@ module Cucumber
|
|
6
6
|
##
|
7
7
|
# Represents the Envelope message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
|
-
#
|
10
|
-
# When removing a field, replace it with reserved, rather than deleting the line.
|
11
|
-
# When adding a field, add it to the end and increment the number by one.
|
12
|
-
# See https://developers.google.com/protocol-buffers/docs/proto#updating for details
|
13
|
-
#
|
14
|
-
# *
|
15
|
-
# All the messages that are passed between different components/processes are Envelope
|
16
|
-
# messages.
|
17
9
|
##
|
18
10
|
class Envelope < Message
|
19
11
|
attr_reader :attachment
|
@@ -7,8 +7,7 @@ module Cucumber
|
|
7
7
|
# Represents the FeatureChild message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
# A child node of a `Feature` node
|
10
|
+
# A child node of a `Feature` node
|
12
11
|
##
|
13
12
|
class FeatureChild < Message
|
14
13
|
attr_reader :rule
|
@@ -7,19 +7,17 @@ module Cucumber
|
|
7
7
|
# Represents the GherkinDocument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
# children for execution - use [Pickle](#io.cucumber.messages.Pickle) instead.
|
10
|
+
# The [AST](https://en.wikipedia.org/wiki/Abstract_syntax_tree) of a Gherkin document.
|
11
|
+
# Cucumber implementations should *not* depend on `GherkinDocument` or any of its
|
12
|
+
# children for execution - use [Pickle](#io.cucumber.messages.Pickle) instead.
|
14
13
|
#
|
15
|
-
#
|
16
|
-
#
|
14
|
+
# The only consumers of `GherkinDocument` should only be formatters that produce
|
15
|
+
# "rich" output, resembling the original Gherkin document.
|
17
16
|
##
|
18
17
|
class GherkinDocument < Message
|
19
18
|
##
|
20
|
-
#
|
21
|
-
#
|
22
|
-
# of the source, typically a file path relative to the root directory
|
19
|
+
# The [URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)
|
20
|
+
# of the source, typically a file path relative to the root directory
|
23
21
|
##
|
24
22
|
attr_reader :uri
|
25
23
|
|
@@ -7,8 +7,7 @@ module Cucumber
|
|
7
7
|
# Represents the Location message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
# Points to a line and a column in a text file
|
10
|
+
# Points to a line and a column in a text file
|
12
11
|
##
|
13
12
|
class Location < Message
|
14
13
|
attr_reader :line
|
@@ -7,14 +7,12 @@ module Cucumber
|
|
7
7
|
# Represents the Meta message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
# this for various purposes.
|
10
|
+
# This message contains meta information about the environment. Consumers can use
|
11
|
+
# this for various purposes.
|
13
12
|
##
|
14
13
|
class Meta < Message
|
15
14
|
##
|
16
|
-
#
|
17
|
-
# The [SEMVER](https://semver.org/) version number of the protocol
|
15
|
+
# The [SEMVER](https://semver.org/) version number of the protocol
|
18
16
|
##
|
19
17
|
attr_reader :protocol_version
|
20
18
|
|
@@ -7,24 +7,20 @@ module Cucumber
|
|
7
7
|
# Represents the Pickle message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
10
|
+
# A `Pickle` represents a template for a `TestCase`. It is typically derived
|
11
|
+
# from another format, such as [GherkinDocument](#io.cucumber.messages.GherkinDocument).
|
12
|
+
# In the future a `Pickle` may be derived from other formats such as Markdown or
|
13
|
+
# Excel files.
|
11
14
|
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
#
|
15
|
-
# In the future a `Pickle` may be derived from other formats such as Markdown or
|
16
|
-
# Excel files.
|
15
|
+
# By making `Pickle` the main data structure Cucumber uses for execution, the
|
16
|
+
# implementation of Cucumber itself becomes simpler, as it doesn't have to deal
|
17
|
+
# with the complex structure of a [GherkinDocument](#io.cucumber.messages.GherkinDocument).
|
17
18
|
#
|
18
|
-
#
|
19
|
-
# implementation of Cucumber itself becomes simpler, as it doesn't have to deal
|
20
|
-
# with the complex structure of a [GherkinDocument](#io.cucumber.messages.GherkinDocument).
|
21
|
-
#
|
22
|
-
# Each `PickleStep` of a `Pickle` is matched with a `StepDefinition` to create a `TestCase`
|
19
|
+
# Each `PickleStep` of a `Pickle` is matched with a `StepDefinition` to create a `TestCase`
|
23
20
|
##
|
24
21
|
class Pickle < Message
|
25
22
|
##
|
26
|
-
#
|
27
|
-
# A unique id for the pickle
|
23
|
+
# A unique id for the pickle
|
28
24
|
##
|
29
25
|
attr_reader :id
|
30
26
|
|
@@ -49,17 +45,15 @@ module Cucumber
|
|
49
45
|
attr_reader :steps
|
50
46
|
|
51
47
|
##
|
52
|
-
#
|
53
|
-
#
|
54
|
-
# It includes inherited tags from the `Feature` as well.
|
48
|
+
# One or more tags. If this pickle is constructed from a Gherkin document,
|
49
|
+
# It includes inherited tags from the `Feature` as well.
|
55
50
|
##
|
56
51
|
attr_reader :tags
|
57
52
|
|
58
53
|
##
|
59
|
-
#
|
60
|
-
#
|
61
|
-
#
|
62
|
-
# id originating from the `Scenario` AST node, and the second from the `TableRow` AST node.
|
54
|
+
# Points to the AST node locations of the pickle. The last one represents the unique
|
55
|
+
# id of the pickle. A pickle constructed from `Examples` will have the first
|
56
|
+
# id originating from the `Scenario` AST node, and the second from the `TableRow` AST node.
|
63
57
|
##
|
64
58
|
attr_reader :ast_node_ids
|
65
59
|
|
@@ -7,15 +7,14 @@ module Cucumber
|
|
7
7
|
# Represents the PickleStep message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
# An executable step
|
10
|
+
# An executable step
|
12
11
|
##
|
13
12
|
class PickleStep < Message
|
14
13
|
attr_reader :argument
|
15
14
|
|
16
15
|
##
|
17
16
|
# References the IDs of the source of the step. For Gherkin, this can be
|
18
|
-
#
|
17
|
+
# the ID of a Step, and possibly also the ID of a TableRow
|
19
18
|
##
|
20
19
|
attr_reader :ast_node_ids
|
21
20
|
|
@@ -7,8 +7,7 @@ module Cucumber
|
|
7
7
|
# Represents the RuleChild message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
# A child node of a `Rule` node
|
10
|
+
# A child node of a `Rule` node
|
12
11
|
##
|
13
12
|
class RuleChild < Message
|
14
13
|
attr_reader :background
|
@@ -7,16 +7,12 @@ module Cucumber
|
|
7
7
|
# Represents the Source message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
# *
|
13
|
-
# A source file, typically a Gherkin document or Java/Ruby/JavaScript source code
|
10
|
+
# A source file, typically a Gherkin document or Java/Ruby/JavaScript source code
|
14
11
|
##
|
15
12
|
class Source < Message
|
16
13
|
##
|
17
|
-
#
|
18
|
-
#
|
19
|
-
# of the source, typically a file path relative to the root directory
|
14
|
+
# The [URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)
|
15
|
+
# of the source, typically a file path relative to the root directory
|
20
16
|
##
|
21
17
|
attr_reader :uri
|
22
18
|
|
@@ -27,7 +23,7 @@ module Cucumber
|
|
27
23
|
|
28
24
|
##
|
29
25
|
# The media type of the file. Can be used to specify custom types, such as
|
30
|
-
#
|
26
|
+
# text/x.cucumber.gherkin+plain
|
31
27
|
##
|
32
28
|
attr_reader :media_type
|
33
29
|
|
@@ -7,9 +7,8 @@ module Cucumber
|
|
7
7
|
# Represents the SourceReference message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
# [Location](#io.cucumber.messages.Location) within that file.
|
10
|
+
# Points to a [Source](#io.cucumber.messages.Source) identified by `uri` and a
|
11
|
+
# [Location](#io.cucumber.messages.Location) within that file.
|
13
12
|
##
|
14
13
|
class SourceReference < Message
|
15
14
|
attr_reader :uri
|
@@ -7,19 +7,17 @@ module Cucumber
|
|
7
7
|
# Represents the StepMatchArgument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
# - Highlight the matched parameter in rich formatters such as the HTML formatter
|
10
|
+
# Represents a single argument extracted from a step match and passed to a step definition.
|
11
|
+
# This is used for the following purposes:
|
12
|
+
# - Construct an argument to pass to a step definition (possibly through a parameter type transform)
|
13
|
+
# - Highlight the matched parameter in rich formatters such as the HTML formatter
|
15
14
|
#
|
16
|
-
#
|
15
|
+
# This message closely matches the `Argument` class in the `cucumber-expressions` library.
|
17
16
|
##
|
18
17
|
class StepMatchArgument < Message
|
19
18
|
##
|
20
|
-
#
|
21
|
-
#
|
22
|
-
# `Group` class in the `cucumber-expressions` library.
|
19
|
+
# Represents the outermost capture group of an argument. This message closely matches the
|
20
|
+
# `Group` class in the `cucumber-expressions` library.
|
23
21
|
##
|
24
22
|
attr_reader :group
|
25
23
|
|
@@ -7,10 +7,7 @@ module Cucumber
|
|
7
7
|
# Represents the TestCase message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
# *
|
13
|
-
# A `TestCase` contains a sequence of `TestStep`s.
|
10
|
+
# A `TestCase` contains a sequence of `TestStep`s.
|
14
11
|
##
|
15
12
|
class TestCase < Message
|
16
13
|
attr_reader :id
|
@@ -9,16 +9,14 @@ module Cucumber
|
|
9
9
|
##
|
10
10
|
class TestCaseStarted < Message
|
11
11
|
##
|
12
|
-
#
|
13
|
-
#
|
14
|
-
# should increase by 1.
|
12
|
+
# The first attempt should have value 0, and for each retry the value
|
13
|
+
# should increase by 1.
|
15
14
|
##
|
16
15
|
attr_reader :attempt
|
17
16
|
|
18
17
|
##
|
19
|
-
#
|
20
|
-
#
|
21
|
-
# we use this field to group messages relating to the same attempt.
|
18
|
+
# Because a `TestCase` can be run multiple times (in case of a retry),
|
19
|
+
# we use this field to group messages relating to the same attempt.
|
22
20
|
##
|
23
21
|
attr_reader :id
|
24
22
|
|
@@ -7,9 +7,8 @@ module Cucumber
|
|
7
7
|
# Represents the TestStep message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
|
8
8
|
##
|
9
9
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
# combined with a `StepDefinition`, or from a `Hook`.
|
10
|
+
# A `TestStep` is derived from either a `PickleStep`
|
11
|
+
# combined with a `StepDefinition`, or from a `Hook`.
|
13
12
|
##
|
14
13
|
class TestStep < Message
|
15
14
|
##
|
@@ -26,8 +25,8 @@ module Cucumber
|
|
26
25
|
|
27
26
|
##
|
28
27
|
# Pointer to all the matching `StepDefinition`s (if derived from a `PickleStep`)
|
29
|
-
#
|
30
|
-
#
|
28
|
+
# Each element represents a matching step definition. A size of 0 means `UNDEFINED`,
|
29
|
+
# and a size of 2+ means `AMBIGUOUS`
|
31
30
|
##
|
32
31
|
attr_reader :step_definition_ids
|
33
32
|
|
@@ -10,16 +10,16 @@ module Cucumber
|
|
10
10
|
class Timestamp < Message
|
11
11
|
##
|
12
12
|
# Represents seconds of UTC time since Unix epoch
|
13
|
-
#
|
14
|
-
#
|
13
|
+
# 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
|
14
|
+
# 9999-12-31T23:59:59Z inclusive.
|
15
15
|
##
|
16
16
|
attr_reader :seconds
|
17
17
|
|
18
18
|
##
|
19
19
|
# Non-negative fractions of a second at nanosecond resolution. Negative
|
20
|
-
#
|
21
|
-
#
|
22
|
-
#
|
20
|
+
# second values with fractions must still have non-negative nanos values
|
21
|
+
# that count forward in time. Must be from 0 to 999,999,999
|
22
|
+
# inclusive.
|
23
23
|
##
|
24
24
|
attr_reader :nanos
|
25
25
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber-messages
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 28.
|
4
|
+
version: 28.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aslak Hellesøy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-07-
|
11
|
+
date: 2025-07-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber-compatibility-kit
|
@@ -216,5 +216,5 @@ requirements: []
|
|
216
216
|
rubygems_version: 3.5.22
|
217
217
|
signing_key:
|
218
218
|
specification_version: 4
|
219
|
-
summary: cucumber-messages-28.
|
219
|
+
summary: cucumber-messages-28.1.0
|
220
220
|
test_files: []
|