package VSGDR::UnitTest::TestSet::Test::TestCondition::EmptyResultSet; use 5.010; use strict; use warnings; =head1 NAME VSGDR::UnitTest::TestSet::Test::TestCondition::EmptyResultSet - Sealed class for Microsoft Visual Studio Database Edition UnitTest Utility Suite by Ded MedVed =head1 VERSION Version 1.00 =cut our $VERSION = '1.00'; use parent qw(VSGDR::UnitTest::TestSet::Test::TestCondition) ; BEGIN { *AUTOLOAD = \&VSGDR::UnitTest::TestSet::Test::TestCondition::AUTOLOAD ; } use Data::Dumper ; use Carp ; use vars qw($AUTOLOAD %ok_field); # Authorize constructor hash fields my %ok_params = () ; for my $attr ( qw( CONDITIONTESTACTIONNAME CONDITIONNAME CONDITIONENABLED CONDITIONRESULTSET) ) { $ok_params{$attr}++; } my %ok_fields = () ; my %ok_fields_type = () ; # Authorize attribute fields for my $attr ( qw(conditionTestActionName conditionName conditionEnabled conditionResultSet) ) { $ok_fields{$attr}++; $ok_fields_type{$attr} = 'plain'; } $ok_fields_type{conditionName} = 'quoted'; $ok_fields_type{conditionEnabled} = 'bool'; sub _init { local $_ = undef ; my $self = shift ; my $class = ref($self) || $self ; my $ref = shift or croak "no arg"; $self->{OK_PARAMS} = \%ok_params ; $self->{OK_FIELDS} = \%ok_fields ; $self->{OK_FIELDS_TYPE} = \%ok_fields_type ; my @validargs = grep { exists($$ref{$_}) } keys %{$self->{OK_PARAMS}} ; croak "bad args" if scalar(@validargs) != 4 ; my ${Name} = $$ref{CONDITIONNAME}; my ${TestActionName} = $$ref{CONDITIONTESTACTIONNAME}; my ${Enabled} = $$ref{CONDITIONENABLED}; my ${ResultSet} = $$ref{CONDITIONRESULTSET}; $self->conditionName(${Name}) ; $self->conditionTestActionName(${TestActionName}) ; $self->conditionEnabled(${Enabled}) ; $self->conditionResultSet(${ResultSet}) ; return ; } sub testConditionType { return 'EmptyResultSet' ; } sub testConditionMSType { return 'EmptyResultSetCondition' ; } sub check { local $_ = undef ; my $self = shift ; my $ra_res = shift ; if ( $self->conditionISEnabled() ) { if ( scalar(@{$ra_res->[$self->conditionResultSet()-1]})){ say 'Condition is ', $self->conditionName() ; say 'value is ', '"'.scalar(@{$ra_res->[$self->conditionResultSet()-1]}).'"' ; say 'expected was ', '"0"' ; return scalar 0 ; } else { return scalar 1 ; } } else { return scalar -1 ; } } 1 ; __DATA__ =head1 SYNOPSIS Sealed unit. No user serviceable parts. =head1 AUTHOR Ded MedVed, C<< >> =head1 BUGS Please report any bugs or feature requests to C, or through the web interface at L. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. =head1 SUPPORT You can find documentation for this module with the perldoc command. perldoc VSGDR::UnitTest::TestSet::Test::TestCondition::EmptyResultSet You can also look for information at: =over 4 =item * RT: CPAN's request tracker (report bugs here) L =item * AnnoCPAN: Annotated CPAN documentation L =item * CPAN Ratings L =item * Search CPAN L =back =head1 ACKNOWLEDGEMENTS =head1 LICENSE AND COPYRIGHT Copyright 2012 Ded MedVed. This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License. See http://dev.perl.org/licenses/ for more information. =cut 1; # End of VSGDR::UnitTest::TestSet::Test::TestCondition::EmptyResultSet