Adding Tests and Refactoring

Functional Tests for RazorPages added
This commit is contained in:
Steve Smith
2018-05-31 12:28:55 -04:00
parent 5fb9e741dd
commit 814d3e249c
22 changed files with 275 additions and 142 deletions

View File

@@ -5,7 +5,7 @@ using Xunit;
namespace UnitTests.ApplicationCore.Entities.BasketTests
{
public class AddItem
public class Total
{
private int _testCatalogItemId = 123;
private decimal _testUnitPrice = 1.23m;

View File

@@ -0,0 +1,41 @@
using ApplicationCore.Entities.OrderAggregate;
using System.Collections.Generic;
using UnitTests.Builders;
using Xunit;
namespace UnitTests.ApplicationCore.Entities.OrderTests
{
public class Total
{
private decimal _testUnitPrice = 42m;
[Fact]
public void IsZeroForNewOrder()
{
var order = new OrderBuilder().WithNoItems();
Assert.Equal(0, order.Total());
}
[Fact]
public void IsCorrectGiven1Item()
{
var builder = new OrderBuilder();
var items = new List<OrderItem>
{
new OrderItem(builder.TestCatalogItemOrdered, _testUnitPrice, 1)
};
var order = new OrderBuilder().WithItems(items);
Assert.Equal(_testUnitPrice, order.Total());
}
[Fact]
public void IsCorrectGiven3Items()
{
var builder = new OrderBuilder();
var order = builder.WithDefaultValues();
Assert.Equal(builder.TestUnitPrice * builder.TestUnits, order.Total());
}
}
}

View File

@@ -1,7 +1,5 @@
using ApplicationCore.Entities.OrderAggregate;
using System;
using System.Collections.Generic;
using System.Text;
namespace UnitTests.Builders
{
@@ -34,5 +32,17 @@ namespace UnitTests.Builders
_order = new Order(TestBuyerId, new AddressBuilder().WithDefaultValues(), itemList);
return _order;
}
public Order WithNoItems()
{
_order = new Order(TestBuyerId, new AddressBuilder().WithDefaultValues(), new List<OrderItem>());
return _order;
}
public Order WithItems(List<OrderItem> items)
{
_order = new Order(TestBuyerId, new AddressBuilder().WithDefaultValues(), items);
return _order;
}
}
}