gherkin 1.0.11-java → 1.0.12-java

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,8 @@
1
+ == 1.0.12 (2010-04-18)
2
+
3
+ === Bugfixes
4
+ * Fixed incorrect filtering of pystring in Background. (Mike Sassak)
5
+
1
6
  == 1.0.11 (2010-04-16)
2
7
 
3
8
  === Bugfixes
@@ -1,4 +1,5 @@
1
1
  ---
2
- :minor: 0
3
- :patch: 11
4
2
  :major: 1
3
+ :minor: 0
4
+ :build:
5
+ :patch: 12
@@ -15,10 +15,6 @@ module Gherkin
15
15
  languages[key] ||= new(key)
16
16
  end
17
17
 
18
- def languages
19
- @languages ||= {}
20
- end
21
-
22
18
  # Returns all keyword translations and aliases of +keywords+, escaped and joined with <tt>|</tt>.
23
19
  # This method is convenient for editor support and syntax highlighting engines for Gherkin, where
24
20
  # there is typically a code generation tool to generate regular expressions for recognising the
@@ -43,6 +39,23 @@ module Gherkin
43
39
  def code_keyword_for(gherkin_keyword)
44
40
  gherkin_keyword.gsub(/[\s',]/, '').strip
45
41
  end
42
+
43
+ def language_table
44
+ require 'stringio'
45
+ require 'gherkin/formatter/pretty_formatter'
46
+ io = StringIO.new
47
+ pf = Gherkin::Formatter::PrettyFormatter.new(io, true)
48
+ all.each{|i18n| pf.row([i18n.key, i18n.name, i18n.native], 0)}
49
+ pf.flush_table
50
+ io.rewind
51
+ io.read
52
+ end
53
+
54
+ private
55
+
56
+ def languages
57
+ @languages ||= {}
58
+ end
46
59
  end
47
60
 
48
61
  attr_reader :key
@@ -133,6 +146,14 @@ module Gherkin
133
146
  result
134
147
  end
135
148
 
149
+ def name
150
+ @keywords['name']
151
+ end
152
+
153
+ def native
154
+ @keywords['native']
155
+ end
156
+
136
157
  def keywords(key, space=false)
137
158
  raise "No #{key} in #{@keywords.inspect}" if @keywords[key].nil?
138
159
  @keywords[key].split('|').map{|kw| space ? keyword_space(kw) : kw}
@@ -117,8 +117,13 @@ module Gherkin
117
117
  raise "Bad table_state:#{@table_state.inspect}"
118
118
  end
119
119
  when :py_string
120
- @scenario_buffer << sexp
121
- @scenario_ok ||= filter_match?(*@scenario_buffer)
120
+ if @table_state == :background
121
+ @feature_buffer << sexp
122
+ @feature_ok ||= filter_match?(*@feature_buffer)
123
+ else
124
+ @scenario_buffer << sexp
125
+ @scenario_ok ||= filter_match?(*@scenario_buffer)
126
+ end
122
127
  when :eof
123
128
  replay_examples_rows_buffer
124
129
  sexp.replay(@listener)
@@ -67,6 +67,54 @@ module Gherkin
67
67
  I18n.code_keywords.should include(code_keyword)
68
68
  end
69
69
  end
70
+
71
+ it "should print available languages" do
72
+ ("\n" + I18n.language_table).should == %{
73
+ | ar | Arabic | العربية |
74
+ | bg | Bulgarian | български |
75
+ | ca | Catalan | català |
76
+ | cs | Czech | Česky |
77
+ | cy-GB | Welsh | Cymraeg |
78
+ | da | Danish | dansk |
79
+ | de | German | Deutsch |
80
+ | en | English | English |
81
+ | en-Scouse | Scouse | Scouse |
82
+ | en-au | Australian | Australian |
83
+ | en-lol | LOLCAT | LOLCAT |
84
+ | en-tx | Texan | Texan |
85
+ | eo | Esperanto | Esperanto |
86
+ | es | Spanish | español |
87
+ | et | Estonian | eesti keel |
88
+ | fi | Finnish | suomi |
89
+ | fr | French | français |
90
+ | he | Hebrew | עברית |
91
+ | hr | Croatian | hrvatski |
92
+ | hu | Hungarian | magyar |
93
+ | id | Indonesian | Bahasa Indonesia |
94
+ | it | Italian | italiano |
95
+ | ja | Japanese | 日本語 |
96
+ | ko | Korean | 한국어 |
97
+ | lt | Lithuanian | lietuvių kalba |
98
+ | lv | Latvian | latviešu |
99
+ | nl | Dutch | Nederlands |
100
+ | no | Norwegian | norsk |
101
+ | pl | Polish | polski |
102
+ | pt | Portuguese | português |
103
+ | ro | Romanian | română |
104
+ | ro-RO | Romanian (diacritical) | română (diacritical) |
105
+ | ru | Russian | русский |
106
+ | sk | Slovak | Slovensky |
107
+ | sr-Cyrl | Serbian | Српски |
108
+ | sr-Latn | Serbian (Latin) | Srpski (Latinica) |
109
+ | sv | Swedish | Svenska |
110
+ | tr | Turkish | Türkçe |
111
+ | uk | Ukrainian | Українська |
112
+ | uz | Uzbek | Узбекча |
113
+ | vi | Vietnamese | Tiếng Việt |
114
+ | zh-CN | Chinese simplified | 简体中文 |
115
+ | zh-TW | Chinese traditional | 繁體中文 |
116
+ }
117
+ end
70
118
  end
71
119
  end
72
120
  end
@@ -356,6 +356,33 @@ Feature: 3
356
356
  verify_filters([:eof], ['@m'])
357
357
  end
358
358
  end
359
+
360
+ context "Background with PyString" do
361
+ it "should replay itself properly" do
362
+ @input = %{#language:en
363
+ Feature: 2
364
+ Background: 3
365
+ Given 4
366
+ """
367
+ 6
368
+ """
369
+
370
+ Scenario: 9
371
+ Given 10
372
+ """
373
+ 12
374
+ """
375
+
376
+ Scenario: 15
377
+ Given 16
378
+ """
379
+ 18
380
+ """
381
+ }
382
+
383
+ verify_filters([1,2,3,4,5,15,16,17,:eof], [15])
384
+ end
385
+ end
359
386
  end
360
387
  end
361
388
  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: 1.0.11
4
+ version: 1.0.12
5
5
  platform: java
6
6
  authors:
7
7
  - Mike Sassak
@@ -11,7 +11,7 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2010-04-16 00:00:00 +02:00
14
+ date: 2010-04-18 00:00:00 +02:00
15
15
  default_executable: gherkin
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency