public void ShouldCreateConsoleLogAction()
        {
            ConsoleLogAction alertAction = (ConsoleLogAction)AlertActionFactory.Create("log to console", "Ajakka.Alerting.ConsoleLogAction", "{\"TimestampFormat\":\"MM\"}");

            alertAction.Initialize();
            Assert.Equal("MM", alertAction.TimestampFormat);
            Assert.Equal("log to console", alertAction.Name);
        }
예제 #2
0
        public void ShouldLinkActionToBlacklistRule()
        {
            var store  = ActionStoreFactory.GetActionStore();
            var ruleId = Guid.NewGuid();
            ConsoleLogAction expected1 = (ConsoleLogAction)AlertActionFactory.Create("log to console", "Ajakka.Alerting.ConsoleLogAction", "{TimestampFormat:\"G\"}");
            var returned = store.AddAction(expected1);

            store.LinkRuleToAction(ruleId, returned.Id);
            var actions = store.GetLinkedActions(ruleId);

            Assert.True(actions.Length == 1);
            AssertActionsEqual(returned, actions[0], true);
        }
예제 #3
0
        public void ShouldDeleteAction()
        {
            var store = ActionStoreFactory.GetActionStore();
            ConsoleLogAction expected1 = (ConsoleLogAction)AlertActionFactory.Create("log to console", "Ajakka.Alerting.ConsoleLogAction", "{TimestampFormat:\"G\"}");
            ConsoleLogAction expected2 = (ConsoleLogAction)AlertActionFactory.Create("log to console 2", "Ajakka.Alerting.ConsoleLogAction", "{TimestampFormat:\"MM\"}");
            var returned1 = store.AddAction(expected1);
            var returned2 = store.AddAction(expected2);

            store.DeleteAction(returned1.Id);
            var actual2 = store.GetAction(returned2.Id);

            AssertActionsEqual(expected2, actual2, false);
            AssertActionsEqual(returned2, actual2);
            Assert.Throws <KeyNotFoundException>(() => { store.GetAction(returned1.Id); });
        }
예제 #4
0
        public void ShouldUpdateAction()
        {
            var store = ActionStoreFactory.GetActionStore();
            ConsoleLogAction expected1 = (ConsoleLogAction)AlertActionFactory.Create("log to console", "Ajakka.Alerting.ConsoleLogAction", "{TimestampFormat:\"G\"}");
            var returned = store.AddAction(expected1);

            expected1.Name            = "changed";
            expected1.TimestampFormat = "MM";
            expected1.Configuration   = "{TimestampFormat:\"MM\"}";

            store.UpdateAction(returned.Id, expected1);

            var actual = store.GetAction(returned.Id);

            AssertActionsEqual(expected1, actual, false);
        }
예제 #5
0
        public void ShouldAddAndGetAlertActions()
        {
            var store = ActionStoreFactory.GetActionStore();
            ConsoleLogAction expected1 = (ConsoleLogAction)AlertActionFactory.Create("log to console", "Ajakka.Alerting.ConsoleLogAction", "{TimestampFormat:\"G\"}");
            ConsoleLogAction expected2 = (ConsoleLogAction)AlertActionFactory.Create("log to console 2", "Ajakka.Alerting.ConsoleLogAction", "{TimestampFormat:\"MM\"}");

            var returned1 = store.AddAction(expected1);
            var returned2 = store.AddAction(expected2);

            var actual1 = store.GetAction(returned1.Id);
            var actual2 = store.GetAction(returned2.Id);

            AssertActionsEqual(expected1, actual1, false);
            AssertActionsEqual(expected2, actual2, false);
            AssertActionsEqual(returned1, actual1);
            AssertActionsEqual(returned2, actual2);
        }
 public void ShouldFailToCreateConsoleLogAction()
 {
     Assert.Throws <ArgumentException>(() => {
         ConsoleLogAction alertAction = (ConsoleLogAction)AlertActionFactory.Create("log to console", "ConsoleLogAction", "{\"TimestampFormat\":\"MM\"}");
     });
 }