1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
Source: libtest-roo-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
Uploaders: gregor herrmann <gregoa@debian.org>
Section: perl
Priority: optional
Build-Depends: debhelper (>= 8)
Build-Depends-Indep: libbareword-filehandles-perl,
libcapture-tiny-perl (>= 0.12),
libindirect-perl,
libmoo-perl (>= 1.000008),
libmoox-types-mooselike-perl,
libmultidimensional-perl,
libstrictures-perl,
libsub-install-perl,
perl (>= 5.13.4) | libtest-simple-perl (>= 0.96),
perl
Standards-Version: 3.9.5
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-perl/packages/libtest-roo-perl.git
Vcs-Git: git://anonscm.debian.org/pkg-perl/packages/libtest-roo-perl.git
Homepage: https://metacpan.org/release/Test-Roo
Package: libtest-roo-perl
Architecture: all
Depends: ${misc:Depends},
${perl:Depends},
libmoo-perl (>= 1.000008),
libmoox-types-mooselike-perl,
libstrictures-perl,
libsub-install-perl,
perl (>= 5.13.4) | libtest-simple-perl (>= 0.96)
Recommends: libbareword-filehandles-perl,
libindirect-perl,
libmultidimensional-perl
Description: module for composable, reusable tests with roles and Moo
Test::Roo allows you to compose Test::More tests from roles. It is inspired
by the excellent Test::Routine module, but uses Moo instead of Moose. This
gives most of the benefits without the need for Moose as a test dependency.
.
Test files are Moo classes. You can define any needed test fixtures as Moo
attributes. You define tests as method modifiers -- similar in concept to
"subtest" in Test::More, but your test method will be passed the test object
for access to fixture attributes. You may compose any Moo::Role into your
test to define attributes, require particular methods, or define tests.
.
This means that you can isolate test *behaviors* into roles which require
certain test *fixtures* in order to run. Your main test file will provide the
fixtures and compose the roles to run. This makes it easy to reuse test
behaviors.
.
For example, if you are creating tests for Awesome::Module, you could create
the test behaviors as Awesome::Module::Test::Role and distribute it with your
module. If another distribution subclasses Awesome::Module, it can compose
the Awesome::Module::Test::Role behavior for its own tests.
.
No more copying and pasting tests from a super class! Superclasses define and
share their tests. Subclasses provide their own fixtures and run the tests.
|