gherkin 2.11.6 → 2.11.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. checksums.yaml +15 -0
  2. data/.travis.yml +0 -1
  3. data/Gemfile +1 -1
  4. data/History.md +13 -0
  5. data/README.md +10 -4
  6. data/examples/parse_and_output_json.rb +2 -2
  7. data/ext/gherkin_lexer_ar/gherkin_lexer_ar.c +494 -494
  8. data/ext/gherkin_lexer_bg/gherkin_lexer_bg.c +30 -30
  9. data/ext/gherkin_lexer_bm/gherkin_lexer_bm.c +30 -30
  10. data/ext/gherkin_lexer_ca/gherkin_lexer_ca.c +30 -30
  11. data/ext/gherkin_lexer_cs/gherkin_lexer_cs.c +30 -30
  12. data/ext/gherkin_lexer_cy_gb/gherkin_lexer_cy_gb.c +30 -30
  13. data/ext/gherkin_lexer_da/gherkin_lexer_da.c +30 -30
  14. data/ext/gherkin_lexer_de/gherkin_lexer_de.c +30 -30
  15. data/ext/gherkin_lexer_el/extconf.rb +6 -0
  16. data/ext/gherkin_lexer_el/gherkin_lexer_el.c +1977 -0
  17. data/ext/gherkin_lexer_en/gherkin_lexer_en.c +30 -30
  18. data/ext/gherkin_lexer_en_au/gherkin_lexer_en_au.c +30 -30
  19. data/ext/gherkin_lexer_en_lol/gherkin_lexer_en_lol.c +30 -30
  20. data/ext/gherkin_lexer_en_old/extconf.rb +6 -0
  21. data/ext/gherkin_lexer_en_old/gherkin_lexer_en_old.c +1309 -0
  22. data/ext/gherkin_lexer_en_pirate/gherkin_lexer_en_pirate.c +30 -30
  23. data/ext/gherkin_lexer_en_scouse/gherkin_lexer_en_scouse.c +30 -30
  24. data/ext/gherkin_lexer_en_tx/gherkin_lexer_en_tx.c +30 -30
  25. data/ext/gherkin_lexer_eo/gherkin_lexer_eo.c +30 -30
  26. data/ext/gherkin_lexer_es/gherkin_lexer_es.c +30 -30
  27. data/ext/gherkin_lexer_et/gherkin_lexer_et.c +30 -30
  28. data/ext/gherkin_lexer_fa/gherkin_lexer_fa.c +30 -30
  29. data/ext/gherkin_lexer_fi/gherkin_lexer_fi.c +30 -30
  30. data/ext/gherkin_lexer_fr/gherkin_lexer_fr.c +30 -30
  31. data/ext/gherkin_lexer_he/gherkin_lexer_he.c +30 -30
  32. data/ext/gherkin_lexer_hi/gherkin_lexer_hi.c +30 -30
  33. data/ext/gherkin_lexer_hr/gherkin_lexer_hr.c +30 -30
  34. data/ext/gherkin_lexer_hu/gherkin_lexer_hu.c +30 -30
  35. data/ext/gherkin_lexer_id/gherkin_lexer_id.c +30 -30
  36. data/ext/gherkin_lexer_is/gherkin_lexer_is.c +30 -30
  37. data/ext/gherkin_lexer_it/gherkin_lexer_it.c +30 -30
  38. data/ext/gherkin_lexer_ja/gherkin_lexer_ja.c +30 -30
  39. data/ext/gherkin_lexer_ko/gherkin_lexer_ko.c +30 -30
  40. data/ext/gherkin_lexer_lt/gherkin_lexer_lt.c +30 -30
  41. data/ext/gherkin_lexer_lu/gherkin_lexer_lu.c +30 -30
  42. data/ext/gherkin_lexer_lv/gherkin_lexer_lv.c +30 -30
  43. data/ext/gherkin_lexer_nl/gherkin_lexer_nl.c +30 -30
  44. data/ext/gherkin_lexer_no/gherkin_lexer_no.c +30 -30
  45. data/ext/gherkin_lexer_pl/gherkin_lexer_pl.c +30 -30
  46. data/ext/gherkin_lexer_pt/gherkin_lexer_pt.c +30 -30
  47. data/ext/gherkin_lexer_ro/gherkin_lexer_ro.c +30 -30
  48. data/ext/gherkin_lexer_ru/gherkin_lexer_ru.c +30 -30
  49. data/ext/gherkin_lexer_sk/gherkin_lexer_sk.c +30 -30
  50. data/ext/gherkin_lexer_sr_cyrl/gherkin_lexer_sr_cyrl.c +30 -30
  51. data/ext/gherkin_lexer_sr_latn/gherkin_lexer_sr_latn.c +617 -614
  52. data/ext/gherkin_lexer_sv/gherkin_lexer_sv.c +30 -30
  53. data/ext/gherkin_lexer_tl/gherkin_lexer_tl.c +30 -30
  54. data/ext/gherkin_lexer_tr/gherkin_lexer_tr.c +30 -30
  55. data/ext/gherkin_lexer_tt/gherkin_lexer_tt.c +30 -30
  56. data/ext/gherkin_lexer_uk/gherkin_lexer_uk.c +30 -30
  57. data/ext/gherkin_lexer_uz/gherkin_lexer_uz.c +622 -614
  58. data/ext/gherkin_lexer_vi/gherkin_lexer_vi.c +30 -30
  59. data/ext/gherkin_lexer_zh_cn/gherkin_lexer_zh_cn.c +30 -30
  60. data/ext/gherkin_lexer_zh_tw/gherkin_lexer_zh_tw.c +30 -30
  61. data/features/.cucumber/stepdefs.json +66 -66
  62. data/features/step_definitions/json_formatter_steps.rb +4 -4
  63. data/features/step_definitions/json_parser_steps.rb +2 -1
  64. data/features/support/env.rb +2 -3
  65. data/gherkin.gemspec +8 -6
  66. data/lib/gherkin/formatter/json_formatter.rb +5 -5
  67. data/lib/gherkin/formatter/tag_filter.rb +2 -2
  68. data/lib/gherkin/i18n.json +28 -0
  69. data/lib/gherkin/i18n.rb +6 -6
  70. data/lib/gherkin/json_parser.rb +4 -4
  71. data/lib/gherkin/native/java.rb +2 -2
  72. data/lib/gherkin/parser/parser.rb +1 -0
  73. data/lib/gherkin/platform.rb +12 -0
  74. data/lib/gherkin/tag_expression.rb +7 -1
  75. data/spec/gherkin/formatter/json_formatter_spec.rb +74 -3
  76. data/spec/gherkin/i18n_spec.rb +2 -0
  77. data/spec/gherkin/json_parser_spec.rb +11 -10
  78. data/spec/gherkin/parser/parser_spec.rb +1 -1
  79. data/spec/gherkin/tag_expression_spec.rb +19 -15
  80. data/spec/spec_helper.rb +4 -1
  81. data/tasks/rspec.rake +1 -2
  82. metadata +139 -226
  83. data/lib/gherkin/lexer/tl.rb +0 -1723
  84. data/lib/gherkin/lexer/tt.rb +0 -1640
  85. data/spec/gherkin/output_stream_string_io.rb +0 -20
