cucumber-messages 22.0.0 → 24.0.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.
@@ -6,7 +6,6 @@ require 'cucumber/messages/message'
6
6
  module Cucumber
7
7
  module Messages
8
8
 
9
-
10
9
  ##
11
10
  # Represents the Attachment message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
12
11
  #
@@ -22,16 +21,14 @@ module Cucumber
22
21
  #
23
22
  # It is not to be used for runtime errors raised/thrown during execution. This
24
23
  # is captured in `TestResult`.
25
- #
26
-
24
+ ##
27
25
  class Attachment < ::Cucumber::Messages::Message
28
-
29
26
  ##
30
27
  # *
31
28
  # The body of the attachment. If `contentEncoding` is `IDENTITY`, the attachment
32
29
  # is simply the string. If it's `BASE64`, the string should be Base64 decoded to
33
30
  # obtain the attachment.
34
-
31
+ ##
35
32
  attr_reader :body
36
33
 
37
34
  ##
@@ -44,13 +41,13 @@ module Cucumber
44
41
  # - string: IDENTITY
45
42
  # - byte array: BASE64
46
43
  # - stream: BASE64
47
-
44
+ ##
48
45
  attr_reader :content_encoding
49
46
 
50
47
  ##
51
48
  # *
52
49
  # Suggested file name of the attachment. (Provided by the user as an argument to `attach`)
53
-
50
+ ##
54
51
  attr_reader :file_name
55
52
 
56
53
  ##
@@ -59,7 +56,7 @@ module Cucumber
59
56
  # [IANA Media Type](https://www.iana.org/assignments/media-types/media-types.xhtml)
60
57
  # as well as Cucumber-specific media types such as `text/x.cucumber.gherkin+plain`
61
58
  # and `text/x.cucumber.stacktrace+plain`
62
-
59
+ ##
63
60
  attr_reader :media_type
64
61
 
65
62
  attr_reader :source
@@ -81,7 +78,7 @@ module Cucumber
81
78
  # This will result in a smaller message stream, which can improve performance and
82
79
  # reduce bandwidth of message consumers. It also makes it easier to process and download attachments
83
80
  # separately from reports.
84
-
81
+ ##
85
82
  attr_reader :url
86
83
 
