Esempio n. 1
0
        internal void Evaluate_WithVariousValues_ReturnsExpectedResult(double membership, double expected)
        {
            // Arrange
            var isOperator = LogicOperators.Is();

            // Act
            var result = isOperator.Evaluate(UnitInterval.Create(membership));

            // Assert
            Assert.Equal(UnitInterval.Create(expected), result);
        }
Esempio n. 2
0
        internal void ToString_ReturnsExpectedString()
        {
            // Arrange
            var waterTemp  = StubLinguisticVariableFactory.WaterTemp();
            var conclusion = new Conclusion(waterTemp, LogicOperators.Is(), FuzzyState.Create(WaterTemp.Cold));

            // Act
            var result = conclusion.ToString();

            // Assert
            Assert.Equal("THEN WaterTemp IS cold", result);
        }
Esempio n. 3
0
        internal void ToString_ReturnsExpectedString()
        {
            // Arrange
            var waterTemp = StubLinguisticVariableFactory.WaterTemp();
            var premise   = new Premise(
                LogicOperators.If(),
                waterTemp,
                LogicOperators.Is(),
                FuzzyState.Create(WaterTemp.Cold));

            // Act
            var result = premise.ToString();

            // Assert
            Assert.Equal("IF WaterTemp IS cold", result);
        }
 /// <summary>
 /// Returns a proposition based on whether the variable IS in the given state.
 /// </summary>
 /// <param name="state">
 /// The state.
 /// </param>
 /// <returns>
 /// The <see cref="Premise"/>.
 /// </returns>
 public Proposition Is(FuzzyState state)
 {
     return(new Proposition(this, LogicOperators.Is(), state));
 }
Esempio n. 5
0
        internal void ValidateProposition_WhenStateNotAMemberOfLinguisticVariable_Throws()
        {
            // Arrange
            var waterTemp = StubLinguisticVariableFactory.WaterTemp();

            // Invalid fuzzy state.
            var fuzzyState = FuzzyState.Create(PumpSpeed.Off);

            // Act
            // Assert
            Assert.Throws <InvalidOperationException>(() => new Proposition(waterTemp, LogicOperators.Is(), fuzzyState));
        }