001/* 002 * Copyright (C) 2007 The Guava Authors 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017package com.google.common.collect.testing.testers; 018 019import com.google.common.annotations.GwtCompatible; 020import com.google.common.collect.testing.AbstractCollectionTester; 021import org.junit.Ignore; 022 023/** 024 * Tests {@link java.util.Collection#equals}. 025 * 026 * @author George van den Driessche 027 */ 028@GwtCompatible 029@Ignore("test runners must not instantiate and run this directly, only via suites we build") 030// @Ignore affects the Android test runner, which respects JUnit 4 annotations on JUnit 3 tests. 031@SuppressWarnings("JUnit4ClassUsedInJUnit3") 032public class CollectionEqualsTester<E> extends AbstractCollectionTester<E> { 033 034 @SuppressWarnings({ 035 "SelfEquals", // TODO(cpovirk): Consider using EqualsTester from Guava. 036 "UndefinedEquals", // Comparisons of an object to itself *are* defined. 037 }) 038 public void testEquals_self() { 039 assertTrue("An Object should be equal to itself.", collection.equals(collection)); 040 } 041 042 // Comparisons to null *are* defined. 043 @SuppressWarnings("UndefinedEquals") 044 public void testEquals_null() { 045 // noinspection ObjectEqualsNull 046 assertFalse("An object should not be equal to null.", collection.equals(null)); 047 } 048 049 // A collection should essentially never be equal to a non-collection. 050 @SuppressWarnings("UndefinedEquals") 051 public void testEquals_notACollection() { 052 // noinspection EqualsBetweenInconvertibleTypes 053 assertFalse( 054 "A Collection should never equal an object that is not a Collection.", 055 collection.equals("huh?")); 056 } 057}