39 |
31 |
40 int main() { |
32 int main() { |
41 UFE::MapType base; |
33 UFE::MapType base; |
42 UFE U(base); |
34 UFE U(base); |
43 |
35 |
44 print(U); |
36 // print(U); |
45 |
37 |
46 cout << "Inserting 1..." << endl; |
38 cout << "Insert 1..." << endl; |
47 U.insert(1); |
39 U.insert(1); |
48 print(U); |
40 // print(U); |
49 |
41 |
50 cout << "Inserting 2..." << endl; |
42 cout << "Insert 2..." << endl; |
51 U.insert(2); |
43 U.insert(2); |
52 print(U); |
44 // print(U); |
53 |
45 |
54 cout << "Joining 1 and 2..." << endl; |
46 cout << "Join 1 and 2..." << endl; |
55 check(U.join(1,2)); |
47 check(U.join(1,2),"Test failed."); |
56 print(U); |
48 // print(U); |
57 |
49 |
58 cout << "Inserting 3, 4, 5, 6, 7..." << endl; |
50 cout << "Insert 3, 4, 5, 6, 7..." << endl; |
59 U.insert(3); |
51 U.insert(3); |
60 U.insert(4); |
52 U.insert(4); |
61 U.insert(5); |
53 U.insert(5); |
62 U.insert(6); |
54 U.insert(6); |
63 U.insert(7); |
55 U.insert(7); |
64 print (U); |
56 // print (U); |
65 |
57 |
66 cout << "Joining 1 - 4, 2 - 4 and 3 - 5 ..." << endl; |
58 cout << "Join 1 - 4, 2 - 4 and 3 - 5 ..." << endl; |
67 check(U.join(1,4)); |
59 check(U.join(1,4),"Test failed."); |
68 check(!U.join(2,4)); |
60 check(!U.join(2,4),"Test failed."); |
69 check(U.join(3,5)); |
61 check(U.join(3,5),"Test failed."); |
70 print(U); |
62 // print(U); |
71 |
63 |
72 cout << "Inserting 8 to the component of 5 ..." << endl; |
64 cout << "Insert 8 to the component of 5 ..." << endl; |
73 U.insert(8,5); |
65 U.insert(8,5); |
74 print(U); |
66 // print(U); |
75 |
67 |
76 cout << "size of the class of 4: " << U.size(4) << endl; |
68 cout << "Size of the class of 4: " << U.size(4) << endl; |
77 check(U.size(4) == 3); |
69 check(U.size(4) == 3,"Test failed."); |
78 cout << "size of the class of 5: " << U.size(5) << endl; |
70 cout << "Size of the class of 5: " << U.size(5) << endl; |
79 check(U.size(5) == 3); |
71 check(U.size(5) == 3,"Test failed."); |
80 cout << "size of the class of 6: " << U.size(6) << endl; |
72 cout << "Size of the class of 6: " << U.size(6) << endl; |
81 check(U.size(6) == 1); |
73 check(U.size(6) == 1,"Test failed."); |
82 cout << "size of the class of 2: " << U.size(2) << endl; |
74 cout << "Size of the class of 2: " << U.size(2) << endl; |
83 check(U.size(2) == 3); |
75 check(U.size(2) == 3,"Test failed."); |
84 |
76 |
85 cout << "Inserting 9 ..." << endl; |
77 cout << "Insert 9 ..." << endl; |
86 U.insert(9); |
78 U.insert(9); |
87 print(U); |
79 // print(U); |
88 cout << "Inserting 10 to the component of 9 ..." << endl; |
80 cout << "Insert 10 to the component of 9 ..." << endl; |
89 U.insert(10,9); |
81 U.insert(10,9); |
90 print(U); |
82 // print(U); |
91 |
83 |
92 cout << "Joining 8 and 10..." << endl; |
84 cout << "Join 8 and 10..." << endl; |
93 check(U.join(8,10)); |
85 check(U.join(8,10),"Test failed."); |
94 print(U); |
86 // print(U); |
95 |
87 |
96 cout << "Move 9 to the class of 4 ..." << endl; |
88 cout << "Move 9 to the class of 4 ..." << endl; |
97 check(U.move(9,4)); |
89 check(U.move(9,4),"Test failed."); |
98 print(U); |
90 // print(U); |
99 |
91 |
100 cout << "Move 9 to the class of 2 ..." << endl; |
92 cout << "Move 9 to the class of 2 ..." << endl; |
101 check(!U.move(9,2)); |
93 check(!U.move(9,2),"Test failed."); |
102 print(U); |
94 // print(U); |
103 |
95 |
104 cout << "size of the class of 4: " << U.size(4) << endl; |
96 cout << "Size of the class of 4: " << U.size(4) << endl; |
105 check(U.size(4) == 4); |
97 check(U.size(4) == 4,"Test failed."); |
106 cout << "size of the class of 9: " << U.size(9) << endl; |
98 cout << "Size of the class of 9: " << U.size(9) << endl; |
107 check(U.size(9) == 4); |
99 check(U.size(9) == 4,"Test failed."); |
108 |
100 |
109 cout << "Move 5 to the class of 6 ..." << endl; |
101 cout << "Move 5 to the class of 6 ..." << endl; |
110 check(U.move(5,6)); |
102 check(U.move(5,6),"Test failed."); |
111 print(U); |
103 // print(U); |
112 |
104 |
113 cout << "size of the class of 5: " << U.size(5) << endl; |
105 cout << "Size of the class of 5: " << U.size(5) << endl; |
114 check(U.size(5) == 2); |
106 check(U.size(5) == 2,"Test failed."); |
115 cout << "size of the class of 8: " << U.size(8) << endl; |
107 cout << "Size of the class of 8: " << U.size(8) << endl; |
116 check(U.size(8) == 3); |
108 check(U.size(8) == 3,"Test failed."); |
117 |
109 |
118 cout << "Move 7 to the class of 10 ..." << endl; |
110 cout << "Move 7 to the class of 10 ..." << endl; |
119 check(U.move(7,10)); |
111 check(U.move(7,10),"Test failed."); |
120 print(U); |
112 // print(U); |
121 |
113 |
122 cout << "size of the class of 7: " << U.size(7) << endl; |
114 cout << "Size of the class of 7: " << U.size(7) << endl; |
123 check(U.size(7) == 4); |
115 check(U.size(7) == 4,"Test failed."); |
124 |
116 |
125 cout <<"erase 9: " << endl; |
117 cout <<"Erase 9... " << endl; |
126 U.erase(9); |
118 U.erase(9); |
127 print(U); |
119 // print(U); |
128 |
120 |
129 cout <<"erase 1: " << endl; |
121 cout <<"Erase 1... " << endl; |
130 U.erase(1); |
122 U.erase(1); |
131 print(U); |
123 // print(U); |
132 |
124 |
133 cout << "size of the class of 4: " << U.size(4) << endl; |
125 cout << "Size of the class of 4: " << U.size(4) << endl; |
134 check(U.size(4) == 2); |
126 check(U.size(4) == 2,"Test failed."); |
135 cout << "size of the class of 2: " << U.size(2) << endl; |
127 cout << "Size of the class of 2: " << U.size(2) << endl; |
136 check(U.size(2) == 2); |
128 check(U.size(2) == 2,"Test failed."); |
137 |
129 |
138 |
130 |
139 cout <<"erase 1: " << endl; |
131 cout <<"Erase 1... " << endl; |
140 U.erase(1); |
132 U.erase(1); |
141 print(U); |
133 // print(U); |
142 |
134 |
143 cout <<"erase 6: " << endl; |
135 cout <<"Erase 6... " << endl; |
144 U.erase(6); |
136 U.erase(6); |
145 print(U); |
137 // print(U); |
146 |
138 |
147 cout << "split the class of 8: " << endl; |
139 cout << "Split the class of 8... " << endl; |
148 U.split(8); |
140 U.split(8); |
149 print(U); |
141 // print(U); |
150 |
142 |
151 |
143 |
152 cout << "size of the class of 4: " << U.size(4) << endl; |
144 cout << "Size of the class of 4: " << U.size(4) << endl; |
153 check(U.size(4) == 2); |
145 check(U.size(4) == 2,"Test failed."); |
154 cout << "size of the class of 3: " << U.size(3) << endl; |
146 cout << "Size of the class of 3: " << U.size(3) << endl; |
155 check(U.size(3) == 1); |
147 check(U.size(3) == 1,"Test failed."); |
156 cout << "size of the class of 2: " << U.size(2) << endl; |
148 cout << "Size of the class of 2: " << U.size(2) << endl; |
157 check(U.size(2) == 2); |
149 check(U.size(2) == 2,"Test failed."); |
158 |
150 |
159 |
151 |
160 cout << "Joining 3 - 4 and 2 - 4 ..." << endl; |
152 cout << "Join 3 - 4 and 2 - 4 ..." << endl; |
161 check(U.join(3,4)); |
153 check(U.join(3,4),"Test failed."); |
162 check(!U.join(2,4)); |
154 check(!U.join(2,4),"Test failed."); |
163 print(U); |
155 // print(U); |
164 |
156 |
165 |
157 |
166 cout << "size of the class of 4: " << U.size(4) << endl; |
158 cout << "Size of the class of 4: " << U.size(4) << endl; |
167 check(U.size(4) == 3); |
159 check(U.size(4) == 3,"Test failed."); |
168 cout << "size of the class of 3: " << U.size(3) << endl; |
160 cout << "Size of the class of 3: " << U.size(3) << endl; |
169 check(U.size(3) == 3); |
161 check(U.size(3) == 3,"Test failed."); |
170 cout << "size of the class of 2: " << U.size(2) << endl; |
162 cout << "Size of the class of 2: " << U.size(2) << endl; |
171 check(U.size(2) == 3); |
163 check(U.size(2) == 3,"Test failed."); |
172 |
164 |
173 cout << "makeRep(4)" << endl; |
165 cout << "makeRep(4)..." << endl; |
174 U.makeRep(4); |
166 U.makeRep(4); |
175 print(U); |
167 // print(U); |
176 cout << "makeRep(3)" << endl; |
168 cout << "makeRep(3)..." << endl; |
177 U.makeRep(3); |
169 U.makeRep(3); |
178 print(U); |
170 // print(U); |
179 cout << "makeRep(2)" << endl; |
171 cout << "makeRep(2)..." << endl; |
180 U.makeRep(2); |
172 U.makeRep(2); |
181 print(U); |
173 // print(U); |
182 |
174 |
183 cout << "size of the class of 4: " << U.size(4) << endl; |
175 cout << "Size of the class of 4: " << U.size(4) << endl; |
184 check(U.size(4) == 3); |
176 check(U.size(4) == 3,"Test failed."); |
185 cout << "size of the class of 3: " << U.size(3) << endl; |
177 cout << "Size of the class of 3: " << U.size(3) << endl; |
186 check(U.size(3) == 3); |
178 check(U.size(3) == 3,"Test failed."); |
187 cout << "size of the class of 2: " << U.size(2) << endl; |
179 cout << "Size of the class of 2: " << U.size(2) << endl; |
188 check(U.size(2) == 3); |
180 check(U.size(2) == 3,"Test failed."); |
189 |
181 |
190 |
182 |
191 cout << "eraseClass 4 ..." << endl; |
183 cout << "eraseClass 4 ..." << endl; |
192 U.eraseClass(4); |
184 U.eraseClass(4); |
193 print(U); |
185 // print(U); |
194 |
186 |
195 cout << "eraseClass 7 ..." << endl; |
187 cout << "eraseClass 7 ..." << endl; |
196 U.eraseClass(7); |
188 U.eraseClass(7); |
197 print(U); |
189 // print(U); |
198 |
190 |
199 cout << "done" << endl; |
191 cout << "done." << endl; |
200 |
|
201 cout << (passed ? "All tests passed." : "Some of the tests failed!!!") |
|
202 << endl; |
|
203 |
|
204 return passed ? 0 : 1; |
|
205 } |
192 } |