X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=t%2F040_type_constraints%2Ffailing%2F026_normalize_type_name.t;fp=t%2F040_type_constraints%2Ffailing%2F026_normalize_type_name.t;h=0000000000000000000000000000000000000000;hp=e2bc02d3078045a8b66370acd390563febb9e084;hb=fde8e43f95fe996fbc2a778aa259feeb04552171;hpb=0bdc9d38dfd3de07aad929f6629f8fa65d434c27 diff --git a/t/040_type_constraints/failing/026_normalize_type_name.t b/t/040_type_constraints/failing/026_normalize_type_name.t deleted file mode 100644 index e2bc02d..0000000 --- a/t/040_type_constraints/failing/026_normalize_type_name.t +++ /dev/null @@ -1,151 +0,0 @@ -#!/usr/bin/perl - -use strict; -use warnings; - -use Test::More tests => 37; -use Test::Exception; - -BEGIN { - use_ok('Mouse::Util::TypeConstraints'); -} - -## First, we check that the new regex parsing works - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[Str]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[Str]') - ], - [ "ArrayRef", "Str" ] => 'Correctly parsed ArrayRef[Str]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[Str ]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[Str ]') - ], - [ "ArrayRef", "Str" ] => 'Correctly parsed ArrayRef[Str ]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[ Str]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[ Str]') - ], - [ "ArrayRef", "Str" ] => 'Correctly parsed ArrayRef[ Str]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[ Str ]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[ Str ]') - ], - [ "ArrayRef", "Str" ] => 'Correctly parsed ArrayRef[ Str ]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[ HashRef[Int] ]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[ HashRef[Int] ]') - ], - [ "ArrayRef", "HashRef[Int]" ] => - 'Correctly parsed ArrayRef[ HashRef[Int] ]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[ HashRef[Int ] ]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[ HashRef[Int ] ]') - ], - [ "ArrayRef", "HashRef[Int ]" ] => - 'Correctly parsed ArrayRef[ HashRef[Int ] ]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[Int|Str]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[Int|Str]') - ], - [ "ArrayRef", "Int|Str" ] => 'Correctly parsed ArrayRef[Int|Str]'; - -ok Mouse::Util::TypeConstraints::_detect_parameterized_type_constraint( - 'ArrayRef[ArrayRef[Int]|Str]') => 'detected correctly'; - -is_deeply - [ - Mouse::Util::TypeConstraints::_parse_parameterized_type_constraint( - 'ArrayRef[ArrayRef[Int]|Str]') - ], - [ "ArrayRef", "ArrayRef[Int]|Str" ] => - 'Correctly parsed ArrayRef[ArrayRef[Int]|Str]'; - -## creating names via subtype - -ok my $r = Mouse::Util::TypeConstraints->get_type_constraint_registry => - 'Got registry object'; - -ok my $subtype_a1 - = subtype( 'subtype_a1' => as 'HashRef[Int]' ), => 'created subtype_a1'; - -ok my $subtype_a2 - = subtype( 'subtype_a2' => as 'HashRef[ Int]' ), => 'created subtype_a2'; - -ok my $subtype_a3 - = subtype( 'subtype_a2' => as 'HashRef[Int ]' ), => 'created subtype_a2'; - -ok my $subtype_a4 = subtype( 'subtype_a2' => as 'HashRef[ Int ]' ), => - 'created subtype_a2'; - -is $subtype_a1->parent->name, $subtype_a2->parent->name => 'names match'; - -is $subtype_a1->parent->name, $subtype_a3->parent->name => 'names match'; - -is $subtype_a1->parent->name, $subtype_a4->parent->name => 'names match'; - -ok my $subtype_b1 = subtype( 'subtype_b1' => as 'HashRef[Int|Str]' ), => - 'created subtype_b1'; - -ok my $subtype_b2 = subtype( 'subtype_b2' => as 'HashRef[Int | Str]' ), => - 'created subtype_b2'; - -ok my $subtype_b3 = subtype( 'subtype_b3' => as 'HashRef[Str|Int]' ), => - 'created subtype_b3'; - -is $subtype_b1->parent->name, $subtype_b2->parent->name => 'names match'; - -is $subtype_b1->parent->name, $subtype_b3->parent->name => 'names match'; - -is $subtype_b2->parent->name, $subtype_b3->parent->name => 'names match'; - -## testing via add_constraint - -ok my $union1 = Mouse::Util::TypeConstraints::create_type_constraint_union( - 'ArrayRef[Int|Str] | ArrayRef[Int | HashRef]') => 'Created Union1'; - -ok my $union2 = Mouse::Util::TypeConstraints::create_type_constraint_union( - 'ArrayRef[ Int|Str] | ArrayRef[Int | HashRef]') => 'Created Union2'; - -ok my $union3 = Mouse::Util::TypeConstraints::create_type_constraint_union( - 'ArrayRef[Int |Str ] | ArrayRef[Int | HashRef ]') => 'Created Union3'; - -is $union1->name, $union2->name, 'names match'; - -is $union1->name, $union3->name, 'names match'; - -is $union2->name, $union3->name, 'names match';