
Test::Routine::AutoClear - Enables autoclearing attrs in Test::Routines

version 0.002

use Test::Routine::AutoClear;
use Test::More;
use File::Tempdir;
has _tempdir => (
is => 'ro',
isa => 'Int',
builder => '_build_tempdir',
lazy => 1,
autoclear => 1,
handles => {
tempdir => 'name',
},
);
sub _build_tempdir {
File::Tempdir->new();
}
And now all the tests that use a tempdir in your test routine will get a fresh Tempdir

When I'm writing tests with Test::Routine I find myself writing code like this all the time:
has counter => (
is => ro,
lazy => 1,
default => 0
lazy => 1,
clearer => 'reset_counter',
);
after run_test => sub {
shift->reset_counter;
};
And after about the first time, I got bored of doing this. So I started to fix it, and here's my first cut.

Lots. Including, but not limited to:
autoclear => 1 should imply init_arg => undef.

Piers Cawley <pdcawley@bofh.org.uk>

This software is copyright (c) 2012 by Piers Cawley.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.