[SCM] libmessage-passing-perl Debian packaging branch, master, updated. debian/0.111-3-14-g44f6e88

Tomas Doran bobtfish at bobtfish.net
Mon May 6 11:56:56 UTC 2013


The following commit has been merged in the master branch:
commit e6a084899cffadf040656674fe16dacee6939f72
Author: Tomas Doran <bobtfish at bobtfish.net>
Date:   Mon Apr 30 09:42:20 2012 +0100

    Fix issues

diff --git a/lib/Log/Stash/DSL.pm b/lib/Log/Stash/DSL.pm
index 1faacd0..fb80cb5 100644
--- a/lib/Log/Stash/DSL.pm
+++ b/lib/Log/Stash/DSL.pm
@@ -23,16 +23,21 @@ sub log_chain (&) {
         confess("Cannot chain within a chain");
     }
     local $FACTORY = Log::Stash::DSL::Factory->new;
-    my $ret = $code->();
+    $code->();
     my %items = $FACTORY->registry;
     $FACTORY->clear_registry;
-    weaken($items{$_}) for grep { does_role($_, 'Log::Stash::Role::Output') } keys %items;
-    #use Data::Dumper; warn Dumper(\%items);
+    weaken($items{$_}) for
+        grep { does_role($items{$_}, 'Log::Stash::Role::Output') }
+        keys %items;
     foreach my $name (keys %items) {
         next if $items{$name};
         warn "Unused output or filter $name in chain\n";
     }
-    return $ret;
+    return [
+        grep { !does_role($_, 'Log::Stash::Role::Output') }
+        grep { does_role($_, 'Log::Stash::Role::Input') }
+        values %items
+    ];
 }
 
 sub input {
diff --git a/t/dsl.t b/t/dsl.t
index 846ae73..5f119ce 100644
--- a/t/dsl.t
+++ b/t/dsl.t
@@ -21,12 +21,12 @@ my $c = log_chain {
             output_to => 'null',
         );
 };
-isa_ok $c, 'Log::Stash::Input::STDIN';
-isa_ok $c->output_to, 'Log::Stash::Filter::Null';
-isa_ok $c->output_to->output_to, 'Log::Stash::Filter::T';
-isa_ok $c->output_to->output_to->output_to->[0], 'Log::Stash::Output::Test';
-$c->output_to->consume({foo => 'bar'});
-my $test = $c->output_to->output_to->output_to->[0];
+isa_ok $c->[0], 'Log::Stash::Input::STDIN';
+isa_ok $c->[0]->output_to, 'Log::Stash::Filter::Null';
+isa_ok $c->[0]->output_to->output_to, 'Log::Stash::Filter::T';
+isa_ok $c->[0]->output_to->output_to->output_to->[0], 'Log::Stash::Output::Test';
+$c->[0]->output_to->consume({foo => 'bar'});
+my $test = $c->[0]->output_to->output_to->output_to->[0];
 is $test->message_count, 1;
 is_deeply [$test->messages], [{foo => 'bar'}];
 
@@ -44,5 +44,13 @@ $c = log_chain {
             );
         };
 
+is ref($c), 'ARRAY';
+is scalar(@$c), 2;
+isa_ok $c->[0], 'Log::Stash::Input::Null';
+isa_ok $c->[1], 'Log::Stash::Input::STDIN';
+isa_ok $c->[0]->output_to, 'Log::Stash::Output::STDOUT';
+isa_ok $c->[1]->output_to, 'Log::Stash::Output::STDOUT';
+is $c->[0]->output_to, $c->[1]->output_to;
+
 done_testing;
 
diff --git a/t/logstash_script.t b/t/logstash_script.t
index e814f37..34905da 100644
--- a/t/logstash_script.t
+++ b/t/logstash_script.t
@@ -17,9 +17,10 @@ is_deeply {$i->filter_options}, {"baz" => "quux"};
 is_deeply {$i->output_options}, {"x" => "m"};
 
 my $chain = $i->build_chain;
-$chain->output_to->consume({ foo => "bar" });
+my $output = $chain->[0]->output_to;
+$output->consume({ foo => "bar" });
 
-is_deeply [$chain->output_to->output_to->messages], [{ foo => "bar" }];
+is_deeply [$output->output_to->messages], [{ foo => "bar" }];
 
 done_testing;
 

-- 
libmessage-passing-perl Debian packaging



More information about the Pkg-perl-cvs-commits mailing list