Esempio n. 1
0
        public void MarkFoundPlate_WhenPlateIdDoesNotExist_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);

            var expectedId = 5;
            var expectedStartSearchDateTime = new DateTime(2018, 08, 17);
            var expectedSearch = LicensePlateFoundStatus.Found;

            //Act & Assert
            Assert.Throws <ArgumentException>(() => missingPlateHelper.MarkFoundPlate(expectedId, expectedStartSearchDateTime, expectedSearch));

            A.CallTo(() => fakeHucaresContext.SaveChanges())
            .MustNotHaveHappened();
        }
Esempio n. 2
0
        public void MarkFoundPlate_WhenPlateIdExist_ShouldSucceed()
        {
            var missingPlateObj = new MissingLicensePlate()
            {
                Id     = 1, SearchStartDateTime = new DateTime(2018, 05, 08),
                Status = LicensePlateFoundStatus.NotFound
            };
            //Arrange
            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 expectedSearch = LicensePlateFoundStatus.Found;

            var missingPlateHelper = new MissingPlateHelper(fakeDbContextFactory);
            var result             = missingPlateHelper.MarkFoundPlate(missingPlateObj.Id, DateTime.Now, expectedSearch);

            //Act & Assert
            A.CallTo(() => fakeDbContextFactory.BuildHucaresContext())
            .MustHaveHappenedOnceExactly();

            A.CallTo(() => fakeDbSet.Add(A <MissingLicensePlate> .Ignored))
            .MustNotHaveHappened();

            A.CallTo(() => fakeHucaresContext.SaveChanges())
            .MustHaveHappenedOnceExactly();

            result.ShouldBe(missingPlateObj);
            missingPlateObj.Status.ShouldBe(expectedSearch);
        }