@@ -1,5 +1,5 @@
1
1
 
2
- #line 1 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
2
+ #line 1 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
3
3
  #include <assert.h>
4
4
  #include <ruby.h>
5
5
 
@@ -80,7 +80,7 @@ static VALUE rb_eGherkinLexingError;
80
80
  lexer->line_number)
81
81
 
82
82
 
83
- #line 254 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
83
+ #line 254 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
84
84
 
85
85
 
86
86
  /** Data **/
@@ -739,7 +739,7 @@ static const int lexer_error = 0;
739
739
  static const int lexer_en_main = 1;
740
740
 
741
741
 
742
- #line 258 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
742
+ #line 258 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
743
743
 
744
744
  static VALUE
745
745
  unindent(VALUE con, int start_col)
@@ -912,7 +912,7 @@ static VALUE CLexer_scan(VALUE self, VALUE input)
912
912
  cs = lexer_start;
913
913
  }
914
914
 
915
- #line 425 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
915
+ #line 425 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
916
916
 
917
917
  #line 918 "ext/gherkin_lexer_zh_tw/gherkin_lexer_zh_tw.c"
918
918
  {
@@ -988,7 +988,7 @@ _match:
988
988
  switch ( *_acts++ )
989
989
  {
990
990
  case 0:
991
- #line 83 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
991
+ #line 83 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
992
992
  {
993
993
  MARK(content_start, p);
994
994
  lexer->current_line = lexer->line_number;
@@ -996,20 +996,20 @@ _match:
996
996
  }
997
997
  break;
998
998
  case 1:
999
- #line 89 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
999
+ #line 89 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1000
1000
  {
1001
1001
  MARK(content_start, p);
1002
1002
  }
1003
1003
  break;
1004
1004
  case 2:
1005
- #line 93 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1005
+ #line 93 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1006
1006
  {
1007
1007
  lexer->current_line = lexer->line_number;
1008
1008
  lexer->start_col = p - data - lexer->last_newline;
1009
1009
  }
1010
1010
  break;
1011
1011
  case 3:
1012
- #line 98 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1012
+ #line 98 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1013
1013
  {
1014
1014
  int len = LEN(content_start, PTR_TO(final_newline));
1015
1015
  int type_len = LEN(docstring_content_type_start, PTR_TO(docstring_content_type_end));
@@ -1021,49 +1021,49 @@ _match:
1021
1021
  }
1022
1022
  break;
1023
1023
  case 4:
1024
- #line 108 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1024
+ #line 108 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1025
1025
  {
1026
1026
  MARK(docstring_content_type_start, p);
1027
1027
  }
1028
1028
  break;
1029
1029
  case 5:
1030
- #line 112 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1030
+ #line 112 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1031
1031
  {
1032
1032
  MARK(docstring_content_type_end, p);
1033
1033
  }
1034
1034
  break;
1035
1035
  case 6:
1036
- #line 116 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1036
+ #line 116 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1037
1037
  {
1038
1038
  STORE_KW_END_CON(feature);
1039
1039
  }
1040
1040
  break;
1041
1041
  case 7:
1042
- #line 120 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1042
+ #line 120 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1043
1043
  {
1044
1044
  STORE_KW_END_CON(background);
1045
1045
  }
1046
1046
  break;
1047
1047
  case 8:
1048
- #line 124 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1048
+ #line 124 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1049
1049
  {
1050
1050
  STORE_KW_END_CON(scenario);
1051
1051
  }
1052
1052
  break;
1053
1053
  case 9:
1054
- #line 128 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1054
+ #line 128 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1055
1055
  {
1056
1056
  STORE_KW_END_CON(scenario_outline);
1057
1057
  }
1058
1058
  break;
1059
1059
  case 10:
1060
- #line 132 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1060
+ #line 132 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1061
1061
  {
1062
1062
  STORE_KW_END_CON(examples);
1063
1063
  }
1064
1064
  break;
1065
1065
  case 11:
1066
- #line 136 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1066
+ #line 136 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1067
1067
  {
1068
1068
  store_kw_con(listener, "step",
1069
1069
  PTR_TO(keyword_start), LEN(keyword_start, PTR_TO(keyword_end)),
@@ -1072,34 +1072,34 @@ _match:
1072
1072
  }
1073
1073
  break;
1074
1074
  case 12:
1075
- #line 143 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1075
+ #line 143 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1076
1076
  {
1077
1077
  STORE_ATTR(comment);
1078
1078
  lexer->mark = 0;
1079
1079
  }
1080
1080
  break;
1081
1081
  case 13:
1082
- #line 148 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1082
+ #line 148 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1083
1083
  {
1084
1084
  STORE_ATTR(tag);
1085
1085
  lexer->mark = 0;
1086
1086
  }
1087
1087
  break;
1088
1088
  case 14:
1089
- #line 153 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1089
+ #line 153 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1090
1090
  {
1091
1091
  lexer->line_number += 1;
1092
1092
  MARK(final_newline, p);
1093
1093
  }
1094
1094
  break;
1095
1095
  case 15:
1096
- #line 158 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1096
+ #line 158 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1097
1097
  {
1098
1098
  MARK(last_newline, p + 1);
1099
1099
  }
1100
1100
  break;
1101
1101
  case 16:
1102
- #line 162 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1102
+ #line 162 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1103
1103
  {
1104
1104
  if (lexer->mark == 0) {
1105
1105
  MARK(mark, p);
@@ -1107,7 +1107,7 @@ _match:
1107
1107
  }
1108
1108
  break;
1109
1109
  case 17:
1110
- #line 168 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1110
+ #line 168 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1111
1111
  {
1112
1112
  MARK(keyword_end, p);
1113
1113
  MARK(keyword_start, PTR_TO(mark));
@@ -1116,13 +1116,13 @@ _match:
1116
1116
  }
1117
1117
  break;
1118
1118
  case 18:
1119
- #line 175 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1119
+ #line 175 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1120
1120
  {
1121
1121
  MARK(content_end, p);
1122
1122
  }
1123
1123
  break;
1124
1124
  case 19:
1125
- #line 179 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1125
+ #line 179 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1126
1126
  {
1127
1127
  p = p - 1;
1128
1128
  lexer->current_line = lexer->line_number;
@@ -1130,13 +1130,13 @@ _match:
1130
1130
  }
1131
1131
  break;
1132
1132
  case 20:
1133
- #line 185 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1133
+ #line 185 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1134
1134
  {
1135
1135
  MARK(content_start, p);
1136
1136
  }
1137
1137
  break;
1138
1138
  case 21:
1139
- #line 189 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1139
+ #line 189 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1140
1140
  {
1141
1141
  VALUE re_pipe, re_newline, re_backslash;
1142
1142
  VALUE con = ENCODED_STR_NEW(PTR_TO(content_start), LEN(content_start, p));
@@ -1152,13 +1152,13 @@ _match:
1152
1152
  }
1153
1153
  break;
1154
1154
  case 22:
1155
- #line 203 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1155
+ #line 203 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1156
1156
  {
1157
1157
  rb_funcall(listener, rb_intern("row"), 2, current_row, INT2FIX(lexer->current_line));
1158
1158
  }
1159
1159
  break;
1160
1160
  case 23:
1161
- #line 207 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1161
+ #line 207 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1162
1162
  {
1163
1163
  int line;
1164
1164
  if (cs < lexer_first_final) {
@@ -1221,7 +1221,7 @@ _again:
1221
1221
  while ( __nacts-- > 0 ) {
1222
1222
  switch ( *__acts++ ) {
1223
1223
  case 23:
1224
- #line 207 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1224
+ #line 207 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1225
1225
  {
1226
1226
  int line;
1227
1227
  if (cs < lexer_first_final) {
@@ -1275,7 +1275,7 @@ _again:
1275
1275
  _out: {}
1276
1276
  }
1277
1277
 
1278
- #line 426 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1278
+ #line 426 "/home/son/work/github/cucumber/gherkin/tasks/../ragel/i18n/zh_tw.c.rl"
1279
1279
 
1280
1280
  assert(p <= pe && "data overflow after parsing execute");
1281
1281
  assert(lexer->content_start <= len && "content starts after data end");
@@ -1,243 +1,243 @@
1
1
  [
2
2
  {
3
- "file_colon_line": "features/step_definitions/eyeball_steps.rb:1",
4
- "flags": "",
5
3
  "source": "^they have arrived$",
4
+ "flags": "",
5
+ "file_colon_line": "features/step_definitions/eyeball_steps.rb:1",
6
6
  "steps": [
7
7
  {
8
+ "name": "they have arrived",
8
9
  "args": [
9
10
 
10
- ],
11
- "name": "they have arrived"
11
+ ]
12
12
  }
13
13
  ]
14
14
  },
15
15
  {
16
- "file_colon_line": "features/step_definitions/gherkin_steps.rb:1",
17
- "flags": "",
18
16
  "source": "^a \"(ruby|native)\" \"([^\\\"]*)\" parser$",
17
+ "flags": "",
18
+ "file_colon_line": "features/step_definitions/gherkin_steps.rb:1",
19
19
  "steps": [
20
20
 
21
21
  ]
22
22
  },
23
23
  {
24
- "file_colon_line": "features/step_definitions/gherkin_steps.rb:5",
25
- "flags": "",
26
24
  "source": "^the\\ following\\ text\\ is\\ parsed:$",
25
+ "flags": "",
26
+ "file_colon_line": "features/step_definitions/gherkin_steps.rb:5",
27
27
  "steps": [
28
28
  {
29
+ "name": "the following text is parsed:",
29
30
  "args": [
30
31
 
31
- ],
32
- "name": "the following text is parsed:"
32
+ ]
33
33
  }
34
34
  ]
35
35
  },
36
36
  {
37
- "file_colon_line": "features/step_definitions/gherkin_steps.rb:9",
38
- "flags": "",
39
37
  "source": "^there\\ should\\ be\\ no\\ parse\\ errors$",
38
+ "flags": "",
39
+ "file_colon_line": "features/step_definitions/gherkin_steps.rb:9",
40
40
  "steps": [
41
41
  {
42
+ "name": "there should be no parse errors",
42
43
  "args": [
43
44
 
44
- ],
45
- "name": "there should be no parse errors"
45
+ ]
46
46
  }
47
47
  ]
48
48
  },
49
49
  {
50
- "file_colon_line": "features/step_definitions/gherkin_steps.rb:13",
51
- "flags": "",
52
50
  "source": "^there should be a parse error on (line \\d+)$",
51
+ "flags": "",
52
+ "file_colon_line": "features/step_definitions/gherkin_steps.rb:13",
53
53
  "steps": [
54
54
  {
55
+ "name": "there should be a parse error on line 1",
55
56
  "args": [
56
57
  {
57
58
  "offset": 33,
58
59
  "val": "line 1"
59
60
  }
60
- ],
61
- "name": "there should be a parse error on line 1"
61
+ ]
62
62
  }
63
63
  ]
64
64
  },
65
65
  {
66
- "file_colon_line": "features/step_definitions/gherkin_steps.rb:17",
67
- "flags": "",
68
66
  "source": "^there should be parse errors on (lines .*)$",
67
+ "flags": "",
68
+ "file_colon_line": "features/step_definitions/gherkin_steps.rb:17",
69
69
  "steps": [
70
70
  {
71
+ "name": "there should be parse errors on lines 1 and 2",
71
72
  "args": [
72
73
  {
73
74
  "offset": 32,
74
75
  "val": "lines 1 and 2"
75
76
  }
76
- ],
77
- "name": "there should be parse errors on lines 1 and 2"
77
+ ]
78
78
  },
79
79
  {
80
+ "name": "there should be parse errors on lines 1 through 3",
80
81
  "args": [
81
82
  {
82
83
  "offset": 32,
83
84
  "val": "lines 1 through 3"
84
85
  }
85
- ],
86
- "name": "there should be parse errors on lines 1 through 3"
86
+ ]
87
87
  },
88
88
  {
89
+ "name": "there should be parse errors on lines 10 and 17",
89
90
  "args": [
90
91
  {
91
92
  "offset": 32,
92
93
  "val": "lines 10 and 17"
93
94
  }
94
- ],
95
- "name": "there should be parse errors on lines 10 and 17"
95
+ ]
96
96
  },
97
97
  {
98
+ "name": "there should be parse errors on lines 3 and 5",
98
99
  "args": [
99
100
  {
100
101
  "offset": 32,
101
102
  "val": "lines 3 and 5"
102
103
  }
103
- ],
104
- "name": "there should be parse errors on lines 3 and 5"
104
+ ]
105
105
  },
106
106
  {
107
+ "name": "there should be parse errors on lines 5, 10 and 12",
107
108
  "args": [
108
109
  {
109
110
  "offset": 32,
110
111
  "val": "lines 5, 10 and 12"
111
112
  }
112
- ],
113
- "name": "there should be parse errors on lines 5, 10 and 12"
113
+ ]
114
114
  }
115
115
  ]
116
116
  },
117
117
  {
118
- "file_colon_line": "features/step_definitions/json_formatter_steps.rb:13",
119
- "flags": "",
120
118
  "source": "^a JSON formatter$",
119
+ "flags": "",
120
+ "file_colon_line": "features/step_definitions/json_formatter_steps.rb:13",
121
121
  "steps": [
122
122
 
123
123
  ]
124
124
  },
125
125
  {
126
- "file_colon_line": "features/step_definitions/json_formatter_steps.rb:18",
127
- "flags": "",
128
126
  "source": "^the outputted JSON should be:$",
127
+ "flags": "",
128
+ "file_colon_line": "features/step_definitions/json_formatter_steps.rb:18",
129
129
  "steps": [
130
130
  {
131
+ "name": "the outputted JSON should be:",
131
132
  "args": [
132
133
 
133
- ],
134
- "name": "the outputted JSON should be:"
134
+ ]
135
135
  }
136
136
  ]
137
137
  },
