xref: /openbsd-src/gnu/usr.bin/perl/dist/Thread-Queue/t/04_errs.t (revision b39c515898423c8d899e35282f4b395f7cad3298)
1*b39c5158Smillertuse strict;
2*b39c5158Smillertuse warnings;
3*b39c5158Smillert
4*b39c5158Smillertuse Thread::Queue;
5*b39c5158Smillert
6*b39c5158Smillertuse Test::More 'tests' => 26;
7*b39c5158Smillert
8*b39c5158Smillertmy $q = Thread::Queue->new(1..10);
9*b39c5158Smillertok($q, 'New queue');
10*b39c5158Smillert
11*b39c5158Smillerteval { $q->dequeue(undef); };
12*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
13*b39c5158Smillerteval { $q->dequeue(0); };
14*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
15*b39c5158Smillerteval { $q->dequeue(0.5); };
16*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
17*b39c5158Smillerteval { $q->dequeue(-1); };
18*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
19*b39c5158Smillerteval { $q->dequeue('foo'); };
20*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
21*b39c5158Smillert
22*b39c5158Smillerteval { $q->dequeue_nb(undef); };
23*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
24*b39c5158Smillerteval { $q->dequeue_nb(0); };
25*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
26*b39c5158Smillerteval { $q->dequeue_nb(-0.5); };
27*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
28*b39c5158Smillerteval { $q->dequeue_nb(-1); };
29*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
30*b39c5158Smillerteval { $q->dequeue_nb('foo'); };
31*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
32*b39c5158Smillert
33*b39c5158Smillerteval { $q->peek(undef); };
34*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
35*b39c5158Smillerteval { $q->peek(3.3); };
36*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
37*b39c5158Smillerteval { $q->peek('foo'); };
38*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
39*b39c5158Smillert
40*b39c5158Smillerteval { $q->insert(); };
41*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
42*b39c5158Smillerteval { $q->insert(undef); };
43*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
44*b39c5158Smillerteval { $q->insert(.22); };
45*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
46*b39c5158Smillerteval { $q->insert('foo'); };
47*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
48*b39c5158Smillert
49*b39c5158Smillerteval { $q->extract(undef); };
50*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
51*b39c5158Smillerteval { $q->extract('foo'); };
52*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
53*b39c5158Smillerteval { $q->extract(1.1); };
54*b39c5158Smillertlike($@, qr/Invalid 'index'/, $@);
55*b39c5158Smillerteval { $q->extract(0, undef); };
56*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
57*b39c5158Smillerteval { $q->extract(0, 0); };
58*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
59*b39c5158Smillerteval { $q->extract(0, 3.3); };
60*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
61*b39c5158Smillerteval { $q->extract(0, -1); };
62*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
63*b39c5158Smillerteval { $q->extract(0, 'foo'); };
64*b39c5158Smillertlike($@, qr/Invalid 'count'/, $@);
65*b39c5158Smillert
66*b39c5158Smillertexit(0);
67*b39c5158Smillert
68*b39c5158Smillert# EOF
69