コード例 #1
0
        public void ShouldRespectMessagesSequence()
        {
            var wls = new WorkerLogSpy(typeof(LoggedClassStub));
            var lcs = new LoggedClassStub();

            wls.Enlist(() => lcs.LogDebug("message 1"));
            wls.Enlist(() => lcs.LogDebug("message 2"));
            wls.Enlist(() => lcs.LogDebug("message 3"));

            Assert.That(wls.Messages(), Is.EqualTo(new[] { "message 1", "message 2", "message 3" }));
        }
コード例 #2
0
        public void ShouldExecuteWorksAndLog()
        {
            bool work1Done = false, work2Done = false;
            var  wls = new WorkerLogSpy(typeof(LoggedClassStub));
            var  lcs = new LoggedClassStub();

            wls.Enlist(() => work1Done = true);
            wls.Enlist(() => work2Done = true);
            wls.Enlist(() => lcs.LogDebug("The message"));

            Assert.That(wls.GetWholeLog(), Text.Contains("The message"));
            Assert.That(work1Done && work2Done);
        }
コード例 #3
0
        public void ShouldCatchLogAndRestorePreviousState()
        {
            const string expectedMessage = "my message";
            var          stub            = new LoggedClassStub();
            var          logger          = (Logger)(LogManager.GetLogger(typeof(LoggedClassStub)).Logger);

            logger.Level = Level.Info;

            using (var ls = new LogSpy(typeof(LoggedClassStub)))
            {
                Assert.That(logger.Level == Level.Debug);
                stub.LogDebug(expectedMessage);
                Assert.That(ls.GetWholeLog(), Text.Contains(expectedMessage));
                Assert.That(ls.Messages().Count(), Is.EqualTo(1));
                Assert.That(ls.Messages(), Is.EqualTo(new[] { expectedMessage }));
            }
            Assert.That(logger.Level == Level.Info);
        }