cucumber_monitor 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/README.rdoc +3 -0
  3. data/Rakefile +40 -0
  4. data/app/assets/stylesheets/cucumber_monitor/cucumber_monitor.css +48 -0
  5. data/app/controllers/cucumber_monitor_controller.rb +15 -0
  6. data/app/views/cucumber_monitor/_search_form.html.erb +4 -0
  7. data/app/views/cucumber_monitor/features.html.erb +24 -0
  8. data/app/views/cucumber_monitor/search.html.erb +22 -0
  9. data/app/views/cucumber_monitor/show_feature.html.erb +41 -0
  10. data/config/locales/cucumber_monitor.yml +601 -0
  11. data/config/routes.rb +7 -0
  12. data/lib/cucumber_monitor/array.rb +25 -0
  13. data/lib/cucumber_monitor/base.rb +50 -0
  14. data/lib/cucumber_monitor/context.rb +35 -0
  15. data/lib/cucumber_monitor/engine.rb +4 -0
  16. data/lib/cucumber_monitor/feature_file.rb +60 -0
  17. data/lib/cucumber_monitor/scenario.rb +44 -0
  18. data/lib/cucumber_monitor/step.rb +76 -0
  19. data/lib/cucumber_monitor/string.rb +8 -0
  20. data/lib/cucumber_monitor/version.rb +3 -0
  21. data/lib/cucumber_monitor.rb +19 -0
  22. data/lib/tasks/cucumber_monitor_tasks.rake +4 -0
  23. data/test/cucumber_monitor_test.rb +7 -0
  24. data/test/dummy/README.rdoc +261 -0
  25. data/test/dummy/Rakefile +7 -0
  26. data/test/dummy/app/assets/javascripts/application.js +15 -0
  27. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  28. data/test/dummy/app/controllers/application_controller.rb +3 -0
  29. data/test/dummy/app/helpers/application_helper.rb +2 -0
  30. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  31. data/test/dummy/config/application.rb +59 -0
  32. data/test/dummy/config/boot.rb +10 -0
  33. data/test/dummy/config/database.yml +25 -0
  34. data/test/dummy/config/environment.rb +5 -0
  35. data/test/dummy/config/environments/development.rb +37 -0
  36. data/test/dummy/config/environments/production.rb +67 -0
  37. data/test/dummy/config/environments/test.rb +37 -0
  38. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  39. data/test/dummy/config/initializers/inflections.rb +15 -0
  40. data/test/dummy/config/initializers/mime_types.rb +5 -0
  41. data/test/dummy/config/initializers/secret_token.rb +7 -0
  42. data/test/dummy/config/initializers/session_store.rb +8 -0
  43. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  44. data/test/dummy/config/locales/en.yml +5 -0
  45. data/test/dummy/config/routes.rb +58 -0
  46. data/test/dummy/config.ru +4 -0
  47. data/test/dummy/public/404.html +26 -0
  48. data/test/dummy/public/422.html +26 -0
  49. data/test/dummy/public/500.html +25 -0
  50. data/test/dummy/public/favicon.ico +0 -0
  51. data/test/dummy/script/rails +6 -0
  52. data/test/integration/navigation_test.rb +10 -0
  53. data/test/test_helper.rb +15 -0
  54. metadata +145 -0
