public void VerifyThatUpdatingExportIsOnlyEnabledWhenMesagesArePresent()
        {
            var vm = new LogInfoPanelViewModel(this.dialogNavigationService.Object);

            Assert.IsFalse(vm.ExportCommand.CanExecute(null));
            logger.Log(LogLevel.Error, "an error message");
            Assert.AreEqual(1, vm.LogEventInfo.Count);
            Assert.IsTrue(vm.ExportCommand.CanExecute(null));
        }
        public void TestLogWarnWorks()
        {
            var vm = new LogInfoPanelViewModel(this.dialogNavigationService.Object);

            vm.IsWarnLogelSelected = true;
            logger.Log(LogLevel.Warn, "test");
            var data = vm.Data;

            Assert.IsFalse(data.IsEmpty);
        }
        public void verifyThatExportCanExecute()
        {
            var vm = new LogInfoPanelViewModel(this.dialogNavigationService.Object);

            Assert.IsFalse(vm.ExportCommand.CanExecute(null));

            var msg = "err";

            logger.Log(LogLevel.Error, msg);

            Assert.IsTrue(vm.ExportCommand.CanExecute(null));
        }
        public void Verif_that_when_ShowDetailsDialogCommand_is_executed_dialognavigationservices_is_navigated()
        {
            var vm = new LogInfoPanelViewModel(this.dialogNavigationService.Object);

            vm.IsWarnLogelSelected = true;
            logger.Log(LogLevel.Warn, "test");

            vm.SelectedItem = vm.LogEventInfo.First();

            vm.ShowDetailsDialogCommand.Execute(null);

            this.dialogNavigationService.Verify(x => x.NavigateModal(It.IsAny <LogItemDialogViewModel>()));
        }
        public void VerifyThatUpdatingSelectedLogLevelWorks()
        {
            var vm  = new LogInfoPanelViewModel(this.dialogNavigationService.Object);
            var msg = "trace";

            vm.SelectedLogLevel = LogLevel.Fatal;
            logger.Log(LogLevel.Trace, msg);

            Assert.AreEqual(0, vm.LogEventInfo.Count);

            vm.SelectedLogLevel = LogLevel.Trace;
            logger.Log(LogLevel.Trace, msg);
            Assert.AreEqual(1, vm.LogEventInfo.Count);
        }
        public void VerifyThatClearWorks()
        {
            var vm = new LogInfoPanelViewModel(this.dialogNavigationService.Object);

            Assert.IsFalse(vm.ClearCommand.CanExecute(null));

            var msg = "err";

            logger.Log(LogLevel.Error, msg);

            Assert.IsTrue(vm.ClearCommand.CanExecute(null));

            vm.ClearCommand.Execute(null);
            Assert.AreEqual(0, vm.LogEventInfo.Count);
        }
        public void VerifyThatErrLogEventAreCaught()
        {
            var vm  = new LogInfoPanelViewModel(this.dialogNavigationService.Object);
            var msg = "err";

            logger.Log(LogLevel.Error, msg);
            Assert.AreEqual(1, vm.LogEventInfo.Count);

            var row = vm.LogEventInfo.Single();

            Assert.AreEqual(msg, row.Message);
            Assert.AreEqual(LogLevel.Error, row.LogLevel);
            Assert.IsNotNull(row.TimeStamp);
            Assert.IsNotNull(row.Logger);
        }
        public void VerifyThatInfoLogEventAreCaught()
        {
            var vm  = new LogInfoPanelViewModel(this.dialogNavigationService.Object);
            var msg = "info";

            logger.Log(LogLevel.Info, msg);
            Assert.AreEqual(0, vm.LogEventInfo.Count);

            logger.Log(LogLevel.Warn, msg);
            Assert.AreEqual(1, vm.LogEventInfo.Count);

            var row = vm.LogEventInfo.Single();

            Assert.AreEqual(msg, row.Message);
            Assert.AreEqual(LogLevel.Warn, row.LogLevel);
            Assert.IsNotNull(row.TimeStamp);
            Assert.IsNotNull(row.Logger);
            Assert.That(vm.Caption, Is.Not.Null.Or.Empty);
            Assert.That(vm.ToolTip, Is.Not.Null.Or.Empty);
        }