/******************************************************************************* * * Copyright (c) 2011 Oracle Corporation. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: Anton Kozak, Nikita Levyankov * *******************************************************************************/ package hudson.scm; import hudson.scm.subversion.CheckoutUpdater; import hudson.scm.subversion.CheckoutWithLocationFoldersCleanupUpdater; import hudson.scm.subversion.UpdateUpdater; import hudson.scm.subversion.UpdateWithCleanUpdater; import hudson.scm.subversion.UpdateWithRevertUpdater; import hudson.scm.subversion.WorkspaceUpdater; import java.util.Arrays; import java.util.Collection; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import static junit.framework.Assert.assertEquals; /** * Verifies the equals and hashcode methods of subclasses of {@link WorkspaceUpdater} * <p/> * Date: 10/5/2011 * * @author Anton Kozak, Nikita Levyankov */ @RunWith(Parameterized.class) public class WorkspaceUpdaterEqualsHashCodeTest { private WorkspaceUpdater defaultUpdater = new CheckoutUpdater(); private WorkspaceUpdater updater; private boolean expectedResult; public WorkspaceUpdaterEqualsHashCodeTest(WorkspaceUpdater updater, boolean expectedResult) { this.updater = updater; this.expectedResult = expectedResult; } @Parameterized.Parameters public static Collection generateData() { return Arrays.asList(new Object[][]{ {new CheckoutUpdater(), true}, {new CheckoutWithLocationFoldersCleanupUpdater(), false}, {new UpdateUpdater(), false}, {new UpdateWithCleanUpdater(), false}, {new UpdateWithRevertUpdater(), false} }); } @Test public void testEquals() { assertEquals(expectedResult, defaultUpdater.equals(updater)); } @Test public void testHashCode() { assertEquals(expectedResult, defaultUpdater.hashCode() == updater.hashCode()); } }