private bool testAlarmRuleStringEqual(string left, string op, string right, string testTarget)
        {
            int messageCatalogId = 1;
            MessageProcessorFactoryModel msgProcessorFactoryModel = new MessageProcessorFactoryModel();
            SfMessageEventProcessor      sfMsgEventProcessor      = new SfMessageEventProcessor(msgProcessorFactoryModel);

            msgProcessorFactoryModel.MessageIdAlarmRules = getSampleAlarmRulesStringEqual(messageCatalogId, left, op, right);
            JObject     payload        = getSampleDeviceMessageForString(left, testTarget);
            Task <bool> alarmTriggered = sfMsgEventProcessor.RunAlarmRulesTest(msgProcessorFactoryModel, messageCatalogId, payload, false, false);

            return(alarmTriggered.Result);
        }
        private bool testAlarmRule2(int a, string b, bool c, int d)
        {
            int messageCatalogId = 1;
            MessageProcessorFactoryModel msgProcessorFactoryModel = new MessageProcessorFactoryModel();
            SfMessageEventProcessor      sfMsgEventProcessor      = new SfMessageEventProcessor(msgProcessorFactoryModel);

            msgProcessorFactoryModel.MessageIdAlarmRules = getSampleAlarmRules(messageCatalogId);

            JObject     payload        = getSampleDeviceMessage2(a, b, c, d);
            Task <bool> alarmTriggered = sfMsgEventProcessor.RunAlarmRulesTest(msgProcessorFactoryModel, messageCatalogId, payload, false, false);

            return(alarmTriggered.Result);
        }
        private bool runSingleRuleItem(SupportDataTypeEnum testDataType, string elementName, string op, string right, JObject testObject)
        {
            MessageProcessorFactoryModel msgProcessorFactoryModel = new MessageProcessorFactoryModel();

            IoTHubAliasEventMessageReceiver    receiver            = new IoTHubAliasEventMessageReceiver("test");
            Func <DynamicMessageElement, bool> func                = receiver.CreateCompiledRuleFuncTest(testDataType, op, right);
            SfMessageEventProcessor            sfMsgEventProcessor = new SfMessageEventProcessor(msgProcessorFactoryModel);

            RuleEngineItem ruleEngineItem = new RuleEngineItem
            {
                ElementName    = elementName,
                DataType       = testDataType,
                OrderOperation = "end",
                Result         = false,
                Equality       = func
            };

            sfMsgEventProcessor.RunSingleRuleItemTest(ruleEngineItem, testObject);

            return(ruleEngineItem.Result);
        }