oops
[gitmo/MooseX-Types-Common.git] / t / 02-numeric.t
1 #! /usr/bin/perl -w
2
3 use strict;
4 use warnings;
5 use Test::More tests => 12;
6 use Test::Exception;
7
8 {
9   package FooTest;
10   use Moose;
11   use MooseX::Types::Common::Numeric (
12     qw(PositiveNum PositiveInt NegativeInt NegativeNum SingleDigit)
13   );
14
15   has digit => ( is => 'rw', isa => SingleDigit);
16   has posnum => ( is => 'rw', isa => PositiveNum);
17   has posint => ( is => 'rw', isa => PositiveInt);
18   has negnum => ( is => 'rw', isa => NegativeNum);
19   has negint => ( is => 'rw', isa => NegativeInt);
20 }
21
22 my $ins = FooTest->new;
23
24 dies_ok { $ins->digit(100); } 'SingleDigit';
25 lives_ok { $ins->digit(1); } 'SingleDigit 2';
26
27 dies_ok { $ins->posint(-100); } 'PositiveInt';
28 dies_ok { $ins->posint(100.885); } 'PositiveInt 2';
29 lives_ok { $ins->posint(100); } 'PositiveInt 3';
30 lives_ok { $ins->posnum(100.885); } 'PositiveNum';
31 dies_ok { $ins->posnum(-100.885); } 'PositiveNum 2';
32
33 dies_ok { $ins->negint(100); } 'NegativeInt';
34 dies_ok { $ins->negint(-100.885); } 'NegativeInt 2';
35 lives_ok { $ins->negint(-100); } 'NegativeInt 3';
36 lives_ok { $ins->negnum(-100.885); } 'NegativeNum';
37 dies_ok { $ins->negnum(100.885); } 'NegativeNum 2';