Alzabo
view release on metacpan or search on metacpan
t/03-runtime.t view on Meta::CPAN
#!/usr/bin/perl -w
use strict;
use File::Spec;
use lib '.', File::Spec->catdir( File::Spec->curdir, 't', 'lib' );
use Alzabo::Test::Utils;
use Test::More;
my @rdbms_names = Alzabo::Test::Utils->rdbms_names;
unless (@rdbms_names)
{
plan skip_all => 'no test config provided';
exit;
}
my $tests_per_run = 340;
my $test_count = $tests_per_run * @rdbms_names;
my %SINGLE_RDBMS_TESTS = ( mysql => 23,
pg => 11,
);
foreach my $rdbms ( keys %SINGLE_RDBMS_TESTS )
{
next unless grep { $_ eq $rdbms } @rdbms_names;
$test_count += $SINGLE_RDBMS_TESTS{$rdbms};
}
plan tests => $test_count;
Alzabo::Test::Utils->remove_all_schemas;
foreach my $rdbms (@rdbms_names)
{
if ( $rdbms eq 'mysql' )
{
# prevent subroutine redefinition warnings
local $^W = 0;
eval 'use Alzabo::SQLMaker::MySQL qw(:all)';
}
elsif ( $rdbms eq 'pg' )
{
local $^W = 0;
eval 'use Alzabo::SQLMaker::PostgreSQL qw(:all)';
}
Alzabo::Test::Utils->make_schema($rdbms);
run_tests($rdbms);
Alzabo::Test::Utils->remove_schema($rdbms);
}
sub run_tests
{
my $rdbms = shift;
my $config = Alzabo::Test::Utils->test_config_for($rdbms);
( run in 0.531 second using v1.01-cache-2.11-cpan-75ffa21a3d4 )