Stop using deprecated AbstractSingleProjectSearchTests.
Change-Id: I9a3ff33a3e2be9f563753beb9ad7ca226a2545ff
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/tests/org.eclipse.dltk.ruby.core.tests/.settings/org.eclipse.jdt.ui.prefs b/tests/org.eclipse.dltk.ruby.core.tests/.settings/org.eclipse.jdt.ui.prefs
index 43df84b..fbac55c 100644
--- a/tests/org.eclipse.dltk.ruby.core.tests/.settings/org.eclipse.jdt.ui.prefs
+++ b/tests/org.eclipse.dltk.ruby.core.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -13,11 +13,11 @@
sp_cleanup.always_use_parentheses_in_expressions=false
sp_cleanup.always_use_this_for_non_static_field_access=false
sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_functional_interfaces=true
sp_cleanup.convert_to_enhanced_for_loop=false
sp_cleanup.correct_indentation=false
sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=true
+sp_cleanup.format_source_code_changes_only=false
sp_cleanup.insert_inferred_type_arguments=false
sp_cleanup.make_local_variable_final=true
sp_cleanup.make_parameters_final=false
diff --git a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/Activator.java b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/Activator.java
index b6a3fbb..2809f21 100755
--- a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/Activator.java
+++ b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/Activator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2016 IBM Corporation and others.
+ * Copyright (c) 2005, 2017 IBM Corporation 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
@@ -8,12 +8,24 @@
*******************************************************************************/
package org.eclipse.dltk.ruby.core.tests;
+import static org.junit.Assert.assertNotNull;
+
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.Plugin;
+import org.eclipse.dltk.core.IDLTKLanguageToolkit;
+import org.eclipse.dltk.core.IScriptProject;
+import org.eclipse.dltk.core.search.IDLTKSearchScope;
+import org.eclipse.dltk.core.search.SearchEngine;
+import org.eclipse.dltk.core.search.SearchParticipant;
+import org.eclipse.dltk.core.search.SearchPattern;
+import org.eclipse.dltk.core.tests.IDLTKSearchConstantsForTests;
+import org.eclipse.dltk.core.tests.WorkspaceSetup;
+import org.eclipse.dltk.core.tests.model.TestSearchResults;
import org.osgi.framework.BundleContext;
/**
@@ -24,9 +36,11 @@
// The plug-in ID
public static final String PLUGIN_ID = "org.eclipse.dltk.ruby.core.tests";
+ public static final WorkspaceSetup WORKSPACE = new WorkspaceSetup(Activator.PLUGIN_ID);
+
// The shared instance
private static Activator plugin;
-
+
/**
* The constructor
*/
@@ -35,11 +49,6 @@
}
@Override
- public void start(BundleContext context) throws Exception {
- super.start(context);
- }
-
- @Override
public void stop(BundleContext context) throws Exception {
plugin = null;
super.stop(context);
@@ -53,8 +62,26 @@
public static Activator getDefault() {
return plugin;
}
+
public static InputStream openResource(String path) throws IOException {
URL url = getDefault().getBundle().getEntry(path);
- return new BufferedInputStream(url.openStream());
+ return new BufferedInputStream(url.openStream());
+ }
+
+ public static TestSearchResults search(String patternString, int searchFor, int limitTo, IScriptProject project)
+ throws CoreException {
+ final IDLTKSearchScope scope = SearchEngine.createSearchScope(project.getScriptProject());
+ int matchRule = IDLTKSearchConstantsForTests.EXACT_RULE;
+ if (patternString.indexOf('*') != -1 || patternString.indexOf('?') != -1) {
+ matchRule |= SearchPattern.R_PATTERN_MATCH;
+ }
+ final IDLTKLanguageToolkit toolkit = scope.getLanguageToolkit();
+ final SearchPattern pattern = SearchPattern.createPattern(patternString, searchFor, limitTo, matchRule,
+ toolkit);
+ assertNotNull("Pattern should not be null", pattern);
+ final TestSearchResults results = new TestSearchResults();
+ final SearchParticipant[] participants = new SearchParticipant[] { SearchEngine.getDefaultSearchParticipant() };
+ new SearchEngine().search(pattern, participants, scope, results, null);
+ return results;
}
}
diff --git a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyFullNameSearchTests.java b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyFullNameSearchTests.java
index 155348a..4d27001 100644
--- a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyFullNameSearchTests.java
+++ b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyFullNameSearchTests.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2008 xored software, Inc.
+ * Copyright (c) 2008, 2017 xored software, 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
@@ -11,81 +11,85 @@
*******************************************************************************/
package org.eclipse.dltk.ruby.core.tests.search;
+import static org.eclipse.dltk.ruby.core.tests.Activator.search;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
import org.eclipse.dltk.core.IMethod;
import org.eclipse.dltk.core.ISourceModule;
import org.eclipse.dltk.core.IType;
-import org.eclipse.dltk.core.tests.model.AbstractSingleProjectSearchTests;
+import org.eclipse.dltk.core.search.IDLTKSearchConstants;
+import org.eclipse.dltk.core.tests.ProjectSetup;
import org.eclipse.dltk.core.tests.model.TestSearchResults;
import org.eclipse.dltk.ruby.core.tests.Activator;
+import org.junit.ClassRule;
+import org.junit.Test;
-public class RubyFullNameSearchTests extends AbstractSingleProjectSearchTests {
+public class RubyFullNameSearchTests implements IDLTKSearchConstants {
- public RubyFullNameSearchTests(String name) {
- super(Activator.PLUGIN_ID, name, "search");
- }
-
- public static Suite suite() {
- return new Suite(RubyFullNameSearchTests.class);
- }
+ @ClassRule
+ public static final ProjectSetup PROJECT = new ProjectSetup(Activator.WORKSPACE, "search");
private final String shortTypeName = "Search002";
private final String fullTypeName = "Module001::" + shortTypeName;
private final String methodName = "method003";
+ @Test
public void testFullTypeNameSearch() throws Exception {
- final TestSearchResults results = search(fullTypeName, TYPE,
- DECLARATIONS);
+ final TestSearchResults results = search(fullTypeName, TYPE, DECLARATIONS, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertType(fullTypeName);
}
+ @Test
public void testFullTypeReferenceSearch() throws Exception {
- final TestSearchResults results = search(fullTypeName, TYPE, REFERENCES);
+ final TestSearchResults results = search(fullTypeName, TYPE, REFERENCES, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertExists(ISourceModule.class, "Search001.rb");
}
+ @Test
public void testSuperClassReferenceSearch1() throws Exception {
- final TestSearchResults results = search("Parent001", TYPE, REFERENCES);
+ final TestSearchResults results = search("Parent001", TYPE, REFERENCES, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertExists(IType.class, "Child001");
}
+ @Test
public void testSuperClassReferenceSearch2() throws Exception {
- final TestSearchResults results = search("Parent002", TYPE, REFERENCES);
+ final TestSearchResults results = search("Parent002", TYPE, REFERENCES, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertExists(IType.class, "Child002");
}
+ @Test
public void testShortTypeNameSearch() throws Exception {
- final TestSearchResults results = search(shortTypeName, TYPE,
- DECLARATIONS);
+ final TestSearchResults results = search(shortTypeName, TYPE, DECLARATIONS, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertType(fullTypeName);
}
+ @Test
public void testShortMethodNameSearch() throws Exception {
- final TestSearchResults results = search(methodName, METHOD,
- DECLARATIONS);
+ final TestSearchResults results = search(methodName, METHOD, DECLARATIONS, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertMethod(methodName);
IMethod method = (IMethod) results.locate(IMethod.class, methodName);
assertNotNull(method);
assertNotNull(method.getParent());
- assertEquals(fullTypeName, ((IType) method.getParent())
- .getTypeQualifiedName("::"));
+ assertEquals(fullTypeName, ((IType) method.getParent()).getTypeQualifiedName("::"));
}
+ @Test
public void testFullMethodNameSearch() throws Exception {
- final TestSearchResults results = search(fullTypeName + "::"
- + methodName, METHOD, DECLARATIONS);
+ final TestSearchResults results = search(fullTypeName + "::" + methodName, METHOD, DECLARATIONS,
+ PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertMethod(methodName);
IMethod method = (IMethod) results.locate(IMethod.class, methodName);
assertNotNull(method);
assertNotNull(method.getParent());
- assertEquals(fullTypeName, ((IType) method.getParent())
- .getTypeQualifiedName("::"));
+ assertEquals(fullTypeName, ((IType) method.getParent()).getTypeQualifiedName("::"));
}
}
diff --git a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyMethodSearchTests.java b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyMethodSearchTests.java
index 3476d13..1ab3c90 100644
--- a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyMethodSearchTests.java
+++ b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubyMethodSearchTests.java
@@ -1,48 +1,50 @@
/*******************************************************************************
- * Copyright (c) 2009 xored software, Inc.
+ * Copyright (c) 2009, 2017 xored software, 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
+ * http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* xored software, Inc. - initial API and Implementation (Alex Panchenko)
*******************************************************************************/
package org.eclipse.dltk.ruby.core.tests.search;
-import org.eclipse.dltk.core.tests.model.AbstractSingleProjectSearchTests;
+import static org.eclipse.dltk.ruby.core.tests.Activator.search;
+import static org.junit.Assert.assertEquals;
+
+import org.eclipse.dltk.core.search.IDLTKSearchConstants;
+import org.eclipse.dltk.core.tests.ProjectSetup;
import org.eclipse.dltk.core.tests.model.TestSearchResults;
import org.eclipse.dltk.ruby.core.tests.Activator;
+import org.junit.ClassRule;
+import org.junit.Test;
-public class RubyMethodSearchTests extends AbstractSingleProjectSearchTests {
+public class RubyMethodSearchTests implements IDLTKSearchConstants {
- public RubyMethodSearchTests(String name) {
- super(Activator.PLUGIN_ID, name, "search-methods");
- }
-
- public static Suite suite() {
- return new Suite(RubyMethodSearchTests.class);
- }
+ @ClassRule
+ public static final ProjectSetup PROJECT = new ProjectSetup(Activator.WORKSPACE, "search-methods");
private final String methodName = "method001";
+ @Test
public void testDeclarations() throws Exception {
- final TestSearchResults results = search(methodName, METHOD,
- DECLARATIONS);
+ final TestSearchResults results = search(methodName, METHOD, DECLARATIONS, PROJECT.getScriptProject());
assertEquals(2, results.size());
// results.assertType(className);
}
+ @Test
public void testReferences() throws Exception {
- final TestSearchResults results = search(methodName, METHOD, REFERENCES);
+ final TestSearchResults results = search(methodName, METHOD, REFERENCES, PROJECT.getScriptProject());
assertEquals(2, results.size());
// results.assertSourceModule(fileName);
}
+ @Test
public void testAllOccurences() throws Exception {
- final TestSearchResults results = search(methodName, METHOD,
- ALL_OCCURRENCES);
+ final TestSearchResults results = search(methodName, METHOD, ALL_OCCURRENCES, PROJECT.getScriptProject());
assertEquals(4, results.size());
// results.assertSourceModule(fileName);
// results.assertType(className);
diff --git a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubySearchTests.java b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubySearchTests.java
index 80f0706..81e3979 100644
--- a/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubySearchTests.java
+++ b/tests/org.eclipse.dltk.ruby.core.tests/src/org/eclipse/dltk/ruby/core/tests/search/RubySearchTests.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2017 IBM Corporation 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
@@ -7,44 +7,46 @@
*
* Contributors:
* xored software, Inc. - initial API and Implementation
- * xored software, Inc. - Search All occurences bugfix,
+ * xored software, Inc. - Search All occurences bugfix,
* hilight only class name when class is in search results ( Alex Panchenko <alex@xored.com>)
*******************************************************************************/
-
package org.eclipse.dltk.ruby.core.tests.search;
-import org.eclipse.dltk.core.tests.model.AbstractSingleProjectSearchTests;
+import static org.eclipse.dltk.ruby.core.tests.Activator.search;
+import static org.junit.Assert.assertEquals;
+
+import org.eclipse.dltk.core.search.IDLTKSearchConstants;
+import org.eclipse.dltk.core.tests.ProjectSetup;
import org.eclipse.dltk.core.tests.model.TestSearchResults;
import org.eclipse.dltk.ruby.core.tests.Activator;
+import org.junit.ClassRule;
+import org.junit.Test;
-public class RubySearchTests extends AbstractSingleProjectSearchTests {
+public class RubySearchTests implements IDLTKSearchConstants {
- public RubySearchTests(String name) {
- super(Activator.PLUGIN_ID, name, "search");
- }
-
- public static Suite suite() {
- return new Suite(RubySearchTests.class);
- }
+ @ClassRule
+ public static final ProjectSetup PROJECT = new ProjectSetup(Activator.WORKSPACE, "search");
private final String fileName = "Search001.rb";
private final String className = "Search001";
+ @Test
public void testDeclarations() throws Exception {
- final TestSearchResults results = search(className, TYPE, DECLARATIONS);
+ final TestSearchResults results = search(className, TYPE, DECLARATIONS, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertType(className);
}
+ @Test
public void testReferences() throws Exception {
- final TestSearchResults results = search(className, TYPE, REFERENCES);
+ final TestSearchResults results = search(className, TYPE, REFERENCES, PROJECT.getScriptProject());
assertEquals(1, results.size());
results.assertSourceModule(fileName);
}
+ @Test
public void testAllOccurences() throws Exception {
- final TestSearchResults results = search(className, TYPE,
- ALL_OCCURRENCES);
+ final TestSearchResults results = search(className, TYPE, ALL_OCCURRENCES, PROJECT.getScriptProject());
assertEquals(2, results.size());
results.assertSourceModule(fileName);
results.assertType(className);