cucumber-messages 21.0.1 → 23.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,23 +213,20 @@ 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
 
244
232
  def initialize(
@@ -250,7 +238,6 @@ module Cucumber
250
238
  end
251
239
  end
252
240
 
253
-
254
241
  ##
255
242
  # Represents the GherkinDocument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
256
243
  #
@@ -261,22 +248,20 @@ module Cucumber
261
248
  #
262
249
  # The only consumers of `GherkinDocument` should only be formatters that produce
263
250
  # "rich" output, resembling the original Gherkin document.
264
- #
265
-
251
+ ##
266
252
  class GherkinDocument < ::Cucumber::Messages::Message
267
-
268
253
  ##
269
254
  # *
270
255
  # The [URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)
271
256
  # of the source, typically a file path relative to the root directory
272
-
257
+ ##
273
258
  attr_reader :uri
274
259
 
275
260
  attr_reader :feature
276
261
 
277
262
  ##
278
263
  # All the comments in the Gherkin document
279
-
264
+ ##
280
265
  attr_reader :comments
281
266
 
282
267
  def initialize(
@@ -290,18 +275,13 @@ module Cucumber
290
275
  end
291
276
  end
292
277
 
293
-
294
278
  ##
295
279
  # Represents the Background message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
296
- #
297
-
298
- #
299
-
280
+ ##
300
281
  class Background < ::Cucumber::Messages::Message
301
-
302
282
  ##
303
283
  # The location of the `Background` keyword
304
-
284
+ ##
305
285
  attr_reader :location
306
286
 
307
287
  attr_reader :keyword
@@ -331,24 +311,21 @@ module Cucumber
331
311
  end
332
312
  end
333
313
 
334
-
335
314
  ##
336
315
  # Represents the Comment message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
337
316
  #
338
317
  # *
339
318
  # A comment in a Gherkin document
340
- #
341
-
319
+ ##
342
320
  class Comment < ::Cucumber::Messages::Message
343
-
344
321
  ##
345
322
  # The location of the comment
346
-
323
+ ##
347
324
  attr_reader :location
348
325
 
349
326
  ##
350
327
  # The text of the comment
351
-
328
+ ##
352
329
  attr_reader :text
353
330
 
354
331
  def initialize(
@@ -360,15 +337,10 @@ module Cucumber
360
337
  end
361
338
  end
362
339
 
363
-
364
340
  ##
365
341
  # Represents the DataTable message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
366
- #
367
-
368
- #
369
-
342
+ ##
370
343
  class DataTable < ::Cucumber::Messages::Message
371
-
372
344
  attr_reader :location
373
345
 
374
346
  attr_reader :rows
@@ -382,15 +354,10 @@ module Cucumber
382
354
  end
383
355
  end
384
356
 
385
-
386
357
  ##
387
358
  # Represents the DocString message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
388
- #
389
-
390
- #
391
-
359
+ ##
392
360
  class DocString < ::Cucumber::Messages::Message
393
-
394
361
  attr_reader :location
395
362
 
396
363
  attr_reader :media_type
@@ -412,18 +379,13 @@ module Cucumber
412
379
  end
413
380
  end
414
381
 
415
-
416
382
  ##
417
383
  # Represents the Examples message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
418
- #
419
-
420
- #
421
-
384
+ ##
422
385
  class Examples < ::Cucumber::Messages::Message
423
-
424
386
  ##
425
387
  # The location of the `Examples` keyword
426
-
388
+ ##
427
389
  attr_reader :location
428
390
 
429
391
  attr_reader :tags
@@ -461,48 +423,43 @@ module Cucumber
461
423
  end
462
424
  end
463
425
 
464
-
465
426
  ##
466
427
  # Represents the Feature message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
467
- #
468
-
469
- #
470
-
428
+ ##
471
429
  class Feature < ::Cucumber::Messages::Message
472
-
473
430
  ##
474
431
  # The location of the `Feature` keyword
475
-
432
+ ##
476
433
  attr_reader :location
477
434
 
478
435
  ##
479
436
  # All the tags placed above the `Feature` keyword
480
-
437
+ ##
481
438
  attr_reader :tags
482
439
 
483
440
  ##
484
441
  # The [ISO 639-1](https://en.wikipedia.org/wiki/ISO_639-1) language code of the Gherkin document
485
-
442
+ ##
486
443
  attr_reader :language
487
444
 
488
445
  ##
489
446
  # The text of the `Feature` keyword (in the language specified by `language`)
490
-
447
+ ##
491
448
  attr_reader :keyword
492
449
 
493
450
  ##
494
451
  # The name of the feature (the text following the `keyword`)
495
-
452
+ ##
496
453
  attr_reader :name
497
454
 
498
455
  ##
499
456
  # The line(s) underneath the line with the `keyword` that are used as description
500
-
457
+ ##
501
458
  attr_reader :description
502
459
 
503
460
  ##
504
461
  # Zero or more children
505
-
462
+ ##
506
463
  attr_reader :children
507
464
 
508
465
  def initialize(
@@ -524,16 +481,13 @@ module Cucumber
524
481
  end
525
482
  end
526
483
 
527
-
528
484
  ##
529
485
  # Represents the FeatureChild message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
530
486
  #
531
487
  # *
532
488
  # A child node of a `Feature` node
533
- #
534
-
489
+ ##
535
490
  class FeatureChild < ::Cucumber::Messages::Message
536
-
537
491
  attr_reader :rule
538
492
 
539
493
  attr_reader :background
@@ -551,23 +505,18 @@ module Cucumber
551
505
  end
552
506
  end
553
507
 
554
-
555
508
  ##
556
509
  # Represents the Rule message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
557
- #
558
-
559
- #
560
-
510
+ ##
561
511
  class Rule < ::Cucumber::Messages::Message
562
-
563
512
  ##
564
513
  # The location of the `Rule` keyword
565
-
514
+ ##
566
515
  attr_reader :location
567
516
 
568
517
  ##
569
518
  # All the tags placed above the `Rule` keyword
570
-
519
+ ##
571
520
  attr_reader :tags
572
521
 
573
522
  attr_reader :keyword
@@ -599,16 +548,13 @@ module Cucumber
599
548
  end
600
549
  end
601
550
 
602
-
603
551
  ##
604
552
  # Represents the RuleChild message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
605
553
  #
606
554
  # *
607
555
  # A child node of a `Rule` node
608
- #
609
-
556
+ ##
610
557
  class RuleChild < ::Cucumber::Messages::Message
611
-
612
558
  attr_reader :background
613
559
 
614
560
  attr_reader :scenario
@@ -622,18 +568,13 @@ module Cucumber
622
568
  end
623
569
  end
624
570
 
625
-
626
571
  ##
627
572
  # Represents the Scenario message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
628
- #
629
-
630
- #
631
-
573
+ ##
632
574
  class Scenario < ::Cucumber::Messages::Message
633
-
634
575
  ##
635
576
  # The location of the `Scenario` keyword
636
-
577
+ ##
637
578
  attr_reader :location
638
579
 
639
580
  attr_reader :tags
@@ -671,28 +612,25 @@ module Cucumber
671
612
  end
672
613
  end
673
614
 
674
-
675
615
  ##
676
616
  # Represents the Step message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
677
617
  #
678
618
  # A step
679
- #
680
-
619
+ ##
681
620
  class Step < ::Cucumber::Messages::Message
682
-
683
621
  ##
684
622
  # The location of the steps' `keyword`
685
-
623
+ ##
686
624
  attr_reader :location
687
625
 
688
626
  ##
689
627
  # The actual keyword as it appeared in the source.
690
-
628
+ ##
691
629
  attr_reader :keyword
692
630
 
693
631
  ##
694
632
  # 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
-
633
+ ##
696
634
  attr_reader :keyword_type
697
635
 
698
636
  attr_reader :text
@@ -703,7 +641,7 @@ module Cucumber
703
641
 
704
642
  ##
705
643
  # Unique ID to be able to reference the Step from PickleStep
706
-
644
+ ##
707
645
  attr_reader :id
708
646
 
709
647
  def initialize(
@@ -725,23 +663,20 @@ module Cucumber
725
663
  end
726
664
  end
727
665
 
728
-
729
666
  ##
730
667
  # Represents the TableCell message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
731
668
  #
732
669
  # A cell in a `TableRow`
733
- #
734
-
670
+ ##
735
671
  class TableCell < ::Cucumber::Messages::Message
736
-
737
672
  ##
738
673
  # The location of the cell
739
-
674
+ ##
740
675
  attr_reader :location
741
676
 
742
677
  ##
743
678
  # The value of the cell
744
-
679
+ ##
745
680
  attr_reader :value
746
681
 
747
682
  def initialize(
@@ -753,23 +688,20 @@ module Cucumber
753
688
  end
754
689
  end
755
690
 
756
-
757
691
  ##
758
692
  # Represents the TableRow message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
759
693
  #
760
694
  # A row in a table
761
- #
762
-
695
+ ##
763
696
  class TableRow < ::Cucumber::Messages::Message
764
-
765
697
  ##
766
698
  # The location of the first cell in the row
767
-
699
+ ##
768
700
  attr_reader :location
769
701
 
770
702
  ##
771
703
  # Cells in the row
772
-
704
+ ##
773
705
  attr_reader :cells
774
706
 
775
707
  attr_reader :id
@@ -785,29 +717,26 @@ module Cucumber
785
717
  end
786
718
  end
787
719
 
788
-
789
720
  ##
790
721
  # Represents the Tag message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
791
722
  #
792
723
  # *
793
724
  # A tag
794
- #
795
-
725
+ ##
796
726
  class Tag < ::Cucumber::Messages::Message
797
-
798
727
  ##
799
728
  # Location of the tag
800
-
729
+ ##
801
730
  attr_reader :location
802
731
 
803
732
  ##
804
733
  # The name of the tag (including the leading `@`)
805
-
734
+ ##
806
735
  attr_reader :name
807
736
 
808
737
  ##
809
738
  # Unique ID to be able to reference the Tag from PickleTag
810
-
739
+ ##
811
740
  attr_reader :id
812
741
 
813
742
  def initialize(
@@ -821,15 +750,10 @@ module Cucumber
821
750
  end
822
751
  end
823
752
 
824
-
825
753
  ##
826
754
  # Represents the Hook message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
827
- #
828
-
829
- #
830
-
755
+ ##
831
756
  class Hook < ::Cucumber::Messages::Message
832
-
833
757
  attr_reader :id
834
758
 
835
759
  attr_reader :name
@@ -851,16 +775,13 @@ module Cucumber
851
775
  end
852
776
  end
853
777
 
854
-
855
778
  ##
856
779
  # Represents the Location message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
857
780
  #
858
781
  # *
859
782
  # Points to a line and a column in a text file
860
- #
861
-
783
+ ##
862
784
  class Location < ::Cucumber::Messages::Message
863
-
864
785
  attr_reader :line
865
786
 
866
787
  attr_reader :column
@@ -874,41 +795,38 @@ module Cucumber
874
795
  end
875
796
  end
876
797
 
877
-
878
798
  ##
879
799
  # Represents the Meta message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
880
800
  #
881
801
  # *
882
802
  # This message contains meta information about the environment. Consumers can use
883
803
  # this for various purposes.
884
- #
885
-
804
+ ##
886
805
  class Meta < ::Cucumber::Messages::Message
887
-
888
806
  ##
889
807
  # *
890
808
  # The [SEMVER](https://semver.org/) version number of the protocol
891
-
809
+ ##
892
810
  attr_reader :protocol_version
893
811
 
894
812
  ##
895
813
  # SpecFlow, Cucumber-JVM, Cucumber.js, Cucumber-Ruby, Behat etc.
896
-
814
+ ##
897
815
  attr_reader :implementation
898
816
 
899
817
  ##
900
818
  # Java, Ruby, Node.js etc
901
-
819
+ ##
902
820
  attr_reader :runtime
903
821
 
904
822
  ##
905
823
  # Windows, Linux, MacOS etc
906
-
824
+ ##
907
825
  attr_reader :os
908
826
 
909
827
  ##
910
828
  # 386, arm, amd64 etc
911
-
829
+ ##
912
830
  attr_reader :cpu
913
831
 
914
832
  attr_reader :ci
@@ -930,28 +848,25 @@ module Cucumber
930
848
  end
931
849
  end
932
850
 
933
-
934
851
  ##
935
852
  # Represents the Ci message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
936
853
  #
937
854
  # CI environment
938
- #
939
-
855
+ ##
940
856
  class Ci < ::Cucumber::Messages::Message
941
-
942
857
  ##
943
858
  # Name of the CI product, e.g. "Jenkins", "CircleCI" etc.
944
-
859
+ ##
945
860
  attr_reader :name
946
861
 
947
862
  ##
948
863
  # Link to the build
949
-
864
+ ##
950
865
  attr_reader :url
951
866
 
952
867
  ##
953
868
  # The build number. Some CI servers use non-numeric build numbers, which is why this is a string
954
-
869
+ ##
955
870
  attr_reader :build_number
956
871
 
957
872
  attr_reader :git
@@ -969,16 +884,13 @@ module Cucumber
969
884
  end
970
885
  end
971
886
 
972
-
973
887
  ##
974
888
  # Represents the Git message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
975
889
  #
976
890
  # Information about Git, provided by the Build/CI server as environment
977
891
  # variables.
978
- #
979
-
892
+ ##
980
893
  class Git < ::Cucumber::Messages::Message
981
-
982
894
  attr_reader :remote
983
895
 
984
896
  attr_reader :revision
@@ -1000,23 +912,20 @@ module Cucumber
1000
912
  end
1001
913
  end
1002
914
 
1003
-
1004
915
  ##
1005
916
  # Represents the Product message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1006
917
  #
1007
918
  # Used to describe various properties of Meta
1008
- #
1009
-
919
+ ##
1010
920
  class Product < ::Cucumber::Messages::Message
1011
-
1012
921
  ##
1013
922
  # The product name
1014
-
923
+ ##
1015
924
  attr_reader :name
1016
925
 
1017
926
  ##
1018
927
  # The product version
1019
-
928
+ ##
1020
929
  attr_reader :version
1021
930
 
1022
931
  def initialize(
@@ -1028,18 +937,13 @@ module Cucumber
1028
937
  end
1029
938
  end
1030
939
 
1031
-
1032
940
  ##
1033
941
  # Represents the ParameterType message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1034
- #
1035
-
1036
- #
1037
-
942
+ ##
1038
943
  class ParameterType < ::Cucumber::Messages::Message
1039
-
1040
944
  ##
1041
945
  # The name is unique, so we don't need an id.
1042
-
946
+ ##
1043
947
  attr_reader :name
1044
948
 
1045
949
  attr_reader :regular_expressions
@@ -1050,30 +954,29 @@ module Cucumber
1050
954
 
1051
955
  attr_reader :id
1052
956
 
957
+ attr_reader :source_reference
958
+
1053
959
  def initialize(
1054
960
  name: '',
1055
961
  regular_expressions: [],
1056
962
  prefer_for_regular_expression_match: false,
1057
963
  use_for_snippets: false,
1058
- id: ''
964
+ id: '',
965
+ source_reference: nil
1059
966
  )
1060
967
  @name = name
1061
968
  @regular_expressions = regular_expressions
1062
969
  @prefer_for_regular_expression_match = prefer_for_regular_expression_match
1063
970
  @use_for_snippets = use_for_snippets
1064
971
  @id = id
972
+ @source_reference = source_reference
1065
973
  end
1066
974
  end
1067
975
 
1068
-
1069
976
  ##
1070
977
  # Represents the ParseError message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1071
- #
1072
-
1073
- #
1074
-
978
+ ##
1075
979
  class ParseError < ::Cucumber::Messages::Message
1076
-
1077
980
  attr_reader :source
1078
981
 
1079
982
  attr_reader :message
@@ -1087,7 +990,6 @@ module Cucumber
1087
990
  end
1088
991
  end
1089
992
 
1090
-
1091
993
  ##
1092
994
  # Represents the Pickle message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1093
995
  #
@@ -1104,41 +1006,39 @@ module Cucumber
1104
1006
  # with the complex structure of a [GherkinDocument](#io.cucumber.messages.GherkinDocument).
1105
1007
  #
1106
1008
  # Each `PickleStep` of a `Pickle` is matched with a `StepDefinition` to create a `TestCase`
1107
- #
1108
-
1009
+ ##
1109
1010
  class Pickle < ::Cucumber::Messages::Message
1110
-
1111
1011
  ##
1112
1012
  # *
1113
1013
  # A unique id for the pickle
1114
-
1014
+ ##
1115
1015
  attr_reader :id
1116
1016
 
1117
1017
  ##
1118
1018
  # The uri of the source file
1119
-
1019
+ ##
1120
1020
  attr_reader :uri
1121
1021
 
1122
1022
  ##
1123
1023
  # The name of the pickle
1124
-
1024
+ ##
1125
1025
  attr_reader :name
1126
1026
 
1127
1027
  ##
1128
1028
  # The language of the pickle
1129
-
1029
+ ##
1130
1030
  attr_reader :language
1131
1031
 
1132
1032
  ##
1133
1033
  # One or more steps
1134
-
1034
+ ##
1135
1035
  attr_reader :steps
1136
1036
 
1137
1037
  ##
1138
1038
  # *
1139
1039
  # One or more tags. If this pickle is constructed from a Gherkin document,
1140
1040
  # It includes inherited tags from the `Feature` as well.
1141
-
1041
+ ##
1142
1042
  attr_reader :tags
1143
1043
 
1144
1044
  ##
@@ -1146,7 +1046,7 @@ module Cucumber
1146
1046
  # Points to the AST node locations of the pickle. The last one represents the unique
1147
1047
  # id of the pickle. A pickle constructed from `Examples` will have the first
1148
1048
  # id originating from the `Scenario` AST node, and the second from the `TableRow` AST node.
1149
-
1049
+ ##
1150
1050
  attr_reader :ast_node_ids
1151
1051
 
1152
1052
  def initialize(
@@ -1168,15 +1068,10 @@ module Cucumber
1168
1068
  end
1169
1069
  end
1170
1070
 
1171
-
1172
1071
  ##
1173
1072
  # Represents the PickleDocString message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1174
- #
1175
-
1176
- #
1177
-
1073
+ ##
1178
1074
  class PickleDocString < ::Cucumber::Messages::Message
1179
-
1180
1075
  attr_reader :media_type
1181
1076
 
1182
1077
  attr_reader :content
@@ -1190,34 +1085,31 @@ module Cucumber
1190
1085
  end
1191
1086
  end
1192
1087
 
1193
-
1194
1088
  ##
1195
1089
  # Represents the PickleStep message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1196
1090
  #
1197
1091
  # *
1198
1092
  # An executable step
1199
- #
1200
-
1093
+ ##
1201
1094
  class PickleStep < ::Cucumber::Messages::Message
1202
-
1203
1095
  attr_reader :argument
1204
1096
 
1205
1097
  ##
1206
1098
  # References the IDs of the source of the step. For Gherkin, this can be
1207
1099
  # the ID of a Step, and possibly also the ID of a TableRow
1208
-
1100
+ ##
1209
1101
  attr_reader :ast_node_ids
1210
1102
 
1211
1103
  ##
1212
1104
  # A unique ID for the PickleStep
1213
-
1105
+ ##
1214
1106
  attr_reader :id
1215
1107
 
1216
1108
  ##
1217
1109
  # The context in which the step was specified: context (Given), action (When) or outcome (Then).
1218
1110
  #
1219
1111
  # Note that the keywords `But` and `And` inherit their meaning from prior steps and the `*` 'keyword' doesn't have specific meaning (hence Unknown)
1220
-
1112
+ ##
1221
1113
  attr_reader :type
1222
1114
 
1223
1115
  attr_reader :text
@@ -1237,15 +1129,12 @@ module Cucumber
1237
1129
  end
1238
1130
  end
1239
1131
 
1240
-
1241
1132
  ##
1242
1133
  # Represents the PickleStepArgument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1243
1134
  #
1244
1135
  # An optional argument
1245
- #
1246
-
1136
+ ##
1247
1137
  class PickleStepArgument < ::Cucumber::Messages::Message
1248
-
1249
1138
  attr_reader :doc_string
1250
1139
 
1251
1140
  attr_reader :data_table
@@ -1259,15 +1148,10 @@ module Cucumber
1259
1148
  end
1260
1149
  end
1261
1150
 
1262
-
1263
1151
  ##
1264
1152
  # Represents the PickleTable message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1265
- #
1266
-
1267
- #
1268
-
1153
+ ##
1269
1154
  class PickleTable < ::Cucumber::Messages::Message
1270
-
1271
1155
  attr_reader :rows
1272
1156
 
1273
1157
  def initialize(
@@ -1277,15 +1161,10 @@ module Cucumber
1277
1161
  end
1278
1162
  end
1279
1163
 
1280
-
1281
1164
  ##
1282
1165
  # Represents the PickleTableCell message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1283
- #
1284
-
1285
- #
1286
-
1166
+ ##
1287
1167
  class PickleTableCell < ::Cucumber::Messages::Message
1288
-
1289
1168
  attr_reader :value
1290
1169
 
1291
1170
  def initialize(
@@ -1295,15 +1174,10 @@ module Cucumber
1295
1174
  end
1296
1175
  end
1297
1176
 
1298
-
1299
1177
  ##
1300
1178
  # Represents the PickleTableRow message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1301
- #
1302
-
1303
- #
1304
-
1179
+ ##
1305
1180
  class PickleTableRow < ::Cucumber::Messages::Message
1306
-
1307
1181
  attr_reader :cells
1308
1182
 
1309
1183
  def initialize(
@@ -1313,21 +1187,18 @@ module Cucumber
1313
1187
  end
1314
1188
  end
1315
1189
 
1316
-
1317
1190
  ##
1318
1191
  # Represents the PickleTag message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1319
1192
  #
1320
1193
  # *
1321
1194
  # A tag
1322
- #
1323
-
1195
+ ##
1324
1196
  class PickleTag < ::Cucumber::Messages::Message
1325
-
1326
1197
  attr_reader :name
1327
1198
 
1328
1199
  ##
1329
1200
  # Points to the AST node this was created from
1330
-
1201
+ ##
1331
1202
  attr_reader :ast_node_id
1332
1203
 
1333
1204
  def initialize(
@@ -1339,7 +1210,6 @@ module Cucumber
1339
1210
  end
1340
1211
  end
1341
1212
 
1342
-
1343
1213
  ##
1344
1214
  # Represents the Source message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1345
1215
  #
@@ -1347,26 +1217,24 @@ module Cucumber
1347
1217
  #
1348
1218
  # *
1349
1219
  # A source file, typically a Gherkin document or Java/Ruby/JavaScript source code
1350
- #
1351
-
1220
+ ##
1352
1221
  class Source < ::Cucumber::Messages::Message
1353
-
1354
1222
  ##
1355
1223
  # *
1356
1224
  # The [URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)
1357
1225
  # of the source, typically a file path relative to the root directory
1358
-
1226
+ ##
1359
1227
  attr_reader :uri
1360
1228
 
1361
1229
  ##
1362
1230
  # The contents of the file
1363
-
1231
+ ##
1364
1232
  attr_reader :data
1365
1233
 
1366
1234
  ##
1367
1235
  # The media type of the file. Can be used to specify custom types, such as
1368
1236
  # text/x.cucumber.gherkin+plain
1369
-
1237
+ ##
1370
1238
  attr_reader :media_type
1371
1239
 
1372
1240
  def initialize(
@@ -1380,17 +1248,14 @@ module Cucumber
1380
1248
  end
1381
1249
  end
1382
1250
 
1383
-
1384
1251
  ##
1385
1252
  # Represents the SourceReference message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1386
1253
  #
1387
1254
  # *
1388
1255
  # Points to a [Source](#io.cucumber.messages.Source) identified by `uri` and a
1389
1256
  # [Location](#io.cucumber.messages.Location) within that file.
1390
- #
1391
-
1257
+ ##
1392
1258
  class SourceReference < ::Cucumber::Messages::Message
1393
-
1394
1259
  attr_reader :uri
1395
1260
 
1396
1261
  attr_reader :java_method
@@ -1412,15 +1277,10 @@ module Cucumber
1412
1277
  end
1413
1278
  end
1414
1279
 
1415
-
1416
1280
  ##
1417
1281
  # Represents the JavaMethod message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1418
- #
1419
-
1420
- #
1421
-
1282
+ ##
1422
1283
  class JavaMethod < ::Cucumber::Messages::Message
1423
-
1424
1284
  attr_reader :class_name
1425
1285
 
1426
1286
  attr_reader :method_name
@@ -1438,15 +1298,10 @@ module Cucumber
1438
1298
  end
1439
1299
  end
1440
1300
 
1441
-
1442
1301
  ##
1443
1302
  # Represents the JavaStackTraceElement message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1444
- #
1445
-
1446
- #
1447
-
1303
+ ##
1448
1304
  class JavaStackTraceElement < ::Cucumber::Messages::Message
1449
-
1450
1305
  attr_reader :class_name
1451
1306
 
1452
1307
  attr_reader :file_name
@@ -1464,15 +1319,10 @@ module Cucumber
1464
1319
  end
1465
1320
  end
1466
1321
 
1467
-
1468
1322
  ##
1469
1323
  # Represents the StepDefinition message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1470
- #
1471
-
1472
- #
1473
-
1324
+ ##
1474
1325
  class StepDefinition < ::Cucumber::Messages::Message
1475
-
1476
1326
  attr_reader :id
1477
1327
 
1478
1328
  attr_reader :pattern
@@ -1490,15 +1340,10 @@ module Cucumber
1490
1340
  end
1491
1341
  end
1492
1342
 
1493
-
1494
1343
  ##
1495
1344
  # Represents the StepDefinitionPattern message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1496
- #
1497
-
1498
- #
1499
-
1345
+ ##
1500
1346
  class StepDefinitionPattern < ::Cucumber::Messages::Message
1501
-
1502
1347
  attr_reader :source
1503
1348
 
1504
1349
  attr_reader :type
@@ -1512,7 +1357,6 @@ module Cucumber
1512
1357
  end
1513
1358
  end
1514
1359
 
1515
-
1516
1360
  ##
1517
1361
  # Represents the TestCase message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1518
1362
  #
@@ -1520,15 +1364,13 @@ module Cucumber
1520
1364
  #
1521
1365
  # *
1522
1366
  # A `TestCase` contains a sequence of `TestStep`s.
1523
- #
1524
-
1367
+ ##
1525
1368
  class TestCase < ::Cucumber::Messages::Message
1526
-
1527
1369
  attr_reader :id
1528
1370
 
1529
1371
  ##
1530
1372
  # The ID of the `Pickle` this `TestCase` is derived from.
1531
-
1373
+ ##
1532
1374
  attr_reader :pickle_id
1533
1375
 
1534
1376
  attr_reader :test_steps
@@ -1544,15 +1386,10 @@ module Cucumber
1544
1386
  end
1545
1387
  end
1546
1388
 
1547
-
1548
1389
  ##
1549
1390
  # Represents the Group message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1550
- #
1551
-
1552
- #
1553
-
1391
+ ##
1554
1392
  class Group < ::Cucumber::Messages::Message
1555
-
1556
1393
  attr_reader :children
1557
1394
 
1558
1395
  attr_reader :start
@@ -1570,7 +1407,6 @@ module Cucumber
1570
1407
  end
1571
1408
  end
1572
1409
 
1573
-
1574
1410
  ##
1575
1411
  # Represents the StepMatchArgument message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1576
1412
  #
@@ -1581,15 +1417,13 @@ module Cucumber
1581
1417
  # - Highlight the matched parameter in rich formatters such as the HTML formatter
1582
1418
  #
1583
1419
  # This message closely matches the `Argument` class in the `cucumber-expressions` library.
1584
- #
1585
-
1420
+ ##
1586
1421
  class StepMatchArgument < ::Cucumber::Messages::Message
1587
-
1588
1422
  ##
1589
1423
  # *
1590
1424
  # Represents the outermost capture group of an argument. This message closely matches the
1591
1425
  # `Group` class in the `cucumber-expressions` library.
1592
-
1426
+ ##
1593
1427
  attr_reader :group
1594
1428
 
1595
1429
  attr_reader :parameter_type_name
@@ -1603,15 +1437,10 @@ module Cucumber
1603
1437
  end
1604
1438
  end
1605
1439
 
1606
-
1607
1440
  ##
1608
1441
  # Represents the StepMatchArgumentsList message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1609
- #
1610
-
1611
- #
1612
-
1442
+ ##
1613
1443
  class StepMatchArgumentsList < ::Cucumber::Messages::Message
1614
-
1615
1444
  attr_reader :step_match_arguments
1616
1445
 
1617
1446
  def initialize(
@@ -1621,39 +1450,36 @@ module Cucumber
1621
1450
  end
1622
1451
  end
1623
1452
 
1624
-
1625
1453
  ##
1626
1454
  # Represents the TestStep message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1627
1455
  #
1628
1456
  # *
1629
1457
  # A `TestStep` is derived from either a `PickleStep`
1630
1458
  # combined with a `StepDefinition`, or from a `Hook`.
1631
- #
1632
-
1459
+ ##
1633
1460
  class TestStep < ::Cucumber::Messages::Message
1634
-
1635
1461
  ##
1636
1462
  # Pointer to the `Hook` (if derived from a Hook)
1637
-
1463
+ ##
1638
1464
  attr_reader :hook_id
1639
1465
 
1640
1466
  attr_reader :id
1641
1467
 
1642
1468
  ##
1643
1469
  # Pointer to the `PickleStep` (if derived from a `PickleStep`)
1644
-
1470
+ ##
1645
1471
  attr_reader :pickle_step_id
1646
1472
 
1647
1473
  ##
1648
1474
  # Pointer to all the matching `StepDefinition`s (if derived from a `PickleStep`)
1649
-
1475
+ ##
1650
1476
  attr_reader :step_definition_ids
1651
1477
 
1652
1478
  ##
1653
1479
  # A list of list of StepMatchArgument (if derived from a `PickleStep`).
1654
1480
  # Each element represents a matching step definition. A size of 0 means `UNDEFINED`,
1655
1481
  # and a size of 2+ means `AMBIGUOUS`
1656
-
1482
+ ##
1657
1483
  attr_reader :step_match_arguments_lists
1658
1484
 
1659
1485
  def initialize(
@@ -1671,15 +1497,10 @@ module Cucumber
1671
1497
  end
1672
1498
  end
1673
1499
 
1674
-
1675
1500
  ##
1676
1501
  # Represents the TestCaseFinished message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1677
- #
1678
-
1679
- #
1680
-
1502
+ ##
1681
1503
  class TestCaseFinished < ::Cucumber::Messages::Message
1682
-
1683
1504
  attr_reader :test_case_started_id
1684
1505
 
1685
1506
  attr_reader :timestamp
@@ -1697,34 +1518,29 @@ module Cucumber
1697
1518
  end
1698
1519
  end
1699
1520
 
1700
-
1701
1521
  ##
1702
1522
  # Represents the TestCaseStarted message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1703
- #
1704
-
1705
- #
1706
-
1523
+ ##
1707
1524
  class TestCaseStarted < ::Cucumber::Messages::Message
1708
-
1709
1525
  ##
1710
1526
  # *
1711
1527
  # The first attempt should have value 0, and for each retry the value
1712
1528
  # should increase by 1.
1713
-
1529
+ ##
1714
1530
  attr_reader :attempt
1715
1531
 
1716
1532
  ##
1717
1533
  # *
1718
1534
  # Because a `TestCase` can be run multiple times (in case of a retry),
1719
1535
  # we use this field to group messages relating to the same attempt.
1720
-
1536
+ ##
1721
1537
  attr_reader :id
1722
1538
 
1723
1539
  attr_reader :test_case_id
1724
1540
 
1725
1541
  ##
1726
1542
  # 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.
1727
-
1543
+ ##
1728
1544
  attr_reader :worker_id
1729
1545
 
1730
1546
  attr_reader :timestamp
@@ -1744,33 +1560,28 @@ module Cucumber
1744
1560
  end
1745
1561
  end
1746
1562
 
1747
-
1748
1563
  ##
1749
1564
  # Represents the TestRunFinished message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1750
- #
1751
-
1752
- #
1753
-
1565
+ ##
1754
1566
  class TestRunFinished < ::Cucumber::Messages::Message
1755
-
1756
1567
  ##
1757
1568
  # An informative message about the test run. Typically additional information about failure, but not necessarily.
1758
-
1569
+ ##
1759
1570
  attr_reader :message
1760
1571
 
1761
1572
  ##
1762
1573
  # A test run is successful if all steps are either passed or skipped, all before/after hooks passed and no other exceptions where thrown.
1763
-
1574
+ ##
1764
1575
  attr_reader :success
1765
1576
 
1766
1577
  ##
1767
1578
  # Timestamp when the TestRun is finished
1768
-
1579
+ ##
1769
1580
  attr_reader :timestamp
1770
1581
 
1771
1582
  ##
1772
1583
  # Any exception thrown during the test run, if any. Does not include exceptions thrown while executing steps.
1773
-
1584
+ ##
1774
1585
  attr_reader :exception
1775
1586
 
1776
1587
  def initialize(
@@ -1786,15 +1597,10 @@ module Cucumber
1786
1597
  end
1787
1598
  end
1788
1599
 
1789
-
1790
1600
  ##
1791
1601
  # Represents the TestRunStarted message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1792
- #
1793
-
1794
- #
1795
-
1602
+ ##
1796
1603
  class TestRunStarted < ::Cucumber::Messages::Message
1797
-
1798
1604
  attr_reader :timestamp
1799
1605
 
1800
1606
  def initialize(
@@ -1804,15 +1610,10 @@ module Cucumber
1804
1610
  end
1805
1611
  end
1806
1612
 
1807
-
1808
1613
  ##
1809
1614
  # Represents the TestStepFinished message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1810
- #
1811
-
1812
- #
1813
-
1615
+ ##
1814
1616
  class TestStepFinished < ::Cucumber::Messages::Message
1815
-
1816
1617
  attr_reader :test_case_started_id
1817
1618
 
1818
1619
  attr_reader :test_step_id
@@ -1834,27 +1635,22 @@ module Cucumber
1834
1635
  end
1835
1636
  end
1836
1637
 
1837
-
1838
1638
  ##
1839
1639
  # Represents the TestStepResult message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1840
- #
1841
-
1842
- #
1843
-
1640
+ ##
1844
1641
  class TestStepResult < ::Cucumber::Messages::Message
1845
-
1846
1642
  attr_reader :duration
1847
1643
 
1848
1644
  ##
1849
1645
  # An arbitrary bit of information that explains this result. This can be a stack trace of anything else.
1850
-
1646
+ ##
1851
1647
  attr_reader :message
1852
1648
 
1853
1649
  attr_reader :status
1854
1650
 
1855
1651
  ##
1856
1652
  # Exception thrown while executing this step, if any.
1857
-
1653
+ ##
1858
1654
  attr_reader :exception
1859
1655
 
1860
1656
  def initialize(
@@ -1870,15 +1666,10 @@ module Cucumber
1870
1666
  end
1871
1667
  end
1872
1668
 
1873
-
1874
1669
  ##
1875
1670
  # Represents the TestStepStarted message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1876
- #
1877
-
1878
- #
1879
-
1671
+ ##
1880
1672
  class TestStepStarted < ::Cucumber::Messages::Message
1881
-
1882
1673
  attr_reader :test_case_started_id
1883
1674
 
1884
1675
  attr_reader :test_step_id
@@ -1896,20 +1687,15 @@ module Cucumber
1896
1687
  end
1897
1688
  end
1898
1689
 
1899
-
1900
1690
  ##
1901
1691
  # Represents the Timestamp message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1902
- #
1903
-
1904
- #
1905
-
1692
+ ##
1906
1693
  class Timestamp < ::Cucumber::Messages::Message
1907
-
1908
1694
  ##
1909
1695
  # Represents seconds of UTC time since Unix epoch
1910
1696
  # 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
1911
1697
  # 9999-12-31T23:59:59Z inclusive.
1912
-
1698
+ ##
1913
1699
  attr_reader :seconds
1914
1700
 
1915
1701
  ##
@@ -1917,7 +1703,7 @@ module Cucumber
1917
1703
  # second values with fractions must still have non-negative nanos values
1918
1704
  # that count forward in time. Must be from 0 to 999,999,999
1919
1705
  # inclusive.
1920
-
1706
+ ##
1921
1707
  attr_reader :nanos
1922
1708
 
1923
1709
  def initialize(
@@ -1929,15 +1715,10 @@ module Cucumber
1929
1715
  end
1930
1716
  end
1931
1717
 
1932
-
1933
1718
  ##
1934
1719
  # Represents the UndefinedParameterType message in Cucumber's {message protocol}[https://github.com/cucumber/messages].
1935
- #
1936
-
1937
- #
1938
-
1720
+ ##
1939
1721
  class UndefinedParameterType < ::Cucumber::Messages::Message
1940
-
1941
1722
  attr_reader :expression
1942
1723
 
1943
1724
  attr_reader :name
@@ -1950,7 +1731,6 @@ module Cucumber
1950
1731
  @name = name
1951
1732
  end
1952
1733
  end
1953
-
1954
1734
  end
1955
1735
  end
1956
1736
 
@@ -1993,4 +1773,3 @@ class Cucumber::Messages::TestStepResultStatus
1993
1773
  AMBIGUOUS = 'AMBIGUOUS'
1994
1774
  FAILED = 'FAILED'
1995
1775
  end
1996
-