public void CheckInvalidInputs() { Assert.Throws <InvalidOperationException>(() => ChallengeSolution.SolveBounded(null, new uint[1], new uint[1], 1)); Assert.Throws <InvalidOperationException>(() => ChallengeSolution.SolveBounded(new uint[1], null, new uint[1], 1)); Assert.Throws <InvalidOperationException>(() => ChallengeSolution.SolveBounded(new uint[1], new uint[2], new uint[1], 1)); Assert.Throws <InvalidOperationException>(() => ChallengeSolution.SolveBounded(new uint[1], new uint[1], new uint[2], 1)); }
public void TestBounded(uint[] values, uint[] weights, uint[] stock, uint capacity, uint[] expectedSet, uint expectedSum) { (uint[] outputSet, uint outputSum) = ChallengeSolution.SolveBounded(values, weights, stock, capacity); this.AssertResult(outputSet, outputSum, expectedSet, expectedSum); }
public void TestZeroOne(uint[] values, uint[] weights, uint capacity, uint[] expectedSet, uint expectedSum) { (uint[] outputSet, uint outputSum) = ChallengeSolution.SolveZeroOne(values, weights, capacity); this.AssertResult(outputSet, outputSum, expectedSet, expectedSum); }