public void TestNoMods() { var combinations = new TestDifficultyCalculator().CreateDifficultyAdjustmentModCombinations(); Assert.AreEqual(1, combinations.Length); Assert.IsTrue(combinations[0] is ModNoMod); }
public void TestSingleMod() { var combinations = new TestDifficultyCalculator(new ModA()).CreateDifficultyAdjustmentModCombinations(); Assert.AreEqual(2, combinations.Length); Assert.IsTrue(combinations[0] is ModNoMod); Assert.IsTrue(combinations[1] is ModA); }
public void TestIncompatibleThroughBaseType() { var combinations = new TestDifficultyCalculator(new ModAofA(), new ModIncompatibleWithAofA()).CreateDifficultyAdjustmentModCombinations(); Assert.AreEqual(3, combinations.Length); Assert.IsTrue(combinations[0] is ModNoMod); Assert.IsTrue(combinations[1] is ModAofA); Assert.IsTrue(combinations[2] is ModIncompatibleWithAofA); }
public void TestDoubleMod() { var combinations = new TestDifficultyCalculator(new ModA(), new ModB()).CreateDifficultyAdjustmentModCombinations(); Assert.AreEqual(4, combinations.Length); Assert.IsTrue(combinations[0] is ModNoMod); Assert.IsTrue(combinations[1] is ModA); Assert.IsTrue(combinations[2] is MultiMod); Assert.IsTrue(combinations[3] is ModB); Assert.IsTrue(((MultiMod)combinations[2]).Mods[0] is ModA); Assert.IsTrue(((MultiMod)combinations[2]).Mods[1] is ModB); }
public void TestDoubleIncompatibleMods() { var combinations = new TestDifficultyCalculator(new ModA(), new ModB(), new ModIncompatibleWithA(), new ModIncompatibleWithAAndB()).CreateDifficultyAdjustmentModCombinations(); Assert.AreEqual(8, combinations.Length); Assert.IsTrue(combinations[0] is NoModMod); Assert.IsTrue(combinations[1] is ModA); Assert.IsTrue(combinations[2] is MultiMod); Assert.IsTrue(combinations[3] is ModB); Assert.IsTrue(combinations[4] is MultiMod); Assert.IsTrue(combinations[5] is ModIncompatibleWithA); Assert.IsTrue(combinations[6] is MultiMod); Assert.IsTrue(combinations[7] is ModIncompatibleWithAAndB); Assert.IsTrue(((MultiMod)combinations[2]).Mods[0] is ModA); Assert.IsTrue(((MultiMod)combinations[2]).Mods[1] is ModB); Assert.IsTrue(((MultiMod)combinations[4]).Mods[0] is ModB); Assert.IsTrue(((MultiMod)combinations[4]).Mods[1] is ModIncompatibleWithA); Assert.IsTrue(((MultiMod)combinations[6]).Mods[0] is ModIncompatibleWithA); Assert.IsTrue(((MultiMod)combinations[6]).Mods[1] is ModIncompatibleWithAAndB); }