diff -r 46a82ce84cc6 -r 1bb471764ab8 test/unionfind_test.cc --- a/test/unionfind_test.cc Tue Oct 30 10:51:07 2007 +0000 +++ b/test/unionfind_test.cc Tue Oct 30 20:21:10 2007 +0000 @@ -49,7 +49,7 @@ U.insert(1); U.insert(2); - check(U.join(1,2),"Test failed."); + check(U.join(1,2) != -1,"Test failed."); U.insert(3); U.insert(4); @@ -57,66 +57,58 @@ U.insert(6); U.insert(7); - check(U.join(1,4),"Test failed."); - check(!U.join(2,4),"Test failed."); - check(U.join(3,5),"Test failed."); - U.insert(8,5); + check(U.join(1,4) != -1,"Test failed."); + check(U.join(2,4) == -1,"Test failed."); + check(U.join(3,5) != -1,"Test failed."); - check(U.size(4) == 3,"Test failed."); - check(U.size(5) == 3,"Test failed."); - check(U.size(6) == 1,"Test failed."); - check(U.size(2) == 3,"Test failed."); + + U.insert(8,U.find(5)); + + + check(U.size(U.find(4)) == 3,"Test failed."); + check(U.size(U.find(5)) == 3,"Test failed."); + check(U.size(U.find(6)) == 1,"Test failed."); + check(U.size(U.find(2)) == 3,"Test failed."); + U.insert(9); - U.insert(10,9); + U.insert(10,U.find(9)); - check(U.join(8,10),"Test failed."); - check(U.move(9,4),"Test failed."); - check(!U.move(9,2),"Test failed."); + check(U.join(8,10) != -1,"Test failed."); - check(U.size(4) == 4,"Test failed."); - check(U.size(9) == 4,"Test failed."); - check(U.move(5,6),"Test failed."); + check(U.size(U.find(4)) == 3,"Test failed."); + check(U.size(U.find(9)) == 5,"Test failed."); - check(U.size(5) == 2,"Test failed."); - check(U.size(8) == 3,"Test failed."); - - check(U.move(7,10),"Test failed."); - check(U.size(7) == 4,"Test failed."); + check(U.size(U.find(8)) == 5,"Test failed."); U.erase(9); U.erase(1); - check(U.size(4) == 2,"Test failed."); - check(U.size(2) == 2,"Test failed."); + check(U.size(U.find(10)) == 4,"Test failed."); + check(U.size(U.find(2)) == 2,"Test failed."); U.erase(6); - U.split(8); + U.split(U.find(8)); - check(U.size(4) == 2,"Test failed."); - check(U.size(3) == 1,"Test failed."); - check(U.size(2) == 2,"Test failed."); - check(U.join(3,4),"Test failed."); - check(!U.join(2,4),"Test failed."); + check(U.size(U.find(4)) == 2,"Test failed."); + check(U.size(U.find(3)) == 1,"Test failed."); + check(U.size(U.find(2)) == 2,"Test failed."); - check(U.size(4) == 3,"Test failed."); - check(U.size(3) == 3,"Test failed."); - check(U.size(2) == 3,"Test failed."); - U.makeRep(4); - U.makeRep(3); - U.makeRep(2); + check(U.join(3,4) != -1,"Test failed."); + check(U.join(2,4) == -1,"Test failed."); - check(U.size(4) == 3,"Test failed."); - check(U.size(3) == 3,"Test failed."); - check(U.size(2) == 3,"Test failed."); + check(U.size(U.find(4)) == 3,"Test failed."); + check(U.size(U.find(3)) == 3,"Test failed."); + check(U.size(U.find(2)) == 3,"Test failed."); - U.eraseClass(4); - U.eraseClass(7); + U.eraseClass(U.find(4)); + U.eraseClass(U.find(7)); + return 0; }