X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F02-numeric.t;h=23bec4124c33e4b72f91b5a10c13bece148dd917;hb=edd6ff8072b9de004e253b207f07d85326d83151;hp=e794948e1a9590910ed5de62e7f95e0a96bd0536;hpb=eae6c2c41e82820e99b200cc0a8172153f7ea56a;p=gitmo%2FMooseX-Types-Common.git diff --git a/t/02-numeric.t b/t/02-numeric.t index e794948..23bec41 100644 --- a/t/02-numeric.t +++ b/t/02-numeric.t @@ -1,67 +1,61 @@ use strict; use warnings FATAL => 'all'; -use Test::More tests => 34; -use Test::Fatal; -{ - package FooTest; - use Moose; - use MooseX::Types::Common::Numeric ( - qw(PositiveNum PositiveOrZeroNum - PositiveInt PositiveOrZeroInt - NegativeNum NegativeOrZeroNum - NegativeInt NegativeOrZeroInt - SingleDigit) - ); - - has digit => ( is => 'rw', isa => SingleDigit); - has posnum => ( is => 'rw', isa => PositiveNum); - has posint => ( is => 'rw', isa => PositiveInt); - has negnum => ( is => 'rw', isa => NegativeNum); - has negint => ( is => 'rw', isa => NegativeInt); - has posorzeronum => ( is => 'rw', isa => PositiveOrZeroNum); - has posorzeroint => ( is => 'rw', isa => PositiveOrZeroInt); - has negorzeronum => ( is => 'rw', isa => NegativeOrZeroNum); - has negorzeroint => ( is => 'rw', isa => NegativeOrZeroInt); -} - -my $ins = FooTest->new; - -isnt(exception { $ins->digit(100); }, undef, 'SingleDigit'); -is(exception { $ins->digit(1); }, undef, 'SingleDigit 2'); - -isnt(exception { $ins->posint(-100); }, undef, 'PositiveInt (-100)'); -isnt(exception { $ins->posint(0); }, undef, 'PositiveInt (0)'); -isnt(exception { $ins->posint(100.885); }, undef, 'PositiveInt (100.885)'); -is(exception { $ins->posint(100); }, undef, 'PositiveInt (100)'); -isnt(exception { $ins->posnum(0); }, undef, 'PositiveNum (0)'); -is(exception { $ins->posnum(100.885); }, undef, 'PositiveNum (100.885)'); -isnt(exception { $ins->posnum(-100.885); }, undef, 'PositiveNum (-100.885)'); -is(exception { $ins->posnum(0.0000000001); }, undef, 'PositiveNum (0.0000000001)'); - -isnt(exception { $ins->posorzeroint(-100); }, undef, 'PositiveOrZeroInt (-100)'); -is(exception { $ins->posorzeroint(0); }, undef, 'PositiveOrZeroInt (0)'); -isnt(exception { $ins->posorzeroint(100.885); }, undef, 'PositiveOrZeroInt (100.885)'); -is(exception { $ins->posorzeroint(100); }, undef, 'PositiveOrZeroInt (100)'); -is(exception { $ins->posorzeronum(0); }, undef, 'PositiveOrZeroNum (0)'); -is(exception { $ins->posorzeronum(100.885); }, undef, 'PositiveOrZeroNum (100.885)'); -isnt(exception { $ins->posorzeronum(-100.885); }, undef, 'PositiveOrZeroNum (-100.885)'); -is(exception { $ins->posorzeronum(0.0000000001); }, undef, 'PositiveOrZeroNum (0.0000000001)'); - -isnt(exception { $ins->negint(100); }, undef, 'NegativeInt (100)'); -isnt(exception { $ins->negint(-100.885); }, undef, 'NegativeInt (-100.885)'); -is(exception { $ins->negint(-100); }, undef, 'NegativeInt (-100)'); -isnt(exception { $ins->negint(0); }, undef, 'NegativeInt (0)'); -is(exception { $ins->negnum(-100.885); }, undef, 'NegativeNum (-100.885)'); -isnt(exception { $ins->negnum(100.885); }, undef, 'NegativeNum (100.885)'); -isnt(exception { $ins->negnum(0); }, undef, 'NegativeNum (0)'); -is(exception { $ins->negnum(-0.0000000001); }, undef, 'NegativeNum (-0.0000000001)'); - -isnt(exception { $ins->negorzeroint(100); }, undef, 'NegativeOrZeroInt (100)'); -isnt(exception { $ins->negorzeroint(-100.885); }, undef, 'NegativeOrZeroInt (-100.885)'); -is(exception { $ins->negorzeroint(-100); }, undef, 'NegativeOrZeroInt (-100)'); -is(exception { $ins->negorzeroint(0); }, undef, 'NegativeOrZeroInt (0)'); -is(exception { $ins->negorzeronum(-100.885); }, undef, 'NegativeOrZeroNum (-100.885)'); -isnt(exception { $ins->negorzeronum(100.885); }, undef, 'NegativeOrZeroNum (100.885)'); -is(exception { $ins->negorzeronum(0); }, undef, 'NegativeOrZeroNum (0)'); -is(exception { $ins->negorzeronum(-0.0000000001); }, undef, 'NegativeOrZeroNum (-0.0000000001)'); +use Test::More; +use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; + +use MooseX::Types::Common::Numeric qw( + PositiveNum PositiveOrZeroNum + PositiveInt PositiveOrZeroInt + NegativeNum NegativeOrZeroNum + NegativeInt NegativeOrZeroInt + SingleDigit +); + +ok(!is_SingleDigit(100), 'SingleDigit 100'); +ok(!is_SingleDigit(10), 'SingleDigit 10'); +ok(is_SingleDigit(9), 'SingleDigit 9'); +ok(is_SingleDigit(1), 'SingleDigit 1'); +ok(is_SingleDigit(0), 'SingleDigit 0'); +ok(is_SingleDigit(-1), 'SingleDigit -1'); +ok(is_SingleDigit(-9), 'SingleDigit -9'); +ok(!is_SingleDigit(-10), 'SingleDigit -10'); + + +ok(!is_PositiveInt(-100), 'PositiveInt (-100)'); +ok(!is_PositiveInt(0), 'PositiveInt (0)'); +ok(!is_PositiveInt(100.885), 'PositiveInt (100.885)'); +ok(is_PositiveInt(100), 'PositiveInt (100)'); +ok(!is_PositiveNum(0), 'PositiveNum (0)'); +ok(is_PositiveNum(100.885), 'PositiveNum (100.885)'); +ok(!is_PositiveNum(-100.885), 'PositiveNum (-100.885)'); +ok(is_PositiveNum(0.0000000001), 'PositiveNum (0.0000000001)'); + +ok(!is_PositiveOrZeroInt(-100), 'PositiveOrZeroInt (-100)'); +ok(is_PositiveOrZeroInt(0), 'PositiveOrZeroInt (0)'); +ok(!is_PositiveOrZeroInt(100.885), 'PositiveOrZeroInt (100.885)'); +ok(is_PositiveOrZeroInt(100), 'PositiveOrZeroInt (100)'); +ok(is_PositiveOrZeroNum(0), 'PositiveOrZeroNum (0)'); +ok(is_PositiveOrZeroNum(100.885), 'PositiveOrZeroNum (100.885)'); +ok(!is_PositiveOrZeroNum(-100.885), 'PositiveOrZeroNum (-100.885)'); +ok(is_PositiveOrZeroNum(0.0000000001), 'PositiveOrZeroNum (0.0000000001)'); + +ok(!is_NegativeInt(100), 'NegativeInt (100)'); +ok(!is_NegativeInt(-100.885), 'NegativeInt (-100.885)'); +ok(is_NegativeInt(-100), 'NegativeInt (-100)'); +ok(!is_NegativeInt(0), 'NegativeInt (0)'); +ok(is_NegativeNum(-100.885), 'NegativeNum (-100.885)'); +ok(!is_NegativeNum(100.885), 'NegativeNum (100.885)'); +ok(!is_NegativeNum(0), 'NegativeNum (0)'); +ok(is_NegativeNum(-0.0000000001), 'NegativeNum (-0.0000000001)'); + +ok(!is_NegativeOrZeroInt(100), 'NegativeOrZeroInt (100)'); +ok(!is_NegativeOrZeroInt(-100.885), 'NegativeOrZeroInt (-100.885)'); +ok(is_NegativeOrZeroInt(-100), 'NegativeOrZeroInt (-100)'); +ok(is_NegativeOrZeroInt(0), 'NegativeOrZeroInt (0)'); +ok(is_NegativeOrZeroNum(-100.885), 'NegativeOrZeroNum (-100.885)'); +ok(!is_NegativeOrZeroNum(100.885), 'NegativeOrZeroNum (100.885)'); +ok(is_NegativeOrZeroNum(0), 'NegativeOrZeroNum (0)'); +ok(is_NegativeOrZeroNum(-0.0000000001), 'NegativeOrZeroNum (-0.0000000001)'); + +done_testing;