remove needless use of moose attributes when testing
[gitmo/MooseX-Types-Common.git] / t / 01-string.t
CommitLineData
ac73ab52 1use strict;
eae6c2c4 2use warnings FATAL => 'all';
19ef3f5a 3use Test::More tests => 33;
ac73ab52 4
8ee1241a 5use MooseX::Types::Common::String qw(
6 SimpleStr
7 NonEmptySimpleStr
8 LowerCaseSimpleStr
9 UpperCaseSimpleStr
10 Password
11 StrongPassword
12 NonEmptyStr
13 LowerCaseStr
14 UpperCaseStr
15 NumericCode
16);
ac73ab52 17
19ef3f5a 18# TODO: need to check both the inlined and non-inlined versions!
19
8ee1241a 20ok(is_SimpleStr(''), 'SimpleStr');
21ok(is_SimpleStr('a string'), 'SimpleStr 2');
22ok(!is_SimpleStr("another\nstring"), 'SimpleStr 3');
23ok(!is_SimpleStr(join('', ("long string" x 25))), 'SimpleStr 4');
24
25ok(!is_NonEmptyStr(''), 'NonEmptyStr');
26ok(is_NonEmptyStr('a string'), 'NonEmptyStr 2');
27ok(is_NonEmptyStr("another string"), 'NonEmptyStr 3');
28ok(is_NonEmptyStr(join('', ("long string" x 25))), 'NonEmptyStr 4');
ac73ab52 29
8ee1241a 30ok(is_NonEmptySimpleStr('good str'), 'NonEmptySimplrStr');
31ok(!is_NonEmptySimpleStr(''), 'NonEmptyStr 2');
ac73ab52 32
8ee1241a 33ok(!is_Password('no'), 'Password');
34ok(is_Password('okay'), 'Password 2');
ac73ab52 35
8ee1241a 36ok(!is_StrongPassword('notokay'), 'StrongPassword');
37ok(is_StrongPassword('83773r_ch01c3'), 'StrongPassword 2');
ac73ab52 38
8ee1241a 39ok(!is_LowerCaseSimpleStr('NOTOK'), 'LowerCaseSimpleStr');
40ok(is_LowerCaseSimpleStr('ok'), 'LowerCaseSimpleStr 2');
41ok(!is_LowerCaseSimpleStr('NOTOK_123`"'), 'LowerCaseSimpleStr 3');
42ok(is_LowerCaseSimpleStr('ok_123`"'), 'LowerCaseSimpleStr 4');
a5c9a433 43
8ee1241a 44ok(!is_UpperCaseSimpleStr('notok'), 'UpperCaseSimpleStr');
45ok(is_UpperCaseSimpleStr('OK'), 'UpperCaseSimpleStr 2');
46ok(!is_UpperCaseSimpleStr('notok_123`"'), 'UpperCaseSimpleStr 3');
47ok(is_UpperCaseSimpleStr('OK_123`"'), 'UpperCaseSimpleStr 4');
a5c9a433 48
8ee1241a 49ok(!is_LowerCaseStr('NOTOK'), 'LowerCaseStr');
50ok(is_LowerCaseStr("ok\nok"), 'LowerCaseStr 2');
51ok(!is_LowerCaseStr('NOTOK_123`"'), 'LowerCaseStr 3');
52ok(is_LowerCaseStr("ok\n_123`'"), 'LowerCaseStr 4');
a5c9a433 53
8ee1241a 54ok(!is_UpperCaseStr('notok'), 'UpperCaseStr');
55ok(is_UpperCaseStr("OK\nOK"), 'UpperCaseStr 2');
56ok(!is_UpperCaseStr('notok_123`"'), 'UpperCaseStr 3');
57ok(is_UpperCaseStr("OK\n_123`'"), 'UpperCaseStr 4');
a5c9a433 58
8ee1241a 59ok(is_NumericCode('032'), 'NumericCode lives');
60ok(!is_NumericCode('abc'), 'NumericCode dies' );
61ok(!is_NumericCode('x18'), 'mixed NumericCode dies');
559b5d74 62