Interchange6-Schema
view release on metacpan or search on metacpan
t/lib/Test/Fixtures.pm view on Meta::CPAN
ok( $self->has_states, "has_states is true" );
cmp_ok( $self->states->search( { country_iso_code => 'US' } )->count,
'==', 51, "51 states (including DC) in the US" );
cmp_ok( $self->states->search( { country_iso_code => 'CA' } )->count,
'==', 13, "13 provinces and territories in Canada" );
};
test 'taxes' => sub {
my $self = shift;
my $schema = $self->ic6s_schema;
my $rset;
cmp_ok( $self->taxes->count, '==', 37, "37 Tax rates" );
ok( $self->has_taxes, "has_taxes is true" );
# EU Standard rate VAT
lives_ok(
sub {
$rset = $self->taxes->search( { tax_name => "MT VAT Standard" } );
},
"search for Malta VAT"
);
cmp_ok( $rset->count, '==', 1, "Found one tax" );
cmp_ok(
$rset->first->description,
'eq',
'Malta VAT Standard Rate',
"Tax description is correct"
);
# Canada GST/PST/HST/QST
lives_ok(
sub {
$rset = $self->taxes->search( { tax_name => "CA ON HST" } );
},
"search for Canada Ontario HST"
);
cmp_ok( $rset->count, '==', 1, "Found one tax" );
cmp_ok(
$rset->first->description,
'eq',
'CA Ontario HST',
"Tax description is correct"
);
my $country_count = $self->countries->count;
my $state_count = $self->states->count;
lives_ok( sub { $self->clear_taxes }, "clear_taxes" );
ok( !$self->has_taxes, "has_taxes is false" );
cmp_ok( $schema->resultset('Tax')->count, '==', 0, "0 Taxes in DB" );
# check no cascade delete to country/state
cmp_ok( $country_count, '==', $self->countries->count, "country count" );
cmp_ok( $state_count, '==', $self->states->count, "state count" );
};
test 'price modifiers' => sub {
my $self = shift;
my $schema = $self->ic6s_schema;
cmp_ok( $self->price_modifiers->count,
'>=', 15, "at least 15 price_modifiers" );
ok( $self->has_price_modifiers, "has_price_modifiers is true" );
};
test 'roles' => sub {
my $self = shift;
my $schema = $self->ic6s_schema;
cmp_ok( $self->roles->count, '==', 7, "7 roles" );
ok( $self->has_roles, "has_roles is true" );
};
test 'zones' => sub {
my $self = shift;
my $schema = $self->ic6s_schema;
cmp_ok( $self->zones->count, '>=', 316, "at least 316 zones" );
ok( $self->has_zones, "has_zones is true" );
};
test 'users' => sub {
my $self = shift;
my $schema = $self->ic6s_schema;
cmp_ok( $self->users->count, '==', 6, "6 users" );
ok( $self->has_users, "has_users is true" );
cmp_ok( $schema->resultset('User')->count, '==', 6, "6 users in the db" );
cmp_ok(
$self->users->search( { username => { -like => 'customer%' } } )->count,
'==', 3, "3 customers"
);
cmp_ok(
$self->users->search( { username => { -like => 'admin%' } } )->count,
'==', 2, "2 admin" );
cmp_ok(
$self->users->search( { username => { -like => 'company%' } } )->count,
'==', 1, "1 company" );
};
test 'uri_redirects' => sub {
my $self = shift;
my $schema = $self->ic6s_schema;
( run in 1.508 second using v1.01-cache-2.11-cpan-ad66724bd6a )