gherkin 2.9.3 → 2.10.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.
@@ -0,0 +1,44 @@
1
+ # language: pt
2
+ Funcionalidade: Reconhece "Funcionalidade"
3
+
4
+ Contexto: Reconhece "Contexto"
5
+
6
+ Cenário: Reconhece "Cenário" com acento
7
+
8
+ Cenario: Reconhece "Cenário" sem acento
9
+
10
+ Esquema do Cenário: Reconhece "Esquema do Cenário" com acento
11
+ Dado que <Valor> é um valor e que reconhece "Dado";
12
+ Dada a afirmação de que reconhece "Dada";
13
+ Dados os factos acima e ainda que reconhece "Dados";
14
+ Dadas as afirmações acima e ainda que reconhece "Dadas";
15
+ Quando reconhece "Quando";
16
+ Então também reconhece "Então" com acento e
17
+ Entao também reconhece "Então" sem acento;
18
+ E reconhece "E";
19
+ Mas também reconhece "Mas".
20
+
21
+ Exemplos: Reconhece "Exemplos"
22
+ | Valor |
23
+ | 1 |
24
+
25
+ Esquema do Cenario: Reconhece "Esquema do Cenário" sem acento
26
+ Dado que <Valor> é um valor;
27
+
28
+ Cenários: Reconhece "Cenários" com acento
29
+ | Valor |
30
+ | 1 |
31
+
32
+ Delineação do Cenário: Reconhece "Delineação do Cenário" com acento
33
+ Dado que <Valor> é um valor;
34
+
35
+ Cenarios: Reconhece "Cenários" sem acento
36
+ | Valor |
37
+ | 1 |
38
+
39
+ Delineacao do Cenario: Reconhece "Delineação do Cenário" sem acento
40
+ Dado que <Valor> é um valor;
41
+
42
+ Exemplos: Reconhece "Exemplos"
43
+ | Valor |
44
+ | 1 |
@@ -0,0 +1,4 @@
1
+ # language: pt
2
+ Característica: Reconhece "Característica" com acento
3
+
4
+ Cenário de Fundo: Reconhece "Cenário de Fundo" com acento
@@ -0,0 +1,4 @@
1
+ # language: pt
2
+ Caracteristica: Reconhece "Característica" sem acento
3
+
4
+ Cenario de Fundo: Reconhece "Cenário de Fundo" sem acento
@@ -0,0 +1,4 @@
1
+ # language: pt
2
+ Característica: Reconhece "Característica" com acento
3
+
4
+ Fundo: Reconhece "Fundo"
@@ -95,6 +95,25 @@ module Gherkin
95
95
  )
96
96
  end
97
97
 
98
+ # See https://github.com/cucumber/gherkin/pull/171
99
+ it "should highlight arguments when there are optional arguments" do
100
+ @f.uri("foo.feature")
101
+ @f.scenario(Model::Scenario.new([], [], "Scenario", "Lots of cukes", "", 3, "lots-of-cukes"))
102
+ @f.step(Model::Step.new([], "Given ", "I have 999 cukes in my belly", 3, nil, nil))
103
+ @f.match(Model::Match.new([
104
+ Gherkin::Formatter::Argument.new(nil, nil), # An optional argument
105
+ Gherkin::Formatter::Argument.new(7, '999')
106
+ ], nil))
107
+ @f.result(Model::Result.new('passed', 6, nil))
108
+
109
+ assert_io(
110
+ "\n" +
111
+ " Scenario: Lots of cukes \e[90m# foo.feature:3\e[0m\n" +
112
+ " #{executing}Given #{reset}#{executing}I have #{reset}#{executing_arg}999#{reset}#{executing} cukes in my belly#{reset}\n" +
113
+ "#{up(1)} #{passed}Given #{reset}#{passed}I have #{reset}#{passed_arg}999#{reset}#{passed} cukes in my belly#{reset}\n"
114
+ )
115
+ end
116
+
98
117
  it "should prettify scenario" do
