как найти ошибочные правила в json-rules-engine - PullRequest
0 голосов
/ 13 марта 2019

Я новичок в движке правил и пытаюсь создать движок правил в javascript.

У меня есть следующее правило и передача одного параметра в качестве неправильного ввода, как найти, какой аргумент (факт) не соответствует.

Событие выдает сообщение без сбойных правил, интересно, как получить сбойные параметры.

Пожалуйста, дайте мне знать, что делать в этой ситуации.

НПМ JSON-правила двигатель

Правила:

engine.addRule({
    conditions: {
        any: [{
            all: [{
                fact: 'gameDuration',
                operator: 'equal',
                value: 40
            }, {
                fact: 'personalFoulCount',
                operator: 'greaterThanInclusive',
                value: 5
            }]
        }, {
            all: [{
                fact: 'gameDuration',
                operator: 'equal',
                value: 48
            }, {
                fact: 'personalFoulCount',
                operator: 'greaterThanInclusive',
                value: 6
            }]
        }]
    },
    event: { // define the event to fire when the conditions evaluate truthy
        type: 'fouledOut',
        params: {
            message: 'Player has fouled out!'
        }
    }
})


**input:**

`let facts = {
    personalFoulCount: 6,
    gameDuration: 102
}`

**output:**

Player has fouled out!

**expected output:**

Player has fouled out due to a mismatch in gameDuration

...