Exemplo n.º 1
0
        public void PingSessionSuccess()
        {
            var loggerMock      = new Mock <ILogger <ServiceSessionManager> >();
            var sessionRepoMock = new Mock <IServiceSessionRepository>(MockBehavior.Strict);
            var mapperMock      = new Mock <IMapper>(MockBehavior.Strict);
            var sessionManager  = new ServiceSessionManager(loggerMock.Object, sessionRepoMock.Object, mapperMock.Object);

            var sessionId           = Guid.NewGuid();
            var registeredServiceId = "teste_service";

            var serviceSession = new ServiceSession()
            {
                Id                  = sessionId,
                LastPing            = null,
                RegisteredServiceId = registeredServiceId
            };

            sessionRepoMock
            .Setup(r => r.GetById(sessionId))
            .Returns(serviceSession)
            .Verifiable();

            sessionRepoMock
            .Setup(r => r.Update(It.Is <ServiceSession>(s =>
                                                        s.Id == sessionId &&
                                                        s.RegisteredServiceId == registeredServiceId &&
                                                        s.LastPing != null)))
            .Returns(true)
            .Verifiable();

            sessionManager.PingSession(sessionId);

            sessionRepoMock.Verify();
            mapperMock.Verify();
        }
Exemplo n.º 2
0
        public void PingSessionNonexistant()
        {
            var loggerMock      = new Mock <ILogger <ServiceSessionManager> >();
            var sessionRepoMock = new Mock <IServiceSessionRepository>(MockBehavior.Strict);
            var mapperMock      = new Mock <IMapper>(MockBehavior.Strict);
            var sessionManager  = new ServiceSessionManager(loggerMock.Object, sessionRepoMock.Object, mapperMock.Object);

            var sessionId = Guid.NewGuid();

            sessionRepoMock
            .Setup(r => r.GetById(sessionId))
            .Returns <ServiceSession>(null)
            .Verifiable();

            var thrownException = Assert.Throws <EntityNotFoundException>(() =>
            {
                sessionManager.PingSession(sessionId);
            });

            sessionRepoMock.Verify();
        }
Exemplo n.º 3
0
        public void PingSessionUpdateFailure()
        {
            var loggerMock      = new Mock <ILogger <ServiceSessionManager> >();
            var sessionRepoMock = new Mock <IServiceSessionRepository>(MockBehavior.Strict);
            var mapperMock      = new Mock <IMapper>(MockBehavior.Strict);
            var sessionManager  = new ServiceSessionManager(loggerMock.Object, sessionRepoMock.Object, mapperMock.Object);

            var sessionId           = Guid.NewGuid();
            var registeredServiceId = "teste_service";
            var serviceSession      = new ServiceSession()
            {
                Id                  = sessionId,
                LastPing            = null,
                RegisteredServiceId = registeredServiceId
            };

            sessionRepoMock
            .Setup(r => r.GetById(sessionId))
            .Returns(serviceSession)
            .Verifiable();

            sessionRepoMock
            .Setup(r => r.Update(serviceSession))
            .Returns(false)
            .Verifiable();

            var thrownException = Assert.Throws <RepositoryEntityOperationFailedException>(() =>
            {
                sessionManager.PingSession(sessionId);
            });

            Assert.IsType <ServiceSession>(thrownException.Entity);
            Assert.Equal(serviceSession, thrownException.Entity);

            sessionRepoMock.Verify();
            mapperMock.Verify();
        }