---
name: "Test::Valgrind::Action"
section: "3pm"
platform: "linux"
package: "libtest-valgrind-perl"
version: "1.19-6"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Test::Valgrind::Action"
---

# Test::Valgrind::Action(3pm)

Base class for Test::Valgrind actions.

## NAME

Test::Valgrind::Action - Base class for Test::Valgrind actions.

## VERSION

Version 1.19

## DESCRIPTION

This class is the base for Test::Valgrind actions.

Actions are called each time a tool encounter an error and decide what to do with it (for example passing or failing tests).

## METHODS

### "new"

```
    my $tva = Test::Valgrind::Action->new(action => $action);
```

Creates a new action object of type `$action` by requiring and redispatching the method call to the module named `$action` if it contains `'::'` or to `"Test::Valgrind::Action::$action"` otherwise. The class represented by `$action` must inherit this class.

### "do\_suppressions"

Indicates if the action wants `"valgrind"` to run in suppression-generating mode or in analysis mode.

### "start"

```
    $tva->start($session);
```

Called when the `$session` starts.

Defaults to set "started" in Test::Valgrind::Component.

### "report"

```
    $tva->report($session, $report);
```

Invoked each time the `"valgrind"` process attached to the `$session` spots an error. `$report` is a Test::Valgrind::Report object describing the error.

Defaults to check "started" in Test::Valgrind::Component.

### "abort"

```
    $tva->abort($session, $msg);
```

Triggered when the `$session` has to interrupt the action.

Defaults to croak.

### "finish"

```
    $tva->finish($session);
```

Called when the `$session` finishes.

Defaults to clear "started" in Test::Valgrind::Component.

### "status"

```
    $tva->status($session);
```

Returns the status code corresponding to the last run of the action.

## SEE ALSO

Test::Valgrind, Test::Valgrind::Component, Test::Valgrind::Session.

## AUTHOR

Vincent Pit, `"<perl at profvince.com>"`, \<http://www.profvince.com\>.

You can contact me by mail or on `"irc.perl.org"` (vincent).

## BUGS

Please report any bugs or feature requests to `"bug-test-valgrind at rt.cpan.org"`, or through the web interface at \<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Valgrind\>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

## SUPPORT

You can find documentation for this module with the perldoc command.

```
    perldoc Test::Valgrind::Action
```

## COPYRIGHT & LICENSE

Copyright 2009,2010,2011,2013,2015,2016 Vincent Pit, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
