aslakhellesoy-gherkin 0.0.1 → 1.2.3

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -3,6 +3,3 @@
3
3
  coverage
4
4
  rdoc
5
5
  pkg
6
- lib/gherkin/parser/*.rb
7
- *.dot
8
- *.png
@@ -1,25 +1,13 @@
1
- = Gherkin
1
+ = gherkin
2
2
 
3
- Fast Gherkin parser based on Ragel.
3
+ Fast multi-language Gherkin parser. The goal of this project is to define a grammar for the
4
+ Gherkin language, which has evolved out of the Cucumber project.
4
5
 
5
- Gherkin is the language that has evolved out of the Cucumber project. Cucumber currently uses
6
- Treetop, which is too slow for larger projects.
6
+ Using Ragel, this project can evolve into a general Gherkin parser for all of the programming
7
+ languages supported by Ragel (as of this writing C, C++, Objective-C, D, Java, Ruby and C#).
7
8
 
8
- This project will *not* include code to build an AST. Instead, this parser will have an API
9
- that makes it possible to plug in a builder that can buld an AST.
10
-
11
- == Notes
12
-
13
- Ragel supports Ruby, but it's much slower than C. The ruby target will be used for development.
14
- The final version will use C for MRI and Java for JRuby.
15
-
16
- == Ragel links
17
-
18
- * http://www.complang.org/ragel/
19
- * http://dev.sipdoc.net/attachments/2/ragel_talk.pdf
20
- * http://lambda-the-ultimate.org/node/1125
21
- * http://www.zedshaw.com/essays/ragel_state_charts.html
22
- * http://www.devchix.com/2008/01/13/a-hello-world-for-ruby-on-ragel-60/
9
+ This means a lightning fast parser for Cucumber, but it could also be used in a different BDD
10
+ tool.
23
11
 
24
12
  == Note on Patches/Pull Requests
25
13
 
data/Rakefile CHANGED
@@ -1,7 +1,5 @@
1
- # encoding: utf-8
2
1
  require 'rubygems'
3
2
  require 'rake'
4
- require 'rake/clean'
5
3
 
6
4
  begin
7
5
  require 'jeweler'
@@ -20,6 +18,32 @@ rescue LoadError
20
18
  puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
21
19
  end
22
20
 
23
- Dir['tasks/**/*.rake'].each { |rake| load rake }
21
+ require 'spec/rake/spectask'
22
+ Spec::Rake::SpecTask.new(:spec) do |spec|
23
+ spec.libs << 'lib' << 'spec'
24
+ spec.spec_files = FileList['spec/**/*_spec.rb']
25
+ end
26
+
27
+ Spec::Rake::SpecTask.new(:rcov) do |spec|
28
+ spec.libs << 'lib' << 'spec'
29
+ spec.pattern = 'spec/**/*_spec.rb'
30
+ spec.rcov = true
31
+ end
32
+
33
+ task :spec => :check_dependencies
24
34
 
25
35
  task :default => :spec
36
+
37
+ require 'rake/rdoctask'
38
+ Rake::RDocTask.new do |rdoc|
39
+ if File.exist?('VERSION')
40
+ version = File.read('VERSION')
41
+ else
42
+ version = ""
43
+ end
44
+
45
+ rdoc.rdoc_dir = 'rdoc'
46
+ rdoc.title = "gherkin #{version}"
47
+ rdoc.rdoc_files.include('README*')
48
+ rdoc.rdoc_files.include('lib/**/*.rb')
49
+ end
@@ -1 +0,0 @@
1
- require 'gherkin/parser'
@@ -0,0 +1,7 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe "Gherkin" do
4
+ it "fails" do
5
+ fail "hey buddy, you should probably rename this file and start specing for real"
6
+ end
7
+ end
@@ -1,7 +1,6 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
3
  require 'gherkin'
4
- require 'gherkin/sexp_recorder'
5
4
  require 'spec'
6
5
  require 'spec/autorun'
7
6
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aslakhellesoy-gherkin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - "Aslak Helles\xC3\xB8y"
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-09-12 00:00:00 -07:00
12
+ date: 2009-09-01 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -37,35 +37,9 @@ files:
37
37
  - LICENSE
38
38
  - README.rdoc
39
39
  - Rakefile
40
- - VERSION.yml
41
- - ext/gherkin/extconf.rb
42
- - gherkin.gemspec
43
40
  - lib/gherkin.rb