@@ -0,0 +1,601 @@
1
+ # encoding: UTF-8
2
+ #
3
+ # We use ISO 639-1 (language) and ISO 3166 alpha-2 (region - if appliccable):
4
+ # http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
5
+ # http://en.wikipedia.org/wiki/ISO_3166-1
6
+ #
7
+ # If you want several aliases for a keyword, just separate them
8
+ # with a | character. Make sure there are no ambiguities in the
9
+ # keywords.
10
+ #
11
+ # If you do *not* want a trailing space after a keyword, end it with a < character.
12
+ # (See Chinese for examples).
13
+ #
14
+ "en":
15
+ name: English
16
+ native: English
17
+ feature: Feature
18
+ background: Background
19
+ scenario: Scenario
20
+ scenario_outline: Scenario Outline|Scenario Template
21
+ examples: Examples|Scenarios
22
+ given: "*|Given"
23
+ when: "*|When"
24
+ then: "*|Then"
25
+ and: "*|And"
26
+ but: "*|But"
27
+
28
+ # Please keep the grammars in alphabetical order by name from here and down.
29
+
30
+ "ar":
31
+ name: Arabic
32
+ native: العربية
33
+ feature: خاصية
34
+ background: الخلفية
35
+ scenario: سيناريو
36
+ scenario_outline: سيناريو مخطط
37
+ examples: امثلة
38
+ given: "*|بفرض"
39
+ when: "*|متى|عندما"
40
+ then: "*|اذاً|ثم"
41
+ and: "*|و"
42
+ but: "*|لكن"
43
+ "bg":
44
+ name: Bulgarian
45
+ native: български
46
+ feature: Функционалност
47
+ background: Предистория
48
+ scenario: Сценарий
49
+ scenario_outline: Рамка на сценарий
50
+ examples: Примери
51
+ given: "*|Дадено"
52
+ when: "*|Когато"
53
+ then: "*|То"
54
+ and: "*|И"
55
+ but: "*|Но"
56
+ "ca":
57
+ name: Catalan
58
+ native: català
59
+ background: Rerefons|Antecedents
60
+ feature: Característica|Funcionalitat
61
+ scenario: Escenari
62
+ scenario_outline: Esquema de l'escenari
63
+ examples: Exemples
64
+ given: "*|Donat|Donada|Atès|Atesa"
65
+ when: "*|Quan"
66
+ then: "*|Aleshores|Cal"
67
+ and: "*|I"
68
+ but: "*|Però"
69
+ "cy-GB":
70
+ name: Welsh
71
+ native: Cymraeg
72
+ background: Cefndir
73
+ feature: Arwedd
74
+ scenario: Scenario
75
+ scenario_outline: Scenario Amlinellol
76
+ examples: Enghreifftiau
77
+ given: "*|Anrhegedig a"
78
+ when: "*|Pryd"
79
+ then: "*|Yna"
80
+ and: "*|A"
81
+ but: "*|Ond"
82
+ "cs":
83
+ name: Czech
84
+ native: Česky
85
+ feature: Požadavek
86
+ background: Pozadí|Kontext
87
+ scenario: Scénář
88
+ scenario_outline: Náčrt Scénáře|Osnova scénáře
89
+ examples: Příklady
90
+ given: "*|Pokud"
91
+ when: "*|Když"
92
+ then: "*|Pak"
93
+ and: "*|A|A také"
94
+ but: "*|Ale"
95
+ "da":
96
+ name: Danish
97
+ native: dansk
98
+ feature: Egenskab
99
+ background: Baggrund
100
+ scenario: Scenarie
101
+ scenario_outline: Abstrakt Scenario
102
+ examples: Eksempler
103
+ given: "*|Givet"
104
+ when: "*|Når"
105
+ then: "*|Så"
106
+ and: "*|Og"
107
+ but: "*|Men"
108
+ "de":
109
+ name: German
110
+ native: Deutsch
111
+ feature: Funktionalität
112
+ background: Grundlage
113
+ scenario: Szenario
114
+ scenario_outline: Szenariogrundriss
115
+ examples: Beispiele
116
+ given: "*|Angenommen|Gegeben sei"
117
+ when: "*|Wenn"
118
+ then: "*|Dann"
119
+ and: "*|Und"
120
+ but: "*|Aber"
121
+ "en-au":
122
+ name: Australian
123
+ native: Australian
124
+ feature: Crikey
125
+ background: Background
126
+ scenario: Mate
127
+ scenario_outline: Blokes
128
+ examples: Cobber
129
+ given: "*|Ya know how"
130
+ when: "*|When"
131
+ then: "*|Ya gotta"
132
+ and: "*|N"
133
+ but: "*|Cept"
134
+ "en-lol":
135
+ name: LOLCAT
136
+ native: LOLCAT
137
+ feature: OH HAI
138
+ background: B4
139
+ scenario: MISHUN
140
+ scenario_outline: MISHUN SRSLY
141
+ examples: EXAMPLZ
142
+ given: "*|I CAN HAZ"
143
+ when: "*|WEN"
144
+ then: "*|DEN"
145
+ and: "*|AN"
146
+ but: "*|BUT"
147
+ "en-pirate":
148
+ name: Pirate
149
+ native: Pirate
150
+ feature: Ahoy matey!
151
+ background: Yo-ho-ho
152
+ scenario: Heave to
153
+ scenario_outline: Shiver me timbers
154
+ examples: Dead men tell no tales
155
+ given: "*|Gangway!"
156
+ when: "*|Blimey!"
157
+ then: "*|Let go and haul"
158
+ and: "*|Aye"
159
+ but: "*|Avast!"
160
+ "en-Scouse":
161
+ name: Scouse
162
+ native: Scouse
163
+ feature: Feature
164
+ background: "Dis is what went down"
165
+ scenario: "The thing of it is"
166
+ scenario_outline: "Wharrimean is"
167
+ examples: Examples
168
+ given: "*|Givun|Youse know when youse got"
169
+ when: "*|Wun|Youse know like when"
170
+ then: "*|Dun|Den youse gotta"
171
+ and: "*|An"
172
+ but: "*|Buh"
173
+ "en-tx":
174
+ name: Texan
175
+ native: Texan
176
+ feature: Feature
177
+ background: Background
178
+ scenario: Scenario
179
+ scenario_outline: All y'all
180
+ examples: Examples
181
+ given: "*|Given y'all"
182
+ when: "*|When y'all"
183
+ then: "*|Then y'all"
184
+ and: "*|And y'all"
185
+ but: "*|But y'all"
186
+ "eo":
187
+ name: Esperanto
188
+ native: Esperanto
189
+ feature: Trajto
190
+ background: Fono
191
+ scenario: Scenaro
192
+ scenario_outline: Konturo de la scenaro
193
+ examples: Ekzemploj
194
+ given: "*|Donitaĵo"
195
+ when: "*|Se"
196
+ then: "*|Do"
197
+ and: "*|Kaj"
198
+ but: "*|Sed"
199
+ "es":
200
+ name: Spanish
201
+ native: español
202
+ background: Antecedentes
203
+ feature: Característica
204
+ scenario: Escenario
205
+ scenario_outline: Esquema del escenario
206
+ examples: Ejemplos
207
+ given: "*|Dado"
208
+ when: "*|Cuando"
209
+ then: "*|Entonces"
210
+ and: "*|Y"
211
+ but: "*|Pero"
212
+ "et":
213
+ name: Estonian
214
+ native: eesti keel
215
+ feature: Omadus
216
+ background: Taust
217
+ scenario: Stsenaarium
218
+ scenario_outline: Raamstsenaarium
219
+ examples: Juhtumid
220
+ given: "*|Eeldades"
221
+ when: "*|Kui"
222
+ then: "*|Siis"
223
+ and: "*|Ja"
224
+ but: "*|Kuid"
225
+ "fi":
226
+ name: Finnish
227
+ native: suomi
228
+ feature: Ominaisuus
229
+ background: Tausta
230
+ scenario: Tapaus
231
+ scenario_outline: Tapausaihio
232
+ examples: Tapaukset
233
+ given: "*|Oletetaan"
234
+ when: "*|Kun"
235
+ then: "*|Niin"
236
+ and: "*|Ja"
237
+ but: "*|Mutta"
238
+ "fr":
239
+ name: French
240
+ native: français
241
+ feature: Fonctionnalité
242
+ background: Contexte
243
+ scenario: Scénario
244
+ scenario_outline: Plan du scénario|Plan du Scénario
245
+ examples: Exemples
246
+ given: "*|Soit|Etant donné"
247
+ when: "*|Quand|Lorsque|Lorsqu'<"
248
+ then: "*|Alors"
249
+ and: "*|Et"
250
+ but: "*|Mais"
251
+ "he":
252
+ name: Hebrew
253
+ native: עברית
254
+ feature: תכונה
255
+ background: רקע
256
+ scenario: תרחיש
257
+ scenario_outline: תבנית תרחיש
258
+ examples: דוגמאות
259
+ given: "*|בהינתן"
260
+ when: "*|כאשר"
261
+ then: "*|אז|אזי"
262
+ and: "*|וגם"
263
+ but: "*|אבל"
264
+ "hr":
265
+ name: Croatian
266
+ native: hrvatski
267
+ feature: Osobina|Mogućnost|Mogucnost
268
+ background: Pozadina
269
+ scenario: Scenarij
270
+ scenario_outline: Skica|Koncept
271
+ examples: Primjeri|Scenariji
272
+ given: "*|Zadan|Zadani|Zadano"
273
+ when: "*|Kada|Kad"
274
+ then: "*|Onda"
275
+ and: "*|I"
276
+ but: "*|Ali"
277
+ "hu":
278
+ name: Hungarian
279
+ native: magyar
280
+ feature: Jellemző
281
+ background: Háttér
282
+ scenario: Forgatókönyv
283
+ scenario_outline: Forgatókönyv vázlat
284
+ examples: Példák
285
+ given: "*|Amennyiben|Adott"
286
+ when: "*|Majd|Ha|Amikor"
287
+ then: "*|Akkor"
288
+ and: "*|És"
289
+ but: "*|De"
290
+ "id":
291
+ name: Indonesian
292
+ native: Bahasa Indonesia
293
+ feature: Fitur
294
+ background: Dasar
295
+ scenario: Skenario
296
+ scenario_outline: Skenario konsep
297
+ examples: Contoh
298
+ given: "*|Dengan"
299
+ when: "*|Ketika"
300
+ then: "*|Maka"
301
+ and: "*|Dan"
302
+ but: "*|Tapi"
303
+ "it":
304
+ name: Italian
305
+ native: italiano
306
+ feature: Funzionalità
307
+ background: Contesto
308
+ scenario: Scenario
309
+ scenario_outline: Schema dello scenario
310
+ examples: Esempi
311
+ given: "*|Dato"
312
+ when: "*|Quando"
313
+ then: "*|Allora"
314
+ and: "*|E"
315
+ but: "*|Ma"
316
+ "ja":
317
+ name: Japanese
318
+ native: 日本語
319
+ feature: フィーチャ|機能
320
+ background: 背景
321
+ scenario: シナリオ
322
+ scenario_outline: シナリオアウトライン|シナリオテンプレート|テンプレ|シナリオテンプレ
323
+ examples: 例|サンプル
324
+ given: "*|前提<"
325
+ when: "*|もし<"
326
+ then: "*|ならば<"
327
+ and: "*|かつ<"
328
+ but: "*|しかし<|但し<|ただし<"
329
+ "ko":
330
+ name: Korean
331
+ native: 한국어
332
+ background: 배경
333
+ feature: 기능
334
+ scenario: 시나리오
335
+ scenario_outline: 시나리오 개요
336
+ examples: 예
337
+ given: "*|조건<|먼저<"
338
+ when: "*|만일<|만약<"
339
+ then: "*|그러면<"
340
+ and: "*|그리고<"
341
+ but: "*|하지만<|단<"
342
+ "lt":
343
+ name: Lithuanian
344
+ native: lietuvių kalba
345
+ feature: Savybė
346
+ background: Kontekstas
347
+ scenario: Scenarijus
348
+ scenario_outline: Scenarijaus šablonas
349
+ examples: Pavyzdžiai|Scenarijai|Variantai
350
+ given: "*|Duota"
351
+ when: "*|Kai"
352
+ then: "*|Tada"
353
+ and: "*|Ir"
354
+ but: "*|Bet"
355
+ "lu":
356
+ name: Luxemburgish
357
+ native: Lëtzebuergesch
358
+ feature: Funktionalitéit
359
+ background: Hannergrond
360
+ scenario: Szenario
361
+ scenario_outline: Plang vum Szenario
362
+ examples: Beispiller
363
+ given: "*|ugeholl"
364
+ when: "*|wann"
365
+ then: "*|dann"
366
+ and: "*|an|a"
367
+ but: "*|awer|mä"
368
+ "lv":
369
+ name: Latvian
370
+ native: latviešu
371
+ feature: Funkcionalitāte|Fīča
372
+ background: Konteksts|Situācija
373
+ scenario: Scenārijs
374
+ scenario_outline: Scenārijs pēc parauga
375
+ examples: Piemēri|Paraugs
376
+ given: "*|Kad"
377
+ when: "*|Ja"
378
+ then: "*|Tad"
379
+ and: "*|Un"
380
+ but: "*|Bet"
381
+ "nl":
382
+ name: Dutch
383
+ native: Nederlands
384
+ feature: Functionaliteit
385
+ background: Achtergrond
386
+ scenario: Scenario
387
+ scenario_outline: Abstract Scenario
388
+ examples: Voorbeelden
389
+ given: "*|Gegeven|Stel"
390
+ when: "*|Als"
391
+ then: "*|Dan"
392
+ and: "*|En"
393
+ but: "*|Maar"
394
+ "no":
395
+ name: Norwegian
396
+ native: norsk
397
+ feature: Egenskap
398
+ background: Bakgrunn
399
+ scenario: Scenario
400
+ scenario_outline: Scenariomal|Abstrakt Scenario
401
+ examples: Eksempler
402
+ given: "*|Gitt"
403
+ when: "*|Når"
404
+ then: "*|Så"
405
+ and: "*|Og"
406
+ but: "*|Men"
407
+ "pl":
408
+ name: Polish
409
+ native: polski
410
+ feature: Właściwość
411
+ background: Założenia
412
+ scenario: Scenariusz
413
+ scenario_outline: Szablon scenariusza
414
+ examples: Przykłady
415
+ given: "*|Zakładając|Mając"
416
+ when: "*|Jeżeli|Jeśli"
417
+ then: "*|Wtedy"
418
+ and: "*|Oraz|I"
419
+ but: "*|Ale"
420
+ "pt":
421
+ name: Portuguese
422
+ native: português
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
+ "pt-BR":
434
+ name: Portuguese
435
+ native: português
436
+ background: Contexto
437
+ feature: Funcionalidade
438
+ scenario: Cenário
439
+ scenario_outline: Esquema do Cenário|Esquema do Cenario
440
+ examples: Exemplos
441
+ given: "*|Dado"
442
+ when: "*|Quando"
443
+ then: "*|Então|Entao"
444
+ and: "*|E"
445
+ but: "*|Mas"
446
+ "ro":
447
+ name: Romanian
448
+ native: română
449
+ background: Context
450
+ feature: Functionalitate|Funcționalitate|Funcţionalitate
451
+ scenario: Scenariu
452
+ scenario_outline: Structura scenariu|Structură scenariu
453
+ examples: Exemple
454
+ given: "*|Date fiind|Dat fiind|Dati fiind|Dați fiind|Daţi fiind"
455
+ when: "*|Cand|Când"
456
+ then: "*|Atunci"
457
+ and: "*|Si|Și|Şi"
458
+ but: "*|Dar"
459
+ "ru":
460
+ name: Russian
461
+ native: русский
462
+ feature: Функция|Функционал|Свойство
463
+ background: Предыстория|Контекст
464
+ scenario: Сценарий
465
+ scenario_outline: Структура сценария
466
+ examples: Примеры
467
+ given: "*|Допустим|Дано|Пусть"
468
+ when: "*|Если|Когда"
469
+ then: "*|То|Тогда"
470
+ and: "*|И|К тому же"
471
+ but: "*|Но|А"
472
+ "sv":
473
+ name: Swedish
474
+ native: Svenska
475
+ feature: Egenskap
476
+ background: Bakgrund
477
+ scenario: Scenario
478
+ scenario_outline: Abstrakt Scenario|Scenariomall
479
+ examples: Exempel
480
+ given: "*|Givet"
481
+ when: "*|När"
482
+ then: "*|Så"
483
+ and: "*|Och"
484
+ but: "*|Men"
485
+ "sk":
486
+ name: Slovak
487
+ native: Slovensky
488
+ feature: Požiadavka
489
+ background: Pozadie
490
+ scenario: Scenár
491
+ scenario_outline: Náčrt Scenáru
492
+ examples: Príklady
493
+ given: "*|Pokiaľ"
494
+ when: "*|Keď"
495
+ then: "*|Tak"
496
+ and: "*|A"
497
+ but: "*|Ale"
498
+ "sr-Latn":
499
+ name: Serbian (Latin)
500
+ native: Srpski (Latinica)
501
+ feature: Funkcionalnost|Mogućnost|Mogucnost|Osobina
502
+ background: Kontekst|Osnova|Pozadina
503
+ scenario: Scenario|Primer
504
+ scenario_outline: Struktura scenarija|Skica|Koncept
505
+ examples: Primeri|Scenariji
506
+ given: "*|Zadato|Zadate|Zatati"
507
+ when: "*|Kada|Kad"
508
+ then: "*|Onda"
509
+ and: "*|I"
510
+ but: "*|Ali"
511
+ "sr-Cyrl":
512
+ name: Serbian
513
+ native: Српски
514
+ feature: Функционалност|Могућност|Особина
515
+ background: Контекст|Основа|Позадина
516
+ scenario: Сценарио|Пример
517
+ scenario_outline: Структура сценарија|Скица|Концепт
518
+ examples: Примери|Сценарији
519
+ given: "*|Задато|Задате|Задати"
520
+ when: "*|Када|Кад"
521
+ then: "*|Онда"
522
+ and: "*|И"
523
+ but: "*|Али"
524
+ "tr":
525
+ name: Turkish
526
+ native: Türkçe
527
+ feature: Özellik
528
+ background: Geçmiş
529
+ scenario: Senaryo
530
+ scenario_outline: Senaryo taslağı
531
+ examples: Örnekler
532
+ given: "*|Diyelim ki"
533
+ when: "*|Eğer ki"
534
+ then: "*|O zaman"
535
+ and: "*|Ve"
536
+ but: "*|Fakat|Ama"
537
+ "uk":
538
+ name: Ukrainian
539
+ native: Українська
540
+ feature: Функціонал
541
+ background: Передумова
542
+ scenario: Сценарій
543
+ scenario_outline: Структура сценарію
544
+ examples: Приклади
545
+ given: "*|Припустимо|Припустимо, що|Нехай|Дано"
546
+ when: "*|Якщо|Коли"
547
+ then: "*|То|Тоді"
548
+ and: "*|І|А також|Та"
549
+ but: "*|Але"
550
+ "uz":
551
+ name: Uzbek
552
+ native: Узбекча
553
+ feature: Функционал
554
+ background: Тарих
555
+ scenario: Сценарий
556
+ scenario_outline: Сценарий структураси
557
+ examples: Мисоллар
558
+ given: "*|Агар"
559
+ when: "*|Агар"
560
+ then: "*|Унда"
561
+ and: "*|Ва"
562
+ but: "*|Лекин|Бирок|Аммо"
563
+ "vi":
564
+ name: Vietnamese
565
+ native: Tiếng Việt
566
+ feature: Tính năng
567
+ background: Bối cảnh
568
+ scenario: Tình huống|Kịch bản
569
+ scenario_outline: Khung tình huống|Khung kịch bản
570
+ examples: Dữ liệu
571
+ given: "*|Biết|Cho"
572
+ when: "*|Khi"
573
+ then: "*|Thì"
574
+ and: "*|Và"
575
+ but: "*|Nhưng"
576
+ "zh-CN":
577
+ name: Chinese simplified
578
+ native: 简体中文
579
+ feature: 功能
580
+ background: 背景
581
+ scenario: 场景
582
+ scenario_outline: 场景大纲
583
+ examples: 例子
584
+ given: "*|假如<"
585
+ when: "*|当<"
586
+ then: "*|那么<"
587
+ and: "*|而且<"
588
+ but: "*|但是<"
589
+ "zh-TW":
590
+ name: Chinese traditional
591
+ native: 繁體中文
592
+ feature: 功能
593
+ background: 背景
594
+ scenario: 場景|劇本
595
+ scenario_outline: 場景大綱|劇本大綱
596
+ examples: 例子
597
+ given: "*|假設<"
598
+ when: "*|當<"
599
+ then: "*|那麼<"
600
+ and: "*|而且<|並且<"
601
+ but: "*|但是<"
data/config/routes.rb ADDED
@@ -0,0 +1,7 @@
1
+ Rails.application.routes.draw do
2
+ resource :cucumber_monitor, only: [] do
3
+ get 'features' => 'cucumber_monitor#features', as: 'features'
4
+ get 'show_feature/:name' => 'cucumber_monitor#show_feature', as: 'show_feature'
5
+ get 'search' => 'cucumber_monitor#search', as: 'search'
6
+ end
7
+ end
@@ -0,0 +1,25 @@
1
+ # encoding: UTF-8
2
+
3
+ class Array
4
+ def where(options={})
5
+ result = []
6
+ self.each do |item|
7
+ if item.respond_to?(:name) && item.name == options[:name]
8
+ result << item
9
+ end
10
+
11
+ if item.respond_to?(:id) && item.id == options[:id]
12
+ result << item
13
+ end
14
+ end
15
+
16
+ result.uniq!
17
+
18
+ if result.size == 1
19
+ result.first
20
+ else
21
+ result
22
+ end
23
+ end
24
+
25
+ end
@@ -0,0 +1,50 @@
1
+ # encoding: UTF-8
2
+
3
+ module CucumberMonitor
4
+ class Base
5
+
6
+ def self.features_path
7
+ Dir.pwd.to_s + '/features'
8
+ end
9
+
10
+ def locate
11
+ "Printing: #{I18n.t("feature")}"
12
+ end
13
+
14
+ def files
15
+ collection = []
16
+ dir_entries = Dir.entries(self.class.features_path)
17
+ search_and_include_features(dir_entries)
18
+ end
19
+
20
+ def search_and_include_features(dir_entries, collection=[])
21
+ dir_entries.each do |entrie|
22
+ if entrie.include?('.feature')
23
+ collection << entrie
24
+ end
25
+ end
26
+ collection
27
+ end
28
+
29
+ def features
30
+ collection = []
31
+ files.each do |file|
32
+ collection << CucumberMonitor::FeatureFile.new(file)
33
+ end
34
+ collection
35
+ end
36
+
37
+ def search(criteria)
38
+ results = []
39
+ features.each do |feature|
40
+ feature.scenarios.each do |scenario|
41
+ scenario.steps.each do |step|
42
+ results << step if step.description.include?(criteria)
43
+ end
44
+ end
45
+ end
46
+ results
47
+ end
48
+
49
+ end
50
+ end
@@ -0,0 +1,35 @@
1
+ # encoding: UTF-8
2
+
3
+ module CucumberMonitor
4
+
5
+ class Context
6
+
7
+ attr_accessor :name, :feature
8
+
9
+ def initialize(name,feature)
10
+ @name = name
11
+ @feature = feature
12
+ end
13
+
14
+ def steps
15
+ st = []
16
+ started = false
17
+ stopped = false
18
+ record = false
19
+ count = 0
20
+ feature.lines.each_with_index do |line, i|
21
+ if line.include?(I18n.t("background"))
22
+ started = true
23
+ end
24
+ if started && !stopped
25
+ st << Step.new(line.strip, self, i+1) unless (count == 0 || line.strip.blank?)
26
+ stopped = true if line.strip.blank?
27
+ count += 1
28
+ end
29
+ end
30
+ st
31
+ end
32
+
33
+ end
34
+
35
+ end