72 lines
2.4 KiB
C#
72 lines
2.4 KiB
C#
using GrpcCalculator.Server;
|
|
|
|
namespace GrpcCalculator.ServerTests;
|
|
|
|
public class CalculatorTests
|
|
{
|
|
[Fact]
|
|
public void SimpleAddition()
|
|
{
|
|
var calculator = new Calculator();
|
|
calculator = calculator.DigitPressed("5");
|
|
Assert.Equal("5", calculator.Display);
|
|
calculator = calculator.OperatorPressed(CalculatorOperator.Addition);
|
|
Assert.Equal("5", calculator.Display);
|
|
calculator = calculator.DigitPressed("4");
|
|
Assert.Equal("4", calculator.Display);
|
|
calculator = calculator.EqualsPressed();
|
|
Assert.Equal("9", calculator.Display);
|
|
}
|
|
|
|
[Fact]
|
|
public void JustEquals()
|
|
{
|
|
var calculator = new Calculator();
|
|
Assert.Equal("0", calculator.Display);
|
|
calculator = calculator.EqualsPressed();
|
|
Assert.Equal("0", calculator.Display);
|
|
}
|
|
|
|
[Fact]
|
|
public void MultipleEquals()
|
|
{
|
|
var calculator = new Calculator();
|
|
calculator = calculator.DigitPressed("2");
|
|
Assert.Equal("2", calculator.Display);
|
|
calculator = calculator.OperatorPressed(CalculatorOperator.Multiplication);
|
|
Assert.Equal("2", calculator.Display);
|
|
calculator = calculator.EqualsPressed();
|
|
Assert.Equal("4", calculator.Display);
|
|
calculator = calculator.EqualsPressed();
|
|
Assert.Equal("8", calculator.Display);
|
|
}
|
|
|
|
[Fact]
|
|
public void OperatorAfterEquals()
|
|
{
|
|
var calculator = new Calculator()
|
|
.DigitPressed("2")
|
|
.OperatorPressed(CalculatorOperator.Multiplication)
|
|
.DigitPressed("3")
|
|
.EqualsPressed();
|
|
Assert.Equal("6", calculator.Display);
|
|
calculator = calculator.OperatorPressed(CalculatorOperator.Addition);
|
|
Assert.Equal("6", calculator.Display);
|
|
calculator = calculator.EqualsPressed();
|
|
Assert.Equal("12", calculator.Display);
|
|
}
|
|
|
|
[Fact]
|
|
public void EqualsAfterOperator()
|
|
{
|
|
var calculator = new Calculator()
|
|
.DigitPressed("3");
|
|
Assert.Equal("3", calculator.Display);
|
|
calculator = calculator.OperatorPressed(CalculatorOperator.Addition);
|
|
Assert.Equal("3", calculator.Display);
|
|
calculator = calculator.OperatorPressed(CalculatorOperator.Multiplication);
|
|
Assert.Equal("3", calculator.Display);
|
|
calculator = calculator.EqualsPressed();
|
|
Assert.Equal("9", calculator.Display);
|
|
}
|
|
} |