You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@johnzon.apache.org by "Svetlin Zarev (JIRA)" <ji...@apache.org> on 2017/06/05 12:34:04 UTC
[jira] [Created] (JOHNZON-122) JSONP spec compliance: JsonNumber
equality not spec compliant
Svetlin Zarev created JOHNZON-122:
-------------------------------------
Summary: JSONP spec compliance: JsonNumber equality not spec compliant
Key: JOHNZON-122
URL: https://issues.apache.org/jira/browse/JOHNZON-122
Project: Johnzon
Issue Type: Bug
Affects Versions: 1.0.0
Reporter: Svetlin Zarev
According to the JSONP spec:
{code}
Compares the specified object with this JsonNumber object for equality. Returns true if and only if the type of the specified object is also JsonNumber and their bigDecimalValue() objects are equal
{code}
yet johnzon considers "unequal" values to be equal
Sample application:
{code}
public final class Main {
public static void main(String[] args) {
JsonNumber a = Json.createObjectBuilder().add("a", 1).build().getJsonNumber("a");
JsonNumber b = Json.createObjectBuilder().add("b", 1.1).build().getJsonNumber("b");
System.out.println("EQUALS: " + a.equals(b));
System.out.println("BigDecimal EQUALS: " + a.bigDecimalValue().equals(b.bigDecimalValue()));
}
}
{code}
Actual output:
{code}
EQUALS: true
BigDecimal EQUALS: false
{code}
Expected output:
{code}
EQUALS: false
BigDecimal EQUALS: false
{code}
[1] http://docs.oracle.com/javaee/7/api/javax/json/JsonNumber.html#equals-java.lang.Object-
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)