File: 71-moose.t

package info (click to toggle)
libdevel-nytprof-perl 6.12%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 2,552 kB
  • sloc: perl: 5,616; javascript: 4,033; ansic: 107; makefile: 23
file content (50 lines) | stat: -rw-r--r-- 1,143 bytes parent folder | download | duplicates (5)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
use strict;
use Test::More;

use lib qw(t/lib);
use NYTProfTest;

eval "use Moose 2.0; 1"
    or plan skip_all => "Moose 2.0 required";

print "Moose $Moose::VERSION $INC{'Moose.pm'}\n";

plan skip_all => "Test is incomplete (has no results defined yet)";# unless -d '.svn';

use Devel::NYTProf::Run qw(profile_this);

my $src_code = join("", <DATA>);

run_test_group( {
    extra_options => {
        start => 'begin', compress => 1, stmts => 0, slowops => 0,
    },
    extra_test_count => 2,
    extra_test_code  => sub {
        my ($profile, $env) = @_;

        $profile = profile_this(
            src_code => $src_code,
            out_file => $env->{file},
            skip_sitecustomize => 1,
            htmlopen => $ENV{NYTPROF_TEST_HTMLOPEN},
        );
        isa_ok $profile, 'Devel::NYTProf::Data';

        my $subs = $profile->subname_subinfo_map;

        ok 1;
    },
});

__DATA__
#!perl
package P;
use Moose;
has attrib_std  => ( is => 'rw',  default => 42 );
has attrib_lazy => ( is => 'rw', lazy => 1, default => sub { 43 } );
END {
    my $p = P->new;
    print $p->attrib_std."\n";
    print $p->attrib_lazy."\n";
}