diff -r 5232721b3f14 -r c7d160f73d52 test/min_cost_flow_test.cc --- a/test/min_cost_flow_test.cc Wed Mar 25 15:58:44 2009 +0100 +++ b/test/min_cost_flow_test.cc Wed Mar 25 21:37:50 2009 +0100 @@ -89,7 +89,8 @@ MCF mcf(g); - b = mcf.lowerMap(lower) + b = mcf.reset() + .lowerMap(lower) .upperMap(upper) .capacityMap(upper) .boundMaps(lower, upper) @@ -242,46 +243,44 @@ // A. Test NetworkSimplex with the default pivot rule { - NetworkSimplex mcf1(gr), mcf2(gr), mcf3(gr), mcf4(gr), - mcf5(gr), mcf6(gr), mcf7(gr), mcf8(gr); + NetworkSimplex mcf(gr); - checkMcf(mcf1, mcf1.upperMap(u).costMap(c).supplyMap(s1).run(), + mcf.upperMap(u).costMap(c); + checkMcf(mcf, mcf.supplyMap(s1).run(), gr, l1, u, c, s1, true, 5240, "#A1"); - checkMcf(mcf2, mcf2.upperMap(u).costMap(c).stSupply(v, w, 27).run(), + checkMcf(mcf, mcf.stSupply(v, w, 27).run(), gr, l1, u, c, s2, true, 7620, "#A2"); - checkMcf(mcf3, mcf3.boundMaps(l2, u).costMap(c).supplyMap(s1).run(), + mcf.lowerMap(l2); + checkMcf(mcf, mcf.supplyMap(s1).run(), gr, l2, u, c, s1, true, 5970, "#A3"); - checkMcf(mcf4, mcf4.boundMaps(l2, u).costMap(c).stSupply(v, w, 27).run(), + checkMcf(mcf, mcf.stSupply(v, w, 27).run(), gr, l2, u, c, s2, true, 8010, "#A4"); - checkMcf(mcf5, mcf5.supplyMap(s1).run(), + mcf.reset(); + checkMcf(mcf, mcf.supplyMap(s1).run(), gr, l1, cu, cc, s1, true, 74, "#A5"); - checkMcf(mcf6, mcf6.stSupply(v, w, 27).lowerMap(l2).run(), + checkMcf(mcf, mcf.lowerMap(l2).stSupply(v, w, 27).run(), gr, l2, cu, cc, s2, true, 94, "#A6"); - checkMcf(mcf7, mcf7.run(), + mcf.reset(); + checkMcf(mcf, mcf.run(), gr, l1, cu, cc, s3, true, 0, "#A7"); - checkMcf(mcf8, mcf8.boundMaps(l2, u).run(), + checkMcf(mcf, mcf.boundMaps(l2, u).run(), gr, l2, u, cc, s3, false, 0, "#A8"); } // B. Test NetworkSimplex with each pivot rule { - NetworkSimplex mcf1(gr), mcf2(gr), mcf3(gr), mcf4(gr), mcf5(gr); - NetworkSimplex::PivotRule pr; + NetworkSimplex mcf(gr); + mcf.supplyMap(s1).costMap(c).capacityMap(u).lowerMap(l2); - pr = NetworkSimplex::FIRST_ELIGIBLE; - checkMcf(mcf1, mcf1.boundMaps(l2, u).costMap(c).supplyMap(s1).run(pr), + checkMcf(mcf, mcf.run(NetworkSimplex::FIRST_ELIGIBLE), gr, l2, u, c, s1, true, 5970, "#B1"); - pr = NetworkSimplex::BEST_ELIGIBLE; - checkMcf(mcf2, mcf2.boundMaps(l2, u).costMap(c).supplyMap(s1).run(pr), + checkMcf(mcf, mcf.run(NetworkSimplex::BEST_ELIGIBLE), gr, l2, u, c, s1, true, 5970, "#B2"); - pr = NetworkSimplex::BLOCK_SEARCH; - checkMcf(mcf3, mcf3.boundMaps(l2, u).costMap(c).supplyMap(s1).run(pr), + checkMcf(mcf, mcf.run(NetworkSimplex::BLOCK_SEARCH), gr, l2, u, c, s1, true, 5970, "#B3"); - pr = NetworkSimplex::CANDIDATE_LIST; - checkMcf(mcf4, mcf4.boundMaps(l2, u).costMap(c).supplyMap(s1).run(pr), + checkMcf(mcf, mcf.run(NetworkSimplex::CANDIDATE_LIST), gr, l2, u, c, s1, true, 5970, "#B4"); - pr = NetworkSimplex::ALTERING_LIST; - checkMcf(mcf5, mcf5.boundMaps(l2, u).costMap(c).supplyMap(s1).run(pr), + checkMcf(mcf, mcf.run(NetworkSimplex::ALTERING_LIST), gr, l2, u, c, s1, true, 5970, "#B5"); }