138
138
  {
139
- "file_colon_line": "features/step_definitions/json_parser_steps.rb:5",
140
- "flags": "",
141
139
  "source": "^a PrettyFormatter$",
140
+ "flags": "",
141
+ "file_colon_line": "features/step_definitions/json_parser_steps.rb:6",
142
142
  "steps": [
143
143
 
144
144
  ]
145
145
  },
146
146
  {
147
- "file_colon_line": "features/step_definitions/json_parser_steps.rb:10",
148
- "flags": "",
149
147
  "source": "^a JSON lexer$",
148
+ "flags": "",
149
+ "file_colon_line": "features/step_definitions/json_parser_steps.rb:11",
150
150
  "steps": [
151
151
 
152
152
  ]
153
153
  },
154
154
  {
155
- "file_colon_line": "features/step_definitions/json_parser_steps.rb:14",
156
- "flags": "",
157
155
  "source": "^the following JSON is parsed:$",
156
+ "flags": "",
157
+ "file_colon_line": "features/step_definitions/json_parser_steps.rb:15",
158
158
  "steps": [
159
159
  {
160
+ "name": "the following JSON is parsed:",
160
161
  "args": [
161
162
 
162
- ],
163
- "name": "the following JSON is parsed:"
163
+ ]
164
164
  }
165
165
  ]
