private static void TestTriangle(string firstSide, string secondSide, string thirdSide, string expectedMessage) { var triangleChecker = new TriangleChecker(firstSide, secondSide, thirdSide); string resultOfChecking = triangleChecker.CheckTriangle(); Assert.AreEqual(expectedMessage, resultOfChecking); }
public void ReturnsRightOnRightAngleOppSideA() { var info1 = TriangleChecker.GetTriangleStats(5, 3, 4); var info2 = TriangleChecker.GetTriangleStats(5, 4, 3); Assert.AreEqual(TriangleAngle.Right, info1.Angle); Assert.AreEqual(TriangleAngle.Right, info2.Angle); }
public void ReturnsObtuseOnObtuseAngleOppSideC() { var info1 = TriangleChecker.GetTriangleStats(3, 4, 6); var info2 = TriangleChecker.GetTriangleStats(4, 3, 6); Assert.AreEqual(TriangleAngle.Obtuse, info1.Angle); Assert.AreEqual(TriangleAngle.Obtuse, info2.Angle); }
public TriangleCheckerTests() { _configMock = new Mock <IOptions <AppSettings> >(); _configMock.Setup(x => x.Value) .Returns(new AppSettings { MaximalValue = 99 }); _sut = new TriangleChecker(_configMock.Object); }
public void IncorrectTriangle() { double firstSide = 1.0; double secondSide = 1.0; double thirdSide = 3.0; bool result = TriangleChecker.IsTriangleCorrect(firstSide, secondSide, thirdSide); Assert.False(result); }
public void NotRectangular() { double firstSide = 3.0; double secondSide = 4.0; double thirdSide = 6.0; bool result = TriangleChecker.IsTriangleRectangular(firstSide, secondSide, thirdSide); Assert.False(result); }
public void ReturnsAcuteWhenOneLegIsZero() { var info1 = TriangleChecker.GetTriangleStats(0, 1, 1); var info2 = TriangleChecker.GetTriangleStats(1, 0, 1); var info3 = TriangleChecker.GetTriangleStats(1, 1, 0); Assert.AreEqual(TriangleAngle.Acute, info1.Angle); Assert.AreEqual(TriangleAngle.Acute, info2.Angle); Assert.AreEqual(TriangleAngle.Acute, info3.Angle); }
public void ReturnsObtuseWhenTwoLegsEqualThird() { var info1 = TriangleChecker.GetTriangleStats(2, 1, 1); var info2 = TriangleChecker.GetTriangleStats(1, 2, 1); var info3 = TriangleChecker.GetTriangleStats(1, 1, 2); Assert.AreEqual(TriangleAngle.Obtuse, info1.Angle); Assert.AreEqual(TriangleAngle.Obtuse, info2.Angle); Assert.AreEqual(TriangleAngle.Obtuse, info3.Angle); }
public void ReturnsTrueOnControlCharacterInput() { var isValid = TriangleChecker.IsValidKeystroke("", (char)0x0000); isValid &= TriangleChecker.IsValidKeystroke("", (char)0x001F); isValid &= TriangleChecker.IsValidKeystroke("", (char)0x007F); isValid &= TriangleChecker.IsValidKeystroke("", (char)0x0080); isValid &= TriangleChecker.IsValidKeystroke("", (char)0x009F); Assert.IsTrue(isValid); }
public void ReturnsRightOnLargeDiffBetweenLegs() { // One angle is 90 degrees, one is very close to 90, and one is very close to zero var info1 = TriangleChecker.GetTriangleStats(30000.00002, 30000, 1); var info2 = TriangleChecker.GetTriangleStats(1, 30000.00002, 30000); var info3 = TriangleChecker.GetTriangleStats(30000, 1, 30000.00002); Assert.AreEqual(TriangleAngle.Right, info1.Angle); Assert.AreEqual(TriangleAngle.Right, info2.Angle); Assert.AreEqual(TriangleAngle.Right, info3.Angle); }
public void ReturnsAcuteOnVeryCloseToRightAngle() { // two of the angles are roughly 89.999 degrees, making the third almost zero var info1 = TriangleChecker.GetTriangleStats(1, 30000, 30000); var info2 = TriangleChecker.GetTriangleStats(30000, 1, 30000); var info3 = TriangleChecker.GetTriangleStats(30000, 30000, 1); Assert.AreEqual(TriangleAngle.Acute, info1.Angle); Assert.AreEqual(TriangleAngle.Acute, info2.Angle); Assert.AreEqual(TriangleAngle.Acute, info3.Angle); }
public void ScaleneTriangleReturnsCorrectName() { var info = new TriangleStats() { Angle = TriangleAngle.Acute, Type = TriangleType.Scalene }; var result = TriangleChecker.GetTriangleName(info); Assert.AreEqual("acute scalene", result); }
public void ReturnsObtuseOnLargeObtuseAngle() { // the obtuse angle is roughly 179.5 degrees (triangle is almost flat) var info1 = TriangleChecker.GetTriangleStats(20, 10.0001, 10.0001); var info2 = TriangleChecker.GetTriangleStats(10.0001, 20, 10.0001); var info3 = TriangleChecker.GetTriangleStats(10.0001, 10.0001, 20); Assert.AreEqual(TriangleAngle.Obtuse, info1.Angle); Assert.AreEqual(TriangleAngle.Obtuse, info2.Angle); Assert.AreEqual(TriangleAngle.Obtuse, info3.Angle); }
public void EquilateralTriangleReturnsCorrectName() { var info = new TriangleStats() { Angle = TriangleAngle.Acute, Type = TriangleType.Equilateral }; var result = TriangleChecker.GetTriangleName(info); Assert.AreEqual("equilateral", result); }
public void IsoscelesTriangleReturnsCorrectName() { var info = new TriangleStats() { Angle = TriangleAngle.Acute, Type = TriangleType.Isosceles }; var result = TriangleChecker.GetTriangleName(info); Assert.AreEqual("acute isosceles", result); }
public void ReturnsFalseOnInvalidCharacterInput() { var isValid = TriangleChecker.IsValidKeystroke("", 'a'); isValid |= TriangleChecker.IsValidKeystroke("", 'B'); isValid |= TriangleChecker.IsValidKeystroke("", '!'); isValid |= TriangleChecker.IsValidKeystroke("", '*'); isValid |= TriangleChecker.IsValidKeystroke("", '-'); isValid |= TriangleChecker.IsValidKeystroke("", '+'); isValid |= TriangleChecker.IsValidKeystroke("", ' '); Assert.IsFalse(isValid); }
public void ReturnsTrueOnNumericalInput() { var isValid = TriangleChecker.IsValidKeystroke("", '0'); isValid &= TriangleChecker.IsValidKeystroke("", '1'); isValid &= TriangleChecker.IsValidKeystroke("", '2'); isValid &= TriangleChecker.IsValidKeystroke("", '3'); isValid &= TriangleChecker.IsValidKeystroke("", '4'); isValid &= TriangleChecker.IsValidKeystroke("", '5'); isValid &= TriangleChecker.IsValidKeystroke("", '6'); isValid &= TriangleChecker.IsValidKeystroke("", '7'); isValid &= TriangleChecker.IsValidKeystroke("", '8'); isValid &= TriangleChecker.IsValidKeystroke("", '9'); Assert.IsTrue(isValid); }
public void ThrowsExceptionOnNegativeSideC() { Assert.ThrowsException <ArgumentException>(() => TriangleChecker.GetTriangleStats(1, 1, -1)); }
public void ThrowsExceptionOnAGreaterThanBC() { Assert.ThrowsException <InvalidTriangleException>(() => TriangleChecker.GetTriangleStats(3, 1, 1)); }
public void ThrowsExceptionOnCGreaterThanAB() { Assert.ThrowsException <InvalidTriangleException>(() => TriangleChecker.GetTriangleStats(1, 1, 3)); }
public void ReturnsFalseOnFirstPeriod() { var isValid = TriangleChecker.IsValidKeystroke("0.1", '.'); Assert.IsFalse(isValid); }
public void ReturnsEquilateralOnAllEqualSides() { var info = TriangleChecker.GetTriangleStats(1, 1, 1); Assert.AreEqual(TriangleType.Equilateral, info.Type); }
public void ThrowsExceptionOnNullString() { Assert.ThrowsException <ArgumentException>(() => TriangleChecker.IsValidKeystroke(null, '1')); }
public void ReturnsIsoscelesOnCAEqual() { var info = TriangleChecker.GetTriangleStats(2, 1, 2); Assert.AreEqual(TriangleType.Isosceles, info.Type); }
public void ReturnsAcuteOnAllAnglesLessThan90() { var info = TriangleChecker.GetTriangleStats(3, 3, 2); Assert.AreEqual(TriangleAngle.Acute, info.Angle); }
public void ReturnsScaleneOnNoEqualSides() { var info = TriangleChecker.GetTriangleStats(2, 3, 4); Assert.AreEqual(TriangleType.Scalene, info.Type); }