44
- - lib/gherkin/i18n.yml
45
- - lib/gherkin/parser.rb
46
- - lib/gherkin/parser/.preserve
47
- - ragel/feature.rb.rl.erb
48
- - ragel/feature_common.rl.erb
49
- - ragel/misc.c.rl
50
- - ragel/misc.rb.rl
51
- - ragel/table.rb.rl
52
- - ragel/table_common.rl
53
- - spec/gherkin/feature_spec.rb
54
- - spec/gherkin/gherkin_parser/complex.feature
55
- - spec/gherkin/gherkin_parser/i18n_no.feature
56
- - spec/gherkin/gherkin_parser/simple.feature
57
- - spec/gherkin/gherkin_parser/simple_with_comments.feature
58
- - spec/gherkin/gherkin_parser/simple_with_tags.feature
59
- - spec/gherkin/i18n_spec.rb
60
- - spec/gherkin/multiline_step_args_spec.rb
61
- - spec/gherkin/sexp_recorder.rb
62
- - spec/gherkin/table_spec.rb
63
- - spec/gherkin/tags_spec.rb
41
+ - spec/gherkin_spec.rb
64
42
  - spec/spec_helper.rb
65
- - tasks/ext.rake
66
- - tasks/ragel.rake
67
- - tasks/rdoc.rake
68
- - tasks/rspec.rake
69
43
  has_rdoc: false
70
44
  homepage: http://github.com/aslakhellesoy/gherkin
71
45
  post_install_message:
@@ -93,10 +67,5 @@ signing_key:
93
67
  specification_version: 3
94
68
  summary: Fast Gherkin parser
95
69
  test_files:
96
- - spec/gherkin/feature_spec.rb
97
- - spec/gherkin/i18n_spec.rb
98
- - spec/gherkin/multiline_step_args_spec.rb
99
- - spec/gherkin/sexp_recorder.rb
100
- - spec/gherkin/table_spec.rb
101
- - spec/gherkin/tags_spec.rb
70
+ - spec/gherkin_spec.rb
102
71
  - spec/spec_helper.rb