166
166
  },
167
167
  {
168
- "file_colon_line": "features/step_definitions/json_parser_steps.rb:18",
169
- "flags": "",
170
168
  "source": "^the outputted text should be:$",
169
+ "flags": "",
170
+ "file_colon_line": "features/step_definitions/json_parser_steps.rb:19",
171
171
  "steps": [
172
172
  {
173
+ "name": "the outputted text should be:",
173
174
  "args": [
174
175
 
175
- ],
176
- "name": "the outputted text should be:"
176
+ ]
177
177
  }
178
178
  ]
179
179
  },
180
180
  {
181
- "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:50",
182
- "flags": "",
183
181
  "source": "^I have Cucumber's source code next to Gherkin's$",
182
+ "flags": "",
183
+ "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:50",
184
184
  "steps": [
185
185
  {
186
+ "name": "I have Cucumber's source code next to Gherkin's",
186
187
  "args": [
187
188
 
188
- ],
189
- "name": "I have Cucumber's source code next to Gherkin's"
189
+ ]
190
190
  }
191
191
  ]
192
192
  },
193
193
  {
194
- "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:55",
195
- "flags": "",
196
194
  "source": "^I find all of the \\.feature files$",
195
+ "flags": "",
196
+ "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:55",
197
197
  "steps": [
198
198
  {
199
+ "name": "I find all of the .feature files",
199
200
  "args": [
200
201
 
201
- ],
202
- "name": "I find all of the .feature files"
202
+ ]
203
203
  }
204
204
  ]
