OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / lib / bitvector / t / 04__functions.t
1 #!perl -w
2
3 use strict;
4 no strict "vars";
5
6 use Bit::Vector;
7
8 # ======================================================================
9 #   $set->Norm();
10 #   $set->Min();
11 #   $set->Max();
12 # ======================================================================
13
14 print "1..21\n";
15
16 $lim = 997;
17
18 $set = new Bit::Vector($lim);
19
20 $norm = $set->Norm();
21 $min = $set->Min();
22 $max = $set->Max();
23
24 $n = 1;
25 if ($norm == 0)
26 {print "ok $n\n";} else {print "not ok $n\n";}
27 $n++;
28 if ($min > $lim)
29 {print "ok $n\n";} else {print "not ok $n\n";}
30 $n++;
31 if ($max < -$lim)
32 {print "ok $n\n";} else {print "not ok $n\n";}
33 $n++;
34
35 $set->Fill();
36 $norm = $set->Norm();
37 $min = $set->Min();
38 $max = $set->Max();
39
40 if ($norm == $lim)
41 {print "ok $n\n";} else {print "not ok $n\n";}
42 $n++;
43 if ($min == 0)
44 {print "ok $n\n";} else {print "not ok $n\n";}
45 $n++;
46 if ($max == $lim-1)
47 {print "ok $n\n";} else {print "not ok $n\n";}
48 $n++;
49
50 $set->Empty();
51 $set->Bit_On(0);
52 $set->Bit_On($lim-1);
53 $norm = $set->Norm();
54 $min = $set->Min();
55 $max = $set->Max();
56
57 if ($norm == 2)
58 {print "ok $n\n";} else {print "not ok $n\n";}
59 $n++;
60 if ($min == 0)
61 {print "ok $n\n";} else {print "not ok $n\n";}
62 $n++;
63 if ($max == $lim-1)
64 {print "ok $n\n";} else {print "not ok $n\n";}
65 $n++;
66
67 $set->Empty();
68 $set->Bit_On(0);
69 $norm = $set->Norm();
70 $min = $set->Min();
71 $max = $set->Max();
72
73 if ($norm == 1)
74 {print "ok $n\n";} else {print "not ok $n\n";}
75 $n++;
76 if ($min == 0)
77 {print "ok $n\n";} else {print "not ok $n\n";}
78 $n++;
79 if ($max == 0)
80 {print "ok $n\n";} else {print "not ok $n\n";}
81 $n++;
82
83 $set->Empty();
84 $set->Bit_On($lim-1);
85 $norm = $set->Norm();
86 $min = $set->Min();
87 $max = $set->Max();
88
89 if ($norm == 1)
90 {print "ok $n\n";} else {print "not ok $n\n";}
91 $n++;
92 if ($min == $lim-1)
93 {print "ok $n\n";} else {print "not ok $n\n";}
94 $n++;
95 if ($max == $lim-1)
96 {print "ok $n\n";} else {print "not ok $n\n";}
97 $n++;
98
99 $set->Empty();
100 $set->Bit_On(1);
101 $set->Bit_On($lim-2);
102 $norm = $set->Norm();
103 $min = $set->Min();
104 $max = $set->Max();
105
106 if ($norm == 2)
107 {print "ok $n\n";} else {print "not ok $n\n";}
108 $n++;
109 if ($min == 1)
110 {print "ok $n\n";} else {print "not ok $n\n";}
111 $n++;
112 if ($max == $lim-2)
113 {print "ok $n\n";} else {print "not ok $n\n";}
114 $n++;
115
116 $set->Empty();
117 $set->Bit_On(int($lim/2));
118 $norm = $set->Norm();
119 $min = $set->Min();
120 $max = $set->Max();
121
122 if ($norm == 1)
123 {print "ok $n\n";} else {print "not ok $n\n";}
124 $n++;
125 if ($min == int($lim/2))
126 {print "ok $n\n";} else {print "not ok $n\n";}
127 $n++;
128 if ($max == int($lim/2))
129 {print "ok $n\n";} else {print "not ok $n\n";}
130 $n++;
131
132 __END__
133