Beta Shell
v2.0 ยท web2.us.cloudlogin.co
[FM]
[CMD]
[PHP]
[DB]
[INFO]
[SEC]
File Manager
~
/
usr
/
share
/
doc
/
perl-Mouse
/
t
/
101_issues
Upload
3 items
Name
Size
Perms
Modified
Actions
[ .. / .. ]
016_Bool.t
742 B
-rw-r--r--
2019-10-27 19:43:23
Edit
Del
Editing: 016_Bool.t
(742 B)
Path: /usr/share/doc/perl-Mouse/t/101_issues/016_Bool.t
Back
#!/usr/bin/perl use strict; use warnings; use Test::More; use Test::Exception; { package Boolean; sub new { my $self = shift; bless [ shift ], $self; } use overload ( "0+" => sub { shift->[0] ? 1 : 0 }, fallback => 1, ); package Foo; use Mouse; has flag => ( is => 'ro', isa => 'Bool', ); no Mouse; } my $false; lives_ok { $false = Foo->new( flag => Boolean->new(0) ); } 'pseudo false value'; ok( $false && defined $false->flag && !$false->flag, 'false' ); my $true; lives_ok { $true = Foo->new( flag => Boolean->new(1) ); } 'pseudo true value'; ok( $true && defined $false->flag && $true->flag, 'true' ); done_testing;