File: blog_hints.t

package info (click to toggle)
libautodie-perl 2.10-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 528 kB
  • ctags: 305
  • sloc: perl: 4,012; makefile: 4
file content (30 lines) | stat: -rwxr-xr-x 707 bytes parent folder | download | duplicates (13)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/perl -w
use strict;
use warnings;
use Test::More 'no_plan';

use FindBin;
use lib "$FindBin::Bin/lib";

use Some::Module qw(some_sub);
use my::autodie qw(! some_sub);

eval { some_sub() };

isnt("$@", "", "some_sub should die in void/scalar context");

isa_ok($@, 'autodie::exception');
is($@->context, 'scalar');
is($@->function, 'Some::Module::some_sub');
like("$@", qr/can't be called in scalar context/);

my @returns = eval { some_sub(0); };
is($@, "", "Good call to some_sub");
is_deeply(\@returns, [1,2,3], "Returns unmolested");

@returns = eval { some_sub(1) };

isnt("$@","");
is($@->return->[0], undef);
is($@->return->[1], 'Insufficient credit');
like("$@", qr/Insufficient credit/);