public void PostOperationCallsCreateDataOperation() { var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var logger = new Mock<ILogger>(); var filter = new MessageFilter(env.Object, logger.Object); var logicClass = new MessageRouter(logger.Object, dataOps.Object, filter); var message = TestMessages.GetTestCreateSampleEntityMessage(); logicClass.RouteSampleMessage(message); dataOps.Verify(d => d.CreateSampleEntities(It.IsAny<object>()), Times.Once()); }
public void ShouldProceesReturnsFalseWhenMessageLastModifiedByThisService() { var publisher = new Mock<IMessagePublisher>(); var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var filter = new MessageFilter(env.Object, logger.Object); var message = TestMessages.GetTestDeleteSampleEntityMesssage(); env.Setup(e => e.GetServiceName()).Returns("SampleService"); message.ModifiedBy = "SampleService"; var result = filter.ShouldTryProcessingMessage(message); Assert.IsFalse(result); }
public void ServicePublishesMessages() { var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var bus = BusFactory.CreateMessageBus(); var queue = QueueFactory.CreatQueue(bus); var exchange = ExchangeFactory.CreatExchange(bus); bus.Bind(exchange, queue, "A.*"); var publisher = new MessagePublisher(bus, logger.Object, exchange,queue); var dataOps = new DataOperations(logger.Object, publisher,repo.Object,env.Object); var filter = new MessageFilter(env.Object, logger.Object); var logicClass = new MessageRouter(logger.Object, dataOps, filter); var messageData = TestMessages.GetTestCreateSampleEntityMessage(); env.Setup(e => e.GetServiceName()).Returns("Fake-Service"); env.Setup(e => e.GetServiceVersion()).Returns(2); var newEntities = new List<SampleEntity>(); var entity = new SampleEntity { UpdatedDate = DateTime.UtcNow, CreatedDate = DateTime.UtcNow, Id = Guid.NewGuid().ToString(), NewDecimalValue = 1.02M, NewGuidValue = Guid.NewGuid(), NewIntValue = 3, NewStringValue = "test" }; newEntities.Add(entity); var recivedMessages = new List<dynamic>(); var consumer = bus.Consume<object>(queue, (message, info) => Task.Factory.StartNew(() => recivedMessages.Add(message) ) ); logicClass.RouteSampleMessage(messageData); System.Threading.Thread.Sleep(5000); consumer.Dispose(); Assert.IsTrue(recivedMessages.Count >= 1); }
public void ShouldProceesReturnsFalseWhenNeedsIsForDiffrentNeed() { var publisher = new Mock<IMessagePublisher>(); var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var filter = new MessageFilter(env.Object, logger.Object); var message = TestMessages.GetTestVersion1Message(); env.Setup(e => e.GetServiceName()).Returns("SampleService"); env.Setup(e => e.GetServiceVersion()).Returns(2); message.CompatibleServiceVersions[0].Version = 2; var needs = new List<dynamic>(); dynamic need1 = new ExpandoObject(); need1.AnotherUuid = "test"; needs.Add(need1); message.Needs = needs; var result = filter.ShouldTryProcessingMessage(message); Assert.IsFalse(result); }
public void ShouldProceesReturnsFalseSolutionExists() { var publisher = new Mock<IMessagePublisher>(); var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var filter = new MessageFilter(env.Object, logger.Object); var message = TestMessages.GetTestVersion1Message(); env.Setup(e => e.GetServiceName()).Returns("SampleService"); env.Setup(e => e.GetServiceVersion()).Returns(2); message.CompatibleServiceVersions[0].Version = 2; dynamic solution = new ExpandoObject(); solution.SampleUuid = "test"; var solutions = new List<dynamic>(); solutions.Add(solution); message.Solutions = solutions; var result = filter.ShouldTryProcessingMessage(message); Assert.IsFalse(result); }
public void ShouldProceesReturnsFalseWhenNeedsIsNull() { var publisher = new Mock<IMessagePublisher>(); var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var filter = new MessageFilter(env.Object, logger.Object); var message = TestMessages.GetTestVersion1Message(); env.Setup(e => e.GetServiceName()).Returns("SampleService"); env.Setup(e => e.GetServiceVersion()).Returns(2); message.CompatibleServiceVersions[0].Version = 2; message.Needs = null; var result = filter.ShouldTryProcessingMessage(message); Assert.IsFalse(result); }
public void ShouldProceesReturnsTrueWhenRequiredVersionNotSet() { var publisher = new Mock<IMessagePublisher>(); var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var filter = new MessageFilter(env.Object, logger.Object); var message = TestMessages.GetTestDeleteSampleEntityMesssage(); var result = filter.ShouldTryProcessingMessage(message); Assert.IsTrue(result); }
public void ShouldProceesReturnsTrueWhenRequiredVersionLowerThanServiceVersion() { var publisher = new Mock<IMessagePublisher>(); var logger = new Mock<ILogger>(); var repo = new Mock<IRepository<SampleEntity>>(); var env = new Mock<IEnvironment>(); var dataOps = new Mock<IDataOperations>(); var filter = new MessageFilter(env.Object, logger.Object); var message = TestMessages.GetTestVersion1Message(); env.Setup(e => e.GetServiceName()).Returns("SampleService"); env.Setup(e => e.GetServiceVersion()).Returns(2); var result = filter.ShouldTryProcessingMessage(message); Assert.IsTrue(result); }