[libtest-bdd-cucumber-perl] 02/52: Localized feature files.
Intrigeri
intrigeri at moszumanska.debian.org
Thu Jun 19 10:18:32 UTC 2014
This is an automated email from the git hooks/post-receive script.
intrigeri pushed a commit to annotated tag 0.19
in repository libtest-bdd-cucumber-perl.
commit 15f79dfe26d1d29e29a7d4122713c63b9b8ec4d1
Author: Pablo Duboue <pablo.duboue at gmail.com>
Date: Sat Dec 15 11:35:47 2012 -0500
Localized feature files.
Extended pherkin with an extra parameter for language and added Gherkin's i18n files.
This change allows for localized feature files.
Localizing step files is still missing.
---
dist.ini | 1 +
examples/calculator/features/basic.feature.es | 62 ++++
lib/App/pherkin.pm | 4 +-
lib/Test/BDD/Cucumber/Loader.pm | 4 +-
lib/Test/BDD/Cucumber/Parser.pm | 49 ++-
lib/Test/BDD/Cucumber/i18n.json | 470 +++++++++++++-------------
6 files changed, 333 insertions(+), 257 deletions(-)
diff --git a/dist.ini b/dist.ini
index be124a7..1f45c18 100644
--- a/dist.ini
+++ b/dist.ini
@@ -26,3 +26,4 @@ Test::Builder = 0
Test::Differences = 0
Test::More = 0
YAML::Syck = 0
+JSON::XS = 0
diff --git a/examples/calculator/features/basic.feature.es b/examples/calculator/features/basic.feature.es
new file mode 100644
index 0000000..4e7adda
--- /dev/null
+++ b/examples/calculator/features/basic.feature.es
@@ -0,0 +1,62 @@
+Característica: Funciones Básicas de Calculadora
+ In order to check I've written the Calculator class correctly
+ As a developer I want to check some basic operations
+ So that I can have confidence in my Calculator class.
+
+ Antecedentes:
+ Dado a usable "Calculator" class
+
+ Escenario: First Key Press on the Display
+ Dado a new Calculator object
+ Y having pressed 1
+ Entonces the display should show 1
+
+ Escenario: Several Key Presses on the Display
+ Dada a new Calculator object
+ Y having pressed 1 and 2 and 3 and . and 5 and 0
+ Entonces the display should show 123.50
+
+ Escenario: Pressing Clear Wipes the Display
+ Dada a new Calculator object
+ Y having pressed 1 and 2 and 3
+ Y having pressed C
+ Entonces the display should show 0
+
+ Escenario: Add as you go
+ Dado a new Calculator object
+ Y having pressed 1 and 2 and 3 and + and 4 and 5 and 6 and +
+ Entonces the display should show 579
+
+ Escenario: Basic arithmetic
+ Dado a new Calculator object
+ Y having keyed <first>
+ Y having keyed <operator>
+ Y having keyed <second>
+ Y having pressed =
+ Entonces the display should show <result>
+ Ejemplos:
+ | first | operator | second | result |
+ | 5.0 | + | 5.0 | 10 |
+ | 6 | / | 3 | 2 |
+ | 10 | * | 7.550 | 75.5 |
+ | 3 | - | 10 | -7 |
+
+ Escenario: Separation of calculations
+ Dado a new Calculator object
+ Y having successfully performed the following calculations
+ | first | operator | second | result |
+ | 0.5 | + | 0.1 | 0.6 |
+ | 0.01 | / | 0.01 | 1 |
+ | 10 | * | 1 | 10 |
+ Y having pressed 3
+ Entonces the display should show 3
+
+ Escenario: Ticker Tape
+ Dado a new Calculator object
+ Y having entered the following sequence
+ """
+ 1 + 2 + 3 + 4 + 5 + 6 -
+ 100
+ * 13 \=\=\= + 2 =
+ """
+ Entonces the display should show -1025
\ No newline at end of file
diff --git a/lib/App/pherkin.pm b/lib/App/pherkin.pm
index e217391..024ed51 100644
--- a/lib/App/pherkin.pm
+++ b/lib/App/pherkin.pm
@@ -43,7 +43,7 @@ Returns a L<Test::BDD::Cucumber::Model::Result> object for all steps run.
sub run {
my ( $class, @arguments ) = @_;
my ( $executor, @features ) = Test::BDD::Cucumber::Loader->load(
- $arguments[0] || './features/'
+ $arguments[0] || './features/', $arguments[1]
);
die "No feature files found" unless @features;
@@ -63,4 +63,4 @@ Copyright 2011, Peter Sergeant; Licensed under the same terms as Perl
=cut
-1;
\ No newline at end of file
+1;
diff --git a/lib/Test/BDD/Cucumber/Loader.pm b/lib/Test/BDD/Cucumber/Loader.pm
index 10a262b..ea05a2c 100644
--- a/lib/Test/BDD/Cucumber/Loader.pm
+++ b/lib/Test/BDD/Cucumber/Loader.pm
@@ -28,7 +28,7 @@ use Test::BDD::Cucumber::Parser;
use Test::BDD::Cucumber::StepFile();
sub load {
- my ( $class, $path ) = @_;
+ my ( $class, $path, $language ) = @_;
my $executor = Test::BDD::Cucumber::Executor->new();
# Either load a feature or a directory...
@@ -51,7 +51,7 @@ sub load {
# Grab the feature files
my @features = map {
my $file = $_;
- my $feature = Test::BDD::Cucumber::Parser->parse_file( $file );
+ my $feature = Test::BDD::Cucumber::Parser->parse_file( $file, $language );
} ( $file ? ($file.'') : File::Find::Rule
->file()
->name( '*.feature' )
diff --git a/lib/Test/BDD/Cucumber/Parser.pm b/lib/Test/BDD/Cucumber/Parser.pm
index b06198c..d082381 100644
--- a/lib/Test/BDD/Cucumber/Parser.pm
+++ b/lib/Test/BDD/Cucumber/Parser.pm
@@ -28,8 +28,10 @@ L<Test::BDD::Cucumber::Model::Feature> object on success.
use strict;
use warnings;
use Ouch;
+use encoding 'utf8';
use File::Slurp;
+use JSON::XS;
use Test::BDD::Cucumber::Model::Document;
use Test::BDD::Cucumber::Model::Feature;
use Test::BDD::Cucumber::Model::Scenario;
@@ -38,23 +40,30 @@ use Test::BDD::Cucumber::Model::Step;
# https://github.com/cucumber/cucumber/wiki/Multiline-Step-Arguments
# https://github.com/cucumber/cucumber/wiki/Scenario-outlines
+my $LANGUAGES = decode_json( read_file( "./lib/Test/BDD/Cucumber/i18n.json", { binmode => ':raw' } ) );
+
sub parse_string {
- my ( $self, $string ) = @_;
- return $self->_construct( Test::BDD::Cucumber::Model::Document->new({
+ my ( $class, $string, $language ) = @_;
+ $language = 'en' unless($language);
+ return $class->_construct( Test::BDD::Cucumber::Model::Document->new({
content => $string
- }) );
+ }), $language );
}
sub parse_file {
- my ( $self, $string ) = @_;
- return $self->_construct( Test::BDD::Cucumber::Model::Document->new({
- content => scalar( read_file $string ),
+ my ( $class, $string, $language ) = @_;
+ $language = 'en' unless($language);
+ return $class->_construct( Test::BDD::Cucumber::Model::Document->new({
+ content => scalar( read_file( $string, { binmode => ':utf8' } ) ),
filename => $string
- }) );
+ }), $language );
}
sub _construct {
- my ( $self, $document ) = @_;
+ my ( $class, $document, $language ) = @_;
+
+ my $self = { keywords => $LANGUAGES->{$language} };
+ bless $self, $class;
my $feature = Test::BDD::Cucumber::Model::Feature->new({ document => $document });
my @lines = $self->_remove_next_blanks( @{ $document->lines } );
@@ -84,7 +93,7 @@ sub _extract_feature_name {
next if $line->is_comment;
last if $line->is_blank;
- if ( $line->content =~ m/^Feature: (.+)/ ) {
+ if ( $line->content =~ m/^(?:$self->{keywords}->{feature}): (.+)/ ) {
$feature->name( $1 );
$feature->name_line( $line );
$feature->tags( \@feature_tags );
@@ -110,7 +119,7 @@ sub _extract_conditions_of_satisfaction {
while ( my $line = shift( @lines ) ) {
next if $line->is_comment || $line->is_blank;
- if ( $line->content =~ m/^(Background:|Scenario:|@)/ ) {
+ if ( $line->content =~ m/^((?:$self->{keywords}->{background}):|(?:$self->{keywords}->{scenario}):|@)/ ) {
unshift( @lines, $line );
last;
} else {
@@ -129,11 +138,11 @@ sub _extract_scenarios {
while ( my $line = shift( @lines ) ) {
next if $line->is_comment || $line->is_blank;
- if ( $line->content =~ m/^(Background|Scenario)(?: Outline)?: ?(.+)?/ ) {
+ if ( $line->content =~ m/^((?:$self->{keywords}->{background})|(?:$self->{keywords}->{scenario}))(?: Outline)?: ?(.+)?/ ) {
my ( $type, $name ) = ( $1, $2 );
# Only one background section, and it must be the first
- if ( $scenarios++ && $type eq 'Background' ) {
+ if ( $scenarios++ && $type =~ m/^($self->{keywords}->{background})/ ) {
ouch 'parse_error', "Background not allowed after scenarios",
$line;
}
@@ -141,7 +150,7 @@ sub _extract_scenarios {
# Create the scenario
my $scenario = Test::BDD::Cucumber::Model::Scenario->new({
( $name ? ( name => $name ) : () ),
- background => $type eq 'Background' ? 1 : 0,
+ background => $type =~ m/^($self->{keywords}->{background})/ ? 1 : 0,
line => $line,
tags => [@{$feature->tags}, @scenario_tags]
});
@@ -150,7 +159,7 @@ sub _extract_scenarios {
# Attempt to populate it
@lines = $self->_extract_steps( $feature, $scenario, @lines );
- if ( $type eq 'Background' ) {
+ if ( $type =~ m/^($self->{keywords}->{background})/ ) {
$feature->background( $scenario );
} else {
push( @{ $feature->scenarios }, $scenario );
@@ -172,17 +181,21 @@ sub _extract_scenarios {
sub _extract_steps {
my ( $self, $feature, $scenario, @lines ) = @_;
- my $last_verb = 'Given';
+ my @givens = split( /\|/, $self->{keywords}->{given} );
+ my $last_verb = $givens[-1];
while ( my $line = shift( @lines ) ) {
next if $line->is_comment;
last if $line->is_blank;
# Conventional step?
- if ( $line->content =~ m/^(Given|And|When|Then|But) (.+)/ ) {
+ if ( $line->content =~ m/^((?:$self->{keywords}->{given})|(?:$self->{keywords}->{and})|(?:$self->{keywords}->{when})|(?:$self->{keywords}->{then})|(?:$self->{keywords}->{but})) (.+)/ ) {
my ( $verb, $text ) = ( $1, $2 );
my $original_verb = $verb;
- $verb = $last_verb if lc($verb) eq 'and' or lc($verb) eq 'but';
+ $verb = 'Given' if $verb =~ m/($self->{keywords}->{given})/;
+ $verb = 'When' if $verb =~ m/($self->{keywords}->{when})/;
+ $verb = 'Then' if $verb =~ m/($self->{keywords}->{then})/;
+ $verb = $last_verb if $verb =~ m/^($self->{keywords}->{and})/ or $verb =~ m/^($self->{keywords}->{but})/;
$last_verb = $verb;
my $step = Test::BDD::Cucumber::Model::Step->new({
@@ -198,7 +211,7 @@ sub _extract_steps {
push( @{ $scenario->steps }, $step );
# Outline data block...
- } elsif ( $line->content =~ m/^Examples:$/ ) {
+ } elsif ( $line->content =~ m/^($self->{keywords}->{examples}):$/ ) {
return $self->_extract_table( 6, $scenario,
$self->_remove_next_blanks( @lines ));
} else {
diff --git a/lib/Test/BDD/Cucumber/i18n.json b/lib/Test/BDD/Cucumber/i18n.json
index b1e101c..8299287 100644
--- a/lib/Test/BDD/Cucumber/i18n.json
+++ b/lib/Test/BDD/Cucumber/i18n.json
@@ -7,11 +7,11 @@
"scenario": "Scenario",
"scenario_outline": "Scenario Outline|Scenario Template",
"examples": "Examples|Scenarios",
- "given": "*|Given",
- "when": "*|When",
- "then": "*|Then",
- "and": "*|And",
- "but": "*|But"
+ "given": "[*]|Given",
+ "when": "[*]|When",
+ "then": "[*]|Then",
+ "and": "[*]|And",
+ "but": "[*]|But"
},
"ar": {
"name": "Arabic",
@@ -21,11 +21,11 @@
"scenario": "سيناريو",
"scenario_outline": "سيناريو مخطط",
"examples": "امثلة",
- "given": "*|بفرض",
- "when": "*|متى|عندما",
- "then": "*|اذاً|ثم",
- "and": "*|و",
- "but": "*|لكن"
+ "given": "[*]|بفرض",
+ "when": "[*]|متى|عندما",
+ "then": "[*]|اذاً|ثم",
+ "and": "[*]|و",
+ "but": "[*]|لكن"
},
"bm": {
"name": "Malay",
@@ -35,11 +35,11 @@
"scenario": "Senario",
"scenario_outline": "Menggariskan Senario ",
"examples": "Contoh ",
- "given": "*|Bagi",
- "when": "*|Apabila",
- "then": "*|Kemudian",
- "and": "*|Dan",
- "but": "*|Tetapi"
+ "given": "[*]|Bagi",
+ "when": "[*]|Apabila",
+ "then": "[*]|Kemudian",
+ "and": "[*]|Dan",
+ "but": "[*]|Tetapi"
},
"bg": {
"name": "Bulgarian",
@@ -49,11 +49,11 @@
"scenario": "Сценарий",
"scenario_outline": "Рамка на сценарий",
"examples": "Примери",
- "given": "*|Дадено",
- "when": "*|Когато",
- "then": "*|То",
- "and": "*|И",
- "but": "*|Но"
+ "given": "[*]|Дадено",
+ "when": "[*]|Когато",
+ "then": "[*]|То",
+ "and": "[*]|И",
+ "but": "[*]|Но"
},
"ca": {
"name": "Catalan",
@@ -63,11 +63,11 @@
"scenario": "Escenari",
"scenario_outline": "Esquema de l'escenari",
"examples": "Exemples",
- "given": "*|Donat|Donada|Atès|Atesa",
- "when": "*|Quan",
- "then": "*|Aleshores|Cal",
- "and": "*|I",
- "but": "*|Però"
+ "given": "[*]|Donat|Donada|Atès|Atesa",
+ "when": "[*]|Quan",
+ "then": "[*]|Aleshores|Cal",
+ "and": "[*]|I",
+ "but": "[*]|Però"
},
"cy-GB": {
"name": "Welsh",
@@ -77,11 +77,11 @@
"scenario": "Scenario",
"scenario_outline": "Scenario Amlinellol",
"examples": "Enghreifftiau",
- "given": "*|Anrhegedig a",
- "when": "*|Pryd",
- "then": "*|Yna",
- "and": "*|A",
- "but": "*|Ond"
+ "given": "[*]|Anrhegedig a",
+ "when": "[*]|Pryd",
+ "then": "[*]|Yna",
+ "and": "[*]|A",
+ "but": "[*]|Ond"
},
"cs": {
"name": "Czech",
@@ -91,11 +91,11 @@
"scenario": "Scénář",
"scenario_outline": "Náčrt Scénáře|Osnova scénáře",
"examples": "Příklady",
- "given": "*|Pokud|Za předpokladu",
- "when": "*|Když",
- "then": "*|Pak",
- "and": "*|A také|A",
- "but": "*|Ale"
+ "given": "[*]|Pokud|Za předpokladu",
+ "when": "[*]|Když",
+ "then": "[*]|Pak",
+ "and": "[*]|A také|A",
+ "but": "[*]|Ale"
},
"da": {
"name": "Danish",
@@ -105,11 +105,11 @@
"scenario": "Scenarie",
"scenario_outline": "Abstrakt Scenario",
"examples": "Eksempler",
- "given": "*|Givet",
- "when": "*|Når",
- "then": "*|Så",
- "and": "*|Og",
- "but": "*|Men"
+ "given": "[*]|Givet",
+ "when": "[*]|Når",
+ "then": "[*]|Så",
+ "and": "[*]|Og",
+ "but": "[*]|Men"
},
"de": {
"name": "German",
@@ -119,11 +119,11 @@
"scenario": "Szenario",
"scenario_outline": "Szenariogrundriss",
"examples": "Beispiele",
- "given": "*|Angenommen|Gegeben sei",
- "when": "*|Wenn",
- "then": "*|Dann",
- "and": "*|Und",
- "but": "*|Aber"
+ "given": "[*]|Angenommen|Gegeben sei",
+ "when": "[*]|Wenn",
+ "then": "[*]|Dann",
+ "and": "[*]|Und",
+ "but": "[*]|Aber"
},
"en-au": {
"name": "Australian",
@@ -133,11 +133,11 @@
"scenario": "Awww, look mate",
"scenario_outline": "Reckon it's like",
"examples": "You'll wanna",
- "given": "*|Y'know",
- "when": "*|It's just unbelievable",
- "then": "*|But at the end of the day I reckon",
- "and": "*|Too right",
- "but": "*|Yeah nah"
+ "given": "[*]|Y'know",
+ "when": "[*]|It's just unbelievable",
+ "then": "[*]|But at the end of the day I reckon",
+ "and": "[*]|Too right",
+ "but": "[*]|Yeah nah"
},
"en-lol": {
"name": "LOLCAT",
@@ -147,11 +147,11 @@
"scenario": "MISHUN",
"scenario_outline": "MISHUN SRSLY",
"examples": "EXAMPLZ",
- "given": "*|I CAN HAZ",
- "when": "*|WEN",
- "then": "*|DEN",
- "and": "*|AN",
- "but": "*|BUT"
+ "given": "[*]|I CAN HAZ",
+ "when": "[*]|WEN",
+ "then": "[*]|DEN",
+ "and": "[*]|AN",
+ "but": "[*]|BUT"
},
"en-pirate": {
"name": "Pirate",
@@ -161,11 +161,11 @@
"scenario": "Heave to",
"scenario_outline": "Shiver me timbers",
"examples": "Dead men tell no tales",
- "given": "*|Gangway!",
- "when": "*|Blimey!",
- "then": "*|Let go and haul",
- "and": "*|Aye",
- "but": "*|Avast!"
+ "given": "[*]|Gangway!",
+ "when": "[*]|Blimey!",
+ "then": "[*]|Let go and haul",
+ "and": "[*]|Aye",
+ "but": "[*]|Avast!"
},
"en-Scouse": {
"name": "Scouse",
@@ -175,11 +175,11 @@
"scenario": "The thing of it is",
"scenario_outline": "Wharrimean is",
"examples": "Examples",
- "given": "*|Givun|Youse know when youse got",
- "when": "*|Wun|Youse know like when",
- "then": "*|Dun|Den youse gotta",
- "and": "*|An",
- "but": "*|Buh"
+ "given": "[*]|Givun|Youse know when youse got",
+ "when": "[*]|Wun|Youse know like when",
+ "then": "[*]|Dun|Den youse gotta",
+ "and": "[*]|An",
+ "but": "[*]|Buh"
},
"en-tx": {
"name": "Texan",
@@ -189,11 +189,11 @@
"scenario": "Scenario",
"scenario_outline": "All y'all",
"examples": "Examples",
- "given": "*|Given y'all",
- "when": "*|When y'all",
- "then": "*|Then y'all",
- "and": "*|And y'all",
- "but": "*|But y'all"
+ "given": "[*]|Given y'all",
+ "when": "[*]|When y'all",
+ "then": "[*]|Then y'all",
+ "and": "[*]|And y'all",
+ "but": "[*]|But y'all"
},
"eo": {
"name": "Esperanto",
@@ -203,11 +203,11 @@
"scenario": "Scenaro",
"scenario_outline": "Konturo de la scenaro",
"examples": "Ekzemploj",
- "given": "*|Donitaĵo",
- "when": "*|Se",
- "then": "*|Do",
- "and": "*|Kaj",
- "but": "*|Sed"
+ "given": "[*]|Donitaĵo",
+ "when": "[*]|Se",
+ "then": "[*]|Do",
+ "and": "[*]|Kaj",
+ "but": "[*]|Sed"
},
"es": {
"name": "Spanish",
@@ -217,11 +217,11 @@
"scenario": "Escenario",
"scenario_outline": "Esquema del escenario",
"examples": "Ejemplos",
- "given": "*|Dado|Dada|Dados|Dadas",
- "when": "*|Cuando",
- "then": "*|Entonces",
- "and": "*|Y",
- "but": "*|Pero"
+ "given": "[*]|Dado|Dada|Dados|Dadas",
+ "when": "[*]|Cuando",
+ "then": "[*]|Entonces",
+ "and": "[*]|Y",
+ "but": "[*]|Pero"
},
"et": {
"name": "Estonian",
@@ -231,11 +231,11 @@
"scenario": "Stsenaarium",
"scenario_outline": "Raamstsenaarium",
"examples": "Juhtumid",
- "given": "*|Eeldades",
- "when": "*|Kui",
- "then": "*|Siis",
- "and": "*|Ja",
- "but": "*|Kuid"
+ "given": "[*]|Eeldades",
+ "when": "[*]|Kui",
+ "then": "[*]|Siis",
+ "and": "[*]|Ja",
+ "but": "[*]|Kuid"
},
"fa": {
"name": "Persian",
@@ -245,11 +245,11 @@
"scenario": "سناریو",
"scenario_outline": "الگوی سناریو",
"examples": "نمونه ها",
- "given": "*|با فرض",
- "when": "*|هنگامی",
- "then": "*|آنگاه",
- "and": "*|و",
- "but": "*|اما"
+ "given": "[*]|با فرض",
+ "when": "[*]|هنگامی",
+ "then": "[*]|آنگاه",
+ "and": "[*]|و",
+ "but": "[*]|اما"
},
"fi": {
"name": "Finnish",
@@ -259,11 +259,11 @@
"scenario": "Tapaus",
"scenario_outline": "Tapausaihio",
"examples": "Tapaukset",
- "given": "*|Oletetaan",
- "when": "*|Kun",
- "then": "*|Niin",
- "and": "*|Ja",
- "but": "*|Mutta"
+ "given": "[*]|Oletetaan",
+ "when": "[*]|Kun",
+ "then": "[*]|Niin",
+ "and": "[*]|Ja",
+ "but": "[*]|Mutta"
},
"fr": {
"name": "French",
@@ -273,11 +273,11 @@
"scenario": "Scénario",
"scenario_outline": "Plan du scénario|Plan du Scénario",
"examples": "Exemples",
- "given": "*|Soit|Etant donné|Etant donnée|Etant donnés|Etant données|Étant donné|Étant donnée|Étant donnés|Étant données",
- "when": "*|Quand|Lorsque|Lorsqu'<",
- "then": "*|Alors",
- "and": "*|Et",
- "but": "*|Mais"
+ "given": "[*]|Soit|Etant donné|Etant donnée|Etant donnés|Etant données|Étant donné|Étant donnée|Étant donnés|Étant données",
+ "when": "[*]|Quand|Lorsque|Lorsqu'<",
+ "then": "[*]|Alors",
+ "and": "[*]|Et",
+ "but": "[*]|Mais"
},
"he": {
"name": "Hebrew",
@@ -287,11 +287,11 @@
"scenario": "תרחיש",
"scenario_outline": "תבנית תרחיש",
"examples": "דוגמאות",
- "given": "*|בהינתן",
- "when": "*|כאשר",
- "then": "*|אז|אזי",
- "and": "*|וגם",
- "but": "*|אבל"
+ "given": "[*]|בהינתן",
+ "when": "[*]|כאשר",
+ "then": "[*]|אז|אזי",
+ "and": "[*]|וגם",
+ "but": "[*]|אבל"
},
"hr": {
"name": "Croatian",
@@ -301,11 +301,11 @@
"scenario": "Scenarij",
"scenario_outline": "Skica|Koncept",
"examples": "Primjeri|Scenariji",
- "given": "*|Zadan|Zadani|Zadano",
- "when": "*|Kada|Kad",
- "then": "*|Onda",
- "and": "*|I",
- "but": "*|Ali"
+ "given": "[*]|Zadan|Zadani|Zadano",
+ "when": "[*]|Kada|Kad",
+ "then": "[*]|Onda",
+ "and": "[*]|I",
+ "but": "[*]|Ali"
},
"hu": {
"name": "Hungarian",
@@ -315,11 +315,11 @@
"scenario": "Forgatókönyv",
"scenario_outline": "Forgatókönyv vázlat",
"examples": "Példák",
- "given": "*|Amennyiben|Adott",
- "when": "*|Majd|Ha|Amikor",
- "then": "*|Akkor",
- "and": "*|És",
- "but": "*|De"
+ "given": "[*]|Amennyiben|Adott",
+ "when": "[*]|Majd|Ha|Amikor",
+ "then": "[*]|Akkor",
+ "and": "[*]|És",
+ "but": "[*]|De"
},
"id": {
"name": "Indonesian",
@@ -329,11 +329,11 @@
"scenario": "Skenario",
"scenario_outline": "Skenario konsep",
"examples": "Contoh",
- "given": "*|Dengan",
- "when": "*|Ketika",
- "then": "*|Maka",
- "and": "*|Dan",
- "but": "*|Tapi"
+ "given": "[*]|Dengan",
+ "when": "[*]|Ketika",
+ "then": "[*]|Maka",
+ "and": "[*]|Dan",
+ "but": "[*]|Tapi"
},
"is": {
"name": "Icelandic",
@@ -343,11 +343,11 @@
"scenario": "Atburðarás",
"scenario_outline": "Lýsing Atburðarásar|Lýsing Dæma",
"examples": "Dæmi|Atburðarásir",
- "given": "*|Ef",
- "when": "*|Þegar",
- "then": "*|Þá",
- "and": "*|Og",
- "but": "*|En"
+ "given": "[*]|Ef",
+ "when": "[*]|Þegar",
+ "then": "[*]|Þá",
+ "and": "[*]|Og",
+ "but": "[*]|En"
},
"it": {
"name": "Italian",
@@ -357,11 +357,11 @@
"scenario": "Scenario",
"scenario_outline": "Schema dello scenario",
"examples": "Esempi",
- "given": "*|Dato|Data|Dati|Date",
- "when": "*|Quando",
- "then": "*|Allora",
- "and": "*|E",
- "but": "*|Ma"
+ "given": "[*]|Dato|Data|Dati|Date",
+ "when": "[*]|Quando",
+ "then": "[*]|Allora",
+ "and": "[*]|E",
+ "but": "[*]|Ma"
},
"ja": {
"name": "Japanese",
@@ -371,11 +371,11 @@
"scenario": "シナリオ",
"scenario_outline": "シナリオアウトライン|シナリオテンプレート|テンプレ|シナリオテンプレ",
"examples": "例|サンプル",
- "given": "*|前提<",
- "when": "*|もし<",
- "then": "*|ならば<",
- "and": "*|かつ<",
- "but": "*|しかし<|但し<|ただし<"
+ "given": "[*]|前提<",
+ "when": "[*]|もし<",
+ "then": "[*]|ならば<",
+ "and": "[*]|かつ<",
+ "but": "[*]|しかし<|但し<|ただし<"
},
"ko": {
"name": "Korean",
@@ -385,11 +385,11 @@
"scenario": "시나리오",
"scenario_outline": "시나리오 개요",
"examples": "예",
- "given": "*|조건<|먼저<",
- "when": "*|만일<|만약<",
- "then": "*|그러면<",
- "and": "*|그리고<",
- "but": "*|하지만<|단<"
+ "given": "[*]|조건<|먼저<",
+ "when": "[*]|만일<|만약<",
+ "then": "[*]|그러면<",
+ "and": "[*]|그리고<",
+ "but": "[*]|하지만<|단<"
},
"lt": {
"name": "Lithuanian",
@@ -399,11 +399,11 @@
"scenario": "Scenarijus",
"scenario_outline": "Scenarijaus šablonas",
"examples": "Pavyzdžiai|Scenarijai|Variantai",
- "given": "*|Duota",
- "when": "*|Kai",
- "then": "*|Tada",
- "and": "*|Ir",
- "but": "*|Bet"
+ "given": "[*]|Duota",
+ "when": "[*]|Kai",
+ "then": "[*]|Tada",
+ "and": "[*]|Ir",
+ "but": "[*]|Bet"
},
"lu": {
"name": "Luxemburgish",
@@ -413,11 +413,11 @@
"scenario": "Szenario",
"scenario_outline": "Plang vum Szenario",
"examples": "Beispiller",
- "given": "*|ugeholl",
- "when": "*|wann",
- "then": "*|dann",
- "and": "*|an|a",
- "but": "*|awer|mä"
+ "given": "[*]|ugeholl",
+ "when": "[*]|wann",
+ "then": "[*]|dann",
+ "and": "[*]|an|a",
+ "but": "[*]|awer|mä"
},
"lv": {
"name": "Latvian",
@@ -427,11 +427,11 @@
"scenario": "Scenārijs",
"scenario_outline": "Scenārijs pēc parauga",
"examples": "Piemēri|Paraugs",
- "given": "*|Kad",
- "when": "*|Ja",
- "then": "*|Tad",
- "and": "*|Un",
- "but": "*|Bet"
+ "given": "[*]|Kad",
+ "when": "[*]|Ja",
+ "then": "[*]|Tad",
+ "and": "[*]|Un",
+ "but": "[*]|Bet"
},
"nl": {
"name": "Dutch",
@@ -441,11 +441,11 @@
"scenario": "Scenario",
"scenario_outline": "Abstract Scenario",
"examples": "Voorbeelden",
- "given": "*|Gegeven|Stel",
- "when": "*|Als",
- "then": "*|Dan",
- "and": "*|En",
- "but": "*|Maar"
+ "given": "[*]|Gegeven|Stel",
+ "when": "[*]|Als",
+ "then": "[*]|Dan",
+ "and": "[*]|En",
+ "but": "[*]|Maar"
},
"no": {
"name": "Norwegian",
@@ -455,11 +455,11 @@
"scenario": "Scenario",
"scenario_outline": "Scenariomal|Abstrakt Scenario",
"examples": "Eksempler",
- "given": "*|Gitt",
- "when": "*|Når",
- "then": "*|Så",
- "and": "*|Og",
- "but": "*|Men"
+ "given": "[*]|Gitt",
+ "when": "[*]|Når",
+ "then": "[*]|Så",
+ "and": "[*]|Og",
+ "but": "[*]|Men"
},
"pl": {
"name": "Polish",
@@ -469,11 +469,11 @@
"scenario": "Scenariusz",
"scenario_outline": "Szablon scenariusza",
"examples": "Przykłady",
- "given": "*|Zakładając|Mając",
- "when": "*|Jeżeli|Jeśli|Gdy|Kiedy",
- "then": "*|Wtedy",
- "and": "*|Oraz|I",
- "but": "*|Ale"
+ "given": "[*]|Zakładając|Mając",
+ "when": "[*]|Jeżeli|Jeśli|Gdy|Kiedy",
+ "then": "[*]|Wtedy",
+ "and": "[*]|Oraz|I",
+ "but": "[*]|Ale"
},
"pt": {
"name": "Portuguese",
@@ -483,11 +483,11 @@
"scenario": "Cenário|Cenario",
"scenario_outline": "Esquema do Cenário|Esquema do Cenario|Delineação do Cenário|Delineacao do Cenario",
"examples": "Exemplos|Cenários|Cenarios",
- "given": "*|Dado|Dada|Dados|Dadas",
- "when": "*|Quando",
- "then": "*|Então|Entao",
- "and": "*|E",
- "but": "*|Mas"
+ "given": "[*]|Dado|Dada|Dados|Dadas",
+ "when": "[*]|Quando",
+ "then": "[*]|Então|Entao",
+ "and": "[*]|E",
+ "but": "[*]|Mas"
},
"ro": {
"name": "Romanian",
@@ -497,11 +497,11 @@
"scenario": "Scenariu",
"scenario_outline": "Structura scenariu|Structură scenariu",
"examples": "Exemple",
- "given": "*|Date fiind|Dat fiind|Dati fiind|Dați fiind|Daţi fiind",
- "when": "*|Cand|Când",
- "then": "*|Atunci",
- "and": "*|Si|Și|Şi",
- "but": "*|Dar"
+ "given": "[*]|Date fiind|Dat fiind|Dati fiind|Dați fiind|Daţi fiind",
+ "when": "[*]|Cand|Când",
+ "then": "[*]|Atunci",
+ "and": "[*]|Si|Și|Şi",
+ "but": "[*]|Dar"
},
"ru": {
"name": "Russian",
@@ -511,11 +511,11 @@
"scenario": "Сценарий",
"scenario_outline": "Структура сценария",
"examples": "Примеры",
- "given": "*|Допустим|Дано|Пусть",
- "when": "*|Если|Когда",
- "then": "*|То|Тогда",
- "and": "*|И|К тому же|Также",
- "but": "*|Но|А"
+ "given": "[*]|Допустим|Дано|Пусть",
+ "when": "[*]|Если|Когда",
+ "then": "[*]|То|Тогда",
+ "and": "[*]|И|К тому же|Также",
+ "but": "[*]|Но|А"
},
"sv": {
"name": "Swedish",
@@ -525,11 +525,11 @@
"scenario": "Scenario",
"scenario_outline": "Abstrakt Scenario|Scenariomall",
"examples": "Exempel",
- "given": "*|Givet",
- "when": "*|När",
- "then": "*|Så",
- "and": "*|Och",
- "but": "*|Men"
+ "given": "[*]|Givet",
+ "when": "[*]|När",
+ "then": "[*]|Så",
+ "and": "[*]|Och",
+ "but": "[*]|Men"
},
"sk": {
"name": "Slovak",
@@ -539,11 +539,11 @@
"scenario": "Scenár",
"scenario_outline": "Náčrt Scenáru",
"examples": "Príklady",
- "given": "*|Pokiaľ",
- "when": "*|Keď",
- "then": "*|Tak",
- "and": "*|A",
- "but": "*|Ale"
+ "given": "[*]|Pokiaľ",
+ "when": "[*]|Keď",
+ "then": "[*]|Tak",
+ "and": "[*]|A",
+ "but": "[*]|Ale"
},
"sr-Latn": {
"name": "Serbian (Latin)",
@@ -553,11 +553,11 @@
"scenario": "Scenario|Primer",
"scenario_outline": "Struktura scenarija|Skica|Koncept",
"examples": "Primeri|Scenariji",
- "given": "*|Zadato|Zadate|Zatati",
- "when": "*|Kada|Kad",
- "then": "*|Onda",
- "and": "*|I",
- "but": "*|Ali"
+ "given": "[*]|Zadato|Zadate|Zatati",
+ "when": "[*]|Kada|Kad",
+ "then": "[*]|Onda",
+ "and": "[*]|I",
+ "but": "[*]|Ali"
},
"sr-Cyrl": {
"name": "Serbian",
@@ -567,11 +567,11 @@
"scenario": "Сценарио|Пример",
"scenario_outline": "Структура сценарија|Скица|Концепт",
"examples": "Примери|Сценарији",
- "given": "*|Задато|Задате|Задати",
- "when": "*|Када|Кад",
- "then": "*|Онда",
- "and": "*|И",
- "but": "*|Али"
+ "given": "[*]|Задато|Задате|Задати",
+ "when": "[*]|Када|Кад",
+ "then": "[*]|Онда",
+ "and": "[*]|И",
+ "but": "[*]|Али"
},
"tr": {
"name": "Turkish",
@@ -581,11 +581,11 @@
"scenario": "Senaryo",
"scenario_outline": "Senaryo taslağı",
"examples": "Örnekler",
- "given": "*|Diyelim ki",
- "when": "*|Eğer ki",
- "then": "*|O zaman",
- "and": "*|Ve",
- "but": "*|Fakat|Ama"
+ "given": "[*]|Diyelim ki",
+ "when": "[*]|Eğer ki",
+ "then": "[*]|O zaman",
+ "and": "[*]|Ve",
+ "but": "[*]|Fakat|Ama"
},
"uk": {
"name": "Ukrainian",
@@ -595,11 +595,11 @@
"scenario": "Сценарій",
"scenario_outline": "Структура сценарію",
"examples": "Приклади",
- "given": "*|Припустимо|Припустимо, що|Нехай|Дано",
- "when": "*|Якщо|Коли",
- "then": "*|То|Тоді",
- "and": "*|І|А також|Та",
- "but": "*|Але"
+ "given": "[*]|Припустимо|Припустимо, що|Нехай|Дано",
+ "when": "[*]|Якщо|Коли",
+ "then": "[*]|То|Тоді",
+ "and": "[*]|І|А також|Та",
+ "but": "[*]|Але"
},
"uz": {
"name": "Uzbek",
@@ -609,11 +609,11 @@
"scenario": "Сценарий",
"scenario_outline": "Сценарий структураси",
"examples": "Мисоллар",
- "given": "*|Агар",
- "when": "*|Агар",
- "then": "*|Унда",
- "and": "*|Ва",
- "but": "*|Лекин|Бирок|Аммо"
+ "given": "[*]|Агар",
+ "when": "[*]|Агар",
+ "then": "[*]|Унда",
+ "and": "[*]|Ва",
+ "but": "[*]|Лекин|Бирок|Аммо"
},
"vi": {
"name": "Vietnamese",
@@ -623,11 +623,11 @@
"scenario": "Tình huống|Kịch bản",
"scenario_outline": "Khung tình huống|Khung kịch bản",
"examples": "Dữ liệu",
- "given": "*|Biết|Cho",
- "when": "*|Khi",
- "then": "*|Thì",
- "and": "*|Và",
- "but": "*|Nhưng"
+ "given": "[*]|Biết|Cho",
+ "when": "[*]|Khi",
+ "then": "[*]|Thì",
+ "and": "[*]|Và",
+ "but": "[*]|Nhưng"
},
"zh-CN": {
"name": "Chinese simplified",
@@ -637,11 +637,11 @@
"scenario": "场景|剧本",
"scenario_outline": "场景大纲|剧本大纲",
"examples": "例子",
- "given": "*|假如<|假设<|假定<",
- "when": "*|当<",
- "then": "*|那么<",
- "and": "*|而且<|并且<|同时<",
- "but": "*|但是<"
+ "given": "[*]|假如<|假设<|假定<",
+ "when": "[*]|当<",
+ "then": "[*]|那么<",
+ "and": "[*]|而且<|并且<|同时<",
+ "but": "[*]|但是<"
},
"zh-TW": {
"name": "Chinese traditional",
@@ -651,10 +651,10 @@
"scenario": "場景|劇本",
"scenario_outline": "場景大綱|劇本大綱",
"examples": "例子",
- "given": "*|假如<|假設<|假定<",
- "when": "*|當<",
- "then": "*|那麼<",
- "and": "*|而且<|並且<|同時<",
- "but": "*|但是<"
+ "given": "[*]|假如<|假設<|假定<",
+ "when": "[*]|當<",
+ "then": "[*]|那麼<",
+ "and": "[*]|而且<|並且<|同時<",
+ "but": "[*]|但是<"
}
}
\ No newline at end of file
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libtest-bdd-cucumber-perl.git
More information about the Pkg-perl-cvs-commits
mailing list