1use Test2::Bundle::Extended -target => 'Test2::Compare::Regex'; 2 3my $one = $CLASS->new(input => qr/abc/i); 4 5is(qr/abc/i, $one, "same regex"); 6 7ok(!$one->verify(got => qr/xyz/i, exists => 1), "Different regex"); 8ok(!$one->verify(got => qr/abc/, exists => 1), "Different flags"); 9ok(!$one->verify(exists => 0), "Must exist"); 10 11ok(!$one->verify(exists => 1, got => {}), "Must be regex"); 12ok(!$one->verify(exists => 1, got => undef), "Must be defined"); 13ok(!$one->verify(exists => 1, got => 'aaa'), "String is not valid"); 14 15is($one->name, "" . qr/abc/i, "name is regex pattern"); 16 17is($one->operator, 'eq', "got operator"); 18 19ok($one->verify(got => qr/abc/i, exists => 1), "Same regex"); 20 21like( 22 dies { $CLASS->new() }, 23 qr/'input' is a required attribute/, 24 "require a pattern" 25); 26 27like( 28 dies { $CLASS->new(input => 'foo') }, 29 qr/'input' must be a regex , got 'foo'/, 30 "must be a regex" 31); 32 33done_testing; 34