@@ -1,4 +0,0 @@
1
- ---
2
- :major: 0
3
- :minor: 0
4
- :patch: 1
@@ -1,6 +0,0 @@
1
- require 'mkmf'
2
-
3
- dir_config("gherkin")
4
- have_library("c", "main")
5
-
6
- create_makefile("gherkin")
@@ -1,82 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{gherkin}
8
- s.version = "0.0.1"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Aslak Helles\303\270y"]
12
- s.date = %q{2009-09-12}
13
- s.description = %q{A fast Gherkin parser in Ragel}
14
- s.email = %q{aslak.hellesoy@gmail.com}
15
- s.extra_rdoc_files = [
16
- "LICENSE",
17
- "README.rdoc"
18
- ]
19
- s.files = [
20
- ".document",
21
- ".gitignore",
22
- "LICENSE",
23
- "README.rdoc",
24
- "Rakefile",
25
- "VERSION.yml",
26
- "ext/gherkin/extconf.rb",
27
- "gherkin.gemspec",
28
- "lib/gherkin.rb",
29
- "lib/gherkin/i18n.yml",
30
- "lib/gherkin/parser.rb",
31
- "lib/gherkin/parser/.preserve",
32
- "ragel/feature.rb.rl.erb",
33
- "ragel/feature_common.rl.erb",
34
- "ragel/misc.c.rl",
35
- "ragel/misc.rb.rl",
36
- "ragel/table.rb.rl",
37
- "ragel/table_common.rl",
38
- "spec/gherkin/feature_spec.rb",
39
- "spec/gherkin/gherkin_parser/complex.feature",
40
- "spec/gherkin/gherkin_parser/i18n_no.feature",
41
- "spec/gherkin/gherkin_parser/simple.feature",
42
- "spec/gherkin/gherkin_parser/simple_with_comments.feature",
43
- "spec/gherkin/gherkin_parser/simple_with_tags.feature",
44
- "spec/gherkin/i18n_spec.rb",
45
- "spec/gherkin/multiline_step_args_spec.rb",
46
- "spec/gherkin/sexp_recorder.rb",
47
- "spec/gherkin/table_spec.rb",
48
- "spec/gherkin/tags_spec.rb",
49
- "spec/spec_helper.rb",
50
- "tasks/ext.rake",
51
- "tasks/ragel.rake",
52
- "tasks/rdoc.rake",
53
- "tasks/rspec.rake"
54
- ]
55
- s.homepage = %q{http://github.com/aslakhellesoy/gherkin}
56
- s.rdoc_options = ["--charset=UTF-8"]
57
- s.require_paths = ["lib"]
58
- s.rubygems_version = %q{1.3.4}
59
- s.summary = %q{Fast Gherkin parser}
60
- s.test_files = [
61
- "spec/gherkin/feature_spec.rb",
62
- "spec/gherkin/i18n_spec.rb",
63
- "spec/gherkin/multiline_step_args_spec.rb",
64
- "spec/gherkin/sexp_recorder.rb",
65
- "spec/gherkin/table_spec.rb",
66
- "spec/gherkin/tags_spec.rb",
67
- "spec/spec_helper.rb"
68
- ]
69
-
70
- if s.respond_to? :specification_version then
71
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
72
- s.specification_version = 3
73
-
74
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
75
- s.add_development_dependency(%q<rspec>, [">= 0"])
76
- else
77
- s.add_dependency(%q<rspec>, [">= 0"])
78
- end
79
- else
80
- s.add_dependency(%q<rspec>, [">= 0"])
81
- end
82
- end
@@ -1,561 +0,0 @@
1
- # encoding: UTF-8
2
- # We use the codes here (prefer 2 letters when possible)
3
- # http://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
4
- #
5
- # If you want several aliases for a keyword, just separate them
6
- # with a | character. Make sure there are no ambiguities in the
7
- # keywords.
8
- #
9
- "en":
10
- name: English
11
- native: English
12
- encoding: UTF-8
13
- feature: Feature
14
- background: Background
15
- scenario: Scenario
16
- scenario_outline: Scenario Outline
17
- examples: Examples|Scenarios
18
- given: Given
19
- when: When
20
- then: Then
21
- and: And
22
- but: But
23
- space_after_keyword: true
24
-
25
- # Please help us keeping the languages below uptodate. The parsers for a language
26
- # that is missing a keyword will expect the English word until the missing word(s)
27
- # are added.
28
- #
29
- # Please keep the grammars in alphabetical order by name from here and down.
30
-
31
- "ar":
32
- name: Arabic
33
- native: العربية
34
- encoding: UTF-8
35
- feature: خاصية
36
- background: الخلفية
37
- scenario: سيناريو
38
- scenario_outline: سيناريو مخطط
39
- examples: امثلة
40
- given: بفرض
41
- when: متى|عندما
42
- then: اذاً|ثم
43
- and: و
44
- but: لكن
45
- space_after_keyword: true
46
- "bg":
47
- name: Bulgarian
48
- native: български
49
- encoding: UTF-8
50
- feature: Функционалност
51
- background: Предистория
52
- scenario: Сценарий
53
- scenario_outline: Рамка на сценарий
54
- examples: Примери
55
- given: Дадено
56
- when: Когато
57
- then: То
58
- and: И
59
- but: Но
60
- space_after_keyword: true
61
- "cat":
62
- name: Catalan
63
- native: català
64
- encoding: UTF-8
65
- background: Rerefons|Antecedents
66
- feature: Característica
67
- scenario: Escenari
68
- scenario_outline: Esquema de l\'escenari
69
- examples: Exemples
70
- given: Donat|Donada
71
- when: Quan
72
- then: Aleshores
73
- and: I
74
- but: Però
75
- space_after_keyword: true
76
- "cy":
77
- name: Welsh
78
- native: Cymraeg
79
- encoding: UTF-8
80
- feature: Arwedd
81
- scenario: Scenario
82
- examples: Enghreifftiau
83
- given: anrhegedig a
84
- when: Pryd
85
- then: Yna
86
- and: A
87
- but: Ond
88
- space_after_keyword: true
89
- "cz":
90
- name: Czech
91
- native: Česky
92
- encoding: UTF-8
93
- feature: Požadavek
94
- background: Pozadí|Kontext
95
- scenario: Scénář
96
- scenario_outline: Náčrt Scénáře|Osnova scénáře
97
- examples: Příklady
98
- given: Pokud
99
- when: Když
100
- then: Pak
101
- and: A|A také
102
- but: Ale
103
- space_after_keyword: true
104
- "da":
105
- name: Danish
106
- native: dansk
107
- encoding: UTF-8
108
- feature: Egenskab
109
- background: Baggrund
110
- scenario: Scenarie
111
- scenario_outline: Abstrakt Scenario
112
- examples: Eksempler
113
- given: Givet
114
- when: Når
115
- then: Så
116
- and: Og
117
- but: Men
118
- space_after_keyword: true
119
- "de":
120
- name: German
121
- native: Deutsch
122
- encoding: UTF-8
123
- feature: Funktionalität
124
- background: Grundlage
125
- scenario: Szenario
126
- scenario_outline: Szenariogrundriss
127
- examples: Beispiele
128
- given: Gegeben sei
129
- when: Wenn
130
- then: Dann
131
- and: Und
132
- but: Aber
133
- space_after_keyword: true
134
- "en-au":
135
- name: Australian
136
- native: Australian
137
- encoding: UTF-8
138
- feature: Crikey
139
- background: Background
140
- scenario: Mate
141
- scenario_outline: Blokes
142
- examples: Cobber
143
- given: Ya know how
144
- when: When
145
- then: Ya gotta
146
- and: N
147
- but: Cept
148
- space_after_keyword: true
149
- "en-lol":
150
- name: LOLCAT
151
- native: LOLCAT
152
- encoding: UTF-8
153
- feature: OH HAI
154
- background: B4
155
- scenario: MISHUN
156
- scenario_outline: MISHUN SRSLY
157
- examples: EXAMPLZ
158
- given: I CAN HAZ
159
- when: WEN
160
- then: DEN
161
- and: AN
162
- but: BUT
163
- space_after_keyword: true
164
- "en-tx":
165
- name: Texan
166
- native: Texan
167
- encoding: UTF-8
168
- feature: Feature
169
- background: Background
170
- scenario: Scenario
171
- scenario_outline: All y\'all
172
- examples: Examples
173
- given: Given y\'all
174
- when: When y\'all
175
- then: Then y\'all
176
- and: And y\'all
177
- but: But y\'all
178
- space_after_keyword: true
179
- "es":
180
- name: Spanish
181
- native: español
182
- encoding: UTF-8
183
- background: Antecedentes
184
- feature: Característica
185
- scenario: Escenario
186
- scenario_outline: Esquema del escenario
187
- examples: Ejemplos
188
- given: Dado
189
- when: Cuando
190
- then: Entonces
191
- and: Y
192
- but: Pero
193
- space_after_keyword: true
194
- "et":
195
- name: Estonian
196
- native: eesti keel
197
- encoding: UTF-8
198
- feature: Omadus
199
- background: Taust
200
- scenario: Stsenaarium
201
- scenario_outline: Raamstsenaarium
202
- examples: Juhtumid
203
- given: Eeldades
204
- when: Kui
205
- then: Siis
206
- and: Ja
207
- but: Kuid
208
- space_after_keyword: true
209
- "fi":
210
- name: Finnish
211
- native: suomi
212
- encoding: UTF-8
213
- feature: Ominaisuus
214
- background: Tausta
215
- scenario: Tapaus
216
- scenario_outline: Tapausaihio
217
- examples: Tapaukset
218
- given: Oletetaan
219
- when: Kun
220
- then: Niin
221
- and: Ja
222
- but: Mutta
223
- space_after_keyword: true
224
- "fr":
225
- name: French
226
- native: français
227
- encoding: UTF-8
228
- feature: Fonctionnalité
229
- background: Contexte
230
- scenario: Scénario
231
- scenario_outline: Plan du Scénario
232
- examples: Exemples
233
- given: Soit
234
- when: Lorsque
235
- then: Alors
236
- and: Et
237
- but: Mais
238
- space_after_keyword: true
239
- "he":
240
- name: Hebrew
241
- native: עברית
242
- encoding: UTF-8
243
- feature: תכונה
244
- background: רקע
245
- scenario: תרחיש
246
- scenario_outline: תבנית תרחיש
247
- examples: דוגמאות
248
- given: בהינתן
249
- when: כאשר
250
- then: אז|אזי
251
- and: וגם
252
- but: אבל
253
- space_after_keyword: true
254
- "hr":
255
- name: Croatian
256
- native: hrvatski
257
- encoding: UTF-8
258
- feature: Osobina|Mogućnost|Mogucnost
259
- background: Pozadina
260
- scenario: Scenarij
261
- scenario_outline: Skica|Koncept
262
- examples: Primjeri|Scenariji
263
- given: Zadan|Zadani|Zadano
264
- when: Kada|Kad
265
- then: Onda
266
- and: I
267
- but: Ali
268
- space_after_keyword: true
269
- "hu":
270
- name: Hungarian
271
- native: magyar
272
- encoding: UTF-8
273
- feature: Jellemző
274
- background: Háttér
275
- scenario: Forgatókönyv
276
- scenario_outline: Forgatókönyv vázlat
277
- examples: Példák
278
- given: Ha
279
- when: Majd
280
- then: Akkor
281
- and: És
282
- but: De
283
- space_after_keyword: true
284
- "id":
285
- name: Indonesian
286
- native: Bahasa Indonesia
287
- encoding: UTF-8
288
- feature: Fitur
289
- background: Dasar
290
- scenario: Skenario
291
- scenario_outline: Skenario konsep
292
- examples: Contoh
293
- given: Dengan
294
- when: Ketika
295
- then: Maka
296
- and: Dan
297
- but: Tapi
298
- space_after_keyword: true
299
- "it":
300
- name: Italian
301
- native: italiano
302
- encoding: UTF-8
303
- feature: Funzionalità
304
- background: Contesto
305
- scenario: Scenario
306
- scenario_outline: Schema dello scenario
307
- examples: Esempi
308
- given: Dato
309
- when: Quando
310
- then: Allora
311
- and: E
312
- but: Ma
313
- space_after_keyword: true
314
- "ja":
315
- name: Japanese
316
- native: 日本語
317
- encoding: UTF-8
318
- feature: フィーチャ|機能
319
- background: 背景
320
- scenario: シナリオ
321
- scenario_outline: シナリオアウトライン|シナリオテンプレート|テンプレ|シナリオテンプレ
322
- examples: 例|サンプル
323
- given: 前提
324
- when: もし
325
- then: ならば
326
- and: かつ
327
- but: しかし|但し
328
- space_after_keyword: false
329
- "ko":
330
- name: Korean
331
- native: 한국어
332
- encoding: UTF-8
333
- background: 배경
334
- feature: 기능
335
- scenario: 시나리오
336
- scenario_outline: 시나리오 개요
337
- examples: 예
338
- given: 조건
339
- when: 만일
340
- then: 그러면
341
- and: 그리고
342
- but: 하지만
343
- space_after_keyword: false
344
- "lt":
345
- name: Lithuanian
346
- native: lietuvių kalba
347
- encoding: UTF-8
348
- feature: Savybė
349
- background: Kontekstas
350
- scenario: Scenarijus
351
- scenario_outline: Scenarijaus šablonas
352
- examples: Pavyzdžiai|Scenarijai|Variantai
353
- given: Duota
354
- when: Kai
355
- then: Tada
356
- and: Ir
357
- but: Bet
358
- space_after_keyword: true
359
- "lv":
360
- name: Latvian
361
- native: latviešu
362
- encoding: UTF-8
363
- feature: Funkcionalitāte|Fīča
364
- background: Konteksts|Situācija
365
- scenario: Scenārijs
366
- scenario_outline: Scenārijs pēc parauga
367
- examples: Piemēri|Paraugs
368
- given: Kad
369
- when: Ja
370
- then: Tad
371
- and: Un
372
- but: Bet
373
- space_after_keyword: true
374
- "nl":
375
- name: Dutch
376
- native: Nederlands
377
- encoding: UTF-8
378
- feature: Functionaliteit
379
- background: Achtergrond
380
- scenario: Scenario
381
- scenario_outline: Abstract Scenario
382
- examples: Voorbeelden
383
- given: Gegeven
384
- when: Als
385
- then: Dan
386
- and: En
387
- but: Maar
388
- space_after_keyword: true
389
- "no":
390
- name: Norwegian
391
- native: norsk
392
- encoding: UTF-8
393
- feature: Egenskap
394
- background: Bakgrunn
395
- scenario: Scenario
396
- scenario_outline: Abstrakt Scenario
397
- examples: Eksempler
398
- given: Gitt
399
- when: Når
400
- then: Så
401
- and: Og
402
- but: Men
403
- space_after_keyword: true
404
- "pl":
405
- name: Polish
406
- native: polski
407
- encoding: UTF-8
408
- feature: Właściwość
409
- background: Założenia
410
- scenario: Scenariusz
411
- scenario_outline: Szablon scenariusza
412
- examples: Przykłady
413
- given: Zakładając
414
- when: Jeżeli
415
- then: Wtedy
416
- and: Oraz
417
- but: Ale
418
- space_after_keyword: true
419
- "pt":
420
- name: Portuguese
421
- native: português
422
- encoding: UTF-8
423
- background: Contexto
424
- feature: Funcionalidade
425
- scenario: Cenário|Cenario
426
- scenario_outline: Esquema do Cenário|Esquema do Cenario
427
- examples: Exemplos
428
- given: Dado
429
- when: Quando
430
- then: Então|Entao
431
- and: E
432
- but: Mas
433
- space_after_keyword: true
434
- "ro":
435
- name: Romanian
436
- native: română
437
- encoding: UTF-8
438
- feature: Functionalitate
439
- scenario: Scenariu
440
- given: Daca
441
- when: Cand
442
- then: Atunci
443
- and: Si
444
- but: Dar
445
- space_after_keyword: true
446
- "ro2":
447
- name: Romanian (diacritical)
448
- native: română (diacritical)
449
- encoding: UTF-8
450
- feature: Funcționalitate
451
- scenario: Scenariu
452
- given: Dacă
453
- when: Când
454
- then: Atunci
455
- and: Și
456
- but: Dar
457
- space_after_keyword: true
458
- "ru":
459
- name: Russian
460
- native: русский
461
- encoding: UTF-8
462
- feature: Функционал
463
- background: Предыстория
464
- scenario: Сценарий
465
- scenario_outline: Структура сценария
466
- examples: Значения
467
- given: Допустим
468
- when: Если
469
- then: То
470
- and: И|К тому же
471
- but: Но|А
472
- space_after_keyword: true
473
- "se":
474
- name: Swedish
475
- native: Svenska
476
- encoding: UTF-8
477
- feature: Egenskap
478
- background: Bakgrund
479
- scenario: Scenario
480
- scenario_outline: Abstrakt Scenario
481
- examples: Exempel
482
- given: Givet
483
- when: När
484
- then: Så
485
- and: Och
486
- but: Men
487
- space_after_keyword: true
488
- "sk":
489
- name: Slovak
490
- native: Slovensky
491
- encoding: UTF-8
492
- feature: Požiadavka
493
- background: Pozadie
494
- scenario: Scenár
495
- scenario_outline: Náčrt Scenáru
496
- examples: Príklady
497
- given: Pokiaľ
498
- when: Keď
499
- then: Tak
500
- and: A
501
- but: Ale
502
- space_after_keyword: true
503
- "uz":
504
- name: Uzbek
505
- native: Узбекча
506
- encoding: UTF-8
507
- feature: Функционал
508
- background: Тарих
509
- scenario: Сценарий
510
- scenario_outline: Сценарий структураси
511
- examples: Мисоллар
512
- given: Агар
513
- when: Агар
514
- then: Унда
515
- and: Ва
516
- but: Лекин|Бирок|Аммо
517
- "vi":
518
- name: Vietnamese
519
- native: Tiếng Việt
520
- encoding: UTF-8
521
- feature: Tính năng
522
- background: Bối cảnh
523
- scenario: Tình huống|Kịch bản
524
- scenario_outline: Khung tình huống|Khung kịch bản
525
- examples: Dữ liệu
526
- given: Biết|Cho
527
- when: Khi
528
- then: Thì
529
- and: Và
530
- but: Nhưng
531
- space_after_keyword: true
532
- "zh-CN":
533
- name: Chinese simplified
534
- native: 简体中文
535
- encoding: UTF-8
536
- feature: 功能
537
- background: 背景
538
- scenario: 场景
539
- scenario_outline: 场景大纲
540
- examples: 例子
541
- given: 假如
542
- when: 当
543
- then: 那么
544
- and: 而且
545
- but: 但是
546
- space_after_keyword: false
547
- "zh-TW":
548
- name: Chinese traditional
549
- native: 繁體中文
550
- encoding: UTF-8
551
- feature: 功能
552
- background: 背景
553
- scenario: 場景|劇本
554
- scenario_outline: 場景大綱|劇本大綱
555
- examples: 例子
556
- given: 假設
557
- when: 當
558
- then: 那麼
559
- and: 而且|並且
560
- but: 但是
561
- space_after_keyword: false