]> git.vpit.fr Git - perl/modules/Test-Valgrind.git/blobdiff - lib/Test/Valgrind/Session.pm
Report which suppressions are used by the session
[perl/modules/Test-Valgrind.git] / lib / Test / Valgrind / Session.pm
index c7240b9fe4ae3de9c6e0995c5c5bcf0c7778ca6d..27aa97344c3d8b4c474c889e3ce9f06df2843ea5 100644 (file)
@@ -9,11 +9,11 @@ Test::Valgrind::Session - Test::Valgrind session object.
 
 =head1 VERSION
 
-Version 1.02
+Version 1.11
 
 =cut
 
-our $VERSION = '1.02';
+our $VERSION = '1.11';
 
 =head1 DESCRIPTION
 
@@ -83,7 +83,7 @@ sub new {
  my %args = @_;
 
  my @paths;
- my $vg = delete $args{vg};
+ my $vg = delete $args{valgrind};
  if (defined $vg and not ref $vg) {
   @paths = ($vg);
  } else {
@@ -218,7 +218,11 @@ sub _run {
     "Suppressions for this perl stored in $def_supp"
    ));
   }
-  push @supp_args, '--suppressions=' . $_ for $self->suppressions;
+  for ($self->suppressions) {
+   next unless -e $_;
+   $self->report($self->report_class->new_diag("Using suppression file $_"));
+   push @supp_args, "--suppressions=$_";
+  }
  }
 
  pipe my $vrdr, my $vwtr or $self->_croak("pipe(\$vrdr, \$vwtr): $!");
@@ -277,6 +281,10 @@ Read-only accessor for the C<action> associated to the current run.
 
 Read-only accessor for the C<tool> associated to the current run.
 
+=head2 C<parser>
+
+Read-only accessor for the C<parser> associated to the current tool.
+
 =head2 C<command>
 
 Read-only accessor for the C<command> associated to the current run.
@@ -300,9 +308,17 @@ Forwards to C<< ->action->do_suppressions >>.
 
 sub do_suppressions { $_[0]->action->do_suppressions }
 
+=head2 C<parser_class>
+
+Calls C<< ->tool->parser_class >> with the current session object as the unique argument.
+
+=cut
+
+sub parser_class { $_[0]->tool->parser_class($_[0]) }
+
 =head2 C<report_class>
 
-Calls C<< ->action->report_class >> with the current session object as the unique argument.
+Calls C<< ->tool->report_class >> with the current session object as the unique argument.
 
 =cut
 
@@ -381,7 +397,7 @@ sub start {
  delete @{$self}{qw/last_status exit_code/};
 
  $self->tool->start($self);
- $self->parser($self->tool->parser_class($self)->new)->start($self);
+ $self->parser($self->parser_class->new)->start($self);
  $self->action->start($self);
 
  return;