public void LargeExpression() { Random rnd = new Random(); var inputString = new StringBuilder(100000); int value = rnd.Next(1, 1000); var expectedResult = value; inputString.Append(value.ToString()); for (int i = 0; i < 50000; i++) { value = rnd.Next(1, 1000); if (value % 2 == 0) { inputString.Append("+"); expectedResult += value; } else { inputString.Append("-"); expectedResult -= value; } inputString.Append(value.ToString()); } var calculator = new StringCalculator(); Assert.AreEqual(expectedResult, calculator.CalculateString(inputString.ToString())); }
public void InputStringWithNewLine() { var inputString = "100+1\n"; var calculator = new StringCalculator(); Assert.AreEqual(101, calculator.CalculateString(inputString)); }
public void OneNumber() { var inputString = "100"; var calculator = new StringCalculator(); Assert.AreEqual(100, calculator.CalculateString(inputString)); }
public void OneHundredThousandSymbols() { var inputString = new StringBuilder(100000); inputString.Append("1"); for (int i = 1; i < 50000; i++) { inputString.Append("+"); inputString.Append("1"); } var calculator = new StringCalculator(); Assert.AreEqual(50000, calculator.CalculateString(inputString.ToString())); }