Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Regex and In operators report incorrectly when inside a "not" expression and evaluated path is missing #252

Open
JohnathonMohr opened this issue Jun 22, 2022 · 0 comments · May be fixed by #253
Labels
bug Something isn't working

Comments

@JohnathonMohr
Copy link
Contributor

Describe the bug

If a rule has something like the following:

"anyOf": [
    {
        "not": {
            "path": "notDefinedProperty",
            "in": [1, 2]
        }
    },
    {
        "not": {
            "path": "notDefinedProperty",
            "regex": "someValue"
        }
    }
]

the rule will incorrectly fail for this JSON:

{
    "definedProperty": "anything"
}

Logically, the rule should pass because, even though "notDefinedProperty" is not defined, it still meets the criteria of:

  • does not have a value of 1 or 2
  • does not match the regex of "someValue"

Expected behavior

A path evaluated by "in" and "regex" should pass if they are negated and the path they are evaluating is not defined.

Reproduction Steps

See description.

Environment

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants