public void AddContainer_Two60000kgContainers_80000kgContainer_NoThrow() { // Arrange var container1Mock = new Mock <IFreightContainer>(); container1Mock.Setup(p => p.Weight).Returns(60_000); container1Mock.Setup(p => p.Type).Returns(FreightType.Normal); var container2Mock = new Mock <IFreightContainer>(); container2Mock.Setup(p => p.Weight).Returns(80_000); container2Mock.Setup(p => p.Type).Returns(FreightType.Normal); var column = new FreightContainerColumn(); column.AddContainer(container1Mock.Object); column.AddContainer(container1Mock.Object); // Act column.AddContainer(container2Mock.Object); // Assert Assert.AreEqual(container2Mock.Object, column.Containers[0]); Assert.AreEqual(container1Mock.Object, column.Containers[1]); Assert.AreEqual(container1Mock.Object, column.Containers[2]); }
public void AddContainer_Empty_15000kgContainer_NoThrow() { var freightContainerMock = new Mock <IFreightContainer>(); freightContainerMock.Setup(p => p.Weight).Returns(15_000); freightContainerMock.Setup(p => p.Type).Returns(FreightType.Normal); var column = new FreightContainerColumn(); column.AddContainer(freightContainerMock.Object); Assert.AreEqual(column.Containers.Length, 1); Assert.AreEqual(column.Containers[0], freightContainerMock.Object); }
public void TotalWeight_TwoEmptyContainers_8000kg() { var freightContainerMock = new Mock <IFreightContainer>(); freightContainerMock.Setup(p => p.Weight).Returns(4_000); freightContainerMock.Setup(p => p.Type).Returns(FreightType.Normal); var column = new FreightContainerColumn(); column.AddContainer(freightContainerMock.Object); column.AddContainer(freightContainerMock.Object); Assert.AreEqual(column.TotalWeight, 8_000u); }
public void AddContainer_OneValuableContainer_ValuableContainer_ThrowInvalidOperationException() { var maxWeightFreightContainerMock = new Mock <IFreightContainer>(); maxWeightFreightContainerMock.Setup(p => p.Weight).Returns(10_000); maxWeightFreightContainerMock.Setup(p => p.Type).Returns(FreightType.Valuable); var oneKgFreightContainerMock = new Mock <IFreightContainer>(); oneKgFreightContainerMock.Setup(p => p.Weight).Returns(10_000); oneKgFreightContainerMock.Setup(p => p.Type).Returns(FreightType.Valuable); var column = new FreightContainerColumn(); column.AddContainer(maxWeightFreightContainerMock.Object); column.AddContainer(oneKgFreightContainerMock.Object); }
public void AddContainer_Two7000kgContainers_8000kgContainer_ThrowInvalidOperationException() { // Arrange var container1Mock = new Mock <IFreightContainer>(); container1Mock.Setup(p => p.Weight).Returns(70_000); container1Mock.Setup(p => p.Type).Returns(FreightType.Normal); var container2Mock = new Mock <IFreightContainer>(); container2Mock.Setup(p => p.Weight).Returns(80_000); container2Mock.Setup(p => p.Type).Returns(FreightType.Normal); var column = new FreightContainerColumn(); column.AddContainer(container1Mock.Object); column.AddContainer(container1Mock.Object); // Act Assert.ThrowsException <InvalidOperationException>(() => { column.AddContainer(container2Mock.Object); }); }
public void TotalWeight_Empty_0kg() { var column = new FreightContainerColumn(); Assert.AreEqual(column.TotalWeight, 0u); }