I do something similar in the CMS that maintain, I have many tests which require a valid user account - and I create that on demand at the start of the tests.
My solution was to created "user.utils" with content like this:
BEGIN { use_ok( 'Yawns::User'); } require_ok( 'Yawns::User' ); BEGIN { use_ok( 'Yawns::Users'); } require_ok( 'Yawns::Users' ); sub createUser { ... } sub deleteUser { ... }
Then each test which relies upon this:
use Test::More qw( no_plan ); # # Utility functions for creating a new user. # require 'tests/user.utils'; # # Create a random new user. # my ($user, $username, $email, $password ) = setupNewUser(); #
It doesn't solve the problem of repeating code in each test, but it does allow you to put the common code somewhere common even without being able to pass objects around properly.
In reply to Re: Using Test::TAP::Model and a global object
by skx
in thread Using Test::TAP::Model and a global object
by joewoodhouse30
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |