public void Update_existing_weight_with_all_values_should_succeed() { // Arrange Guid originalId = Guid.NewGuid(); WeightMeasurement expected = GenerateRandomWeightMeasurement(originalId); Weight bizLogic = new Weight(); var original = bizLogic.Create(expected); Assert.AreEqual(Common.MetrikOutcome.Created, original.Outcome, original.Message); // Act var artifactToUpdate = original.Artifact.Clone(); if (artifactToUpdate.Weight < 150) { artifactToUpdate.Weight += 10.0; } else { artifactToUpdate.Weight -= 10.0; } var actual = bizLogic.Update(original.Artifact, new List <string>() { "weight" }); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.Ok); actual.Artifact.EntryDate.ToUnixTimeSeconds().Should().Be(expected.EntryDate.ToUnixTimeSeconds()); actual.Artifact.Id.Should().NotBeEmpty(); actual.Artifact.Unit.Should().Be(expected.Unit); actual.Artifact.Weight.Should().Be(expected.Weight); }
public void Update_existing_weight_with_some_values_should_succeed() { // Arrange Guid originalId = Guid.NewGuid(); WeightMeasurement original = GenerateRandomWeightMeasurement(originalId); Weight bizLogic = new Weight(); var created = bizLogic.Create(original); // Act var expected = created.Artifact.Clone(); expected.Weight += 5; var actual = bizLogic.Update(expected, new List <string> { "weight" }); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.Ok); actual.Artifact.EntryDate.ToUnixTimeSeconds().Should().Be(expected.EntryDate.ToUnixTimeSeconds()); actual.Artifact.Id.Should().NotBeEmpty(); actual.Artifact.Unit.Should().Be(expected.Unit); actual.Artifact.Weight.Should().Be(expected.Weight); actual.Artifact.Weight.Should().NotBe(created.Artifact.Weight); }
public void Create_weight_should_return_a_bad_request_when_null_is_passed_in() { // Arrange // Act var bizLogic = new Weight(); var actual = bizLogic.Create(null); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.BadRequest); }
// TODO: Clarify what "fail" means public void Create_weight_should_fail_when_a_duplicate_ID_is_passed_in() { // Arrange var originalId = Guid.NewGuid(); WeightMeasurement original = GenerateRandomWeightMeasurement(); original.Id = originalId; WeightMeasurement expected = GenerateRandomWeightMeasurement(); expected.Id = originalId; // Act var bizLogic = new Weight(); _ = bizLogic.Create(original); var actual = bizLogic.Create(expected); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.Conflict); }
public void Delete_weight_measurement_by_valid_ID() { // Arrange var bizLogic = new Weight(); var expectedId = Guid.NewGuid(); _ = bizLogic.Create(GenerateRandomWeightMeasurement(expectedId)); // Act var actual = bizLogic.Delete(expectedId); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.NoContent, actual.Message); }
public void Get_weight_measurement_by_valid_ID() { // Arrange var bizLogic = new Weight(); var expected = bizLogic.Create(GenerateRandomWeightMeasurement()); // Act var actual = bizLogic.Read(expected.Artifact.Id); // Assert expected.Artifact.Id.Should().NotBeEmpty(); actual.Artifact.Id.Should().Be(expected.Artifact.Id); actual.Outcome.Should().Be(Common.MetrikOutcome.Ok); }
public void Delete_weight_measurement_twice_should_fail_the_second_time() { // Arrange var bizLogic = new Weight(); var expectedId = Guid.NewGuid(); _ = bizLogic.Create(GenerateRandomWeightMeasurement(expectedId)); // Act var initialResult = bizLogic.Delete(expectedId); var secondResult = bizLogic.Delete(expectedId); // Assert Assert.AreEqual(initialResult.Outcome, Common.MetrikOutcome.NoContent, "Expected the initial delete to succeed"); Assert.AreEqual(secondResult.Outcome, Common.MetrikOutcome.NotFound, "Expected the second delete to fail"); }
public void Create_weight_should_populate_an_empty_ID() { // Arrange WeightMeasurement expected = GenerateRandomWeightMeasurement(); expected.Id = Guid.Empty; // Act Weight bizLogic = new Weight(); var actual = bizLogic.Create(expected); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.Created, actual.Message); actual.Artifact.EntryDate.Should().Be(expected.EntryDate); actual.Artifact.Id.Should().NotBeEmpty(); actual.Artifact.Unit.Should().Be(expected.Unit); actual.Artifact.Weight.Should().Be(expected.Weight); }
public void Get_weight_list_should_return_at_least_5_items() { // Arrange var bizLogic = new Weight(); int expectedCount = 5; for (int i = 0; i < expectedCount; i++) { _ = bizLogic.Create(GenerateRandomWeightMeasurement()); } // Act var actual = bizLogic.Read(); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.Ok, actual.Message); actual.Artifact.Count.Should().BeGreaterOrEqualTo(expectedCount); }
public void Create_weight_should_retain_the_original_ID() { // Arrange var expectedId = Guid.NewGuid(); WeightMeasurement expected = GenerateRandomWeightMeasurement(); expected.Id = expectedId; // Act var bizLogic = new Weight(); var actual = bizLogic.Create(expected); // Assert actual.Outcome.Should().Be(Common.MetrikOutcome.Created, actual.Message); actual.Artifact.EntryDate.Should().Be(expected.EntryDate); actual.Artifact.Id.Should().Be(expectedId); actual.Artifact.Unit.Should().Be(expected.Unit); actual.Artifact.Weight.Should().Be(expected.Weight); }