Exemple #1
0
        public async Task Accept_ShouldCreateAudit()
        {
            //Arrange
            var provider                = SetUpHelper.GetServiceProvider();
            var scopeFactory            = provider.GetService <IServiceScopeFactory>();
            IFireForgetEventHandler faf = new FireForgetEventHandler(scopeFactory);
            IAuditServiceFireForget auditServiceFireForget = new AuditServiceFireForget(faf, null);

            var repository = provider.GetService <IAuditRepository>();
            int?ukPrn      = 12345670;

            //Act
            auditServiceFireForget.Accept(new ServiceModel.Audit()
            {
                Action   = 1,
                Message  = "test",
                Severity = 0,
                Ukprn    = ukPrn,
                User     = "******"
            });

            // Delaying for 2000 milliseconds to allow fire and forget to complete in time before we assert.
            await Task.Delay(2000);

            // Assert
            var result = repository.GetMany(m => m.Ukprn == ukPrn);

            result.FirstOrDefault().Ukprn.Should().Be(ukPrn);
        }
Exemple #2
0
        public void Accept_ShouldCreateAudit()
        {
            // Arrrange
            var dummyAudit = new ServiceModel.Audit();

            var mockLogger = Mock.Of <ILoggerAdapter <AuditServiceFireForget> >(MockBehavior.Strict);

            Mock.Get(mockLogger)
            .Setup(l => l.LogError(string.Empty))
            .Verifiable();
            var mockFireForgetEventHandler = Mock.Of <IFireForgetEventHandler>(MockBehavior.Strict);

            Mock.Get(mockFireForgetEventHandler)
            .Setup(m => m.Execute(It.IsAny <Func <IAuditService, Task> >()))
            .Verifiable();

            // Act
            var auditService = new AuditServiceFireForget(mockFireForgetEventHandler, mockLogger);

            auditService.Accept(dummyAudit);

            //Assert
            Mock.Get(mockFireForgetEventHandler)
            .Verify(m => m.Execute(It.IsAny <Func <IAuditService, Task> >()), Times.Once);

            Mock.Get(mockLogger).Verify(m => m.LogError(string.Empty), Times.Never);
        }