Change-Id: Ie9a658911c9f2722e518dedbe181c24e5ace07dbtags/7.1.11
@@ -67,6 +67,10 @@ public class Between implements Filter { | |||
@Override | |||
public boolean equals(Object obj) { | |||
if (obj == null) { | |||
return false; | |||
} | |||
// Only objects of the same class can be equal | |||
if (!getClass().equals(obj.getClass())) { | |||
return false; |
@@ -307,6 +307,9 @@ public abstract class Compare implements Filter { | |||
@Override | |||
public boolean equals(Object obj) { | |||
if (obj == null) { | |||
return false; | |||
} | |||
// Only objects of the same class can be equal | |||
if (!getClass().equals(obj.getClass())) { |
@@ -62,6 +62,10 @@ public final class IsNull implements Filter { | |||
@Override | |||
public boolean equals(Object obj) { | |||
if (obj == null) { | |||
return false; | |||
} | |||
// Only objects of the same class can be equal | |||
if (!getClass().equals(obj.getClass())) { | |||
return false; |
@@ -84,6 +84,10 @@ public class Like implements Filter { | |||
@Override | |||
public boolean equals(Object obj) { | |||
if (obj == null) { | |||
return false; | |||
} | |||
// Only objects of the same class can be equal | |||
if (!getClass().equals(obj.getClass())) { | |||
return false; |
@@ -82,6 +82,9 @@ public final class SimpleStringFilter implements Filter { | |||
@Override | |||
public boolean equals(Object obj) { | |||
if (obj == null) { | |||
return false; | |||
} | |||
// Only ones of the objects of the same class can be equal | |||
if (!(obj instanceof SimpleStringFilter)) { |
@@ -0,0 +1,44 @@ | |||
/* | |||
* Copyright 2000-2013 Vaadin Ltd. | |||
* | |||
* Licensed under the Apache License, Version 2.0 (the "License"); you may not | |||
* use this file except in compliance with the License. You may obtain a copy of | |||
* the License at | |||
* | |||
* http://www.apache.org/licenses/LICENSE-2.0 | |||
* | |||
* Unless required by applicable law or agreed to in writing, software | |||
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |||
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |||
* License for the specific language governing permissions and limitations under | |||
* the License. | |||
*/ | |||
package com.vaadin.data.util.sqlcontainer.filters; | |||
import org.junit.Assert; | |||
import org.junit.Test; | |||
import com.vaadin.data.util.filter.Compare; | |||
public class CompareTest { | |||
@Test | |||
public void testEquals() { | |||
Compare c1 = new Compare.Equal("prop1", "val1"); | |||
Compare c2 = new Compare.Equal("prop1", "val1"); | |||
Assert.assertTrue(c1.equals(c2)); | |||
} | |||
@Test | |||
public void testDifferentTypeEquals() { | |||
Compare c1 = new Compare.Equal("prop1", "val1"); | |||
Compare c2 = new Compare.Greater("prop1", "val1"); | |||
Assert.assertFalse(c1.equals(c2)); | |||
} | |||
@Test | |||
public void testEqualsNull() { | |||
Compare c1 = new Compare.Equal("prop1", "val1"); | |||
Assert.assertFalse(c1.equals(null)); | |||
} | |||
} |