blob: 504aa05e3debdd582a52588b8011d12d6b16d52d [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2012, 2016 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.search;
import static org.junit.Assert.*;
import org.eclipse.wst.jsdt.core.IJavaScriptElement;
import org.eclipse.wst.jsdt.core.IJavaScriptProject;
import org.eclipse.wst.jsdt.core.search.IJavaScriptSearchConstants;
import org.eclipse.wst.jsdt.core.search.SearchEngine;
import org.junit.Ignore;
import org.junit.Test;
@Ignore("Searching for subtypes is not implemented for pre ES6")
public class TestGetAllSubtypeNames extends AbstractSearchTest {
@Test
public void testGetAllSubtypeNames01() throws Exception {
// single file
IJavaScriptProject project = setupMinimalProject(getRootProjectName() + getName(),
new String[] {"X.js"},
new String[] {
"function " + getName() + "(){\n" +
"\tthis.searchVar= 5;\n" +
"}\n" +
"sub.prototype = new "+getName()+"();\n" +
"sub = {\n" +
"\tsearchVar: 5,\n" +
"};\n"
});
char[][] allSubtypeNames = SearchEngine.getAllSubtypeNames(getName().toCharArray(), SearchEngine.createJavaSearchScope(new IJavaScriptElement[]{project}), IJavaScriptSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, null);
assertEquals("wrong number of subtypes found", 2, allSubtypeNames.length);
assertEquals("wrong subtype found", "sub", new String(allSubtypeNames[1]));
}
@Test
public void testGetAllSubtypeNames02() throws Exception {
// two files
IJavaScriptProject project = setupMinimalProject(getRootProjectName() + getName(),
new String[] {"X.js","Y.js"},
new String[] {
"function " + getName() + "(){\n" +
"\tthis.searchVar= 5;\n" +
"}\n",
"sub.prototype = new "+getName()+"();\n" +
"sub = {\n" +
"\tsearchVar: 5,\n" +
"};\n"
});
char[][] allSubtypeNames = SearchEngine.getAllSubtypeNames(getName().toCharArray(), SearchEngine.createJavaSearchScope(new IJavaScriptElement[]{project}), IJavaScriptSearchConstants.WAIT_UNTIL_READY_TO_SEARCH, null);
assertEquals("wrong number of subtypes found", 2, allSubtypeNames.length);
assertEquals("wrong subtype found", "sub", new String(allSubtypeNames[1]));
}
}