blob: cd04e476a6bf2666d2d6ae09cf3a1b0741e24c23 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.wst.jsdt.core.tests.compiler.util;
import junit.extensions.TestSetup;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.wst.jsdt.internal.core.util.Util;
public class ExclusionTests extends TestCase {
/** name of the test project */
private static final String PROJECT_NAME = "ExclusionTests";
/** the test project */
private static IProject fProject;
/**
* <p>Default constructor<p>
* <p>Use {@link #suite()}</p>
*
* @see #suite()
*/
public ExclusionTests() {
super("Exclusion Tests");
}
/**
* <p>Constructor that takes a test name.</p>
* <p>Use {@link #suite()}</p>
*
* @param name The name this test run should have.
*
* @see #suite()
*/
public ExclusionTests(String name) {
super(name);
}
/**
* <p>Use this method to add these tests to a larger test suite so set up
* and tear down can be performed</p>
*
* @return a {@link TestSetup} that will run all of the tests in this class
* with set up and tear down.
*/
public static Test suite() {
TestSuite ts = new TestSuite(ExclusionTests.class, "Exclusion Tests");
return new ExclusionTestsSetup(ts);
}
public void testExcluded_DirPathWorkspaceRelative_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathWorkspaceRelative_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelative_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelative_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelative_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelative_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelative_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelative_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelativeLeadingSeperator_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathAbsolute_DirExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathAbsolute_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_DirExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathAbsolute_DirExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathAbsolute_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathAbsolute_DirExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathAbsolute_DirExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathAbsolute_DirExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/").toPortableString().toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_DirExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/").toPortableString().toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathAbsolute_DirExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/").toPortableString().toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathAbsolute_DirExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/").toPortableString().toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelative_FileExcludedWorkspaceRelative() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelative_FileExcludedWorkspaceRelative_2() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelative_2() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelative_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelative_FileExcludedWorkspaceRelativeLeadingSeperator_2() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelativeLeadingSeperator_2() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelative_FileExcludedWorkspaceRelative() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelative_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelative_FileExcludedWorkspaceRelative() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelative() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelative_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathWorkspaceRelativeLeadingSeperator_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = new Path(IPath.SEPARATOR + "foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_FileExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_FileExcludedWorkspaceRelative_2() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_FileExcludedWorkspaceRelativeLeadingSeperator_2() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathAbsolute_FileExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathAbsolute_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathAbsolute_FileExcludedWorkspaceRelative() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathAbsolute_FileExcludedWorkspaceRelativeLeadingSeperator() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (IPath.SEPARATOR + PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js").toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_FileExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js").toPortableString().toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_DirPathAbsolute_FileExcludedAbsolute_2() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js").toPortableString().toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_FilePathAbsolute_FileExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js").toPortableString().toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testNotExcluded_FilePathAbsolute_FileExcludedAbsolute() {
IPath resourcePath = fProject.getLocation().append("foo/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = fProject.getLocation().append("/WebContent/dojo/dijit/_Widget.js").toPortableString().toCharArray();
assertFalse(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathWorkspaceRelative_DirExcludedWorkspaceRelativeStarWildCard() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/*/dijit/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
public void testExcluded_DirPathWorkspaceRelative_DirExcludedWorkspaceRelativeDoubleStarWildCard() {
IPath resourcePath = new Path(PROJECT_NAME + "/WebContent/foo/dojo/dijit/_Widget.js");
char[][] inclusionPatterns = null;
char[][] exclusionPatterns = new char[1][0];
exclusionPatterns[0] = (PROJECT_NAME + "/WebContent/**/dijit/").toCharArray();
assertTrue(Util.isExcluded(resourcePath, inclusionPatterns, exclusionPatterns));
}
/**
* <p>This inner class is used to do set up and tear down before and
* after (respectively) all tests in the inclosing class have run.</p>
*/
private static class ExclusionTestsSetup extends TestSetup {
private static final String WTP_AUTOTEST_NONINTERACTIVE = "wtp.autotest.noninteractive";
private static String previousWTPAutoTestNonInteractivePropValue = null;
/**
* Default constructor
*
* @param test do setup for the given test
*/
public ExclusionTestsSetup(Test test) {
super(test);
}
/**
* <p>This is run once before all of the tests</p>
*
* @see junit.extensions.TestSetup#setUp()
*/
public void setUp() throws Exception {
//project setup
fProject = createProject(PROJECT_NAME, null, null);
//set non-interactive
String noninteractive = System.getProperty(WTP_AUTOTEST_NONINTERACTIVE);
if (noninteractive != null) {
previousWTPAutoTestNonInteractivePropValue = noninteractive;
} else {
previousWTPAutoTestNonInteractivePropValue = "false";
}
System.setProperty(WTP_AUTOTEST_NONINTERACTIVE, "true");
}
/**
* <p>This is run once after all of the tests have been run</p>
*
* @see junit.extensions.TestSetup#tearDown()
*/
public void tearDown() throws Exception {
//reset non-interactive
if (previousWTPAutoTestNonInteractivePropValue != null) {
System.setProperty(WTP_AUTOTEST_NONINTERACTIVE, previousWTPAutoTestNonInteractivePropValue);
}
}
}
private static IProject createProject(String name, IPath location, String[] natureIds) {
IProjectDescription description = ResourcesPlugin.getWorkspace().newProjectDescription(name);
if (location != null) {
description.setLocation(location);
}
if (natureIds != null) {
description.setNatureIds(natureIds);
}
IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(name);
try {
project.create(description, new NullProgressMonitor());
project.open(new NullProgressMonitor());
}
catch (CoreException e) {
e.printStackTrace();
}
return project;
}
}