示例#1
0
        static void Main(string[] args)
        {
            XmlConfigurator.Configure();
            var appenders = LogManager.GetLogger(logger.GetType()).Logger.Repository.GetAppenders();

            seriLogger = new LoggerConfiguration().WriteTo.ColoredConsole().WriteTo.RollingFile(@"C:\Logs\Log-{Date}.txt").CreateLogger();

            //case 1
            IMessagePersister persister = new AsyncMessagePersister();
            var subscription            = GenerateRandomMessagesAtRandomIntervalsFromOneBus(persister);

            Thread.Sleep(3000);
            persister.Stop();
            Thread.Sleep(3000);
            subscription.Dispose();
            Console.WriteLine("Press enter to proceed to case 2");
            Console.ReadLine();

            //case 2
            IMessagePersister anotherPersister = new AsyncMessagePersister();
            IDisposable       subscription1, subscription2, subscription3;

            GenerateRandomMessagesAtRandomIntervalsFromSeveralBusesHighLoad(anotherPersister, out subscription1, out subscription2, out subscription3);
            Thread.Sleep(1000);
            anotherPersister.StopImmediately();
            subscription1.Dispose();
            subscription2.Dispose();
            subscription3.Dispose();
            Console.WriteLine("Press enter to exit");
            Console.ReadLine();
        }
示例#2
0
        public void U_Formater_FormatMessage_Trigered()
        {
            var persister = new AsyncMessagePersister(new FileMessageWriter(_formaterMock.Object));
            var message   = new MessagePersisterComponent.Message(Guid.NewGuid(), "test", "test");

            persister.Persist(message);
            persister.Stop();
            _formaterMock.Verify(
                t => t.FormatMessage(It.IsAny <MessagePersisterComponent.Message>()));
        }
示例#3
0
        private static void Main(string[] args)
        {
            //case 1
            //IMessagerPersister persister = new AsyncMessagePersister();
            //var moqMessage = new MessageGenerator(persister, 1);
            //Thread.Sleep(2000);
            //persister.Stop();
            //while (!persister.Stoped) Thread.Sleep(100);
            //moqMessage.Dispose();
            //Console.WriteLine("Press enter to proceed to case 2");
            //Console.ReadLine();

            //case 2
            IMessagerPersister anotherPersister = new AsyncMessagePersister();

            TestPersister(anotherPersister);
            Console.WriteLine("Press enter to Exit");
            Console.ReadLine();
        }
        private static IMessageWriter ConfigureStubsAndMocksForAsyncLog(out IMessagePersister persister,
                                                                        string testString,
                                                                        DateTime logTimeStamp,
                                                                        IDateFactory dateFactory,
                                                                        out IMessageWriterFactory mockMessageWriterFactory,
                                                                        int expecteNumberOfTimesCreateToCall)
        {
            mockMessageWriterFactory = MockRepository.GenerateMock <IMessageWriterFactory>();
            IMessageWriter  mockWriter         = MockRepository.GenerateMock <IMessageWriter>();
            IMessageFactory stubMessageFactory = MockRepository.GenerateStub <IMessageFactory>();
            IMessage        stubMessage        = MockRepository.GenerateStub <IMessage>();

            stubMessage.Stub(x => x.FormatMessage()).Return(testString);
            stubMessage.Timestamp = logTimeStamp;
            stubMessageFactory.Stub(x => x.GetMessage(Arg <string> .Is.Anything, Arg <DateTime> .Is.Anything))
            .Return(stubMessage);
            mockMessageWriterFactory.Expect(x => x.Create()).Return(mockWriter).Repeat.Times(expecteNumberOfTimesCreateToCall);
            persister = new AsyncMessagePersister(mockMessageWriterFactory, stubMessageFactory, dateFactory);
            return(mockWriter);
        }