My $client wanted to upgrade CGIP, but because the new version of Mecha
requires a newer version of LWP, and $client didn't want to upgrade LWP,
I split Mecha out as a separate distro.
You need CGIP to use Mecha. You need Mecha to *fully test* CGIP, but
the tests are marked as optional. Thus, this should permit non-Mecha
users an installation path.
Frankly, I think Mecha rocks. I get to write tests that step through
the app like I would with Mechanize, and then talk directly to the
database in the same process to see what the results are.
Here's a snippet from a $client test:
ok $m->submit_form
(fields =>
{managers => "test1\ntest2",
members => "test3\ntest4\ntest5",
},
button => 'update alias',
), 'populate initial list';
ok $m->success, "fetched manage alias page" or $m->diag_response;
## verify database is in proper state
{
is my ($a) = Alias::DB::Alias->search(name => 'one-test'),
1, 'found one alias named one-test';
is my @managers = $a->managers, 2, '2 managers found';
is_deeply
[sort map { $_->ubit } @managers],
[sort qw(test1 test2)],
'managers ubits are OK';
is my @members = $a->memberships, 3, '3 members found';
is_deeply
[sort map { $_->email } @members],
[sort qw(test3 test4 test5)],
'members email are OK';
}
So, I'm poking at the application through the "web", then
immediately accessing the database through Class::DBI calls
to ensure that the web changes are reflected correctly.
Then I use these with Devel::Cover, and I can see if my web-based
use-cases are actually touching the amount of code I had hoped.
CGIP with CGIP-Mecha. Great combo.
--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<[email protected]> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix/security consulting, Technical writing, Comedy, etc. etc.
See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
cgi-prototype-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cgi-prototype-users