コード例 #1
0
        public async Task Calculate_ShouldThrowDivideByZeroException_WhenDividingByZero()
        {
            ICalculatorAggregate calculator = new CalculatorAggregate();

            await Assert.ThrowsExceptionAsync <DivideByZeroException>(() => calculator.Calculate(
                                                                          new EquationModel
            {
                Param1    = 5,
                Param2    = 0,
                Operation = "/"
            }));
        }
コード例 #2
0
        public async Task Calculate_ShouldReturnCorrectResult_WhenUsingBasicOperations(double param1, double param2, string op, double expectedResult)
        {
            ICalculatorAggregate calculator = new CalculatorAggregate();
            var result = await calculator.Calculate(
                new EquationModel
            {
                Param1    = param1,
                Param2    = param2,
                Operation = op
            });

            Assert.AreEqual <double>(expectedResult, result);
        }
コード例 #3
0
 public ExampleScenario()
 {
     _aggregate = new CalculatorAggregate();
     this.Define(def => def.Given(new Number(3), new Number(5)).When(new Operation(OperationType.Add)).Then(new ComputedResult(8)));
 }
コード例 #4
0
 public ExampleScenarioRunner()
 {
     _aggregate = new CalculatorAggregate();
 }