/******************************************************************************* * Copyright (c) 2013 Google, Inc and others. * 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: * Sergey Prigogin (Google) - initial API and implementation *******************************************************************************/ package org.eclipse.cdt.ui.tests.refactoring.includes; import junit.framework.TestCase; import org.eclipse.cdt.internal.ui.refactoring.includes.IncludeMap; /** * Tests for {@link IncludeMap}. */ public class IncludeMapTest extends TestCase { private void assertEqualMaps(IncludeMap expected, IncludeMap actual) { assertEquals(expected.toString(), actual.toString()); } public void testOptionalCyclicMap() { IncludeMap map = new IncludeMap(false, new String[] { "a", "b", "b", "c", "c", "d", "d", "b", }); map.transitivelyClose(); IncludeMap expected = new IncludeMap(false, new String[] { "a", "b", "a", "d", "a", "c", "b", "d", "b", "c", "c", "d", "c", "b", "d", "b", "d", "c", }); assertEqualMaps(expected, map); } public void testUnconditionalCyclicMap() { IncludeMap map = new IncludeMap(true, new String[] { "a", "b", "b", "c", "c", "d", "d", "b", }); map.transitivelyClose(); IncludeMap expected = new IncludeMap(true, new String[] { "a", "b", "c", "b", "d", "b", }); assertEqualMaps(expected, map); } public void testOptionalMap() { IncludeMap map = new IncludeMap(false, new String[] { "a", "b", "a", "c", "c", "d", "c", "e", "d", "f", }); map.transitivelyClose(); IncludeMap expected = new IncludeMap(false, new String[] { "a", "b", "a", "f", "a", "d", "a", "e", "a", "c", "c", "f", "c", "d", "c", "e", "d", "f", }); assertEqualMaps(expected, map); } public void testUpconditionalMap() { IncludeMap map = new IncludeMap(true, new String[] { "a", "b", "a", "c", "c", "d", "c", "e", "d", "f", }); map.transitivelyClose(); IncludeMap expected = new IncludeMap(true, new String[] { "a", "b", "c", "f", "d", "f", }); assertEqualMaps(expected, map); } }