Hello, community.
I found some weird stuff going on with OR smart value. For some reason {{or(true, false)}} returns 'false' instead of 'true'.
Given:
{{issue.fixVersions.name}} --> May2022
{{issue.fixVersions.name.equals("May2022")}} --> true
{{exists(issue.fixVersions.name)}} --> true
{{not(exists(issue.fixVersions.name))}} --> falseThis to be expected, so far so good.
The weird stuff begins when I try to combine some of this expressions with OR smart value:
{{or(issue.fixVersions.name.equals("May2022"), not(exists(issue.fixVersions.name)))}} --> falseWTF? Equals returns 'true', NOT returns 'false'. Why OR returns 'false'? What I'm doing wrong?
I did some further tests, and that's what I get
{{or(issue.fixVersions.name.equals("May2022"), false)}} --> false
{{or(true, not(exists(issue.fixVersions.name)))}} --> true So, the problem lies somewhere in 'issue.fixVersions.name.equals("May2022")' expression.
I tested the same expression with Summary field, and it works as expected
{{issue.summary}} --> TEST
{{issue.summary.equals("TEST")}} --> true
{{exists(issue.summary)}} --> true
{{not(exists(issue.summary))}} --> false
{{or(issue.summary.equals("TEST"), not(exists(issue.summary)))}} --> trueSo, there must be something with fixVersions field, that I don't get.
I did more test, and it broke my mind completely
{{or(issue.fixVersions.name.equals("May2022"), false)}} --> false
{{issue.fixVersions.name.equals("May2022")|false}} --> true
{{or(true, not(exists(issue.fixVersions.name)))}} --> true
{{true|not(exists(issue.fixVersions.name))}} --> false Once again, WTF? Shouldn't this expressions return same results?