[libtest-bdd-cucumber-perl] 14/52: integrated pull request https://github.com/sheriff/test-bdd-cucumber-perl/pull/6

Intrigeri intrigeri at moszumanska.debian.org
Thu Jun 19 10:18:33 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 7970e77698baea1fce95515f119fef183a5b78c3
Merge: 1a956a2 15f79df
Author: glauschwuffel <glauschwuffel at nomaden.org>
Date:   Thu May 15 08:11:03 2014 +0200

    integrated pull request https://github.com/sheriff/test-bdd-cucumber-perl/pull/6
    
    resolved conflicts of added parameters tag_scheme and language

 dist.ini                                      |   1 +
 examples/calculator/features/basic.feature.es |  62 +++
 lib/App/pherkin.pm                            |   2 +-
 lib/Test/BDD/Cucumber/Loader.pm               |   5 +-
 lib/Test/BDD/Cucumber/Parser.pm               |  50 +-
 lib/Test/BDD/Cucumber/i18n.json               | 660 ++++++++++++++++++++++++++
 6 files changed, 758 insertions(+), 22 deletions(-)

diff --cc lib/App/pherkin.pm
index 3f2b56e,024ed51..151a46a
--- a/lib/App/pherkin.pm
+++ b/lib/App/pherkin.pm
@@@ -46,12 -41,9 +46,12 @@@ Returns a L<Test::BDD::Cucumber::Model:
  =cut
  
  sub run {
 -    my ( $class, @arguments ) = @_;
 +    my ( $self, @arguments ) = @_;
 +
 +    my ($options, @feature_files) = $self->_process_arguments(@arguments);
 +
      my ( $executor, @features ) = Test::BDD::Cucumber::Loader->load(
-         $feature_files[0] || './features/', $self->tag_scheme
 -        $arguments[0] || './features/', $arguments[1]
++        $feature_files[0] || './features/', $self->tag_scheme, $arguments[1]
      );
      die "No feature files found" unless @features;
  
diff --cc lib/Test/BDD/Cucumber/Loader.pm
index b11c629,ea05a2c..424c97a
--- a/lib/Test/BDD/Cucumber/Loader.pm
+++ b/lib/Test/BDD/Cucumber/Loader.pm
@@@ -28,7 -28,7 +28,8 @@@ use Test::BDD::Cucumber::Parser
  use Test::BDD::Cucumber::StepFile();
  
  sub load {
-     my ( $class, $path, $tag_scheme ) = @_;
 -    my ( $class, $path, $language ) = @_;
++    my ( $class, $path, $tag_scheme, $language ) = @_;
++
      my $executor = Test::BDD::Cucumber::Executor->new();
  
      # Either load a feature or a directory...
@@@ -51,7 -51,7 +52,7 @@@
      # Grab the feature files
      my @features = map {
          my $file = $_;
-         my $feature = Test::BDD::Cucumber::Parser->parse_file( $file, $tag_scheme );
 -        my $feature = Test::BDD::Cucumber::Parser->parse_file( $file, $language );
++        my $feature = Test::BDD::Cucumber::Parser->parse_file( $file, $tag_scheme, $language );
      } ( $file ? ($file.'') : File::Find::Rule
          ->file()
          ->name( '*.feature' )
diff --cc lib/Test/BDD/Cucumber/Parser.pm
index 20bdf73,d082381..8b1da15
--- a/lib/Test/BDD/Cucumber/Parser.pm
+++ b/lib/Test/BDD/Cucumber/Parser.pm
@@@ -40,26 -40,33 +41,33 @@@ use Test::BDD::Cucumber::Model::TagSpec
  # 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 ) = @_;
++	my ( $class, $string, $tag_scheme, $language ) = @_;
+         $language = 'en' unless($language);
+ 	return $class->_construct( Test::BDD::Cucumber::Model::Document->new({
  		content => $string
- 	}) );
 -	}), $language );
++	}), $tag_scheme, $language );
  }
  
  sub parse_file   {
- 	my ( $self, $string, $tag_scheme ) = @_;
 -	my ( $class, $string, $language ) = @_;
++	my ( $self, $string, $tag_scheme, $language ) = @_;
+         $language = 'en' unless($language);
 -	return $class->_construct( Test::BDD::Cucumber::Model::Document->new({
 +	return $self->_construct( Test::BDD::Cucumber::Model::Document->new({
- 		content  => scalar( read_file $string ),
+ 		content  => scalar( read_file( $string, { binmode => ':utf8' } ) ),
  		filename => $string
- 	}), $tag_scheme );
 -	}), $language );
++	}), $tag_scheme, $language );
  }
  
  sub _construct {
- 	my ( $self, $document, $tag_scheme ) = @_;
 -	my ( $class, $document, $language ) = @_;
++	my ( $class, $document, $tag_scheme, $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 } );
++        my @lines = $self->_remove_next_blanks( @{ $document->lines } );
  
  	$self->_extract_scenarios(
  	$self->_extract_conditions_of_satisfaction(

-- 
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