public void UpdatePlateRecord_WhenRecordWithIdExist_ShouldUpdateRecord() { //Arrange var missingPlateObj = new MissingLicensePlate() { Id = 1, PlateNumber = "FOF150" }; var fakeIQueryable = new List <MissingLicensePlate>() { missingPlateObj }.AsQueryable(); var fakeDbSet = StorageTestsUtil.SetupFakeDbSet(fakeIQueryable); var fakeHucaresContext = A.Fake <HucaresContext>(); A.CallTo(() => fakeHucaresContext.MissingLicensePlates) .Returns(fakeDbSet); var fakeDbContextFactory = A.Fake <IDbContextFactory>(); A.CallTo(() => fakeDbContextFactory.BuildHucaresContext()) .Returns(fakeHucaresContext); var missingPlateHelper = new MissingPlateHelper(fakeDbContextFactory); //Act var expectedPlateNumber = "TRE145"; var result = missingPlateHelper.UpdatePlateRecord(missingPlateObj.Id, expectedPlateNumber, DateTime.Now); //Assert A.CallTo(() => fakeDbContextFactory.BuildHucaresContext()) .MustHaveHappenedOnceExactly(); A.CallTo(() => fakeDbSet.Add(A <MissingLicensePlate> .Ignored)) .MustNotHaveHappened(); A.CallTo(() => fakeHucaresContext.SaveChanges()) .MustHaveHappenedOnceExactly(); result.ShouldBe(missingPlateObj); missingPlateObj.PlateNumber.ShouldBe(expectedPlateNumber); }
public void UpdatePlateRecord_WhenRecordWithIdDoesNotExist_ShouldThrow() { //Arrange var fakeIQueryable = new List <MissingLicensePlate>().AsQueryable(); var fakeDbSet = StorageTestsUtil.SetupFakeDbSet(fakeIQueryable); var fakeHucaresContext = A.Fake <HucaresContext>(); A.CallTo(() => fakeHucaresContext.MissingLicensePlates) .Returns(fakeDbSet); var fakeDbContextFactory = A.Fake <IDbContextFactory>(); A.CallTo(() => fakeDbContextFactory.BuildHucaresContext()) .Returns(fakeHucaresContext); var missingPlateHelper = new MissingPlateHelper(fakeDbContextFactory); //Act & Assert Assert.Throws <ArgumentException>(() => missingPlateHelper.UpdatePlateRecord(0, "JBA514", DateTime.Today)); }