87
84
  def initialize(
@@ -105,16 +102,13 @@ module Cucumber
105
102
  end
106
103
  end
107
104
 
108
-
109
105
  ##
110
106
  # Represents the Duration message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
111
107
  #
112
108
  # The structure is pretty close of the Timestamp one. For clarity, a second type
113
109
  # of message is used.
114
- #
115
-
110
+ ##
116
111
  class Duration < ::Cucumber::Messages::Message
117
-
118
112
  attr_reader :seconds
119
113
 
120
114
  ##
@@ -122,7 +116,7 @@ module Cucumber
122
116
  # second values with fractions must still have non-negative nanos values
123
117
  # that count forward in time. Must be from 0 to 999,999,999
124
118
  # inclusive.
125
-
119
+ ##
126
120
  attr_reader :nanos
127
121
 
128
122
  def initialize(
@@ -134,7 +128,6 @@ module Cucumber
134
128
  end
135
129
  end
136
130
 
137
-
138
131
  ##
139
132
  # Represents the Envelope message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
140
133
  #
@@ -145,10 +138,8 @@ module Cucumber
145
138
  # *
146
139
  # All the messages that are passed between different components/processes are Envelope
147
140
  # messages.
148
- #
149
-
141
+ ##
150
142
  class Envelope < ::Cucumber::Messages::Message
151
-
152
143
  attr_reader :attachment
153
144
 
154
145
  attr_reader :gherkin_document
@@ -222,35 +213,38 @@ module Cucumber
222
213
  end
223
214
  end
224
215
 
225
-
226
216
  ##
227
217
  # Represents the Exception message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
228
218
  #
229
219
  # A simplified representation of an exception
230
- #
231
-
220
+ ##
232
221
  class Exception < ::Cucumber::Messages::Message
233
-
234
222
  ##
235
223
  # The type of the exception that caused this result. E.g. "Error" or "org.opentest4j.AssertionFailedError"
236
-
224
+ ##
237
225
  attr_reader :type
238
226
 
239
227
  ##
240
228
  # The message of exception that caused this result. E.g. expected: "a" but was: "b"
241
-
229
+ ##
242
230
  attr_reader :message
243
231
 
232
+ ##
233
+ # The stringified stack trace of the exception that caused this result
234
+ ##
235
+ attr_reader :stack_trace
236
+
244
237
  def initialize(
245
238
  type: '',
246
- message: nil
239
+ message: nil,
240
+ stack_trace: nil
247
241
  )
248
242
  @type = type
249
243
  @message = message
244
+ @stack_trace = stack_trace
250
245
  end
251
246
  end
252
247
 
253
-
254
248
  ##
255
249
  # Represents the GherkinDocument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
256
250
  #
@@ -261,22 +255,20 @@ module Cucumber
261
255
  #
262
256
  # The only consumers of `GherkinDocument` should only be formatters that produce
263
257
  # "rich" output, resembling the original Gherkin document.
264
- #
265
-
258
+ ##
266
259
  class GherkinDocument < ::Cucumber::Messages::Message
267
-
268
260
  ##
269
261
  # *
270
262
  # The [URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)
271
263
  # of the source, typically a file path relative to the root directory
272
-
264
+ ##
273
265
  attr_reader :uri
274
266
 
275
267
  attr_reader :feature
276
268
 
277
269
  ##
278
270
  # All the comments in the Gherkin document
279
-
271
+ ##
280
272
  attr_reader :comments
281
273
 
282
274
  def initialize(
@@ -290,18 +282,13 @@ module Cucumber
290
282
  end
291
283
  end
292
284
 
293
-
294
285
  ##
295
286
  # Represents the Background message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
296
- #
297
-
298
- #
299
-
287
+ ##
300
288
  class Background < ::Cucumber::Messages::Message
301
-
302
289
  ##
303
290
  # The location of the `Background` keyword
304
-
291
+ ##
305
292
  attr_reader :location
306
293
 
307
294
  attr_reader :keyword
@@ -331,24 +318,21 @@ module Cucumber
331
318
  end
332
319
  end
333
320
 
334
-
335
321
  ##
336
322
  # Represents the Comment message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
337
323
  #
338
324
  # *
339
325
  # A comment in a Gherkin document
340
- #
341
-
326
+ ##
342
327
  class Comment < ::Cucumber::Messages::Message
343
-
344
328
  ##
345
329
  # The location of the comment
346
-
330
+ ##
347
331
  attr_reader :location
348
332
 
349
333
  ##
350
334
  # The text of the comment
351
-
335
+ ##
352
336
  attr_reader :text
353
337
 
354
338
  def initialize(
@@ -360,15 +344,10 @@ module Cucumber
360
344
  end
361
345
  end
362
346
 
363
-
364
347
  ##
365
348
  # Represents the DataTable message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
366
- #
367
-
368
- #
369
-
349
+ ##
370
350
  class DataTable < ::Cucumber::Messages::Message
371
-
372
351
  attr_reader :location
373
352
 
374
353
  attr_reader :rows
@@ -382,15 +361,10 @@ module Cucumber
382
361
  end
383
362
  end
384
363
 
385
-
386
364
  ##
387
365
  # Represents the DocString message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
388
- #
389
-
390
- #
391
-
366
+ ##
392
367
  class DocString < ::Cucumber::Messages::Message
393
-
394
368
  attr_reader :location
395
369
 
396
370
  attr_reader :media_type
@@ -412,18 +386,13 @@ module Cucumber
412
386
  end
413
387
  end
414
388
 
415
-
416
389
  ##
417
390
  # Represents the Examples message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
418
- #
419
-
420
- #
421
-
391
+ ##
422
392
  class Examples < ::Cucumber::Messages::Message
423
-
424
393
  ##
425
394
  # The location of the `Examples` keyword
426
-
395
+ ##
427
396
  attr_reader :location
428
397
 
429
398
  attr_reader :tags
@@ -461,48 +430,43 @@ module Cucumber
461
430
  end
462
431
  end
463
432
 
464
-
465
433
  ##
466
434
  # Represents the Feature message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
467
- #
468
-
469
- #
470
-
435
+ ##
471
436
  class Feature < ::Cucumber::Messages::Message
472
-
473
437
  ##
474
438
  # The location of the `Feature` keyword
475
-
439
+ ##
476
440
  attr_reader :location
477
441
 
478
442
  ##
479
443
  # All the tags placed above the `Feature` keyword
480
-
444
+ ##
481
445
  attr_reader :tags
482
446
 
483
447
  ##
484
448
  # The [ISO 639-1](https://en.wikipedia.org/wiki/ISO_639-1) language code of the Gherkin document
485
-
449
+ ##
486
450
  attr_reader :language
487
451
 
488
452
  ##
489
453
  # The text of the `Feature` keyword (in the language specified by `language`)
490
-
454
+ ##
491
455
  attr_reader :keyword
492
456
 
493
457
  ##
494
458
  # The name of the feature (the text following the `keyword`)
495
-
459
+ ##
496
460
  attr_reader :name
497
461
 
498
462
  ##
499
463
  # The line(s) underneath the line with the `keyword` that are used as description
500
-
464
+ ##
501
465
  attr_reader :description
502
466
 
503
467
  ##
504
468
  # Zero or more children
505
-
469
+ ##
506
470
  attr_reader :children
507
471
 
508
472
  def initialize(
@@ -524,16 +488,13 @@ module Cucumber
524
488
  end
525
489
  end
526
490
 
527
-
528
491
  ##
529
492
  # Represents the FeatureChild message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
530
493
  #
531
494
  # *
532
495
  # A child node of a `Feature` node
533
- #
534
-
496
+ ##
535
497
  class FeatureChild < ::Cucumber::Messages::Message
536
-
537
498
  attr_reader :rule
538
499
 
539
500
  attr_reader :background
@@ -551,23 +512,18 @@ module Cucumber
551
512
  end
552
513
  end
553
514
 
554
-
555
515
  ##
556
516
  # Represents the Rule message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
557
- #
558
-
559
- #
560
-
517
+ ##
561
518
  class Rule < ::Cucumber::Messages::Message
562
-
563
519
  ##
564
520
  # The location of the `Rule` keyword
565
-
521
+ ##
566
522
  attr_reader :location
567
523
 
568
524
  ##
569
525
  # All the tags placed above the `Rule` keyword
570
-
526
+ ##
571
527
  attr_reader :tags
572
528
 
573
529
  attr_reader :keyword
@@ -599,16 +555,13 @@ module Cucumber
599
555
  end
600
556
  end
601
557
 
602
-
603
558
  ##
604
559
  # Represents the RuleChild message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
605
560
  #
606
561
  # *
607
562
  # A child node of a `Rule` node
608
- #
609
-
563
+ ##
610
564
  class RuleChild < ::Cucumber::Messages::Message
611
-
612
565
  attr_reader :background
613
566
 
614
567
  attr_reader :scenario
@@ -622,18 +575,13 @@ module Cucumber
622
575
  end
623
576
  end
624
577
 
625
-
626
578
  ##
627
579
  # Represents the Scenario message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
628
- #
629
-
630
- #
631
-
580
+ ##
632
581
  class Scenario < ::Cucumber::Messages::Message
633
-
634
582
  ##
635
583
  # The location of the `Scenario` keyword
636
-
584
+ ##
637
585
  attr_reader :location
638
586
 
639
587
  attr_reader :tags
@@ -671,28 +619,25 @@ module Cucumber
671
619
  end
672
620
  end
673
621
 
674
-
675
622
  ##
676
623
  # Represents the Step message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
677
624
  #
678
625
  # A step
679
- #
680
-
626
+ ##
681
627
  class Step < ::Cucumber::Messages::Message
682
-
683
628
  ##
684
629
  # The location of the steps' `keyword`
685
-
630
+ ##
686
631
  attr_reader :location
687
632
 
688
633
  ##
689
634
  # The actual keyword as it appeared in the source.
690
-
635
+ ##
691
636
  attr_reader :keyword
692
637
 
693
638
  ##
694
639
  # The test phase signalled by the keyword: Context definition (Given), Action performance (When), Outcome assertion (Then). Other keywords signal Continuation (And and But) from a prior keyword. Please note that all translations which a dialect maps to multiple keywords (`*` is in this category for all dialects), map to 'Unknown'.
695
-
640
+ ##
696
641
  attr_reader :keyword_type
697
642
 
698
643
  attr_reader :text
@@ -703,7 +648,7 @@ module Cucumber
703
648
 
704
649
  ##
705
650
  # Unique ID to be able to reference the Step from PickleStep
706
-
651
+ ##
707
652
  attr_reader :id
708
653
 
709
654
  def initialize(
@@ -725,23 +670,20 @@ module Cucumber
725
670
  end
726
671
  end
727
672
 
728
-
729
673
  ##
730
674
  # Represents the TableCell message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
731
675
  #
732
676
  # A cell in a `TableRow`
733
- #
734
-
677
+ ##
735
678
  class TableCell < ::Cucumber::Messages::Message
736
-
737
679
  ##
738
680
  # The location of the cell
739
-
681
+ ##
740
682
  attr_reader :location
741
683
 
742
684
  ##
743
685
  # The value of the cell
744
-
686
+ ##
745
687
  attr_reader :value
746
688
 
747
689
  def initialize(
@@ -753,23 +695,20 @@ module Cucumber
753
695
  end
754
696
  end
755
697
 
756
-
757
698
  ##
758
699
  # Represents the TableRow message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
759
700
  #
760
701
  # A row in a table
761
- #
762
-
702
+ ##
763
703
  class TableRow < ::Cucumber::Messages::Message
764
-
765
704
  ##
766
705
  # The location of the first cell in the row
767
-
706
+ ##
768
707
  attr_reader :location
769
708
 
770
709
  ##
771
710
  # Cells in the row
772
-
711
+ ##
773
712
  attr_reader :cells
774
713
 
775
714
  attr_reader :id
@@ -785,29 +724,26 @@ module Cucumber
785
724
  end
786
725
  end
787
726
 
788
-
789
727
  ##
790
728
  # Represents the Tag message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
791
729
  #
792
730
  # *
793
731
  # A tag
794
- #
795
-
732
+ ##
796
733
  class Tag < ::Cucumber::Messages::Message
797
-
798
734
  ##
799
735
  # Location of the tag
800
-
736
+ ##
801
737
  attr_reader :location
802
738
 
803
739
  ##
804
740
  # The name of the tag (including the leading `@`)
805
-
741
+ ##
806
742
  attr_reader :name
807
743
 
808
744
  ##
809
745
  # Unique ID to be able to reference the Tag from PickleTag
810
-
746
+ ##
811
747
  attr_reader :id
812
748
 
813
749
  def initialize(
@@ -821,15 +757,10 @@ module Cucumber
821
757
  end
822
758
  end
823
759
 
824
-
825
760
  ##
826
761
  # Represents the Hook message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
827
- #
828
-
829
- #
830
-
762
+ ##
831
763
  class Hook < ::Cucumber::Messages::Message
832
-
833
764
  attr_reader :id
834
765
 
835
766
  attr_reader :name
@@ -851,16 +782,13 @@ module Cucumber
851
782
  end
852
783
  end
853
784
 
854
-
855
785
  ##
856
786
  # Represents the Location message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
857
787
  #
858
788
  # *
859
789
  # Points to a line and a column in a text file
860
- #
861
-
790
+ ##
862
791
  class Location < ::Cucumber::Messages::Message
863
-
864
792
  attr_reader :line
865
793
 
866
794
  attr_reader :column
@@ -874,41 +802,38 @@ module Cucumber
874
802
  end
875
803
  end
876
804
 
877
-
878
805
  ##
879
806
  # Represents the Meta message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
880
807
  #
881
808
  # *
882
809
  # This message contains meta information about the environment. Consumers can use
883
810
  # this for various purposes.
884
- #
885
-
811
+ ##
886
812
  class Meta < ::Cucumber::Messages::Message
887
-
888
813
  ##
889
814
  # *
890
815
  # The [SEMVER](https://semver.org/) version number of the protocol
891
-
816
+ ##
892
817
  attr_reader :protocol_version
893
818
 
894
819
  ##
895
820
  # SpecFlow, Cucumber-JVM, Cucumber.js, Cucumber-Ruby, Behat etc.
896
-
821
+ ##
897
822
  attr_reader :implementation
898
823
 
899
824
  ##
900
825
  # Java, Ruby, Node.js etc
901
-
826
+ ##
902
827
  attr_reader :runtime
903
828
 
904
829
  ##
905
830
  # Windows, Linux, MacOS etc
906
-
831
+ ##
907
832
  attr_reader :os
908
833
 
909
834
  ##
910
835
  # 386, arm, amd64 etc
911
-
836
+ ##
912
837
  attr_reader :cpu
913
838
 
914
839
  attr_reader :ci
@@ -930,28 +855,25 @@ module Cucumber
930
855
  end
931
856
  end
932
857
 
933
-
934
858
  ##
935
859
  # Represents the Ci message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
936
860
  #
937
861
  # CI environment
938
- #
939
-
862
+ ##
940
863
  class Ci < ::Cucumber::Messages::Message
941
-
942
864
  ##
943
865
  # Name of the CI product, e.g. "Jenkins", "CircleCI" etc.
944
-
866
+ ##
945
867
  attr_reader :name
946
868
 
947
869
  ##
948
870
  # Link to the build
949
-
871
+ ##
950
872
  attr_reader :url
951
873
 
952
874
  ##
953
875
  # The build number. Some CI servers use non-numeric build numbers, which is why this is a string
954
-
876
+ ##
955
877
  attr_reader :build_number
956
878
 
957
879
  attr_reader :git
@@ -969,16 +891,13 @@ module Cucumber
969
891
  end
970
892
  end
971
893
 
972
-
973
894
  ##
974
895
  # Represents the Git message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
975
896
  #
976
897
  # Information about Git, provided by the Build/CI server as environment
977
898
  # variables.
978
- #
979
-
899
+ ##
980
900
  class Git < ::Cucumber::Messages::Message
981
-
982
901
  attr_reader :remote
983
902
 
984
903
  attr_reader :revision
@@ -1000,23 +919,20 @@ module Cucumber
1000
919
  end
1001
920
  end
1002
921
 
1003
-
1004
922
  ##
1005
923
  # Represents the Product message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1006
924
  #
1007
925
  # Used to describe various properties of Meta
1008
- #
1009
-
926
+ ##
1010
927
  class Product < ::Cucumber::Messages::Message
1011
-
1012
928
  ##
1013
929
  # The product name
1014
-
930
+ ##
1015
931
  attr_reader :name
1016
932
 
1017
933
  ##
1018
934
  # The product version
1019
-
935
+ ##
1020
936
  attr_reader :version
1021
937
 
1022
938
  def initialize(
@@ -1028,18 +944,13 @@ module Cucumber
1028
944
  end
1029
945
  end
1030
946
 
1031
-
1032
947
  ##
1033
948
  # Represents the ParameterType message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1034
- #
1035
-
1036
- #
1037
-
949
+ ##
1038
950
  class ParameterType < ::Cucumber::Messages::Message
1039
-
1040
951
  ##
1041
952
  # The name is unique, so we don't need an id.
1042
-
953
+ ##
1043
954
  attr_reader :name
1044
955
 
1045
956
  attr_reader :regular_expressions
@@ -1069,15 +980,10 @@ module Cucumber
1069
980
  end
1070
981
  end
1071
982
 
1072
-
1073
983
  ##
1074
984
  # Represents the ParseError message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1075
- #
1076
-
1077
- #
1078
-
985
+ ##
1079
986
  class ParseError < ::Cucumber::Messages::Message
1080
-
1081
987
  attr_reader :source
1082
988
 
1083
989
  attr_reader :message
@@ -1091,7 +997,6 @@ module Cucumber
1091
997
  end
1092
998
  end
1093
999
 
1094
-
1095
1000
  ##
1096
1001
  # Represents the Pickle message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1097
1002
  #
@@ -1108,41 +1013,39 @@ module Cucumber
1108
1013
  # with the complex structure of a [GherkinDocument](#io.cucumber.messages.GherkinDocument).
1109
1014
  #
1110
1015
  # Each `PickleStep` of a `Pickle` is matched with a `StepDefinition` to create a `TestCase`
1111
- #
1112
-
1016
+ ##
1113
1017
  class Pickle < ::Cucumber::Messages::Message
1114
-
1115
1018
  ##
1116
1019
  # *
1117
1020
  # A unique id for the pickle
1118
-
1021
+ ##
1119
1022
  attr_reader :id
1120
1023
 
1121
1024
  ##
1122
1025
  # The uri of the source file
1123
-
1026
+ ##
1124
1027
  attr_reader :uri
1125
1028
 
1126
1029
  ##
1127
1030
  # The name of the pickle
1128
-
1031
+ ##
1129
1032
  attr_reader :name
1130
1033
 
1131
1034
  ##
1132
1035
  # The language of the pickle
1133
-
1036
+ ##
1134
1037
  attr_reader :language
1135
1038
 
1136
1039
  ##
1137
1040
  # One or more steps
1138
-
1041
+ ##
1139
1042
  attr_reader :steps
1140
1043
 
1141
1044
  ##
1142
1045
  # *
1143
1046
  # One or more tags. If this pickle is constructed from a Gherkin document,
1144
1047
  # It includes inherited tags from the `Feature` as well.
1145
-
1048
+ ##
1146
1049
  attr_reader :tags
1147
1050
 
1148
1051
  ##
@@ -1150,7 +1053,7 @@ module Cucumber
1150
1053
  # Points to the AST node locations of the pickle. The last one represents the unique
1151
1054
  # id of the pickle. A pickle constructed from `Examples` will have the first
1152
1055
  # id originating from the `Scenario` AST node, and the second from the `TableRow` AST node.
1153
-
1056
+ ##
1154
1057
  attr_reader :ast_node_ids
1155
1058
 
1156
1059
  def initialize(
@@ -1172,15 +1075,10 @@ module Cucumber
1172
1075
  end
1173
1076
  end
1174
1077
 
1175
-
1176
1078
  ##
1177
1079
  # Represents the PickleDocString message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1178
- #
1179
-
1180
- #
1181
-
1080
+ ##
1182
1081
  class PickleDocString < ::Cucumber::Messages::Message
1183
-
1184
1082
  attr_reader :media_type
1185
1083
 
1186
1084
  attr_reader :content
@@ -1194,34 +1092,31 @@ module Cucumber
1194
1092
  end
1195
1093
  end
1196
1094
 
1197
-
1198
1095
  ##
1199
1096
  # Represents the PickleStep message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1200
1097
  #
1201
1098
  # *
1202
1099
  # An executable step
1203
- #
1204
-
1100
+ ##
1205
1101
  class PickleStep < ::Cucumber::Messages::Message
1206
-
1207
1102
  attr_reader :argument
1208
1103
 
1209
1104
  ##
1210
1105
  # References the IDs of the source of the step. For Gherkin, this can be
1211
1106
  # the ID of a Step, and possibly also the ID of a TableRow
1212
-
1107
+ ##
1213
1108
  attr_reader :ast_node_ids
1214
1109
 
1215
1110
  ##
1216
1111
  # A unique ID for the PickleStep
1217
-
1112
+ ##
1218
1113
  attr_reader :id
1219
1114
 
1220
1115
  ##
1221
1116
  # The context in which the step was specified: context (Given), action (When) or outcome (Then).
1222
1117
  #
1223
1118
  # Note that the keywords `But` and `And` inherit their meaning from prior steps and the `*` 'keyword' doesn't have specific meaning (hence Unknown)
1224
-
1119
+ ##
1225
1120
  attr_reader :type
1226
1121
 
1227
1122
  attr_reader :text
@@ -1241,15 +1136,12 @@ module Cucumber
1241
1136
  end
1242
1137
  end
1243
1138
 
1244
-
1245
1139
  ##
1246
1140
  # Represents the PickleStepArgument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1247
1141
  #
1248
1142
  # An optional argument
1249
- #
1250
-
1143
+ ##
1251
1144
  class PickleStepArgument < ::Cucumber::Messages::Message
1252
-
1253
1145
  attr_reader :doc_string
1254
1146
 
1255
1147
  attr_reader :data_table
@@ -1263,15 +1155,10 @@ module Cucumber
1263
1155
  end
1264
1156
  end
1265
1157
 
1266
-
1267
1158
  ##
1268
1159
  # Represents the PickleTable message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1269
- #
1270
-
1271
- #
1272
-
1160
+ ##
1273
1161
  class PickleTable < ::Cucumber::Messages::Message
1274
-
1275
1162
  attr_reader :rows
1276
1163
 
1277
1164
  def initialize(
@@ -1281,15 +1168,10 @@ module Cucumber
1281
1168
  end
1282
1169
  end
1283
1170
 
1284
-
1285
1171
  ##
1286
1172
  # Represents the PickleTableCell message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1287
- #
1288
-
1289
- #
1290
-
1173
+ ##
1291
1174
  class PickleTableCell < ::Cucumber::Messages::Message
1292
-
1293
1175
  attr_reader :value
1294
1176
 
1295
1177
  def initialize(
@@ -1299,15 +1181,10 @@ module Cucumber
1299
1181
  end
1300
1182
  end
1301
1183
 
1302
-
1303
1184
  ##
1304
1185
  # Represents the PickleTableRow message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1305
- #
1306
-
1307
- #
1308
-
1186
+ ##
1309
1187
  class PickleTableRow < ::Cucumber::Messages::Message
1310
-
1311
1188
  attr_reader :cells
1312
1189
 
1313
1190
  def initialize(
@@ -1317,21 +1194,18 @@ module Cucumber
1317
1194
  end
1318
1195
  end
1319
1196
 
1320
-
1321
1197
  ##
1322
1198
  # Represents the PickleTag message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1323
1199
  #
1324
1200
  # *
1325
1201
  # A tag
1326
- #
1327
-
1202
+ ##
1328
1203
  class PickleTag < ::Cucumber::Messages::Message
1329
-
1330
1204
  attr_reader :name
1331
1205
 
1332
1206
  ##
1333
1207
  # Points to the AST node this was created from
1334
-
1208
+ ##
1335
1209
  attr_reader :ast_node_id
1336
1210
 
1337
1211
  def initialize(
@@ -1343,7 +1217,6 @@ module Cucumber
1343
1217
  end
1344
1218
  end
1345
1219
 
1346
-
1347
1220
  ##
1348
1221
  # Represents the Source message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1349
1222
  #
@@ -1351,26 +1224,24 @@ module Cucumber
1351
1224
  #
1352
1225
  # *
1353
1226
  # A source file, typically a Gherkin document or Java/Ruby/JavaScript source code
1354
- #
1355
-
1227
+ ##
1356
1228
  class Source < ::Cucumber::Messages::Message
1357
-
1358
1229
  ##
1359
1230
  # *
1360
1231
  # The [URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)
1361
1232
  # of the source, typically a file path relative to the root directory
1362
-
1233
+ ##
1363
1234
  attr_reader :uri
1364
1235
 
1365
1236
  ##
1366
1237
  # The contents of the file
1367
-
1238
+ ##
1368
1239
  attr_reader :data
1369
1240
 
1370
1241
  ##
1371
1242
  # The media type of the file. Can be used to specify custom types, such as
1372
1243
  # text/x.cucumber.gherkin+plain
1373
-
1244
+ ##
1374
1245
  attr_reader :media_type
1375
1246
 
1376
1247
  def initialize(
@@ -1384,17 +1255,14 @@ module Cucumber
1384
1255
  end
1385
1256
  end
1386
1257
 
1387
-
1388
1258
  ##
1389
1259
  # Represents the SourceReference message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1390
1260
  #
1391
1261
  # *
1392
1262
  # Points to a [Source](#io.cucumber.messages.Source) identified by `uri` and a
1393
1263
  # [Location](#io.cucumber.messages.Location) within that file.
1394
- #
1395
-
1264
+ ##
1396
1265
  class SourceReference < ::Cucumber::Messages::Message
1397
-
1398
1266
  attr_reader :uri
1399
1267
 
1400
1268
  attr_reader :java_method
@@ -1416,15 +1284,10 @@ module Cucumber
1416
1284
  end
1417
1285
  end
1418
1286
 
1419
-
1420
1287
  ##
1421
1288
  # Represents the JavaMethod message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1422
- #
1423
-
1424
- #
1425
-
1289
+ ##
1426
1290
  class JavaMethod < ::Cucumber::Messages::Message
1427
-
1428
1291
  attr_reader :class_name
1429
1292
 
1430
1293
  attr_reader :method_name
@@ -1442,15 +1305,10 @@ module Cucumber
1442
1305
  end
1443
1306
  end
1444
1307
 
1445
-
1446
1308
  ##
1447
1309
  # Represents the JavaStackTraceElement message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1448
- #
1449
-
1450
- #
1451
-
1310
+ ##
1452
1311
  class JavaStackTraceElement < ::Cucumber::Messages::Message
1453
-
1454
1312
  attr_reader :class_name
1455
1313
 
1456
1314
  attr_reader :file_name
@@ -1468,15 +1326,10 @@ module Cucumber
1468
1326
  end
1469
1327
  end
1470
1328
 
1471
-
1472
1329
  ##
1473
1330
  # Represents the StepDefinition message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1474
- #
1475
-
1476
- #
1477
-
1331
+ ##
1478
1332
  class StepDefinition < ::Cucumber::Messages::Message
1479
-
1480
1333
  attr_reader :id
1481
1334
 
1482
1335
  attr_reader :pattern
@@ -1494,15 +1347,10 @@ module Cucumber
1494
1347
  end
1495
1348
  end
1496
1349
 
1497
-
1498
1350
  ##
1499
1351
  # Represents the StepDefinitionPattern message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1500
- #
1501
-
1502
- #
1503
-
1352
+ ##
1504
1353
  class StepDefinitionPattern < ::Cucumber::Messages::Message
1505
-
1506
1354
  attr_reader :source
1507
1355
 
1508
1356
  attr_reader :type
@@ -1516,7 +1364,6 @@ module Cucumber
1516
1364
  end
1517
1365
  end
1518
1366
 
1519
-
1520
1367
  ##
1521
1368
  # Represents the TestCase message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1522
1369
  #
@@ -1524,15 +1371,13 @@ module Cucumber
1524
1371
  #
1525
1372
  # *
1526
1373
  # A `TestCase` contains a sequence of `TestStep`s.
1527
- #
1528
-
1374
+ ##
1529
1375
  class TestCase < ::Cucumber::Messages::Message
1530
-
1531
1376
  attr_reader :id
1532
1377
 
1533
1378
  ##
1534
1379
  # The ID of the `Pickle` this `TestCase` is derived from.
1535
-
1380
+ ##
1536
1381
  attr_reader :pickle_id
1537
1382
 
1538
1383
  attr_reader :test_steps
@@ -1548,15 +1393,10 @@ module Cucumber
1548
1393
  end
1549
1394
  end
1550
1395
 
1551
-
1552
1396
  ##
1553
1397
  # Represents the Group message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1554
- #
1555
-
1556
- #
1557
-
1398
+ ##
1558
1399
  class Group < ::Cucumber::Messages::Message
1559
-
1560
1400
  attr_reader :children
1561
1401
 
1562
1402
  attr_reader :start
@@ -1574,7 +1414,6 @@ module Cucumber
1574
1414
  end
1575
1415
  end
1576
1416
 
1577
-
1578
1417
  ##
1579
1418
  # Represents the StepMatchArgument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1580
1419
  #
@@ -1585,15 +1424,13 @@ module Cucumber
1585
1424
  # - Highlight the matched parameter in rich formatters such as the HTML formatter
1586
1425
  #
1587
1426
  # This message closely matches the `Argument` class in the `cucumber-expressions` library.
1588
- #
1589
-
1427
+ ##
1590
1428
  class StepMatchArgument < ::Cucumber::Messages::Message
1591
-
1592
1429
  ##
1593
1430
  # *
1594
1431
  # Represents the outermost capture group of an argument. This message closely matches the
1595
1432
  # `Group` class in the `cucumber-expressions` library.
1596
-
1433
+ ##
1597
1434
  attr_reader :group
1598
1435
 
1599
1436
  attr_reader :parameter_type_name
@@ -1607,15 +1444,10 @@ module Cucumber
1607
1444
  end
1608
1445
  end
1609
1446
 
1610
-
1611
1447
  ##
1612
1448
  # Represents the StepMatchArgumentsList message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1613
- #
1614
-
1615
- #
1616
-
1449
+ ##
1617
1450
  class StepMatchArgumentsList < ::Cucumber::Messages::Message
1618
-
1619
1451
  attr_reader :step_match_arguments
1620
1452
 
1621
1453
  def initialize(
@@ -1625,39 +1457,36 @@ module Cucumber
1625
1457
  end
1626
1458
  end
1627
1459
 
1628
-
1629
1460
  ##
1630
1461
  # Represents the TestStep message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1631
1462
  #
1632
1463
  # *
1633
1464
  # A `TestStep` is derived from either a `PickleStep`
1634
1465
  # combined with a `StepDefinition`, or from a `Hook`.
1635
- #
1636
-
1466
+ ##
1637
1467
  class TestStep < ::Cucumber::Messages::Message
1638
-
1639
1468
  ##
1640
1469
  # Pointer to the `Hook` (if derived from a Hook)
1641
-
1470
+ ##
1642
1471
  attr_reader :hook_id
1643
1472
 
1644
1473
  attr_reader :id
1645
1474
 
1646
1475
  ##
1647
1476
  # Pointer to the `PickleStep` (if derived from a `PickleStep`)
1648
-
1477
+ ##
1649
1478
  attr_reader :pickle_step_id
1650
1479
 
1651
1480
  ##
1652
1481
  # Pointer to all the matching `StepDefinition`s (if derived from a `PickleStep`)
1653
-
1482
+ ##
1654
1483
  attr_reader :step_definition_ids
1655
1484
 
1656
1485
  ##
1657
1486
  # A list of list of StepMatchArgument (if derived from a `PickleStep`).
1658
1487
  # Each element represents a matching step definition. A size of 0 means `UNDEFINED`,
1659
1488
  # and a size of 2+ means `AMBIGUOUS`
1660
-
1489
+ ##
1661
1490
  attr_reader :step_match_arguments_lists
1662
1491
 
1663
1492
  def initialize(
@@ -1675,15 +1504,10 @@ module Cucumber
1675
1504
  end
1676
1505
  end
1677
1506
 
1678
-
1679
1507
  ##
1680
1508
  # Represents the TestCaseFinished message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1681
- #
1682
-
1683
- #
1684
-
1509
+ ##
1685
1510
  class TestCaseFinished < ::Cucumber::Messages::Message
1686
-
1687
1511
  attr_reader :test_case_started_id
1688
1512
 
1689
1513
  attr_reader :timestamp
@@ -1701,34 +1525,29 @@ module Cucumber
1701
1525
  end
1702
1526
  end
1703
1527
 
1704
-
1705
1528
  ##
1706
1529
  # Represents the TestCaseStarted message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1707
- #
1708
-
1709
- #
1710
-
1530
+ ##
1711
1531
  class TestCaseStarted < ::Cucumber::Messages::Message
1712
-
1713
1532
  ##
1714
1533
  # *
1715
1534
  # The first attempt should have value 0, and for each retry the value
1716
1535
  # should increase by 1.
1717
-
1536
+ ##
1718
1537
  attr_reader :attempt
1719
1538
 
1720
1539
  ##
1721
1540
  # *
1722
1541
  # Because a `TestCase` can be run multiple times (in case of a retry),
1723
1542
  # we use this field to group messages relating to the same attempt.
1724
-
1543
+ ##
1725
1544
  attr_reader :id
1726
1545
 
1727
1546
  attr_reader :test_case_id
1728
1547
 
1729
1548
  ##
1730
1549
  # An identifier for the worker process running this test case, if test cases are being run in parallel. The identifier will be unique per worker, but no particular format is defined - it could be an index, uuid, machine name etc - and as such should be assumed that it's not human readable.
1731
-
1550
+ ##
1732
1551
  attr_reader :worker_id
1733
1552
 
1734
1553
  attr_reader :timestamp
@@ -1748,33 +1567,28 @@ module Cucumber
1748
1567
  end
1749
1568
  end
1750
1569
 
1751
-
1752
1570
  ##
1753
1571
  # Represents the TestRunFinished message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1754
- #
1755
-
1756
- #
1757
-
1572
+ ##
1758
1573
  class TestRunFinished < ::Cucumber::Messages::Message
1759
-
1760
1574
  ##
1761
1575
  # An informative message about the test run. Typically additional information about failure, but not necessarily.
1762
-
1576
+ ##
1763
1577
  attr_reader :message
1764
1578
 
1765
1579
  ##
1766
1580
  # A test run is successful if all steps are either passed or skipped, all before/after hooks passed and no other exceptions where thrown.
1767
-
1581
+ ##
1768
1582
  attr_reader :success
1769
1583
 
1770
1584
  ##
1771
1585
  # Timestamp when the TestRun is finished
1772
-
1586
+ ##
1773
1587
  attr_reader :timestamp
1774
1588
 
1775
1589
  ##
1776
1590
  # Any exception thrown during the test run, if any. Does not include exceptions thrown while executing steps.
1777
-
1591
+ ##
1778
1592
  attr_reader :exception
1779
1593
 
1780
1594
  def initialize(
@@ -1790,15 +1604,10 @@ module Cucumber
1790
1604
  end
1791
1605
  end
1792
1606
 
1793
-
1794
1607
  ##
1795
1608
  # Represents the TestRunStarted message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1796
- #
1797
-
1798
- #
1799
-
1609
+ ##
1800
1610
  class TestRunStarted < ::Cucumber::Messages::Message
1801
-
1802
1611
  attr_reader :timestamp
1803
1612
 
1804
1613
  def initialize(
@@ -1808,15 +1617,10 @@ module Cucumber
1808
1617
  end
1809
1618
  end
1810
1619
 
1811
-
1812
1620
  ##
1813
1621
  # Represents the TestStepFinished message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1814
- #
1815
-
1816
- #
1817
-
1622
+ ##
1818
1623
  class TestStepFinished < ::Cucumber::Messages::Message
1819
-
1820
1624
  attr_reader :test_case_started_id
1821
1625
 
1822
1626
  attr_reader :test_step_id
@@ -1838,27 +1642,22 @@ module Cucumber
1838
1642
  end
1839
1643
  end
1840
1644
 
1841
-
1842
1645
  ##
1843
1646
  # Represents the TestStepResult message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1844
- #
1845
-
1846
- #
1847
-
1647
+ ##
1848
1648
  class TestStepResult < ::Cucumber::Messages::Message
1849
-
1850
1649
  attr_reader :duration
1851
1650
 
1852
1651
  ##
1853
1652
  # An arbitrary bit of information that explains this result. This can be a stack trace of anything else.
1854
-
1653
+ ##
1855
1654
  attr_reader :message
1856
1655
 
1857
1656
  attr_reader :status
1858
1657
 
1859
1658
  ##
1860
1659
  # Exception thrown while executing this step, if any.
1861
-
1660
+ ##
1862
1661
  attr_reader :exception
1863
1662
 
1864
1663
  def initialize(
@@ -1874,15 +1673,10 @@ module Cucumber
1874
1673
  end
1875
1674
  end
1876
1675
 
1877
-
1878
1676
  ##
1879
1677
  # Represents the TestStepStarted message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1880
- #
1881
-
1882
- #
1883
-
1678
+ ##
1884
1679
  class TestStepStarted < ::Cucumber::Messages::Message
1885
-
1886
1680
  attr_reader :test_case_started_id
1887
1681
 
1888
1682
  attr_reader :test_step_id
@@ -1900,20 +1694,15 @@ module Cucumber
1900
1694
  end
1901
1695
  end
1902
1696
 
1903
-
1904
1697
  ##
1905
1698
  # Represents the Timestamp message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1906
- #
1907
-
1908
- #
1909
-
1699
+ ##
1910
1700
  class Timestamp < ::Cucumber::Messages::Message
1911
-
1912
1701
  ##
1913
1702
  # Represents seconds of UTC time since Unix epoch
1914
1703
  # 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
1915
1704
  # 9999-12-31T23:59:59Z inclusive.
1916
-
1705
+ ##
1917
1706
  attr_reader :seconds
1918
1707
 
1919
1708
  ##
@@ -1921,7 +1710,7 @@ module Cucumber
1921
1710
  # second values with fractions must still have non-negative nanos values
1922
1711
  # that count forward in time. Must be from 0 to 999,999,999
1923
1712
  # inclusive.
1924
-
1713
+ ##
1925
1714
  attr_reader :nanos
1926
1715
 
1927
1716
  def initialize(
@@ -1933,15 +1722,10 @@ module Cucumber
1933
1722
  end
1934
1723
  end
1935
1724
 
1936
-
1937
1725
  ##
1938
1726
  # Represents the UndefinedParameterType message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1939
- #
1940
-
1941
- #
1942
-
1727
+ ##
1943
1728
  class UndefinedParameterType < ::Cucumber::Messages::Message
1944
-
1945
1729
  attr_reader :expression
1946
1730
 
1947
1731
  attr_reader :name
@@ -1954,7 +1738,6 @@ module Cucumber
1954
1738
  @name = name
1955
1739
  end
1956
1740
  end
1957
-
1958
1741
  end
1959
1742
  end
1960
1743
 
@@ -1997,4 +1780,3 @@ class Cucumber::Messages::TestStepResultStatus
1997
1780
  AMBIGUOUS = 'AMBIGUOUS'
1998
1781
  FAILED = 'FAILED'
1999
1782
  end
2000
-