コード例 #1
0
        public void Call_BrandviserData_SaveChanges_Once()
        {
            // Arrange
            var domainFactory           = new Mock <IDomainFactory>();
            var brandviserData          = new Mock <IBrandviserData>();
            var dateTimeProvider        = new Mock <IDateTimeProvider>();
            var whois                   = new Mock <IWhois>();
            var txtRecordsChecker       = new Mock <ITxtRecordsChecker>();
            var mockedDomainsRepository = new Mock <IEfRepository <Domain> >();
            var name   = "name";
            var domain = new Domain()
            {
                Name = name
            };
            var collection = new List <Domain>();

            collection.Add(domain);

            mockedDomainsRepository.Setup(r => r.All).Returns(collection.AsQueryable <Domain>());
            brandviserData.Setup(b => b.Domains).Returns(mockedDomainsRepository.Object);


            var domainService = new DomainService(brandviserData.Object,
                                                  domainFactory.Object, dateTimeProvider.Object, whois.Object, txtRecordsChecker.Object);

            // Act
            domainService.ApproveDomainLogo(name);

            // Assert
            brandviserData.Verify(b => b.SaveChanges(), Times.Once());
        }
コード例 #2
0
        public void Repository_Update_IsCalledWith_CorrectObject()
        {
            // Arrange
            var domainFactory           = new Mock <IDomainFactory>();
            var brandviserData          = new Mock <IBrandviserData>();
            var dateTimeProvider        = new Mock <IDateTimeProvider>();
            var whois                   = new Mock <IWhois>();
            var txtRecordsChecker       = new Mock <ITxtRecordsChecker>();
            var mockedDomainsRepository = new Mock <IEfRepository <Domain> >();
            var name   = "name";
            var domain = new Domain()
            {
                Name = name
            };
            var collection = new List <Domain>();

            collection.Add(domain);
            var dateTime = new DateTime(17, 1, 1);

            dateTimeProvider.Setup(d => d.GetCurrentTime()).Returns(dateTime);
            mockedDomainsRepository.Setup(r => r.All).Returns(collection.AsQueryable <Domain>());
            brandviserData.Setup(b => b.Domains).Returns(mockedDomainsRepository.Object);


            var domainService = new DomainService(brandviserData.Object,
                                                  domainFactory.Object, dateTimeProvider.Object, whois.Object, txtRecordsChecker.Object);

            var expectedStatus = 4;

            // Act
            domainService.ApproveDomainLogo(name);

            // Assert
            mockedDomainsRepository.Verify(d => d.Update(domain), Times.Once());
            Assert.AreEqual(expectedStatus, domain.StatusId);
            Assert.AreEqual(dateTime, domain.UpdatedAt);
        }