99
118
  assert_pretty(%{Feature: Feature Description
100
119
  Some preamble
@@ -76,6 +76,80 @@ module Gherkin
76
76
  ]
77
77
  end
78
78
 
79
+ it "should recognize keywords in Portuguese (1st variant)" do
80
+ lexer = Gherkin::Lexer::I18nLexer.new(@listener, false)
81
+ scan_file(lexer, "i18n_pt1.feature")
82
+ @listener.to_sexp.should == [
83
+ [:comment, "# language: pt", 1],
84
+ [:feature, "Funcionalidade", "Reconhece \"Funcionalidade\"", "", 2],
85
+ [:background, "Contexto", "Reconhece \"Contexto\"", "", 4],
86
+ [:scenario, "Cenário", "Reconhece \"Cenário\" com acento", "", 6],
87
+ [:scenario, "Cenario", "Reconhece \"Cenário\" sem acento", "", 8],
88
+ [:scenario_outline, "Esquema do Cenário", "Reconhece \"Esquema do Cenário\" com acento", "", 10],
89
+ [:step, "Dado ", "que <Valor> é um valor e que reconhece \"Dado\";", 11],
90
+ [:step, "Dada ", "a afirmação de que reconhece \"Dada\";", 12],
91
+ [:step, "Dados ", "os factos acima e ainda que reconhece \"Dados\";", 13],
92
+ [:step, "Dadas ", "as afirmações acima e ainda que reconhece \"Dadas\";", 14],
93
+ [:step, "Quando ", "reconhece \"Quando\";", 15],
94
+ [:step, "Então ", "também reconhece \"Então\" com acento e", 16],
95
+ [:step, "Entao ", "também reconhece \"Então\" sem acento;", 17],
96
+ [:step, "E ", "reconhece \"E\";", 18],
97
+ [:step, "Mas ", "também reconhece \"Mas\".", 19],
98
+ [:examples, "Exemplos", "Reconhece \"Exemplos\"", "", 21],
99
+ [:row, ["Valor"], 22],
100
+ [:row, ["1"], 23],
101
+ [:scenario_outline, "Esquema do Cenario", "Reconhece \"Esquema do Cenário\" sem acento", "", 25],
102
+ [:step, "Dado ", "que <Valor> é um valor;", 26],
103
+ [:examples, "Cenários", "Reconhece \"Cenários\" com acento", "", 28],
104
+ [:row, ["Valor"], 29],
105
+ [:row, ["1"], 30],
106
+ [:scenario_outline, "Delineação do Cenário", "Reconhece \"Delineação do Cenário\" com acento", "", 32],
107
+ [:step, "Dado ", "que <Valor> é um valor;", 33],
108
+ [:examples, "Cenarios", "Reconhece \"Cenários\" sem acento", "", 35],
109
+ [:row, ["Valor"], 36],
110
+ [:row, ["1"], 37],
111
+ [:scenario_outline, "Delineacao do Cenario", "Reconhece \"Delineação do Cenário\" sem acento", "", 39],
112
+ [:step, "Dado ", "que <Valor> é um valor;", 40],
113
+ [:examples, "Exemplos", "Reconhece \"Exemplos\"", "", 42],
114
+ [:row, ["Valor"], 43],
115
+ [:row, ["1"], 44],
116
+ [:eof]
117
+ ]
118
+ end
119
+
120
+ it "should recognize keywords in Portuguese (2nd variant)" do
121
+ lexer = Gherkin::Lexer::I18nLexer.new(@listener, false)
122
+ scan_file(lexer, "i18n_pt2.feature")
123
+ @listener.to_sexp.should == [
124
+ [:comment, "# language: pt", 1],
125
+ [:feature, "Característica", "Reconhece \"Característica\" com acento", "", 2],
126
+ [:background, "Cenário de Fundo", "Reconhece \"Cenário de Fundo\" com acento", "", 4],
127
+ [:eof]
128
+ ]
129
+ end
130
+
131
+ it "should recognize keywords in Portuguese (3rd variant)" do
132
+ lexer = Gherkin::Lexer::I18nLexer.new(@listener, false)
133
+ scan_file(lexer, "i18n_pt3.feature")
134
+ @listener.to_sexp.should == [
135
+ [:comment, "# language: pt", 1],
136
+ [:feature, "Caracteristica", "Reconhece \"Característica\" sem acento", "", 2],
137
+ [:background, "Cenario de Fundo", "Reconhece \"Cenário de Fundo\" sem acento", "", 4],
138
+ [:eof]
139
+ ]
140
+ end
141
+
142
+ it "should recognize keywords in Portuguese (4th variant)" do
143
+ lexer = Gherkin::Lexer::I18nLexer.new(@listener, false)
144
+ scan_file(lexer, "i18n_pt4.feature")
145
+ @listener.to_sexp.should == [
146
+ [:comment, "# language: pt", 1],
147
+ [:feature, "Característica", "Reconhece \"Característica\" com acento", "", 2],
148
+ [:background, "Fundo", "Reconhece \"Fundo\"", "", 4],
149
+ [:eof]
150
+ ]
151
+ end
152
+
79
153
  describe 'keywords' do
80
154
  it "should have code keywords without space, comma, exclamation or apostrophe" do
81
155
  ['Avast', 'Akkor', 'Etantdonné', 'Lorsque', '假設'].each do |code_keyword|
@@ -91,11 +165,11 @@ module Gherkin
91
165
  Gherkin::I18n.keyword_regexp(:step).should =~ /\|Quando \|Quand \|Quan \|Pryd \|Pokud \|/
92
166
  end
93
167
 
94
- unless defined?(JRUBY_VERSION)
95
168
  it "should print available languages" do
96
169
  ("\n" + Gherkin::I18n.language_table).should == %{
97
170
  | ar | Arabic | العربية |
98
171
  | bg | Bulgarian | български |
172
+ | bm | Malay | Bahasa Melayu |
99
173
  | ca | Catalan | català |
100
174
  | cs | Czech | Česky |
101
175
  | cy-GB | Welsh | Cymraeg |
@@ -141,7 +215,6 @@ module Gherkin
141
215
  | zh-TW | Chinese traditional | 繁體中文 |
142
216
  }
143
217
  end
144
- end
145
218
 
146
219
  it "should print keywords for a given language" do
147
220
  ("\n" + Gherkin::I18n.get('fr').keyword_table).should == %{
@@ -29,7 +29,7 @@ module Gherkin
29
29
  end
30
30
  end
31
31
 
32
- xit "should parse a barely empty feature" do
32
+ it "should parse a barely empty feature" do
33
33
  check_json(%{[
34
34
  {
35
35
  "id": "one",
@@ -42,7 +42,7 @@ module Gherkin
42
42
  ]})
43
43
  end
44
44
 
45
- xit "should parse feature with tags and one scenario" do
45
+ it "should parse feature with tags and one scenario" do
46
46
  check_json(%{[
47
47
  {
48
48
  "id": "one",
@@ -131,7 +131,7 @@ module Gherkin
131
131
  })
132
132
  end
133
133
 
134
- xit "shoud parse a complex feature" do
134
+ it "shoud parse a complex feature" do
135
135
  check_json('[' + fixture("complex.json") + ']')
136
136
  end
137
137
  end
data/tasks/ragel_task.rb CHANGED
@@ -37,7 +37,7 @@ class RagelTask
37
37
  file UGLIFYJS do
38
38
  unless File.exist?(UGLIFYJS)
39
39
  Dir.chdir('js') do
40
- sh "npm link"
40
+ sh "npm install"
41
41
  end
42
42
  end
43
43
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gherkin
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.3
4
+ version: 2.10.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-03-26 00:00:00.000000000 Z
14
+ date: 2012-05-07 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rake-compiler
@@ -52,7 +52,7 @@ dependencies:
52
52
  requirements:
53
53
  - - ! '>='
54
54
  - !ruby/object:Gem::Version
55
- version: 1.1.9
55
+ version: 1.2.0
56
56
  type: :development
57
57
  prerelease: false
58
58
  version_requirements: !ruby/object:Gem::Requirement
@@ -60,7 +60,7 @@ dependencies:
60
60
  requirements:
61
61
  - - ! '>='
62
62
  - !ruby/object:Gem::Version
63
- version: 1.1.9
63
+ version: 1.2.0
64
64
  - !ruby/object:Gem::Dependency
65
65
  name: rake
66
66
  requirement: !ruby/object:Gem::Requirement
@@ -116,7 +116,7 @@ dependencies:
116
116
  requirements:
117
117
  - - ! '>='
118
118
  - !ruby/object:Gem::Version
119
- version: 0.9.6.1
119
+ version: 0.9.8
120
120
  type: :development
121
121
  prerelease: false
122
122
  version_requirements: !ruby/object:Gem::Requirement
@@ -124,23 +124,7 @@ dependencies:
124
124
  requirements:
125
125
  - - ! '>='
126
126
  - !ruby/object:Gem::Version
127
- version: 0.9.6.1
128
- - !ruby/object:Gem::Dependency
129
- name: therubyracer
130
- requirement: !ruby/object:Gem::Requirement
131
- none: false
132
- requirements:
133
- - - ! '>='
134
- - !ruby/object:Gem::Version
135
- version: 0.9.10
136
- type: :development
137
- prerelease: false
138
- version_requirements: !ruby/object:Gem::Requirement
139
- none: false
140
- requirements:
141
- - - ! '>='
142
- - !ruby/object:Gem::Version
143
- version: 0.9.10
127
+ version: 0.9.8
144
128
  - !ruby/object:Gem::Dependency
145
129
  name: yard
146
130
  requirement: !ruby/object:Gem::Requirement
@@ -148,7 +132,7 @@ dependencies:
148
132
  requirements:
149
133
  - - ! '>='
150
134
  - !ruby/object:Gem::Version
151
- version: 0.7.5
135
+ version: 0.8.0
152
136
  type: :development
153
137
  prerelease: false
154
138
  version_requirements: !ruby/object:Gem::Requirement
@@ -156,7 +140,7 @@ dependencies:
156
140
  requirements:
157
141
  - - ! '>='
158
142
  - !ruby/object:Gem::Version
159
- version: 0.7.5
143
+ version: 0.8.0
160
144
  - !ruby/object:Gem::Dependency
161
145
  name: rdiscount
162
146
  requirement: !ruby/object:Gem::Requirement
@@ -211,6 +195,7 @@ executables: []
211
195
  extensions:
212
196
  - ext/gherkin_lexer_ar/extconf.rb
213
197
  - ext/gherkin_lexer_bg/extconf.rb
198
+ - ext/gherkin_lexer_bm/extconf.rb
214
199
  - ext/gherkin_lexer_ca/extconf.rb
215
200
  - ext/gherkin_lexer_cs/extconf.rb
216
201
  - ext/gherkin_lexer_cy_gb/extconf.rb
@@ -287,6 +272,7 @@ files:
287
272
  - features/steps_parser.feature
288
273
  - features/support/env.rb
289
274
  - gherkin.gemspec
275
+ - install_mingw_os_x.sh
290
276
  - js/.npmignore
291
277
  - js/lib/gherkin/lexer/.npmignore
292
278
  - lib/gherkin.rb
@@ -341,6 +327,10 @@ files:
341
327
  - spec/gherkin/fixtures/i18n_fr.feature
342
328
  - spec/gherkin/fixtures/i18n_fr2.feature
343
329
  - spec/gherkin/fixtures/i18n_no.feature
330
+ - spec/gherkin/fixtures/i18n_pt1.feature
331
+ - spec/gherkin/fixtures/i18n_pt2.feature
332
+ - spec/gherkin/fixtures/i18n_pt3.feature
333
+ - spec/gherkin/fixtures/i18n_pt4.feature
344
334
  - spec/gherkin/fixtures/i18n_zh-CN.feature
345
335
  - spec/gherkin/fixtures/issue_145.feature
346
336
  - spec/gherkin/fixtures/scenario_outline_with_tags.feature
@@ -393,6 +383,7 @@ files:
393
383
  - tasks/yard/default/layout/html/setup.rb
394
384
  - lib/gherkin/rb_lexer/ar.rb
395
385
  - lib/gherkin/rb_lexer/bg.rb
386
+ - lib/gherkin/rb_lexer/bm.rb
396
387
  - lib/gherkin/rb_lexer/ca.rb
397
388
  - lib/gherkin/rb_lexer/cs.rb
398
389
  - lib/gherkin/rb_lexer/cy_gb.rb
@@ -438,6 +429,7 @@ files:
438
429
  - lib/gherkin/rb_lexer/zh_tw.rb
439
430
  - ext/gherkin_lexer_ar/gherkin_lexer_ar.c
440
431
  - ext/gherkin_lexer_bg/gherkin_lexer_bg.c
432
+ - ext/gherkin_lexer_bm/gherkin_lexer_bm.c
441
433
  - ext/gherkin_lexer_ca/gherkin_lexer_ca.c
442
434
  - ext/gherkin_lexer_cs/gherkin_lexer_cs.c
443
435
  - ext/gherkin_lexer_cy_gb/gherkin_lexer_cy_gb.c
@@ -483,6 +475,7 @@ files:
483
475
  - ext/gherkin_lexer_zh_tw/gherkin_lexer_zh_tw.c
484
476
  - ext/gherkin_lexer_ar/extconf.rb
485
477
  - ext/gherkin_lexer_bg/extconf.rb
478
+ - ext/gherkin_lexer_bm/extconf.rb
486
479
  - ext/gherkin_lexer_ca/extconf.rb
487
480
  - ext/gherkin_lexer_cs/extconf.rb
488
481
  - ext/gherkin_lexer_cy_gb/extconf.rb
@@ -547,10 +540,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
547
540
  version: '0'
548
541
  requirements: []
549
542
  rubyforge_project:
550
- rubygems_version: 1.8.19
543
+ rubygems_version: 1.8.24
551
544
  signing_key:
552
545
  specification_version: 3
553
- summary: gherkin-2.9.3
546
+ summary: gherkin-2.10.0
554
547
  test_files:
555
548
  - features/escaped_pipes.feature
556
549
  - features/feature_parser.feature
@@ -579,6 +572,10 @@ test_files:
579
572
  - spec/gherkin/fixtures/i18n_fr.feature
580
573
  - spec/gherkin/fixtures/i18n_fr2.feature
581
574
  - spec/gherkin/fixtures/i18n_no.feature
575
+ - spec/gherkin/fixtures/i18n_pt1.feature
576
+ - spec/gherkin/fixtures/i18n_pt2.feature
577
+ - spec/gherkin/fixtures/i18n_pt3.feature
578
+ - spec/gherkin/fixtures/i18n_pt4.feature
582
579
  - spec/gherkin/fixtures/i18n_zh-CN.feature
583
580
  - spec/gherkin/fixtures/issue_145.feature
584
581
  - spec/gherkin/fixtures/scenario_outline_with_tags.feature