205
205
  },
206
206
  {
207
- "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:59",
208
- "flags": "",
209
207
  "source": "^I send each prettified original through the \"([^\"]*)\" machinery$",
208
+ "flags": "",
209
+ "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:59",
210
210
  "steps": [
211
211
  {
212
+ "name": "I send each prettified original through the \"json\" machinery",
212
213
  "args": [
213
214
  {
214
215
  "offset": 45,
215
216
  "val": "json"
216
217
  }
217
- ],
218
- "name": "I send each prettified original through the \"json\" machinery"
218
+ ]
219
219
  },
220
220
  {
221
+ "name": "I send each prettified original through the \"pretty\" machinery",
221
222
  "args": [
222
223
  {
223
224
  "offset": 45,
224
225
  "val": "pretty"
225
226
  }
226
- ],
227
- "name": "I send each prettified original through the \"pretty\" machinery"
227
+ ]
228
228
  }
229
229
  ]
230
230
  },
231
231
  {
232
- "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:83",
233
- "flags": "",
234
232
  "source": "^the machinery output should be identical to the prettified original$",
233
+ "flags": "",
234
+ "file_colon_line": "features/step_definitions/pretty_formatter_steps.rb:83",
235
235
  "steps": [
236
236
  {
237
+ "name": "the machinery output should be identical to the prettified original",
237
238
  "args": [
238
239
 
239
- ],
240
- "name": "the machinery output should be identical to the prettified original"
240
+ ]
241
241
  }
242
242
  ]
243
243
  }