1 |
#!/usr/bin/perl |
2 |
use strict; |
3 |
use warnings; |
4 |
|
5 |
my $debug = shift @ARGV; |
6 |
|
7 |
use Test::More tests => 213; |
8 |
use Data::Dump qw/dump/; |
9 |
use lib 'lib'; |
10 |
|
11 |
BEGIN { |
12 |
use_ok('CWMP::Queue'); |
13 |
} |
14 |
|
15 |
#use Cwd qw/abs_path/; |
16 |
#ok(my $abs_path = abs_path($0), "abs_path"); |
17 |
#$abs_path =~ s!/[^/]*$!/!; #!fix-vim |
18 |
|
19 |
ok( my $obj = CWMP::Queue->new({ |
20 |
id => 'test', |
21 |
debug => $debug, |
22 |
}), 'new' ); |
23 |
isa_ok( $obj, 'CWMP::Queue' ); |
24 |
|
25 |
for my $i ( 1 .. 42 ) { |
26 |
ok( $obj->enqueue({ |
27 |
i => $i, |
28 |
foo => 'bar', |
29 |
}), "enqueue $i" ); |
30 |
}; |
31 |
|
32 |
my $i = 1; |
33 |
|
34 |
while ( my $job = $obj->dequeue ) { |
35 |
ok( $job, "dequeue $i" ); |
36 |
ok( my $dispatch = $job->dispatch, "dispatch $i" ); |
37 |
cmp_ok( $dispatch->{i}, '==', $i, "i == $i" ); |
38 |
ok( $job->finish, "finish $i" ); |
39 |
$i++; |
40 |
} |