public void TestSameOutcomeAnalogInput() { var inputBase = new AnalogInput("foo", "a", "bar", 0.1f); var inputOtherDisplayText = new AnalogInput("X", "a", "bar", 0.1f); var inputOtherOriginalText = new AnalogInput("foo", "a", "X", 0.1f); var inputOtherEffectiveText = new AnalogInput("foo", "X", "bar", 0.1f); var inputOtherStrength = new AnalogInput("foo", "a", "bar", 0.999f); Assert.AreEqual(inputBase, inputBase); Assert.AreNotEqual(inputBase, inputOtherDisplayText); Assert.AreNotEqual(inputBase, inputOtherOriginalText); Assert.AreNotEqual(inputBase, inputOtherEffectiveText); Assert.AreNotEqual(inputBase, inputOtherStrength); Assert.IsTrue(inputBase.HasSameOutcomeAs(inputBase)); Assert.IsTrue(inputBase.HasSameOutcomeAs(inputOtherDisplayText)); Assert.IsTrue(inputBase.HasSameOutcomeAs(inputOtherOriginalText)); Assert.IsFalse(inputBase.HasSameOutcomeAs(inputOtherEffectiveText)); Assert.IsFalse(inputBase.HasSameOutcomeAs(inputOtherStrength)); }