public void ShouldDrainWater_ThrowsExceptionIfCurrentVolumeIsTooLow() { // Arrange var waterTank = new WaterTank(capacity: 1000m); // Act Action action = () => waterTank.Drain(100m); // Assert action.Should().Throw <ArgumentException>(); }
public void ShouldDrainWater_Success() { // Arrange var waterTank = new WaterTank(capacity: 1000m); waterTank.Fill(300m); // Act var drainedVolume = waterTank.Drain(100m); // Assert drainedVolume.Should().Be(100m); waterTank.CurrentVolume.Should().Be(200m); }