You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Andres Joy (JIRA)" <ji...@apache.org> on 2017/01/05 14:28:58 UTC

[jira] [Created] (LANG-1309) Should EqualsBuilder.reflectionEquals return false if both values of a field is false?

Andres Joy created LANG-1309:
--------------------------------

             Summary: Should EqualsBuilder.reflectionEquals return false if both values of a field is false?
                 Key: LANG-1309
                 URL: https://issues.apache.org/jira/browse/LANG-1309
             Project: Commons Lang
          Issue Type: Improvement
            Reporter: Andres Joy
            Priority: Minor


EqualsBuilder.reflectionEquals return false if both values of the two objects on a field is null. Is this behavior intended? 

Consider the following example:

{quote}class Person {

  String name;
  int age;
  String phone = null;
  ...
}{quote}

And a main method:
{quote}Person p1 = new Person();
p1.name = "Mike";
p1.age = 30;

Person p2 = new Person();
p2.name = "Mike";
p2.age = 30;

assertTrue(EqualsBuilder.reflectionEquals(p1, p2));{quote}

This test won't pass because the assertion will fail. 
Moreover, in this example, the objects we compare are actually equal(morally speaking) and the check should therefore return true. 

What motivates the current behavior? 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)