OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / lib / bitvector / t / 14______empty.t
1 #!perl -w
2
3 use strict;
4 no strict "vars";
5
6 use Bit::Vector;
7
8 # ======================================================================
9 #   $vec->is_empty();
10 #   $vec->is_full();
11 # ======================================================================
12
13 print "1..40\n";
14
15 $n = 1;
16
17 $vec = Bit::Vector->new(5000);
18
19 if ($vec->is_empty())
20 {print "ok $n\n";} else {print "not ok $n\n";}
21 $n++;
22 if (!$vec->is_full())
23 {print "ok $n\n";} else {print "not ok $n\n";}
24 $n++;
25
26 $vec->Flip();
27
28 if (!$vec->is_empty())
29 {print "ok $n\n";} else {print "not ok $n\n";}
30 $n++;
31 if ($vec->is_full())
32 {print "ok $n\n";} else {print "not ok $n\n";}
33 $n++;
34
35 $vec->Complement($vec);
36
37 if ($vec->is_empty())
38 {print "ok $n\n";} else {print "not ok $n\n";}
39 $n++;
40 if (!$vec->is_full())
41 {print "ok $n\n";} else {print "not ok $n\n";}
42 $n++;
43
44 &Empty(   0);
45 &Empty(   1);
46 &Empty(4999);
47 &Empty(4998);
48
49 $vec->Fill();
50
51 if (!$vec->is_empty())
52 {print "ok $n\n";} else {print "not ok $n\n";}
53 $n++;
54 if ($vec->is_full())
55 {print "ok $n\n";} else {print "not ok $n\n";}
56 $n++;
57
58 &Full(   0);
59 &Full(   1);
60 &Full(4999);
61 &Full(4998);
62
63 exit;
64
65 sub Empty
66 {
67     my($bit) = @_;
68
69     $vec->bit_flip($bit);
70
71     if (!$vec->is_empty())
72     {print "ok $n\n";} else {print "not ok $n\n";}
73     $n++;
74     if (!$vec->is_full())
75     {print "ok $n\n";} else {print "not ok $n\n";}
76     $n++;
77
78     $vec->bit_flip($bit);
79
80     if ($vec->is_empty())
81     {print "ok $n\n";} else {print "not ok $n\n";}
82     $n++;
83     if (!$vec->is_full())
84     {print "ok $n\n";} else {print "not ok $n\n";}
85     $n++;
86 }
87
88 sub Full
89 {
90     my($bit) = @_;
91
92     $vec->bit_flip($bit);
93
94     if (!$vec->is_empty())
95     {print "ok $n\n";} else {print "not ok $n\n";}
96     $n++;
97     if (!$vec->is_full())
98     {print "ok $n\n";} else {print "not ok $n\n";}
99     $n++;
100
101     $vec->bit_flip($bit);
102
103     if (!$vec->is_empty())
104     {print "ok $n\n";} else {print "not ok $n\n";}
105     $n++;
106     if ($vec->is_full())
107     {print "ok $n\n";} else {print "not ok $n\n";}
108     $n++;
109 }
110
111 __END__
112