groovy-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pa...@apache.org
Subject [groovy] branch master updated: GROOVY-8647: Split package renaming (more tests to use new package for GroovyTestCase)
Date Fri, 17 May 2019 12:02:09 GMT
This is an automated email from the ASF dual-hosted git repository.

paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git


The following commit(s) were added to refs/heads/master by this push:
     new ffefcce  GROOVY-8647: Split package renaming (more tests to use new package for GroovyTestCase)
ffefcce is described below

commit ffefcced9e08260fd4f91dd1902272619764c79c
Author: Paul King <paulk@asert.com.au>
AuthorDate: Fri May 17 22:01:54 2019 +1000

    GROOVY-8647: Split package renaming (more tests to use new package for GroovyTestCase)
---
 src/spec/doc/core-testing-guide.adoc               |   2 +-
 .../groovy/console/SwingBuilderConsoleTest.groovy  |   4 +-
 .../console/ui/AstNodeToScriptAdapterTest.groovy   |   3 +-
 .../console/ui/ScriptToTreeNodeAdapterTest.groovy  |   5 +-
 .../console/ui/text/GroovyFilterTests.groovy       |   4 +-
 .../test/gdk/WorkingWithDateTimeTypesTest.groovy   |   2 +
 .../src/test/java/groovy/DateTimeTest.groovy       |   2 +
 .../test/gdk/WorkingWithDateUtilTypesTest.groovy   |   2 +
 .../src/test/java/groovy/DateTest.groovy           |  11 +-
 .../groovy/tools/groovydoc/GroovyDocToolTest.java  |   2 +-
 .../tools/groovydoc/GroovyRootDocBuilderTest.java  |   2 +-
 .../groovydoc/SimpleGroovyClassDocTests.groovy     |   2 +
 .../groovydoc/SimpleGroovyRootDocTests.groovy      |   2 +
 ...pletorsTest.groovy => AllCompletersTest.groovy} |  23 +--
 .../apache/groovy/groovysh/AnsiDetectorTest.groovy |   4 +-
 ...etorTest.groovy => CommandCompleterTest.groovy} |  75 ++++----
 ...tSupport.groovy => CompleterTestSupport.groovy} |  34 ++--
 .../apache/groovy/groovysh/ErrorDisplayTest.groovy |   3 +-
 .../groovy/groovysh/GroovyshParsersTest.groovy     |   3 +-
 .../org/apache/groovy/groovysh/GroovyshTest.groovy |  32 ++--
 .../groovy/groovysh/ImportCompleterTest.groovy     | 120 ++++++++++++
 ...rTest.groovy => ImportCompleterUnitTest.groovy} | 128 +------------
 ...TestSupport.groovy => MockPackageHelper.groovy} |  34 ++--
 .../apache/groovy/groovysh/ShellRunnerTest.groovy  |   4 +-
 .../groovy/groovysh/ShellRunnerTestSupport.groovy  |   4 +-
 .../org/apache/groovy/groovysh/ShellTest.groovy    |   7 +-
 .../groovysh/commands/AliasCommandTest.groovy      |   6 +-
 .../groovysh/commands/ClearCommandTest.groovy      |   6 +-
 .../groovysh/commands/CommandTestSupport.groovy    |   9 +-
 .../commands/ComplexCommandSupportTest.groovy      |  24 ++-
 .../groovysh/commands/DisplayCommandTest.groovy    |   6 +-
 .../groovy/groovysh/commands/DocCommandTest.groovy |   7 +-
 .../groovysh/commands/EditCommandTest.groovy       |   6 +-
 .../groovysh/commands/ExitCommandTest.groovy       |   8 +-
 .../groovysh/commands/GrabCommandTest.groovy       |   6 +-
 .../groovysh/commands/HelpCommandTest.groovy       |   6 +-
 .../groovysh/commands/HistoryCommandTest.groovy    |  12 +-
 .../groovysh/commands/ImportCommandTest.groovy     |   6 +-
 .../groovysh/commands/InspectCommandTest.groovy    |   6 +-
 .../groovysh/commands/LoadCommandTest.groovy       |   6 +-
 .../groovysh/commands/PurgeCommandTest.groovy      |   6 +-
 .../groovysh/commands/RecordCommandTest.groovy     |   8 +-
 .../groovysh/commands/RegisterCommandTest.groovy   |  26 +--
 .../groovysh/commands/SaveCommandTest.groovy       |   6 +-
 .../groovy/groovysh/commands/SetCommandTest.groovy |  16 +-
 .../groovysh/commands/ShowCommandTest.groovy       |   6 +-
 ...Test.groovy => CustomClassCompleterTest.groovy} |  14 +-
 .../completion/FileNameCompleterTest.groovy        |   7 +-
 ...est.groovy => GroovySyntaxCompleterTest.groovy} | 210 ++++++++++-----------
 ...st.groovy => ImportsSyntaxCompleterTest.groovy} |  94 ++++-----
 ...etorTest.groovy => KeywordCompleterTest.groovy} |  34 ++--
 .../NavigablePropertiesCompleterTest.groovy        |   3 +-
 ...rTest.groovy => ReflectionCompleterTest.groovy} | 183 +++++++++---------
 .../groovysh/completion/TokenUtilTest.groovy       |   5 +-
 ...torTest.groovy => VariableCompleterTest.groovy} |  22 +--
 .../expr/ClassWithPrivateConstructor.groovy        |   6 +-
 .../groovy/groovysh/expr/ExprTestSupport.groovy    |   9 +-
 .../apache/groovy/groovysh/expr/TimeItTest.groovy  |   6 +-
 .../groovysh/util/CommandArgumentParserTest.groovy |   3 +-
 .../util/CurlyCountingGroovyLexerTest.groovy       |   8 +-
 .../groovy/groovysh/util/MessageSourceTest.groovy  |   5 +-
 .../groovysh/util/PackageHelperImplTest.groovy     |   8 +-
 .../util/ScriptVariableAnalyzerTest.groovy         |   5 +-
 .../groovysh/util/WrappedInputStreamTest.groovy    |   9 +-
 .../groovysh}/util/MessageSourceTest.properties    |   0
 .../jaxb/extensions/JaxbExtensionsTest.groovy      |   2 +
 .../jmx/builder/JmxAttributeInfoManagerTest.groovy |   2 +
 .../jmx/builder/JmxBeanExportFactoryTest.groovy    |   2 +
 .../groovy/jmx/builder/JmxBeanFactoryTest.groovy   |   2 +
 .../jmx/builder/JmxBeanInfoManagerTest.groovy      |   2 +
 .../groovy/jmx/builder/JmxBeansFactoryTest.groovy  |   2 +
 .../groovy/jmx/builder/JmxBuilderToolsTest.groovy  |   2 +
 .../builder/JmxClientConnectorFactoryTest.groovy   |   2 +
 .../builder/JmxEmbeddedMetaMapBuilderTest.groovy   |   2 +
 .../jmx/builder/JmxEmitterFactoryTest.groovy       |   2 +
 .../jmx/builder/JmxListenerFactoryTest.groovy      |   2 +
 .../jmx/builder/JmxMetaMapBuilderTest.groovy       |   2 +
 .../jmx/builder/JmxOperationInfoManagerTest.groovy |   2 +
 .../builder/JmxServerConnectorFactoryTest.groovy   |   2 +
 .../groovy/jmx/builder/JmxTimerFactoryTest.groovy  |   2 +
 .../src/test/java/groovy/util/MBeanTest.java       |   2 +
 .../org/codehaus/groovy/jsr223/JSR223Test.groovy   |   5 +-
 .../groovy/jsr223/{vm6 => }/JavascriptTest.groovy  |   9 +-
 .../org/codehaus/groovy/jsr223/SugarTest.groovy    |   2 +
 .../org/codehaus/groovy/macro/MacroTest.groovy     |   1 +
 .../groovy/macro/MacroTransformationTest.groovy    |   1 +
 .../groovy/macro/matcher/ASTMatcherTest.groovy     |   2 +
 .../groovy/servlet/AbstractHttpServletTest.groovy  |   6 +-
 .../groovy/servlet/ServletBindingTest.groovy       |   4 +-
 .../groovy-sql/src/spec/test/SqlTest.groovy        |   2 +
 .../test/groovy/groovy/bugs/ForAndSqlBug.groovy    |   1 +
 .../test/groovy/groovy/bugs/Groovy5041Bug.groovy   |   2 +
 .../groovy/sql/ExtractIndexAndSqlTest.groovy       |   2 +
 .../groovy/groovy/sql/GroovyRowResultTest.groovy   |   2 +
 .../src/test/groovy/groovy/sql/PersonTest.groovy   |   8 +-
 .../src/test/groovy/groovy/sql/SqlBatchTest.groovy |   7 +-
 .../src/test/groovy/groovy/sql/SqlCacheTest.groovy |  12 +-
 .../src/test/groovy/groovy/sql/SqlCallTest.groovy  |   8 +-
 .../groovy/groovy/sql/SqlHelperTestCase.groovy     |   9 +-
 .../test/groovy/groovy/sql/SqlStatementTest.groovy |   8 +-
 .../src/test/groovy/groovy/sql/SqlTest.groovy      |  10 +-
 .../groovy/sql/SqlTransactionTestCase.groovy       |   2 +
 .../spec/test/MarkupTemplateEngineSpecTest.groovy  |   4 +-
 .../groovy/SimpleGStringTemplateEngineTest.groovy  |   1 +
 .../groovy/groovy/SimpleTemplateEngineTest.groovy  |   2 +
 .../groovy/bugs/groovy4585/Groovy4585Bug.groovy    |   2 +
 .../groovy/text/MarkupTemplateEngineTest.groovy    |   1 +
 .../groovy/groovy/text/SimpleTemplateTest.groovy   |   2 +
 .../groovy/text/markup/TemplateResourceTest.groovy |   1 +
 .../src/spec/test/MyTestViaRun.groovy              |   2 +
 .../src/main/java/groovy/test/GroovyAssert.java    |   4 +-
 .../main/java/groovy/test/NotYetImplemented.java   |   2 +-
 .../java/groovy/transform/NotYetImplemented.java   |   2 +-
 .../groovy-xml/src/spec/test/DOMBuilderTest.groovy |   2 +
 .../groovy-xml/src/spec/test/SaxBuilderTest.groovy |   2 +
 .../src/spec/test/StaxBuilderTest.groovy           |   2 +
 .../src/spec/test/UserGuideDOMCategoryTest.groovy  |   1 +
 .../spec/test/UserGuideMarkupBuilderTest.groovy    |   1 +
 .../UserGuideStreamingMarkupBuilderTest.groovy     |   2 +
 .../src/spec/test/UserGuideXmlParserTest.groovy    |   2 +
 .../src/spec/test/UserGuideXmlUtilTest.groovy      |   2 +
 .../groovy/groovy/xml/XmlNodePrinterTest.groovy    |   2 +
 .../groovy/groovy/xml/bugs/StaticMarkupBug.groovy  |   1 +
 .../spec/test/groovy/yaml/YamlBuilderTest.groovy   |   2 +
 .../spec/test/groovy/yaml/YamlParserTest.groovy    |   2 +
 125 files changed, 811 insertions(+), 695 deletions(-)

diff --git a/src/spec/doc/core-testing-guide.adoc b/src/spec/doc/core-testing-guide.adoc
index 2f67c7a..9dc16e0 100644
--- a/src/spec/doc/core-testing-guide.adoc
+++ b/src/spec/doc/core-testing-guide.adoc
@@ -388,7 +388,7 @@ make certain types of tests easier to write.
 
 
 In this section, we will have a look at some of the methods provided by `GroovyTestCase`. A full list of these can be
-found in the JavaDoc documentation for gapi:groovy.util.GroovyTestCase[] ,
+found in the JavaDoc documentation for gapi:groovy.test.GroovyTestCase[] ,
 don't forget it is inherited from `junit.framework.TestCase` which inherits all the `assert*` methods.
 
 ==== Assertion Methods
diff --git a/subprojects/groovy-console/src/test/groovy/groovy/console/SwingBuilderConsoleTest.groovy b/subprojects/groovy-console/src/test/groovy/groovy/console/SwingBuilderConsoleTest.groovy
index 597022e..6e4be7b 100644
--- a/subprojects/groovy-console/src/test/groovy/groovy/console/SwingBuilderConsoleTest.groovy
+++ b/subprojects/groovy-console/src/test/groovy/groovy/console/SwingBuilderConsoleTest.groovy
@@ -16,12 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package groovy.swing
+package groovy.console
 
 import groovy.console.ui.Console
 import groovy.console.ui.ConsoleActions
 import groovy.console.ui.view.BasicMenuBar
 import groovy.console.ui.view.MacOSXMenuBar
+import groovy.swing.GroovySwingTestCase
+import groovy.swing.SwingBuilder
 import org.codehaus.groovy.control.CompilerConfiguration
 
 import javax.swing.JTextPane
diff --git a/subprojects/groovy-console/src/test/groovy/groovy/console/ui/AstNodeToScriptAdapterTest.groovy b/subprojects/groovy-console/src/test/groovy/groovy/console/ui/AstNodeToScriptAdapterTest.groovy
index e42f173..3977bfe 100644
--- a/subprojects/groovy-console/src/test/groovy/groovy/console/ui/AstNodeToScriptAdapterTest.groovy
+++ b/subprojects/groovy-console/src/test/groovy/groovy/console/ui/AstNodeToScriptAdapterTest.groovy
@@ -16,8 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package groovy.inspect.swingui
+package groovy.console.ui
 
+import groovy.test.GroovyTestCase
 import org.codehaus.groovy.ast.VariableScope
 import org.codehaus.groovy.ast.expr.BooleanExpression
 import org.codehaus.groovy.ast.stmt.BlockStatement
diff --git a/subprojects/groovy-console/src/test/groovy/groovy/console/ui/ScriptToTreeNodeAdapterTest.groovy b/subprojects/groovy-console/src/test/groovy/groovy/console/ui/ScriptToTreeNodeAdapterTest.groovy
index b01645f..aa2c810 100644
--- a/subprojects/groovy-console/src/test/groovy/groovy/console/ui/ScriptToTreeNodeAdapterTest.groovy
+++ b/subprojects/groovy-console/src/test/groovy/groovy/console/ui/ScriptToTreeNodeAdapterTest.groovy
@@ -18,13 +18,12 @@
  */
 package groovy.console.ui
 
-import groovy.inspect.swingui.ScriptToTreeNodeAdapter
-import groovy.inspect.swingui.SwingTreeNodeMaker
+import groovy.test.GroovyTestCase
+import junit.framework.AssertionFailedError
 import org.codehaus.groovy.control.CompilePhase
 import org.codehaus.groovy.control.Phases
 
 import javax.swing.tree.TreeNode
-import junit.framework.AssertionFailedError
 
 /**
  * Unit test for ScriptToTreeNodeAdapter.
diff --git a/subprojects/groovy-console/src/test/groovy/groovy/console/ui/text/GroovyFilterTests.groovy b/subprojects/groovy-console/src/test/groovy/groovy/console/ui/text/GroovyFilterTests.groovy
index f11c51a..d27302b 100644
--- a/subprojects/groovy-console/src/test/groovy/groovy/console/ui/text/GroovyFilterTests.groovy
+++ b/subprojects/groovy-console/src/test/groovy/groovy/console/ui/text/GroovyFilterTests.groovy
@@ -16,7 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package groovy.ui.text
+package groovy.console.ui.text
+
+import groovy.test.GroovyTestCase
 
 class GroovyFilterTests extends GroovyTestCase {
 
diff --git a/subprojects/groovy-datetime/src/spec/test/gdk/WorkingWithDateTimeTypesTest.groovy b/subprojects/groovy-datetime/src/spec/test/gdk/WorkingWithDateTimeTypesTest.groovy
index 4429351..14c0191 100644
--- a/subprojects/groovy-datetime/src/spec/test/gdk/WorkingWithDateTimeTypesTest.groovy
+++ b/subprojects/groovy-datetime/src/spec/test/gdk/WorkingWithDateTimeTypesTest.groovy
@@ -18,6 +18,8 @@
  */
 package gdk
 
+import groovy.test.GroovyTestCase
+
 import java.time.DayOfWeek
 import java.time.Duration
 import java.time.LocalDate
diff --git a/subprojects/groovy-datetime/src/test/java/groovy/DateTimeTest.groovy b/subprojects/groovy-datetime/src/test/java/groovy/DateTimeTest.groovy
index bda4a4b..96d4eb2 100644
--- a/subprojects/groovy-datetime/src/test/java/groovy/DateTimeTest.groovy
+++ b/subprojects/groovy-datetime/src/test/java/groovy/DateTimeTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy
 
+import groovy.test.GroovyTestCase
+
 import java.text.SimpleDateFormat
 import java.time.Duration
 import java.time.Instant
diff --git a/subprojects/groovy-dateutil/src/spec/test/gdk/WorkingWithDateUtilTypesTest.groovy b/subprojects/groovy-dateutil/src/spec/test/gdk/WorkingWithDateUtilTypesTest.groovy
index ec60df9..d02f2cf 100644
--- a/subprojects/groovy-dateutil/src/spec/test/gdk/WorkingWithDateUtilTypesTest.groovy
+++ b/subprojects/groovy-dateutil/src/spec/test/gdk/WorkingWithDateUtilTypesTest.groovy
@@ -18,6 +18,8 @@
  */
 package gdk
 
+import groovy.test.GroovyTestCase
+
 class WorkingWithDateUtilTypesTest extends GroovyTestCase {
 
     void testGetAt() {
diff --git a/subprojects/groovy-dateutil/src/test/java/groovy/DateTest.groovy b/subprojects/groovy-dateutil/src/test/java/groovy/DateTest.groovy
index b014f53..a5c4562 100644
--- a/subprojects/groovy-dateutil/src/test/java/groovy/DateTest.groovy
+++ b/subprojects/groovy-dateutil/src/test/java/groovy/DateTest.groovy
@@ -18,10 +18,19 @@
  */
 package groovy
 
+import groovy.test.GroovyTestCase
+
 import java.text.DateFormat
 import java.text.SimpleDateFormat
 
-import static java.util.Calendar.*
+import static java.util.Calendar.DATE
+import static java.util.Calendar.DAY_OF_WEEK
+import static java.util.Calendar.FEBRUARY
+import static java.util.Calendar.HOUR_OF_DAY
+import static java.util.Calendar.MONTH
+import static java.util.Calendar.SATURDAY
+import static java.util.Calendar.YEAR
+import static java.util.Calendar.getInstance
 
 class DateTest extends GroovyTestCase {
     void testCalendarNextPrevious() {
diff --git a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyDocToolTest.java b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyDocToolTest.java
index bc72fc1..0f1ddfd 100644
--- a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyDocToolTest.java
+++ b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyDocToolTest.java
@@ -18,7 +18,7 @@
  */
 package org.codehaus.groovy.tools.groovydoc;
 
-import groovy.util.GroovyTestCase;
+import groovy.test.GroovyTestCase;
 import org.codehaus.groovy.groovydoc.GroovyClassDoc;
 import org.codehaus.groovy.groovydoc.GroovyMethodDoc;
 import org.codehaus.groovy.groovydoc.GroovyRootDoc;
diff --git a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyRootDocBuilderTest.java b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyRootDocBuilderTest.java
index 22c7e51..9be0e12 100644
--- a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyRootDocBuilderTest.java
+++ b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/GroovyRootDocBuilderTest.java
@@ -18,7 +18,7 @@
  */
 package org.codehaus.groovy.tools.groovydoc;
 
-import groovy.util.GroovyTestCase;
+import groovy.test.GroovyTestCase;
 
 import java.util.ArrayList;
 
diff --git a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDocTests.groovy b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDocTests.groovy
index 9685cb5..17cf235 100644
--- a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDocTests.groovy
+++ b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDocTests.groovy
@@ -18,6 +18,8 @@
  */
 package org.codehaus.groovy.tools.groovydoc
 
+import groovy.test.GroovyTestCase
+
 class SimpleGroovyClassDocTests extends GroovyTestCase {
 
     void testReplaceTags_link() {
diff --git a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyRootDocTests.groovy b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyRootDocTests.groovy
index 7f631c1..927a0c5 100644
--- a/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyRootDocTests.groovy
+++ b/subprojects/groovy-groovydoc/src/test/groovy/org/codehaus/groovy/tools/groovydoc/SimpleGroovyRootDocTests.groovy
@@ -18,6 +18,8 @@
  */
 package org.codehaus.groovy.tools.groovydoc
 
+import groovy.test.GroovyTestCase
+
 class SimpleGroovyRootDocTests extends GroovyTestCase {
 
     // GROOVY-6017
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AllCompletorsTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AllCompletersTest.groovy
similarity index 89%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AllCompletorsTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AllCompletersTest.groovy
index f2fa886..4533712 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AllCompletorsTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AllCompletersTest.groovy
@@ -16,24 +16,25 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
+import groovy.test.GroovyTestCase
 import jline.console.completer.Completer
 import jline.console.history.FileHistory
-import org.codehaus.groovy.tools.shell.commands.DocCommand
-import org.codehaus.groovy.tools.shell.commands.EditCommand
-import org.codehaus.groovy.tools.shell.commands.ExitCommand
-import org.codehaus.groovy.tools.shell.commands.HelpCommand
-import org.codehaus.groovy.tools.shell.commands.InspectCommand
-import org.codehaus.groovy.tools.shell.commands.PurgeCommand
-import org.codehaus.groovy.tools.shell.commands.SetCommand
-import org.codehaus.groovy.tools.shell.commands.ShowCommand
-
+import org.codehaus.groovy.tools.shell.IO
+import org.apache.groovy.groovysh.commands.DocCommand
+import org.apache.groovy.groovysh.commands.EditCommand
+import org.apache.groovy.groovysh.commands.ExitCommand
+import org.apache.groovy.groovysh.commands.HelpCommand
+import org.apache.groovy.groovysh.commands.InspectCommand
+import org.apache.groovy.groovysh.commands.PurgeCommand
+import org.apache.groovy.groovysh.commands.SetCommand
+import org.apache.groovy.groovysh.commands.ShowCommand
 
 /**
  * Test the combination of multiple completers via JLine ConsoleReader
  */
-class AllCompletorsTest extends GroovyTestCase {
+class AllCompletersTest extends GroovyTestCase {
 
     private IO testio
     private BufferedOutputStream mockOut
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AnsiDetectorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AnsiDetectorTest.groovy
index 1757c1e..d8117d2 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AnsiDetectorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/AnsiDetectorTest.groovy
@@ -16,7 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
+
+import groovy.test.GroovyTestCase
 
 class AnsiDetectorTest extends GroovyTestCase {
 
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CommandCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CommandCompleterTest.groovy
similarity index 67%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CommandCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CommandCompleterTest.groovy
index 032449c..6585646 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CommandCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CommandCompleterTest.groovy
@@ -16,23 +16,26 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
-import org.codehaus.groovy.tools.shell.commands.*
+import org.apache.groovy.groovysh.commands.AliasCommand
+import org.apache.groovy.groovysh.commands.ClearCommand
+import org.apache.groovy.groovysh.commands.SaveCommand
+import org.apache.groovy.groovysh.commands.SetCommand
+import org.apache.groovy.groovysh.commands.ShowCommand
 import org.codehaus.groovy.tools.shell.util.Preferences
 
-class CommandCompletorTest
-extends CompletorTestSupport {
+class CommandCompleterTest extends CompleterTestSupport {
 
     void testEmpty() {
-        CommandsMultiCompleter completor = new CommandsMultiCompleter()
-        assert -1 == completor.complete('', 0, [])
-        assert -1 == completor.complete('i', 2, [])
-        assert -1 == completor.complete('imp', 4, [])
+        CommandsMultiCompleter completer = new CommandsMultiCompleter()
+        assert -1 == completer.complete('', 0, [])
+        assert -1 == completer.complete('i', 2, [])
+        assert -1 == completer.complete('imp', 4, [])
     }
 
     void testAlias() {
-        CommandsMultiCompleter completor = new CommandsMultiCompleter()
+        CommandsMultiCompleter completer = new CommandsMultiCompleter()
         def candidates = []
         CommandRegistry registry = new CommandRegistry()
         groovyshMocker.use {
@@ -41,19 +44,19 @@ extends CompletorTestSupport {
             registry.register(new SetCommand(groovyshMock))
             registry.register(new ShowCommand(groovyshMock))
             aliasCommand.registry = registry
-            completor.add(aliasCommand)
-            completor.refresh()
+            completer.add(aliasCommand)
+            completer.refresh()
 
-            assert 0 == completor.complete(':a', ':a'.length(), candidates)
+            assert 0 == completer.complete(':a', ':a'.length(), candidates)
             assert [':a ', AliasCommand.COMMAND_NAME + ' '] == candidates
             candidates = []
-            assert 3 == completor.complete(':a ', ':a '.length(), candidates)
+            assert 3 == completer.complete(':a ', ':a '.length(), candidates)
             assert [':= ', ':S ', SetCommand.COMMAND_NAME + ' ', ShowCommand.COMMAND_NAME + ' '] == candidates
         }
     }
 
     void testSet() {
-        CommandsMultiCompleter completor = new CommandsMultiCompleter()
+        CommandsMultiCompleter completer = new CommandsMultiCompleter()
         def candidates = []
         groovyshMocker.demand.getINTERPRETER_MODE_PREFERENCE_KEY(1){'interpreterMode'}
         groovyshMocker.demand.getAUTOINDENT_PREFERENCE_KEY(1){'autoindent'}
@@ -61,14 +64,14 @@ extends CompletorTestSupport {
         groovyshMocker.demand.getMETACLASS_COMPLETION_PREFIX_LENGTH_PREFERENCE_KEY(1){'meta-completion-prefix-length'}
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            completor.add(new SetCommand(groovyshMock))
-            completor.refresh()
+            completer.add(new SetCommand(groovyshMock))
+            completer.refresh()
 
-            assert 0 == completor.complete(':s', ':s'.length(), candidates)
+            assert 0 == completer.complete(':s', ':s'.length(), candidates)
             String buffer = SetCommand.COMMAND_NAME + ' '
             assert [buffer] == candidates
             candidates = []
-            assert 5 == completor.complete(buffer, buffer.length(), candidates)
+            assert 5 == completer.complete(buffer, buffer.length(), candidates)
         }
         assert Groovysh.AUTOINDENT_PREFERENCE_KEY + ' ' in candidates
         assert Groovysh.COLORS_PREFERENCE_KEY + ' ' in candidates
@@ -82,34 +85,34 @@ extends CompletorTestSupport {
     }
 
     void testSave() {
-        CommandsMultiCompleter completor = new CommandsMultiCompleter()
+        CommandsMultiCompleter completer = new CommandsMultiCompleter()
         def candidates = []
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            completor.add(new SaveCommand(groovyshMock))
-            completor.refresh()
+            completer.add(new SaveCommand(groovyshMock))
+            completer.refresh()
 
-            assert 0 == completor.complete(':s', ':s'.length(), candidates)
+            assert 0 == completer.complete(':s', ':s'.length(), candidates)
             assert [':s ', SaveCommand.COMMAND_NAME + ' '] == candidates
             candidates = []
             String buffer = SaveCommand.COMMAND_NAME + ' '
-            assert 6 == completor.complete(buffer, buffer.length(), candidates)
+            assert 6 == completer.complete(buffer, buffer.length(), candidates)
             assert candidates.size() > 0 // completes filenames from testing dir
         }
     }
 
     void testClear() {
-        CommandsMultiCompleter completor = new CommandsMultiCompleter()
+        CommandsMultiCompleter completer = new CommandsMultiCompleter()
         def candidates = []
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            completor.add(new ClearCommand(groovyshMock))
-            completor.refresh()
+            completer.add(new ClearCommand(groovyshMock))
+            completer.refresh()
 
-            assert 0 == completor.complete(':c', ':c'.length(), candidates)
+            assert 0 == completer.complete(':c', ':c'.length(), candidates)
             assert [':c', ClearCommand.COMMAND_NAME] == candidates
             candidates = []
-            assert -1 == completor.complete(':c ', ':c '.length(), candidates)
+            assert -1 == completer.complete(':c ', ':c '.length(), candidates)
             assert [] == candidates
 
         }
@@ -117,7 +120,7 @@ extends CompletorTestSupport {
     }
 
     void testSaveSetShow() {
-        CommandsMultiCompleter completor = new CommandsMultiCompleter()
+        CommandsMultiCompleter completer = new CommandsMultiCompleter()
         def candidates = []
         groovyshMocker.demand.getINTERPRETER_MODE_PREFERENCE_KEY(1){'interpreterMode'}
         groovyshMocker.demand.getAUTOINDENT_PREFERENCE_KEY(1){'autoindent'}
@@ -126,19 +129,19 @@ extends CompletorTestSupport {
         groovyshMocker.demand.getIo(1){testio}
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            completor.add(new SaveCommand(groovyshMock))
-            completor.add(new SetCommand(groovyshMock))
-            completor.add(new ShowCommand(groovyshMock))
-            completor.refresh()
+            completer.add(new SaveCommand(groovyshMock))
+            completer.add(new SetCommand(groovyshMock))
+            completer.add(new ShowCommand(groovyshMock))
+            completer.refresh()
 
-            assert 0 == completor.complete(':s', ':s'.length(), candidates)
+            assert 0 == completer.complete(':s', ':s'.length(), candidates)
             assert [':s ', SaveCommand.COMMAND_NAME + ' ', SetCommand.COMMAND_NAME + ' ', ShowCommand.COMMAND_NAME + ' '] == candidates
             candidates = []
             String buffer = SaveCommand.COMMAND_NAME + ' '
-            assert 6 == completor.complete(buffer, buffer.length(), candidates)
+            assert 6 == completer.complete(buffer, buffer.length(), candidates)
             assert ! candidates.contains('all')
             candidates = []
-            assert 3 == completor.complete(':s ', ':s '.length(), candidates)
+            assert 3 == completer.complete(':s ', ':s '.length(), candidates)
             assert ! candidates.contains('all')
 
         }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CompletorTestSupport.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CompleterTestSupport.groovy
similarity index 73%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CompletorTestSupport.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CompleterTestSupport.groovy
index 7b5db87..b8aa078 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CompletorTestSupport.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/CompleterTestSupport.groovy
@@ -16,15 +16,17 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
 import groovy.mock.interceptor.MockFor
-import org.codehaus.groovy.tools.shell.completion.IdentifierCompletor
-import org.codehaus.groovy.tools.shell.completion.ReflectionCompletor
-import org.codehaus.groovy.tools.shell.util.PackageHelper
-import org.codehaus.groovy.tools.shell.util.PackageHelperImpl
+import groovy.test.GroovyTestCase
+import org.codehaus.groovy.tools.shell.IO
+import org.apache.groovy.groovysh.completion.IdentifierCompleter
+import org.apache.groovy.groovysh.completion.ReflectionCompleter
+import org.apache.groovy.groovysh.util.PackageHelper
+import org.apache.groovy.groovysh.util.PackageHelperImpl
 
-abstract class CompletorTestSupport extends GroovyTestCase {
+abstract class CompleterTestSupport extends GroovyTestCase {
 
     BufferManager bufferManager = new BufferManager()
     IO testio
@@ -33,25 +35,17 @@ abstract class CompletorTestSupport extends GroovyTestCase {
     MockFor groovyshMocker
     MockFor packageHelperMocker
     PackageHelper mockPackageHelper
-
-    MockFor reflectionCompletorMocker
-
-    MockFor idCompletorMocker
+    MockFor reflectionCompleterMocker
+    MockFor idCompleterMocker
 
     @Override
     void setUp() {
         super.setUp()
         mockOut = new ByteArrayOutputStream()
-
         mockErr = new ByteArrayOutputStream()
-
-        testio = new IO(
-                new ByteArrayInputStream(),
-                mockOut,
-                mockErr)
-        reflectionCompletorMocker = new MockFor(ReflectionCompletor)
-
-        idCompletorMocker = new MockFor(IdentifierCompletor)
+        testio = new IO(new ByteArrayInputStream(), mockOut, mockErr)
+        reflectionCompleterMocker = new MockFor(ReflectionCompleter)
+        idCompleterMocker = new MockFor(IdentifierCompleter)
 
         groovyshMocker = new MockFor(Groovysh)
         groovyshMocker.demand.getClass(0..1) { Groovysh }
@@ -68,6 +62,6 @@ abstract class CompletorTestSupport extends GroovyTestCase {
             groovyshMocker.demand.getIo(0..1) { testio }
         }
         groovyshMocker.demand.getRegistry(0..1) { registry }
-        groovyshMocker.demand.getBuffers(0..2) {bufferManager}
+        groovyshMocker.demand.getBuffers(0..2) { bufferManager }
     }
 }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ErrorDisplayTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ErrorDisplayTest.groovy
index 6245048..25717f8 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ErrorDisplayTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ErrorDisplayTest.groovy
@@ -16,12 +16,11 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
 import jline.console.ConsoleReader
 import jline.console.completer.CandidateListCompletionHandler
 
-
 class ErrorDisplayTest extends ShellRunnerTestSupport {
 
     void testInput() {
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshParsersTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshParsersTest.groovy
index 5c66da0..395f5f0 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshParsersTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshParsersTest.groovy
@@ -16,9 +16,10 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
 import groovy.mock.interceptor.MockFor
+import groovy.test.GroovyTestCase
 import org.codehaus.groovy.control.CompilationFailedException
 
 class GroovyshParsersTest extends GroovyTestCase {
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshTest.groovy
index 077b75c..7d3ebeb 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/GroovyshTest.groovy
@@ -16,14 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
+import groovy.test.GroovyTestCase
+import org.apache.groovy.groovysh.completion.ReflectionCompleter
+import org.apache.groovy.groovysh.completion.ReflectionCompletionCandidate
+import org.apache.groovy.groovysh.completion.TokenUtilTest
 import org.codehaus.groovy.GroovyException
 import org.codehaus.groovy.control.MultipleCompilationErrorsException
-import org.codehaus.groovy.tools.shell.completion.ReflectionCompletionCandidate
-import org.codehaus.groovy.tools.shell.completion.ReflectionCompletor
-import org.codehaus.groovy.tools.shell.completion.TokenUtilTest
-import org.codehaus.groovy.tools.shell.util.Preferences
+import org.codehaus.groovy.tools.shell.IO
 import org.fusesource.jansi.AnsiOutputStream
 
 class GroovyshTest extends GroovyTestCase {
@@ -153,7 +154,7 @@ class GroovyshTest extends GroovyTestCase {
                     new StackTraceElement(Interpreter.SCRIPT_FILENAME, 'run', 'scriptFile', 42)]
         })
         assert '' == mockOut.toString()
-        assert mockErr.toString().contains('org.codehaus.groovy.tools.shell.GroovyshTest$')
+        assert mockErr.toString().contains('org.apache.groovy.groovysh.GroovyshTest$')
         assert mockErr.toString().contains('fooClass')
         assert mockErr.toString().contains('foo')
         assert ! mockErr.toString().contains(Interpreter.SCRIPT_FILENAME)
@@ -377,7 +378,7 @@ class GroovyshInterpreterModeTest extends GroovyshTest {
 }
 
 
-class GroovyshCompletorTest extends GroovyTestCase {
+class GroovyshCompleterTest extends GroovyTestCase {
 
     void testIOMock() {
         IO testio
@@ -385,10 +386,7 @@ class GroovyshCompletorTest extends GroovyTestCase {
         ByteArrayOutputStream mockErr
         mockOut = new ByteArrayOutputStream()
         mockErr = new ByteArrayOutputStream()
-        testio = new IO(
-                new ByteArrayInputStream(),
-                mockOut,
-                mockErr)
+        testio = new IO(new ByteArrayInputStream(), mockOut, mockErr)
         testio.out.println('mockResult')
         assertTrue('stdout=' + mockOut.toString() + '\nstderr=' + mockErr.toString(), mockOut.toString().contains('mockResult'))
         testio.err.println('mockErrResult')
@@ -407,7 +405,7 @@ class GroovyshCompletorTest extends GroovyTestCase {
         Groovysh groovysh = new Groovysh(testio)
         List<ReflectionCompletionCandidate> candResult = (List<ReflectionCompletionCandidate>) groovysh.interp.evaluate([
                 """\
-import ${ReflectionCompletor.getCanonicalName()}
+import ${ReflectionCompleter.getCanonicalName()}
 class Foo extends HashSet implements Comparable {
   int compareTo(Object) {0};
   int priv;
@@ -420,7 +418,7 @@ class Foo extends HashSet implements Comparable {
   private int getPriv4(){4};
   int getPriv5(){5};
 }
-ReflectionCompletor.getPublicFieldsAndMethods(Foo, '')
+ReflectionCompleter.getPublicFieldsAndMethods(Foo, '')
 """])
         assert candResult
         assert candResult.size() > 0
@@ -451,7 +449,7 @@ ReflectionCompletor.getPublicFieldsAndMethods(Foo, '')
         Groovysh groovysh = new Groovysh(testio)
         List<ReflectionCompletionCandidate> candResult = (List<ReflectionCompletionCandidate>) groovysh.interp.evaluate([
                 """\
-import ${ReflectionCompletor.getCanonicalName()}
+import ${ReflectionCompleter.getCanonicalName()}
 class Foo extends HashSet implements Comparable {
   int compareTo(Object) {0};
   int priv;
@@ -464,7 +462,7 @@ class Foo extends HashSet implements Comparable {
   private int getPriv4(){4};
   int getPriv5(){5};
 }
-ReflectionCompletor.getPublicFieldsAndMethods(new Foo(), '')
+ReflectionCompleter.getPublicFieldsAndMethods(new Foo(), '')
 """])
         assertNotNull(candResult)
         assert candResult.size() > 0
@@ -488,7 +486,7 @@ ReflectionCompletor.getPublicFieldsAndMethods(new Foo(), '')
         Groovysh groovysh = new Groovysh(new URLClassLoader(), new Binding(), testio)
         def result = groovysh.execute('import ' + GroovyException.name)
         assert result == GroovyException.canonicalName
-        ReflectionCompletor compl = new ReflectionCompletor(groovysh)
+        ReflectionCompleter compl = new ReflectionCompleter(groovysh)
         def candidates = []
 
         compl.complete(TokenUtilTest.tokenList('GroovyException.'), candidates)
@@ -501,7 +499,7 @@ ReflectionCompletor.getPublicFieldsAndMethods(new Foo(), '')
         // tests that import are taken into account when evaluating for completion
         IO testio = new IO()
         Groovysh groovysh = new Groovysh(new URLClassLoader(), new Binding(), testio)
-        ReflectionCompletor compl = new ReflectionCompletor(groovysh)
+        ReflectionCompleter compl = new ReflectionCompleter(groovysh)
         def candidates = []
         compl.complete(TokenUtilTest.tokenList(/['a':3, 'b':4]./), candidates)
         assert candidates.size() > 1
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompleterTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompleterTest.groovy
new file mode 100644
index 0000000..f052999
--- /dev/null
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompleterTest.groovy
@@ -0,0 +1,120 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.groovy.groovysh
+
+import jline.console.completer.Completer
+import org.apache.groovy.groovysh.commands.ImportCommand
+
+class ImportCompleterTest extends CompleterTestSupport {
+
+    void testEmpty() {
+        mockPackageHelper = new MockPackageHelper(['java', 'test'])
+        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
+        groovyshMocker.demand.getInterp(1) {}
+        groovyshMocker.use {
+            Groovysh groovyshMock = new Groovysh()
+            ImportCommand iCom = new ImportCommand(groovyshMock)
+            Completer completer = iCom.completer
+            def candidates = []
+            assert 0 == completer.complete('', 0, candidates)
+            // order changed by sort
+            assert [':i ', ':i ', 'import ', 'import '] == candidates.sort()
+        }
+    }
+
+    void testUnknownVar() {
+        mockPackageHelper = new MockPackageHelper(['java', 'test'])
+        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
+        groovyshMocker.demand.getInterp(1) {}
+        groovyshMocker.use {
+            Groovysh groovyshMock = new Groovysh()
+            ImportCommand iCom = new ImportCommand(groovyshMock)
+            Completer completer = iCom.completer
+            def candidates = []
+            assert 7 == completer.complete('import ', 'import '.length(), candidates)
+            // order changed by sort, needed to make tests run on different JDks
+            assert ['java.', 'static ', 'test.'] == candidates.sort()
+        }
+    }
+
+    void testJ() {
+        mockPackageHelper = new MockPackageHelper(['java', 'test'])
+        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
+        groovyshMocker.demand.getInterp(1) {}
+        groovyshMocker.use {
+            Groovysh groovyshMock = new Groovysh()
+            ImportCommand iCom = new ImportCommand(groovyshMock)
+            Completer completer = iCom.completer
+            def candidates = []
+            // argument completer completes after 'import '
+            assert 7 == completer.complete('import j', 'import j'.length(), candidates)
+            assert ['java.'] == candidates
+        }
+    }
+
+    void testJavaDot() {
+        mockPackageHelper = new MockPackageHelper(['java', 'test'])
+        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
+        groovyshMocker.demand.getInterp(1) {}
+        groovyshMocker.use {
+            Groovysh groovyshMock = new Groovysh()
+            ImportCommand iCom = new ImportCommand(groovyshMock)
+            Completer completer = iCom.completer
+            def candidates = []
+            // argument completer completes after 'import '
+            String buffer = 'import java.'
+            assert buffer.length() == completer.complete(buffer, buffer.length(), candidates)
+            // order changed by sort, needed to run tests on different JDKs
+            assert ['* ', 'java.', 'test.'] == candidates.sort()
+        }
+    }
+
+    void testJavaLangDot() {
+        mockPackageHelper = new MockPackageHelper(['java', 'test'])
+        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
+        groovyshMocker.demand.getInterp(1) {}
+        groovyshMocker.use {
+            Groovysh groovyshMock = new Groovysh()
+            ImportCommand iCom = new ImportCommand(groovyshMock)
+            Completer completer = iCom.completer
+            def candidates = []
+            // argument completer completes after 'import '
+            String buffer = 'import java.lang.'
+            assert buffer.length() == completer.complete(buffer, buffer.length(), candidates)
+            // order changed by sort, needed to make tests run on different JDks
+            assert ['* ', 'java.', 'test.'] == candidates.sort()
+        }
+    }
+
+    void testAs() {
+        mockPackageHelper = new MockPackageHelper(['java', 'Test'])
+        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
+        groovyshMocker.demand.getInterp(1) {}
+        groovyshMocker.use {
+            Groovysh groovyshMock = new Groovysh()
+            ImportCommand iCom = new ImportCommand(groovyshMock)
+            Completer completer = iCom.completer
+            def candidates = []
+            // mock package
+            String buffer = 'import java.Test '
+            assert buffer.length() == completer.complete(buffer, buffer.length(), candidates)
+            assert ['as '] == candidates
+        }
+    }
+}
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompleterUnitTest.groovy
similarity index 70%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompleterUnitTest.groovy
index 7104d44..88514a2 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ImportCompleterUnitTest.groovy
@@ -16,33 +16,13 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
+
 import groovy.mock.interceptor.MockFor
-import jline.console.completer.ArgumentCompleter
-import jline.console.completer.Completer
-import jline.console.completer.NullCompleter
-import jline.console.completer.StringsCompleter
-import org.codehaus.groovy.tools.shell.commands.ImportCommand
-import org.codehaus.groovy.tools.shell.commands.ImportCompleter
-import org.codehaus.groovy.tools.shell.util.PackageHelper
+import groovy.test.GroovyTestCase
+import org.apache.groovy.groovysh.commands.ImportCompleter
+import org.apache.groovy.groovysh.util.PackageHelper
 import org.codehaus.groovy.tools.shell.util.Preferences
-/**
- * as opposed to MockFor, traditional custom mocking allows @CompileStatic for the class under Test
- */
-class MockPackageHelper implements PackageHelper {
-    Set<String> mockContents
-    MockPackageHelper(Collection<String> mockContents) {
-        this.mockContents = new HashSet<String>(mockContents)
-    }
-
-    @Override
-    Set<String> getContents(String packagename) {
-        return mockContents
-    }
-
-    @Override
-    void reset() { }
-}
 
 class ImportCompleterUnitTest extends GroovyTestCase {
 
@@ -277,101 +257,3 @@ class ImportCompleterUnitTest extends GroovyTestCase {
         }
     }
 }
-
-class ImportCompleterTest extends CompletorTestSupport {
-
-    void testEmpty() {
-        mockPackageHelper = new MockPackageHelper(['java', 'test'])
-        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
-        groovyshMocker.demand.getInterp(1) {}
-        groovyshMocker.use {
-            Groovysh groovyshMock = new Groovysh()
-            ImportCommand iCom = new ImportCommand(groovyshMock)
-            Completer completer = iCom.completer
-            def candidates = []
-            assert 0 == completer.complete('', 0, candidates)
-            // order changed by sort
-            assert [':i ', ':i ', 'import ', 'import '] == candidates.sort()
-        }
-    }
-
-    void testUnknownVar() {
-        mockPackageHelper = new MockPackageHelper(['java', 'test'])
-        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
-        groovyshMocker.demand.getInterp(1) {}
-        groovyshMocker.use {
-            Groovysh groovyshMock = new Groovysh()
-            ImportCommand iCom = new ImportCommand(groovyshMock)
-            Completer completer = iCom.completer
-            def candidates = []
-            assert 7 == completer.complete('import ', 'import '.length(), candidates)
-            // order changed by sort, needed to make tests run on different JDks
-            assert ['java.', 'static ', 'test.'] == candidates.sort()
-        }
-    }
-
-    void testJ() {
-        mockPackageHelper = new MockPackageHelper(['java', 'test'])
-        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
-        groovyshMocker.demand.getInterp(1) {}
-        groovyshMocker.use {
-            Groovysh groovyshMock = new Groovysh()
-            ImportCommand iCom = new ImportCommand(groovyshMock)
-            Completer completer = iCom.completer
-            def candidates = []
-            // argument completer completes after 'import '
-            assert 7 == completer.complete('import j', 'import j'.length(), candidates)
-            assert ['java.'] == candidates
-        }
-    }
-
-    void testJavaDot() {
-        mockPackageHelper = new MockPackageHelper(['java', 'test'])
-        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
-        groovyshMocker.demand.getInterp(1) {}
-        groovyshMocker.use {
-            Groovysh groovyshMock = new Groovysh()
-            ImportCommand iCom = new ImportCommand(groovyshMock)
-            Completer completer = iCom.completer
-            def candidates = []
-            // argument completer completes after 'import '
-            String buffer = 'import java.'
-            assert buffer.length() == completer.complete(buffer, buffer.length(), candidates)
-            // order changed by sort, needed to run tests on different JDKs
-            assert ['* ', 'java.', 'test.'] == candidates.sort()
-        }
-    }
-
-    void testJavaLangDot() {
-        mockPackageHelper = new MockPackageHelper(['java', 'test'])
-        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
-        groovyshMocker.demand.getInterp(1) {}
-        groovyshMocker.use {
-            Groovysh groovyshMock = new Groovysh()
-            ImportCommand iCom = new ImportCommand(groovyshMock)
-            Completer completer = iCom.completer
-            def candidates = []
-            // argument completer completes after 'import '
-            String buffer = 'import java.lang.'
-            assert buffer.length() == completer.complete(buffer, buffer.length(), candidates)
-            // order changed by sort, needed to make tests run on different JDks
-            assert ['* ', 'java.', 'test.'] == candidates.sort()
-        }
-    }
-
-    void testAs() {
-        mockPackageHelper = new MockPackageHelper(['java', 'Test'])
-        groovyshMocker.demand.getPackageHelper(1) { mockPackageHelper }
-        groovyshMocker.demand.getInterp(1) {}
-        groovyshMocker.use {
-            Groovysh groovyshMock = new Groovysh()
-            ImportCommand iCom = new ImportCommand(groovyshMock)
-            Completer completer = iCom.completer
-            def candidates = []
-            // mock package
-            String buffer = 'import java.Test '
-            assert buffer.length() == completer.complete(buffer, buffer.length(), candidates)
-            assert ['as '] == candidates
-        }
-    }
-}
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/MockPackageHelper.groovy
similarity index 62%
copy from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy
copy to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/MockPackageHelper.groovy
index ecb1d1b..75c2ad8 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/MockPackageHelper.groovy
@@ -16,32 +16,24 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.expr
+package org.apache.groovy.groovysh
 
-import org.codehaus.groovy.tools.shell.Groovysh
+import org.apache.groovy.groovysh.util.PackageHelper
 
 /**
- * Support for expression tests.
+ * as opposed to MockFor, traditional custom mocking allows @CompileStatic for the class under Test
  */
-abstract class ExprTestSupport
-    extends GroovyTestCase
-{
-    Groovysh shell
-
-    Object lastResult
+class MockPackageHelper implements PackageHelper {
+    Set<String> mockContents
+    MockPackageHelper(Collection<String> mockContents) {
+        this.mockContents = new HashSet<String>(mockContents)
+    }
 
     @Override
-    void setUp() {
-        super.setUp()
-
-        shell = new Groovysh()
-
-        shell.errorHook = { Throwable cause ->
-            throw cause
-        }
-
-        shell.resultHook = { result ->
-            lastResult = result
-        }
+    Set<String> getContents(String packagename) {
+        return mockContents
     }
+
+    @Override
+    void reset() { }
 }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTest.groovy
index 41715d8..6ec455a 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTest.groovy
@@ -16,11 +16,13 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
 import groovy.mock.interceptor.MockFor
+import groovy.test.GroovyTestCase
 import jline.console.ConsoleReader
 import jline.console.completer.CandidateListCompletionHandler
+import org.codehaus.groovy.tools.shell.IO
 import org.codehaus.groovy.tools.shell.util.Preferences
 
 class ShellRunnerTest extends GroovyTestCase {
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTestSupport.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTestSupport.groovy
index d74c6f3..d1565b1 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTestSupport.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellRunnerTestSupport.groovy
@@ -16,11 +16,13 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
 
 import groovy.mock.interceptor.MockFor
 import groovy.mock.interceptor.StubFor
+import groovy.test.GroovyTestCase
 import jline.console.ConsoleReader
+import org.codehaus.groovy.tools.shell.IO
 
 /**
  * Support for testing {@link Command} instances.
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellTest.groovy
index 5ebe2fe..55e255c 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/ShellTest.groovy
@@ -16,7 +16,10 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell
+package org.apache.groovy.groovysh
+
+import groovy.test.GroovyTestCase
+import org.codehaus.groovy.tools.shell.IO
 
 class ShellTest extends GroovyTestCase {
 
@@ -37,8 +40,6 @@ class ShellTest extends GroovyTestCase {
                 mockErr)
     }
 
-
-
     void testFindCommandNull() {
         Shell shell = new Shell(testio)
         assert null == shell.findCommand(' foo bar ')
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/AliasCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/AliasCommandTest.groovy
index 64dc802..fcff8d7 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/AliasCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/AliasCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link AliasCommand} class.
  */
-class AliasCommandTest
-    extends CommandTestSupport
-{
+class AliasCommandTest extends CommandTestSupport {
     void testAlias() {
         shell.execute(AliasCommand.COMMAND_NAME)
         shell.execute(AliasCommand.COMMAND_NAME + ' foo bar')
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ClearCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ClearCommandTest.groovy
index 7d6f95d..b13fa91 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ClearCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ClearCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link ClearCommand} class.
  */
-class ClearCommandTest
-    extends CommandTestSupport
-{
+class ClearCommandTest extends CommandTestSupport {
     void testClear() {
         shell.execute(ClearCommand.COMMAND_NAME)
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/CommandTestSupport.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/CommandTestSupport.groovy
index f907a81..a9456f9 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/CommandTestSupport.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/CommandTestSupport.groovy
@@ -16,16 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
-import org.codehaus.groovy.tools.shell.Groovysh
+import groovy.test.GroovyTestCase
+import org.apache.groovy.groovysh.Groovysh
 
 /**
  * Support for testing {@link Command} instances.
  */
-abstract class CommandTestSupport
-    extends GroovyTestCase
-{
+abstract class CommandTestSupport extends GroovyTestCase {
     protected Groovysh shell
 
     protected Object lastResult
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ComplexCommandSupportTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ComplexCommandSupportTest.groovy
index 6598918..defc083 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ComplexCommandSupportTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ComplexCommandSupportTest.groovy
@@ -16,18 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 import jline.console.completer.Completer
-import org.codehaus.groovy.tools.shell.CommandException
-import org.codehaus.groovy.tools.shell.ComplexCommandSupport
+import org.apache.groovy.groovysh.CommandException
+import org.apache.groovy.groovysh.ComplexCommandSupport
 
 /**
  * Tests for the {@link ComplexCommandSupport} class.
  */
-class ComplexCommandSupportTest
-    extends CommandTestSupport
-{
+class ComplexCommandSupportTest extends CommandTestSupport {
     void testNew() {
         ComplexCommandSupport com = new ComplexCommandSupport(shell, 'fcom', 'f', null) {}
         assert 'fcom' == com.name
@@ -63,19 +61,19 @@ class ComplexCommandSupportTest
 
     void testCreateCompleters() {
         ComplexCommandSupport com = new ComplexCommandSupport(shell, 'fcom', 'f', ['foo', 'bar', 'baz']) {}
-        List<Completer> completors = com.createCompleters()
-        assert 2 == completors.size()
-        assert null == completors[-1]
+        List<Completer> completers = com.createCompleters()
+        assert 2 == completers.size()
+        assert null == completers[-1]
 
     }
 
-    void testCompletor() {
+    void testCompleter() {
         ComplexCommandSupport com = new ComplexCommandSupport(shell, 'fcom', 'f', ['foo', 'bar', 'baz']) {}
         def candidates = []
-        Completer completor = com.completer
-        assert 5 == completor.complete('fcom ba', 'fcom ba'.length(), candidates)
+        Completer completer = com.completer
+        assert 5 == completer.complete('fcom ba', 'fcom ba'.length(), candidates)
         assert ['bar', 'baz'] == candidates
-        assert -1 == completor.complete('fcom bar ba', 'fcom bar ba'.length(), candidates)
+        assert -1 == completer.complete('fcom bar ba', 'fcom bar ba'.length(), candidates)
     }
 
     void testDoAll() {
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DisplayCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DisplayCommandTest.groovy
index a72916a..44666e2 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DisplayCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DisplayCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link DisplayCommand} class.
  */
-class DisplayCommandTest
-    extends CommandTestSupport
-{
+class DisplayCommandTest extends CommandTestSupport {
     void testDisplay() {
         shell.execute(DisplayCommand.COMMAND_NAME)
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DocCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DocCommandTest.groovy
index c207c40..fa9f2c6 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DocCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/DocCommandTest.groovy
@@ -16,15 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
-import org.codehaus.groovy.tools.shell.Groovysh
+import org.apache.groovy.groovysh.Groovysh
 
 /**
  * Tests for the {@link DocCommand} class.
  */
-class DocCommandTest extends CommandTestSupport
-{
+class DocCommandTest extends CommandTestSupport {
     void testInitializeAWTDesktopPlatformSupportFlag() {
         def desktopClass = Class.forName('java.awt.Desktop')
         boolean hasSupport =
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/EditCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/EditCommandTest.groovy
index 56b30d5..9c55045 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/EditCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/EditCommandTest.groovy
@@ -16,16 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 import static groovy.test.GroovyAssert.isAtLeastJdk
 
 /**
  * Tests for the {@link EditCommand} class.
  */
-class EditCommandTest
-    extends CommandTestSupport
-{
+class EditCommandTest extends CommandTestSupport {
     void testProcessBuilderInit() {
         def mockEdit = new EditCommand(shell)
         ProcessBuilder pb = mockEdit.getEditorProcessBuilder('/usr/bin/vim',
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ExitCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ExitCommandTest.groovy
index 9880400..af5b3a2 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ExitCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ExitCommandTest.groovy
@@ -16,16 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
-import org.codehaus.groovy.tools.shell.ExitNotification
+import org.apache.groovy.groovysh.ExitNotification
 
 /**
  * Tests for the {@link ExitCommand} class.
  */
-class ExitCommandTest
-    extends CommandTestSupport
-{
+class ExitCommandTest extends CommandTestSupport {
     void testWithNoArgs() {
         try {
             shell.execute(ExitCommand.COMMAND_NAME)
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/GrabCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/GrabCommandTest.groovy
index 52ec1a9..d973546 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/GrabCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/GrabCommandTest.groovy
@@ -16,12 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 import groovy.grape.Grape
 import groovy.mock.interceptor.StubFor
-import org.codehaus.groovy.tools.shell.Groovysh
-import org.codehaus.groovy.tools.shell.util.PackageHelperImpl
+import org.apache.groovy.groovysh.Groovysh
+import org.apache.groovy.groovysh.util.PackageHelperImpl
 
 /**
  * Tests for the {@link GrabCommand} class.
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HelpCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HelpCommandTest.groovy
index cc2bc89..504e3cb 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HelpCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HelpCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link HelpCommand} class.
  */
-class HelpCommandTest
-    extends CommandTestSupport
-{
+class HelpCommandTest extends CommandTestSupport {
     void testList() {
         shell.execute(HelpCommand.COMMAND_NAME)
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HistoryCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HistoryCommandTest.groovy
index 5551345..24e2e49 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HistoryCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/HistoryCommandTest.groovy
@@ -16,17 +16,16 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 import jline.console.history.FileHistory
-import org.codehaus.groovy.tools.shell.CompletorTestSupport
-import org.codehaus.groovy.tools.shell.Groovysh
+import org.apache.groovy.groovysh.CompleterTestSupport
+import org.apache.groovy.groovysh.Groovysh
 
 /**
  * Tests for the {@link HistoryCommand} class.
  */
-class HistoryCommandTest extends CommandTestSupport
-{
+class HistoryCommandTest extends CommandTestSupport {
     void testHistory() {
         shell.execute(HistoryCommand.COMMAND_NAME + ' nocommandhere')
     }
@@ -36,8 +35,7 @@ class HistoryCommandTest extends CommandTestSupport
     }
 }
 
-class HistoryCommandIntegrationTest extends CompletorTestSupport
-{
+class HistoryCommandIntegrationTest extends CompleterTestSupport {
     private File filemock
 
     @Override
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ImportCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ImportCommandTest.groovy
index b8f051b..10145a8 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ImportCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ImportCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link ImportCommand} class.
  */
-class ImportCommandTest
-    extends CommandTestSupport
-{
+class ImportCommandTest extends CommandTestSupport {
     void testPatternClassOrMethodName() {
         assert 'java.util.*'.matches(ImportCommand.IMPORTED_ITEM_PATTERN)
         assert 'java.util.Pattern'.matches(ImportCommand.IMPORTED_ITEM_PATTERN)
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/InspectCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/InspectCommandTest.groovy
index 589d192..a0fb315 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/InspectCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/InspectCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link InspectCommand} class.
  */
-class InspectCommandTest
-    extends CommandTestSupport
-{
+class InspectCommandTest extends CommandTestSupport {
     void testInspect() {
         shell.execute(InspectCommand.COMMAND_NAME)
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/LoadCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/LoadCommandTest.groovy
index 16a771e..d5873c5 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/LoadCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/LoadCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link LoadCommand} class.
  */
-class LoadCommandTest
-    extends CommandTestSupport
-{
+class LoadCommandTest extends CommandTestSupport {
     void testLoad() {
         shell.execute(LoadCommand.COMMAND_NAME)
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/PurgeCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/PurgeCommandTest.groovy
index b11de3f..10558ba 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/PurgeCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/PurgeCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link PurgeCommand} class.
  */
-class PurgeCommandTest
-    extends CommandTestSupport
-{
+class PurgeCommandTest extends CommandTestSupport {
     void testPurgeVariables() {
         shell.execute(PurgeCommand.COMMAND_NAME + ' variables')
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RecordCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RecordCommandTest.groovy
index 9faf5c2..6e50e50 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RecordCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RecordCommandTest.groovy
@@ -16,16 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
-import org.codehaus.groovy.tools.shell.CommandException
+import org.apache.groovy.groovysh.CommandException
 
 /**
  * Tests for the {@link RecordCommand} class.
  */
-class RecordCommandTest
-    extends CommandTestSupport
-{
+class RecordCommandTest extends CommandTestSupport {
     void testStopNotStarted() {
         shell.execute(RecordCommand.COMMAND_NAME + ' stop')
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RegisterCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RegisterCommandTest.groovy
index 3c05b3d..dd23272 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RegisterCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/RegisterCommandTest.groovy
@@ -16,29 +16,27 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
-import org.codehaus.groovy.tools.shell.CommandSupport
-import org.codehaus.groovy.tools.shell.Shell
+import org.apache.groovy.groovysh.CommandSupport
+import org.apache.groovy.groovysh.Shell
 
 /**
  * Tests for the {@link RegisterCommand} class.
  */
-class RegisterCommandTest
-    extends CommandTestSupport
-{
+class RegisterCommandTest extends CommandTestSupport {
     void testRegister() {
-        shell.execute(RegisterCommand.COMMAND_NAME + ' org.codehaus.groovy.tools.shell.commands.EchoCommand')
+        shell.execute(RegisterCommand.COMMAND_NAME + ' org.apache.groovy.groovysh.commands.EchoCommand')
     }
 
     void testRegisterDupes() {
-        shell.execute(RegisterCommand.COMMAND_NAME + ' org.codehaus.groovy.tools.shell.commands.EchoCommand')
-        shell.execute(RegisterCommand.COMMAND_NAME + ' org.codehaus.groovy.tools.shell.commands.EchoCommand echo2 \\e2')
+        shell.execute(RegisterCommand.COMMAND_NAME + ' org.apache.groovy.groovysh.commands.EchoCommand')
+        shell.execute(RegisterCommand.COMMAND_NAME + ' org.apache.groovy.groovysh.commands.EchoCommand echo2 \\e2')
     }
 
     void testRegisterDupesFail() {
-        shell.execute(RegisterCommand.COMMAND_NAME + ' org.codehaus.groovy.tools.shell.commands.EchoCommand')
-        shell.execute(RegisterCommand.COMMAND_NAME + ' org.codehaus.groovy.tools.shell.commands.EchoCommand')
+        shell.execute(RegisterCommand.COMMAND_NAME + ' org.apache.groovy.groovysh.commands.EchoCommand')
+        shell.execute(RegisterCommand.COMMAND_NAME + ' org.apache.groovy.groovysh.commands.EchoCommand')
     }
 
     void testRegisterFail() {
@@ -46,9 +44,7 @@ class RegisterCommandTest
         }
 }
 
-class EchoCommand
-    extends CommandSupport
-{
+class EchoCommand extends CommandSupport {
     EchoCommand(final Shell shell, final String name, final String alias) {
         super(shell, name, alias)
     }
@@ -61,5 +57,3 @@ class EchoCommand
         io.out.println(args.join(' ')) //  TODO: i18n
     }
 }
-
-
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SaveCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SaveCommandTest.groovy
index 6dff1f1..4bd1f62 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SaveCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SaveCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link SaveCommand} class.
  */
-class SaveCommandTest
-    extends CommandTestSupport
-{
+class SaveCommandTest extends CommandTestSupport {
     void testSave() {
         shell.execute(SaveCommand.COMMAND_NAME)
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SetCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SetCommandTest.groovy
index 35dfd82..f9d3b64 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SetCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/SetCommandTest.groovy
@@ -16,19 +16,17 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 import jline.console.completer.Completer
-import org.codehaus.groovy.tools.shell.Groovysh
-import org.codehaus.groovy.tools.shell.util.PackageHelper
+import org.apache.groovy.groovysh.Groovysh
+import org.apache.groovy.groovysh.util.PackageHelper
 import org.codehaus.groovy.tools.shell.util.Preferences
 
 /**
  * Tests for the {@link SetCommand} class.
  */
-class SetCommandTest
-    extends CommandTestSupport
-{
+class SetCommandTest extends CommandTestSupport {
     void testSet() {
         shell.execute(SetCommand.COMMAND_NAME)
     }
@@ -37,9 +35,9 @@ class SetCommandTest
 
         List<String> candidates = []
         SetCommand command = new SetCommand(shell)
-        List<Completer> completors = command.createCompleters()
-        assert 2 == completors.size()
-        assert 0 == completors[0].complete('', 0, candidates)
+        List<Completer> completers = command.createCompleters()
+        assert 2 == completers.size()
+        assert 0 == completers[0].complete('', 0, candidates)
         assert Groovysh.AUTOINDENT_PREFERENCE_KEY + ' ' in candidates
         assert PackageHelper.IMPORT_COMPLETION_PREFERENCE_KEY + ' ' in candidates
         assert Preferences.EDITOR_KEY + ' ' in candidates
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ShowCommandTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ShowCommandTest.groovy
index b76ac40..4cc3a19 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ShowCommandTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/commands/ShowCommandTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.commands
+package org.apache.groovy.groovysh.commands
 
 /**
  * Tests for the {@link ShowCommand} class.
  */
-class ShowCommandTest
-    extends CommandTestSupport
-{
+class ShowCommandTest extends CommandTestSupport {
     void testShow() {
         shell.execute(ShowCommand.COMMAND_NAME + ' nocommandhere')
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/CustomClassCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/CustomClassCompleterTest.groovy
similarity index 72%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/CustomClassCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/CustomClassCompleterTest.groovy
index 9be0bf8..61bac65 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/CustomClassCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/CustomClassCompleterTest.groovy
@@ -16,23 +16,23 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
-import org.codehaus.groovy.tools.shell.CompletorTestSupport
-import org.codehaus.groovy.tools.shell.Groovysh
+import org.apache.groovy.groovysh.CompleterTestSupport
+import org.apache.groovy.groovysh.Groovysh
 
-import static org.codehaus.groovy.tools.shell.completion.TokenUtilTest.tokenList
+import static org.apache.groovy.groovysh.completion.TokenUtilTest.tokenList
 
-class CustomClassCompletorTest extends CompletorTestSupport {
+class CustomClassCompleterTest extends CompleterTestSupport {
 
     void testKnownClass() {
         groovyshMocker.demand.getInterp(1) { [classLoader: [loadedClasses: [String]]] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            CustomClassSyntaxCompletor completor = new CustomClassSyntaxCompletor(groovyshMock)
+            CustomClassSyntaxCompleter completer = new CustomClassSyntaxCompleter(groovyshMock)
             def candidates = []
             // in the shell, only Classes in the default package occur,but well...
-            assert completor.complete(tokenList('jav'), candidates)
+            assert completer.complete(tokenList('jav'), candidates)
             assert ['java.lang.String'] == candidates
         }
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/FileNameCompleterTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/FileNameCompleterTest.groovy
index e178a83..dd3cf64 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/FileNameCompleterTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/FileNameCompleterTest.groovy
@@ -16,8 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
+import groovy.test.GroovyTestCase
 import org.junit.Test
 import org.junit.rules.TemporaryFolder
 import org.junit.runner.RunWith
@@ -45,7 +46,7 @@ class FileNameCompleterTest extends GroovyTestCase {
             testFolder = new TemporaryFolder();
             testFolder.create()
 
-            FileNameCompleter completor = new FileNameCompleter() {
+            FileNameCompleter completer = new FileNameCompleter() {
                 @Override
                 protected File getUserDir() {
                     return testFolder.getRoot()
@@ -53,7 +54,7 @@ class FileNameCompleterTest extends GroovyTestCase {
             }
             def candidates = []
             String buffer = ''
-            assert 0 == completor.complete(buffer, 0, candidates)
+            assert 0 == completer.complete(buffer, 0, candidates)
             assert [] == candidates
         } finally {
             if (testFolder != null) {
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/GroovySyntaxCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/GroovySyntaxCompleterTest.groovy
similarity index 51%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/GroovySyntaxCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/GroovySyntaxCompleterTest.groovy
index a6c2a3e..40579ec 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/GroovySyntaxCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/GroovySyntaxCompleterTest.groovy
@@ -16,187 +16,187 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
 import groovy.mock.interceptor.MockFor
-import org.codehaus.groovy.tools.shell.CommandRegistry
-import org.codehaus.groovy.tools.shell.CompletorTestSupport
-import org.codehaus.groovy.tools.shell.Groovysh
-import org.codehaus.groovy.tools.shell.commands.ImportCommand
+import org.apache.groovy.groovysh.CommandRegistry
+import org.apache.groovy.groovysh.CompleterTestSupport
+import org.apache.groovy.groovysh.Groovysh
+import org.apache.groovy.groovysh.commands.ImportCommand
 
-class GroovySyntaxCompletorTest extends CompletorTestSupport {
+class GroovySyntaxCompleterTest extends CompleterTestSupport {
 
     void testEmpty() {
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
-            assert -1 == completor.complete('', 0, [])
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
+            assert -1 == completer.complete('', 0, [])
         }
     }
 
     void testIdentifier() {
-        idCompletorMocker.demand.complete(1) { tokens, candidates ->
+        idCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['jav']); candidates << 'javup'; candidates << 'java.lang.String' ; true}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'jav'
             // in the shell, only Classes in the default package occur,but well...
-            assert 0 == completor.complete(buffer, buffer.length(), candidates)
+            assert 0 == completer.complete(buffer, buffer.length(), candidates)
             assert ['javup', 'java.lang.String'] == candidates
         }
     }
 
     void testIdentifierAfterLCurly() {
-        idCompletorMocker.demand.complete(1) { tokens, candidates ->
+        idCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['{', 'jav']); candidates << 'javup'; candidates << 'java.lang.String' ; true}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = '{jav'
             // in the shell, only Classes in the default package occur,but well...
-            assert 1 == completor.complete(buffer, buffer.length(), candidates)
+            assert 1 == completer.complete(buffer, buffer.length(), candidates)
             assert ['javup', 'java.lang.String'] == candidates
         }
     }
 
     void testMember() {
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['Math', '.', 'ma']); candidates << 'max('; 5}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'Math.ma'
-            assert 5 == completor.complete(buffer, buffer.length(), candidates)
+            assert 5 == completer.complete(buffer, buffer.length(), candidates)
             assert ['max('] == candidates
         }
     }
 
     void testMemberOptionalDot() {
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['Math', '?.', 'ma']); candidates << 'max('; 6}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'Math?.ma'
-            assert 6 == completor.complete(buffer, buffer.length(), candidates)
+            assert 6 == completer.complete(buffer, buffer.length(), candidates)
             assert ['max('] == candidates
         }
     }
 
     void testMemberSpreadDot() {
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['[', 'foo', ']', '*.', 'len']); candidates << 'length()'; 9}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = '[\'foo\']*.len'
-            assert 9 == completor.complete(buffer, buffer.length(), candidates)
+            assert 9 == completer.complete(buffer, buffer.length(), candidates)
             assert ['length()'] == candidates
         }
     }
 
     void testMemberAfterMethod() {
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['Fo', '.', 'ba', '(', ')', '.', 'xyz']); candidates << 'xyzabc'; 0}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'Fo.ba().xyz'
             // xyz cannot be not a var here
-            assert 0 == completor.complete(buffer, buffer.length(), candidates)
+            assert 0 == completer.complete(buffer, buffer.length(), candidates)
             assert ['xyzabc'] == candidates
         }
     }
 
     void testIdentfierAfterDotAfterParens() {
-        idCompletorMocker.demand.complete(1) { tokens, candidates ->
+        idCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['Foo', '.', 'bar', '(', 'xyz']); candidates << 'xyzabc'; true}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'Foo.bar(xyz'
-            assert 8 == completor.complete(buffer, buffer.length(), candidates)
+            assert 8 == completer.complete(buffer, buffer.length(), candidates)
             assert ['xyzabc'] == candidates
         }
     }
 
     void testIndentifierAfterParensBeforeDot() {
-        idCompletorMocker.demand.complete(1) { tokens, candidates ->
+        idCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['Foo', '.', 'bar', '(', 'xyz']); candidates << 'xyzabc'; true}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             // cursor is BEFORE dot
-            assert 8 == completor.complete('Foo.bar(xyz.', 'Foo.bar(xyz'.length(), candidates)
+            assert 8 == completer.complete('Foo.bar(xyz.', 'Foo.bar(xyz'.length(), candidates)
             assert ['xyzabc'] == candidates
         }
     }
 
     void testDoubleIdentifier() {
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'String jav'
-            assert -1 == completor.complete(buffer, buffer.length(), candidates)
+            assert -1 == completer.complete(buffer, buffer.length(), candidates)
             assert [] == candidates
         }
     }
 
     void testInfixKeyword() {
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'class Foo ext'
-            assert 10 == completor.complete(buffer, buffer.length(), candidates)
+            assert 10 == completer.complete(buffer, buffer.length(), candidates)
             assert ['extends'] == candidates
         }
     }
 
     void testInstanceof() {
-        idCompletorMocker.demand.complete(1) { tokens, candidates ->
+        idCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['x', 'instanceof', 'P']); candidates << 'Property'; 13}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
 
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'x instanceof P'
-            assert 13 == completor.complete(buffer, buffer.length(), candidates)
+            assert 13 == completer.complete(buffer, buffer.length(), candidates)
             assert 'Property' in candidates
         }
     }
@@ -204,142 +204,142 @@ class GroovySyntaxCompletorTest extends CompletorTestSupport {
 
     void testAfterSemi() {
         // evaluation of all is dangerous, but the reflectionCompleter has to deal with this
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['deletehardDisk', '(', ')', ';', 'foo', '.', 'subs']); candidates << 'substring('; 22}
 
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         // mock doing the right thing
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'deletehardDisk(); foo.subs'
-            assert 22 == completor.complete(buffer, buffer.length(), candidates)
+            assert 22 == completer.complete(buffer, buffer.length(), candidates)
             assert ['substring('] == candidates
         }
     }
 
     void testAfterOperator() {
         // evaluation of all is dangerous, but the reflectionCompleter has to deal with this
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['a', '=', 'foo', '.', 'subs']); candidates << 'substring('; 9}
 
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         // mock doing the right thing
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'a = foo.subs'
-            assert 9 == completor.complete(buffer, buffer.length(), candidates)
+            assert 9 == completer.complete(buffer, buffer.length(), candidates)
             assert ['substring('] == candidates
         }
     }
 
     void testDontEvaluateAfterCommand() {
         CommandRegistry registry = new CommandRegistry()
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         // mock asserting nothing gets evaluated
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
             // import command prevents reflection completion
             registry.register(new ImportCommand(groovyshMock))
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'import foo'
-            assert -1 == completor.complete(buffer, buffer.length(), candidates)
+            assert -1 == completer.complete(buffer, buffer.length(), candidates)
             assert [] == candidates
         }
     }
 
     void _disabled_testAfterGString() { // should we prohibit this?
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         // mock asserting GString is not evaluated
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = '"\${foo.delete()}".subs'
-            assert candidates == [] && -1 == completor.complete(buffer, buffer.length(), candidates)
+            assert candidates == [] && -1 == completer.complete(buffer, buffer.length(), candidates)
         }
     }
 
     void testInStringFilename() {
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
-        MockFor filenameCompletorMocker = new MockFor(FileNameCompleter)
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
+        MockFor filenameCompleterMocker = new MockFor(FileNameCompleter)
         String linestart = /foo('/ // ends with single hyphen
         String pathstart = '/usr/foobar'
         String buffer = linestart + pathstart
-        filenameCompletorMocker.demand.complete(1) {bufferline, cursor, candidates ->
+        filenameCompleterMocker.demand.complete(1) {bufferline, cursor, candidates ->
             assert(bufferline == pathstart)
             assert(cursor == pathstart.length())
             candidates << 'foobar'; 5}
-        groovyshMocker.use { filenameCompletorMocker.use {
+        groovyshMocker.use { filenameCompleterMocker.use {
             FileNameCompleter mockFileComp = new FileNameCompleter()
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], mockFileComp)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], mockFileComp)
             def candidates = []
-            assert 'foo(\'/usr/'.length() == completor.complete(buffer, buffer.length(), candidates)
+            assert 'foo(\'/usr/'.length() == completer.complete(buffer, buffer.length(), candidates)
             assert ['foobar'] == candidates
         }}
     }
 
     void testInStringFilenameBlanks() {
         // test with blanks (non-tokens) before the first hyphen
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
-        MockFor filenameCompletorMocker = new MockFor(FileNameCompleter)
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
+        MockFor filenameCompleterMocker = new MockFor(FileNameCompleter)
         String linestart = 'x = \'' // ends with single hyphen
         String pathstart = '/usr/foobar'
         String buffer = linestart + pathstart
-        filenameCompletorMocker.demand.complete(1) {bufferline, cursor, candidates ->
+        filenameCompleterMocker.demand.complete(1) {bufferline, cursor, candidates ->
             assert bufferline == pathstart
             assert cursor == pathstart.length()
             candidates << 'foobar'; 5}
-        groovyshMocker.use { filenameCompletorMocker.use {
+        groovyshMocker.use { filenameCompleterMocker.use {
             FileNameCompleter mockFileComp = new FileNameCompleter()
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], mockFileComp)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], mockFileComp)
             def candidates = []
-            assert 'x = \'/usr/'.length() == completor.complete(buffer, buffer.length(), candidates)
+            assert 'x = \'/usr/'.length() == completer.complete(buffer, buffer.length(), candidates)
             assert ['foobar'] == candidates
         }}
     }
 
     void testInGString() {
-        idCompletorMocker.demand.complete(1) { tokens, candidates ->
+        idCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['', '{', 'foo']); candidates << 'foobar'; true}
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         // mock asserting GString is not evaluated
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = '"\${foo'
-            assert 3 == completor.complete(buffer, buffer.length(), candidates)
+            assert 3 == completer.complete(buffer, buffer.length(), candidates)
             assert ['foobar'] == candidates
         }
     }
 
     void testMultilineComplete() {
-        reflectionCompletorMocker.demand.complete(1) { tokens, candidates ->
+        reflectionCompleterMocker.demand.complete(1) { tokens, candidates ->
             assert(tokens*.text == ['xyz\nabc', '.', 'subs']); candidates << 'substring('; 7}
         bufferManager.buffers.add(['"""xyz'])
         bufferManager.setSelected(1)
-        IdentifierCompletor mockIdCompletor = idCompletorMocker.proxyDelegateInstance()
+        IdentifierCompleter mockIdCompleter = idCompleterMocker.proxyDelegateInstance()
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ReflectionCompletor mockReflComp = reflectionCompletorMocker.proxyInstance(groovyshMock)
-            GroovySyntaxCompletor completor = new GroovySyntaxCompletor(groovyshMock, mockReflComp, mockIdCompletor, [mockIdCompletor], null)
+            ReflectionCompleter mockReflComp = reflectionCompleterMocker.proxyInstance(groovyshMock)
+            GroovySyntaxCompleter completer = new GroovySyntaxCompleter(groovyshMock, mockReflComp, mockIdCompleter, [mockIdCompleter], null)
             def candidates = []
             String buffer = 'abc""".subs'
-            assert 7 == completor.complete(buffer, buffer.length(), candidates)
+            assert 7 == completer.complete(buffer, buffer.length(), candidates)
             assert ['substring('] == candidates
         }
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ImportsSyntaxCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ImportsSyntaxCompleterTest.groovy
similarity index 69%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ImportsSyntaxCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ImportsSyntaxCompleterTest.groovy
index 23dc902..81fb250 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ImportsSyntaxCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ImportsSyntaxCompleterTest.groovy
@@ -16,31 +16,31 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
-import org.codehaus.groovy.tools.shell.CompletorTestSupport
-import org.codehaus.groovy.tools.shell.Groovysh
+import org.apache.groovy.groovysh.CompleterTestSupport
+import org.apache.groovy.groovysh.Groovysh
 
-import static org.codehaus.groovy.tools.shell.completion.TokenUtilTest.tokenList
+import static org.apache.groovy.groovysh.completion.TokenUtilTest.tokenList
 
-class ImportsSyntaxCompletorTest extends CompletorTestSupport {
+class ImportsSyntaxCompleterTest extends CompleterTestSupport {
 
     void testPackagePattern() {
-        assert 'static java.lang.Math'.matches(ImportsSyntaxCompletor.STATIC_IMPORT_PATTERN)
-        assert 'static java.lang.Math.max'.matches(ImportsSyntaxCompletor.STATIC_IMPORT_PATTERN)
-        assert 'static java.lang.Math.max2'.matches(ImportsSyntaxCompletor.STATIC_IMPORT_PATTERN)
-        assert 'static java.lang.Math.*'.matches(ImportsSyntaxCompletor.STATIC_IMPORT_PATTERN)
-        assert 'static org.w3c.Math.*'.matches(ImportsSyntaxCompletor.STATIC_IMPORT_PATTERN)
-        assert !('static java lang'.matches(ImportsSyntaxCompletor.STATIC_IMPORT_PATTERN))
+        assert 'static java.lang.Math'.matches(ImportsSyntaxCompleter.STATIC_IMPORT_PATTERN)
+        assert 'static java.lang.Math.max'.matches(ImportsSyntaxCompleter.STATIC_IMPORT_PATTERN)
+        assert 'static java.lang.Math.max2'.matches(ImportsSyntaxCompleter.STATIC_IMPORT_PATTERN)
+        assert 'static java.lang.Math.*'.matches(ImportsSyntaxCompleter.STATIC_IMPORT_PATTERN)
+        assert 'static org.w3c.Math.*'.matches(ImportsSyntaxCompleter.STATIC_IMPORT_PATTERN)
+        assert !('static java lang'.matches(ImportsSyntaxCompleter.STATIC_IMPORT_PATTERN))
     }
 
     void testPreImported() {
         groovyshMocker.demand.getPackageHelper(6) { [getContents: {['Foo']}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            assert completor.findMatchingPreImportedClasses('Foo', candidates)
+            assert completer.findMatchingPreImportedClasses('Foo', candidates)
             // once for each standard package
             assert ['prefill', 'Foo', 'Foo', 'Foo', 'Foo', 'Foo', 'Foo'] == candidates
         }
@@ -50,12 +50,12 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getPackageHelper(6) { [getContents: {[]}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            assert completor.findMatchingPreImportedClasses('Big', candidates)
+            assert completer.findMatchingPreImportedClasses('Big', candidates)
             assert ['prefill', 'BigInteger', 'BigDecimal'] == candidates
             // test again without invoking pakage Helper
-            assert completor.findMatchingPreImportedClasses('Big', candidates)
+            assert completer.findMatchingPreImportedClasses('Big', candidates)
             assert ['prefill', 'BigInteger', 'BigDecimal', 'BigInteger', 'BigDecimal'] == candidates
         }
     }
@@ -63,9 +63,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
     void testImportedNone() {
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('A', 'foo.lang.Bbb', candidates)
+            completer.findMatchingImportedClassesCached('A', 'foo.lang.Bbb', candidates)
             assert ['prefill'] == candidates
         }
     }
@@ -73,9 +73,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
     void testImported() {
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('A', 'foo.lang.Abcdef', candidates)
+            completer.findMatchingImportedClassesCached('A', 'foo.lang.Abcdef', candidates)
             assert ['prefill', 'Abcdef'] == candidates
         }
     }
@@ -83,9 +83,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
     void testImportedAs() {
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.collectImportedSymbols('foo.lang.Xxxxx as Abcdef', candidates)
+            completer.collectImportedSymbols('foo.lang.Xxxxx as Abcdef', candidates)
             assert ['prefill', 'Abcdef'] == candidates
         }
     }
@@ -95,12 +95,12 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getPackageHelper(1) { [getContents: {['Bbbb', 'Abcdef']}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
+            completer.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
             assert ['prefill', 'Abcdef'] == candidates
             // test again without invoking packageHelper
-            completor.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
+            completer.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
             assert ['prefill', 'Abcdef', 'Abcdef'] == candidates
         }
     }
@@ -109,9 +109,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getInterp(1) { [evaluate: {expr -> assert (expr == ['foo.lang.Math']); Math}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('log', 'static foo.lang.Math.log', candidates)
+            completer.findMatchingImportedClassesCached('log', 'static foo.lang.Math.log', candidates)
             assert ['prefill', 'log('] == candidates
         }
     }
@@ -120,9 +120,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getInterp(1) { [evaluate: {expr -> assert (expr == ['foo.lang.Math']); Math}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('log', 'static foo.lang.Math.*', candidates)
+            completer.findMatchingImportedClassesCached('log', 'static foo.lang.Math.*', candidates)
             assert ['prefill', 'log(', 'log10(', 'log1p('] == candidates
         }
     }
@@ -130,9 +130,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
     void testImportedAsCachedOther() {
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('Y', 'foo.lang.Abcdef as Xxxxxx', candidates)
+            completer.findMatchingImportedClassesCached('Y', 'foo.lang.Abcdef as Xxxxxx', candidates)
             assert ['prefill'] == candidates
         }
     }
@@ -141,9 +141,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getInterp(1) { [evaluate: {expr -> assert (expr == ['foo.lang.Math']); Math}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('log', 'static foo.lang.Math.log', candidates)
+            completer.findMatchingImportedClassesCached('log', 'static foo.lang.Math.log', candidates)
             assert ['prefill', 'log('] == candidates
         }
     }
@@ -152,11 +152,11 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getPackageHelper(1) { [getContents: {['Bbbb']}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
+            completer.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
             assert ['prefill'] == candidates
-            completor.findMatchingImportedClassesCached('B', 'foo.lang.*', candidates)
+            completer.findMatchingImportedClassesCached('B', 'foo.lang.*', candidates)
             assert ['prefill', 'Bbbb'] == candidates
         }
     }
@@ -165,12 +165,12 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getPackageHelper(1) { [getContents: {['Bbbb', 'Abcdef']}] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            completor.findMatchingImportedClassesCached('A','foo.lang.*', candidates)
+            completer.findMatchingImportedClassesCached('A','foo.lang.*', candidates)
             assert ['prefill', 'Abcdef'] == candidates
             // test again without invoking packageHelper
-            completor.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
+            completer.findMatchingImportedClassesCached('A', 'foo.lang.*', candidates)
             assert ['prefill', 'Abcdef', 'Abcdef'] == candidates
         }
     }
@@ -181,9 +181,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getImports(1) { [] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            assert !completor.complete(tokenList('xyz'), candidates)
+            assert !completer.complete(tokenList('xyz'), candidates)
             assert ['prefill'] == candidates
         }
     }
@@ -197,14 +197,14 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getImports(2) { ['xyzabc.*', 'xxxx.*'] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            assert completor.complete(tokenList('Xyz'), candidates)
+            assert completer.complete(tokenList('Xyz'), candidates)
             // try again to check cache is used
             assert ['prefill', 'Xyzabc', 'Xyz123'] == candidates
-            assert completor.complete(tokenList('Xyz1'), candidates)
+            assert completer.complete(tokenList('Xyz1'), candidates)
             assert ['prefill', 'Xyzabc', 'Xyz123', 'Xyz123'] == candidates
-            assert completor.complete(tokenList('Xyz'), candidates)
+            assert completer.complete(tokenList('Xyz'), candidates)
             assert ['prefill', 'Xyzabc', 'Xyz123', 'Xyz123', 'Xyzabc', 'Xyz123'] == candidates
         }
     }
@@ -214,9 +214,9 @@ class ImportsSyntaxCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getImports(1) { ['xxxx'] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            ImportsSyntaxCompletor completor = new ImportsSyntaxCompletor(groovyshMock)
+            ImportsSyntaxCompleter completer = new ImportsSyntaxCompleter(groovyshMock)
             def candidates = ['prefill']
-            assert ! completor.complete(tokenList('xyz'), candidates)
+            assert ! completer.complete(tokenList('xyz'), candidates)
             assert ['prefill'] == candidates
         }
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/KeywordCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/KeywordCompleterTest.groovy
similarity index 62%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/KeywordCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/KeywordCompleterTest.groovy
index f530468..8dab53a 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/KeywordCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/KeywordCompleterTest.groovy
@@ -16,57 +16,59 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
-import static org.codehaus.groovy.tools.shell.completion.TokenUtilTest.tokenList
+import groovy.test.GroovyTestCase
 
-class KeywordCompletorTest extends GroovyTestCase {
+import static org.apache.groovy.groovysh.completion.TokenUtilTest.tokenList
+
+class KeywordCompleterTest extends GroovyTestCase {
 
     void testKeywordModifier() {
-        KeywordSyntaxCompletor completor = new KeywordSyntaxCompletor()
+        KeywordSyntaxCompleter completer = new KeywordSyntaxCompleter()
         def candidates = []
         String buffer = 'pub'
-        assert completor.complete(tokenList(buffer), candidates)
+        assert completer.complete(tokenList(buffer), candidates)
         assert ['public '] == candidates
     }
 
     void testInfixKeywordNotCompleted() {
         // extends, implements, instanceof are not to kbe completed when at start of line
-        KeywordSyntaxCompletor completor = new KeywordSyntaxCompletor()
+        KeywordSyntaxCompleter completer = new KeywordSyntaxCompleter()
         def candidates = []
         String buffer = 'ext'
-        assert !completor.complete(tokenList(buffer), candidates)
+        assert !completer.complete(tokenList(buffer), candidates)
         buffer = 'imple'
-        assert !completor.complete(tokenList(buffer), candidates)
+        assert !completer.complete(tokenList(buffer), candidates)
         buffer = 'inst'
-        assert !completor.complete(tokenList(buffer), candidates)
+        assert !completer.complete(tokenList(buffer), candidates)
     }
 
     void testKeywordModifierSecond() {
-        KeywordSyntaxCompletor completor = new KeywordSyntaxCompletor()
+        KeywordSyntaxCompleter completer = new KeywordSyntaxCompleter()
         def candidates = []
         String buffer = 'public sta'
-        assert completor.complete(tokenList(buffer), candidates)
+        assert completer.complete(tokenList(buffer), candidates)
         assert ['static '] == candidates
         candidates = []
         buffer = 'public swi' // don't suggest switch keyword here
-        assert completor.complete(tokenList(buffer), candidates)
+        assert completer.complete(tokenList(buffer), candidates)
         assert ['switch ('] == candidates
     }
 
     void testKeywordModifierThird() {
-        KeywordSyntaxCompletor completor = new KeywordSyntaxCompletor()
+        KeywordSyntaxCompleter completer = new KeywordSyntaxCompleter()
         def candidates = []
         String buffer = 'public static inter'
-        assert completor.complete(tokenList(buffer), candidates)
+        assert completer.complete(tokenList(buffer), candidates)
         assert ['interface '] == candidates
     }
 
     void testKeywordModifierFor() {
-        KeywordSyntaxCompletor completor = new KeywordSyntaxCompletor()
+        KeywordSyntaxCompleter completer = new KeywordSyntaxCompleter()
         def candidates = []
         String buffer = 'fo'
-        assert completor.complete(tokenList(buffer), candidates)
+        assert completer.complete(tokenList(buffer), candidates)
         assert ['for ('] == candidates
     }
 }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/NavigablePropertiesCompleterTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/NavigablePropertiesCompleterTest.groovy
index 6235dd6..ba3547e 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/NavigablePropertiesCompleterTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/NavigablePropertiesCompleterTest.groovy
@@ -16,8 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
+import groovy.test.GroovyTestCase
 
 /**
  * Defines method tokenList for other Unit tests and tests it
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ReflectionCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ReflectionCompleterTest.groovy
similarity index 59%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ReflectionCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ReflectionCompleterTest.groovy
index 54e0eef..2c2d154 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ReflectionCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/ReflectionCompleterTest.groovy
@@ -16,109 +16,110 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
+import groovy.test.GroovyTestCase
 import org.codehaus.groovy.antlr.parser.GroovyLexer
-import org.codehaus.groovy.tools.shell.Interpreter
+import org.apache.groovy.groovysh.Interpreter
 
-import static org.codehaus.groovy.tools.shell.completion.TokenUtilTest.tokenList
-import static org.codehaus.groovy.tools.shell.completion.TokenUtilTest.tokensString
+import static org.apache.groovy.groovysh.completion.TokenUtilTest.tokenList
+import static org.apache.groovy.groovysh.completion.TokenUtilTest.tokensString
 
-class ReflectionCompletorTest extends GroovyTestCase {
+class ReflectionCompleterTest extends GroovyTestCase {
 
     void testBeanAccessorPattern() {
-        assert 'getX'.matches(ReflectionCompletor.BEAN_ACCESSOR_PATTERN)
-        assert 'setX'.matches(ReflectionCompletor.BEAN_ACCESSOR_PATTERN)
-        assert 'isX'.matches(ReflectionCompletor.BEAN_ACCESSOR_PATTERN)
-        assert !('get'.matches(ReflectionCompletor.BEAN_ACCESSOR_PATTERN))
-        assert !('getx'.matches(ReflectionCompletor.BEAN_ACCESSOR_PATTERN))
-        assert !('foo'.matches(ReflectionCompletor.BEAN_ACCESSOR_PATTERN))
+        assert 'getX'.matches(ReflectionCompleter.BEAN_ACCESSOR_PATTERN)
+        assert 'setX'.matches(ReflectionCompleter.BEAN_ACCESSOR_PATTERN)
+        assert 'isX'.matches(ReflectionCompleter.BEAN_ACCESSOR_PATTERN)
+        assert !('get'.matches(ReflectionCompleter.BEAN_ACCESSOR_PATTERN))
+        assert !('getx'.matches(ReflectionCompleter.BEAN_ACCESSOR_PATTERN))
+        assert !('foo'.matches(ReflectionCompleter.BEAN_ACCESSOR_PATTERN))
     }
 
     void testAddDefaultMethods() {
-        List<String> result = ReflectionCompletor.getDefaultMethods(3, '')
+        List<String> result = ReflectionCompleter.getDefaultMethods(3, '')
         assert 'abs()' in result
         assert 'times(' in result
 
-        result = ReflectionCompletor.getDefaultMethods([1, 2, 3], '')
+        result = ReflectionCompleter.getDefaultMethods([1, 2, 3], '')
         assert 'any(' in result
         assert 'count(' in result
         assert 'take(' in result
         assert 'unique()' in result
 
-        result = ReflectionCompletor.getDefaultMethods(new String[2], '')
+        result = ReflectionCompleter.getDefaultMethods(new String[2], '')
         assert 'any(' in result
         assert 'collect(' in result
         assert 'count(' in result
         assert 'take(' in result
 
-        result = ReflectionCompletor.getDefaultMethods(['a': 1, 'b': 2], '')
+        result = ReflectionCompleter.getDefaultMethods(['a': 1, 'b': 2], '')
         assert 'any(' in result
         assert 'spread()' in result
     }
 
 
     void testGetFieldsAndMethodsArray() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(([] as String[]), '')*.value
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(([] as String[]), '')*.value
         assert 'length' in result
         assert 'clone()' in result
-        result = ReflectionCompletor.getMetaclassMethods(([] as String[]), '', true)
+        result = ReflectionCompleter.getMetaclassMethods(([] as String[]), '', true)
         assert 'size()' in result
         assert 'any()' in result
         assert 'take(' in result
-        result = ReflectionCompletor.getMetaclassMethods([] as String[], 'size', true)
+        result = ReflectionCompleter.getMetaclassMethods([] as String[], 'size', true)
         assert ['size()'] == result
-        result = ReflectionCompletor.getPublicFieldsAndMethods([] as String[], 'le')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods([] as String[], 'le')*.value
         assert ['length'] == result
     }
 
     void testGetFieldsAndMethodsMap() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(['id': '42'], '')*.value
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(['id': '42'], '')*.value
         assert 'clear()' in result
         assert 'containsKey(' in result
         assert 'clear()' in result
         // 'class' as key can cause bugs where .class is used instead of getClass()
-        result = ReflectionCompletor.getPublicFieldsAndMethods(['class': '42', 'club': 53], '')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods(['class': '42', 'club': 53], '')*.value
         assert 'clear()' in result
         assert 'containsKey(' in result
         assert 'class' in result
         assert 'club' in result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(['id': '42'], 'size')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods(['id': '42'], 'size')*.value
         // e.g. don't show non-public inherited size field
         assert ['size()'] == result
     }
 
     void testGetFieldsAndMethodsString() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods('foo', '')*.value
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods('foo', '')*.value
         assert 'charAt(' in result
         assert 'contains(' in result
         assert ! ('format(' in result)
-        result = ReflectionCompletor.getMetaclassMethods('foo', '', true)
+        result = ReflectionCompleter.getMetaclassMethods('foo', '', true)
         assert 'normalize()' in result
         int foo = 3
-        result = ReflectionCompletor.getPublicFieldsAndMethods("$foo", '')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods("$foo", '')*.value
         assert 'build(' in result
-        result = ReflectionCompletor.getMetaclassMethods('foo', 'tok', true)
+        result = ReflectionCompleter.getMetaclassMethods('foo', 'tok', true)
         assert ['tokenize(', 'tokenize()'] == result
-        result = ReflectionCompletor.getMetaclassMethods(String, 'tok', true)
+        result = ReflectionCompleter.getMetaclassMethods(String, 'tok', true)
         assert ['tokenize(', 'tokenize()'] == result
     }
 
     void testGetFieldsAndMethodsPrimitive() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(3, '')*.value
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(3, '')*.value
         assert 'byteValue()' in result
         assert ! ('MAX_VALUE' in result)
         assert ! ('valueOf(' in result)
         assert ! ('bitCount(' in result)
-        result = ReflectionCompletor.getMetaclassMethods(3, '', true)
+        result = ReflectionCompleter.getMetaclassMethods(3, '', true)
         assert 'abs()' in result
-        result = ReflectionCompletor.getMetaclassMethods(3, 'una', true)
+        result = ReflectionCompleter.getMetaclassMethods(3, 'una', true)
         assert ['unaryMinus()', 'unaryPlus()'] == result
-        result = ReflectionCompletor.getMetaclassMethods(Integer, 'una', true)
+        result = ReflectionCompleter.getMetaclassMethods(Integer, 'una', true)
         assert ['unaryMinus()', 'unaryPlus()'] == result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(Integer, 'MA')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods(Integer, 'MA')*.value
         assert ['MAX_VALUE'] == result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(Integer, 'getI')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods(Integer, 'getI')*.value
         assert ['getInteger('] == result
     }
 
@@ -128,7 +129,7 @@ class ReflectionCompletorTest extends GroovyTestCase {
     }
 
     void testGetFieldsAndMethodsAnonymousClass() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(new ForTestInterface() {
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(new ForTestInterface() {
             @Override
             void forTestMethod() {}
 
@@ -139,7 +140,7 @@ class ReflectionCompletorTest extends GroovyTestCase {
         assert 'forTestMethod()' in result
         assert 'compareTo(' in result
         GroovyLexer
-        result = ReflectionCompletor.getPublicFieldsAndMethods(Set, 'toA')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(Set, 'toA')
         assert []== result
     }
 
@@ -151,12 +152,12 @@ class ReflectionCompletorTest extends GroovyTestCase {
     }
 
     void testEnum() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(ForTestEnum, '')
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(ForTestEnum, '')
         result = result*.value
         assert 'VAL1' in result
         assert ! ( 'enumMethod()' in result)
         assert 'staticMethod()' in result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(ForTestEnum.VAL1, '')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(ForTestEnum.VAL1, '')
         result = result*.value
         // User will probably not want this
         assert ! ( 'VAL1' in result)
@@ -165,51 +166,51 @@ class ReflectionCompletorTest extends GroovyTestCase {
     }
 
     void testGetAbstractClassFields() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(GroovyLexer, '')
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(GroovyLexer, '')
         result = result*.value
         assert 'ABSTRACT' in result
         assert 'tracing' in result
-        result = ReflectionCompletor.getMetaclassMethods(GroovyLexer, '', true)
+        result = ReflectionCompleter.getMetaclassMethods(GroovyLexer, '', true)
         assert 'collect()' in result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(new GroovyLexer(new ByteArrayInputStream()), '')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(new GroovyLexer(new ByteArrayInputStream()), '')
         result = result*.value
         assert ! ('ABSTRACT' in result)
         assert ! ('tracing' in result)
-        result = ReflectionCompletor.getMetaclassMethods(new GroovyLexer(new ByteArrayInputStream()), '', true)
+        result = ReflectionCompleter.getMetaclassMethods(new GroovyLexer(new ByteArrayInputStream()), '', true)
         assert 'isCase(' in result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(GroovyLexer, 'LITERAL_as')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(GroovyLexer, 'LITERAL_as')
         result = result*.value
         assert ['LITERAL_as', 'LITERAL_assert'] == result
         // static members only shown for prefix of sufficient length
         GroovyLexer lexer = new GroovyLexer(new ByteArrayInputStream(''.bytes))
-        result = ReflectionCompletor.getPublicFieldsAndMethods(lexer, 'LI')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(lexer, 'LI')
         result = result*.value
         assert !('LITERAL_as' in result)
-        result = ReflectionCompletor.getPublicFieldsAndMethods(lexer, 'LITERAL_as')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(lexer, 'LITERAL_as')
         result = result*.value
         assert ['LITERAL_as', 'LITERAL_assert'] == result
     }
 
     void testGetFieldsAndMethodsClass() {
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(Arrays, '')
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(Arrays, '')
         result = result*.value
         assert 'sort(' in result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(HashSet, 'pro')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(HashSet, 'pro')
         result = result*.value
         assert [] == result
-        result = ReflectionCompletor.getPublicFieldsAndMethods(HashSet, 'to')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(HashSet, 'to')
         result = result*.value
         assert !('toArray(' in result)
-        result = ReflectionCompletor.getPublicFieldsAndMethods(new HashSet(), 'toA')
+        result = ReflectionCompleter.getPublicFieldsAndMethods(new HashSet(), 'toA')
         result = result*.value
         assert ['toArray(', 'toArray()'] == result
     }
 
     void testSuppressMetaAndDefaultMethods() {
-        Collection<String> result = ReflectionCompletor.getMetaclassMethods('foo', '', true)
+        Collection<String> result = ReflectionCompleter.getMetaclassMethods('foo', '', true)
         assert 'getMetaClass()' in result
         assert 'asBoolean()' in result
-        result = ReflectionCompletor.getMetaclassMethods('foo', '', false)
+        result = ReflectionCompleter.getMetaclassMethods('foo', '', false)
         result = result*.value
         assert ! ('getMetaClass()' in result)
         assert ! ('asBoolean()' in result)
@@ -218,10 +219,10 @@ class ReflectionCompletorTest extends GroovyTestCase {
     void testGetFieldsAndMethodsCustomClass() {
         Interpreter interp = new Interpreter(Thread.currentThread().contextClassLoader, new Binding())
         Object instance = interp.evaluate(['class Foo extends HashSet implements Comparable {int compareTo(Object) {0}}; Foo'])
-        Collection<String> result = ReflectionCompletor.getPublicFieldsAndMethods(instance, '')*.value
+        Collection<String> result = ReflectionCompleter.getPublicFieldsAndMethods(instance, '')*.value
         assertFalse('compareTo(' in result)
         instance = interp.evaluate(['class Foo extends HashSet implements Comparable {int compareTo(Object) {0}}; new Foo()'])
-        result = ReflectionCompletor.getPublicFieldsAndMethods(instance, '')*.value
+        result = ReflectionCompleter.getPublicFieldsAndMethods(instance, '')*.value
         assert 'compareTo(' in result
     }
 }
@@ -230,58 +231,58 @@ class ReflectionCompletorTest extends GroovyTestCase {
 class InvokerParsingTest extends GroovyTestCase {
 
     void testTokenListToEvalString() {
-        assert '' == ReflectionCompletor.tokenListToEvalString(tokenList(''))
-        assert '1' == ReflectionCompletor.tokenListToEvalString(tokenList('1'))
-        assert '1.' == ReflectionCompletor.tokenListToEvalString(tokenList('1.'))
-        assert 'foo' == ReflectionCompletor.tokenListToEvalString(tokenList('foo'))
-        assert '\'foo\'' == ReflectionCompletor.tokenListToEvalString(tokenList('\'foo\''))
+        assert '' == ReflectionCompleter.tokenListToEvalString(tokenList(''))
+        assert '1' == ReflectionCompleter.tokenListToEvalString(tokenList('1'))
+        assert '1.' == ReflectionCompleter.tokenListToEvalString(tokenList('1.'))
+        assert 'foo' == ReflectionCompleter.tokenListToEvalString(tokenList('foo'))
+        assert '\'foo\'' == ReflectionCompleter.tokenListToEvalString(tokenList('\'foo\''))
     }
 
     void testGetInvokerTokens() {
         // must make sure no token list is returned that could be evaluated with side effects.
-        assert null == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('foo')))
-        assert 'bar.foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('bar.foo')))
-        assert 'bar.&foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('bar.&foo')))
+        assert null == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('foo')))
+        assert 'bar.foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('bar.foo')))
+        assert 'bar.&foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('bar.&foo')))
         // literal (simple join of token text forgets hyphens)
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('"foo"')))
-        assert '1' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('1')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('"foo"')))
+        assert '1' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('1')))
         // operator
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('1+"foo"')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('bar == foo')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('bar = foo')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('1+foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('1+"foo"')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('bar == foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('bar = foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('1+foo')))
         // begin
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList(';foo')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('(foo')))
-        assert '[foo[][2]].bar' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[[foo[][2]].bar')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('${foo')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('"$foo')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[1,foo')))
-        assert 'foo' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[1: foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList(';foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('(foo')))
+        assert '[foo[][2]].bar' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[[foo[][2]].bar')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('${foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('"$foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[1,foo')))
+        assert 'foo' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[1: foo')))
         // Collections
-        assert '[1+2]' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[1+2]')))
-        assert '[1..2]' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[1..2]')))
-        assert '[1,2]' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[1, 2]')))
-        assert '[1:2]' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('[1: 2]')))
+        assert '[1+2]' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[1+2]')))
+        assert '[1..2]' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[1..2]')))
+        assert '[1,2]' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[1, 2]')))
+        assert '[1:2]' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('[1: 2]')))
         // allowed Parens
-        assert '((Foo)foo).' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('((Foo) foo).')))
-        assert '((1+2>4)==(a&&b)).' == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('((1 + 2 > 4) == (a && b)).')))
+        assert '((Foo)foo).' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('((Foo) foo).')))
+        assert '((1+2>4)==(a&&b)).' == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('((1 + 2 > 4) == (a && b)).')))
         // not allowed
-        assert null == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('foo()')))
-        assert null == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('foo each')))
-        assert null == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('New Foo().')))
-        assert null == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('foo.each bar')))
-        assert null == tokensString(ReflectionCompletor.getInvokerTokens(tokenList('foo++')))
+        assert null == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('foo()')))
+        assert null == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('foo each')))
+        assert null == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('New Foo().')))
+        assert null == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('foo.each bar')))
+        assert null == tokensString(ReflectionCompleter.getInvokerTokens(tokenList('foo++')))
     }
 
     void testGetFieldnameForAccessor() {
-        assert 'foo' == ReflectionCompletor.getFieldnameForAccessor('getFoo', 0)
-        assert 'foo' == ReflectionCompletor.getFieldnameForAccessor('setFoo', 1)
-        assert 'foo' == ReflectionCompletor.getFieldnameForAccessor('isFoo', 0)
+        assert 'foo' == ReflectionCompleter.getFieldnameForAccessor('getFoo', 0)
+        assert 'foo' == ReflectionCompleter.getFieldnameForAccessor('setFoo', 1)
+        assert 'foo' == ReflectionCompleter.getFieldnameForAccessor('isFoo', 0)
 
-        assert null == ReflectionCompletor.getFieldnameForAccessor('getFoo', 1)
-        assert null == ReflectionCompletor.getFieldnameForAccessor('setFoo', 0)
-        assert null == ReflectionCompletor.getFieldnameForAccessor('isFoo', 1)
+        assert null == ReflectionCompleter.getFieldnameForAccessor('getFoo', 1)
+        assert null == ReflectionCompleter.getFieldnameForAccessor('setFoo', 0)
+        assert null == ReflectionCompleter.getFieldnameForAccessor('isFoo', 1)
     }
 }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/TokenUtilTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/TokenUtilTest.groovy
index 646629e..63a92ed 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/TokenUtilTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/TokenUtilTest.groovy
@@ -16,10 +16,11 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
+import groovy.test.GroovyTestCase
+import org.apache.groovy.groovysh.util.CurlyCountingGroovyLexer
 import org.codehaus.groovy.antlr.GroovySourceToken
-import org.codehaus.groovy.tools.shell.util.CurlyCountingGroovyLexer
 
 /**
  * Defines method tokenList for other Unit tests and tests it
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/VariableCompletorTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/VariableCompleterTest.groovy
similarity index 69%
rename from subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/VariableCompletorTest.groovy
rename to subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/VariableCompleterTest.groovy
index 4b476b7..050248a 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/VariableCompletorTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/completion/VariableCompleterTest.groovy
@@ -16,21 +16,21 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.completion
+package org.apache.groovy.groovysh.completion
 
-import org.codehaus.groovy.tools.shell.CompletorTestSupport
-import org.codehaus.groovy.tools.shell.Groovysh
-import static org.codehaus.groovy.tools.shell.completion.TokenUtilTest.tokenList
+import org.apache.groovy.groovysh.CompleterTestSupport
+import org.apache.groovy.groovysh.Groovysh
+import static org.apache.groovy.groovysh.completion.TokenUtilTest.tokenList
 
-class VariableCompletorTest extends CompletorTestSupport {
+class VariableCompleterTest extends CompleterTestSupport {
 
     void testKnownVar() {
         groovyshMocker.demand.getInterp(1) { [context: [variables: [xyzabc: '']]] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            VariableSyntaxCompletor completor = new VariableSyntaxCompletor(groovyshMock)
+            VariableSyntaxCompleter completer = new VariableSyntaxCompleter(groovyshMock)
             def candidates = []
-            assert completor.complete(tokenList('xyz'), candidates)
+            assert completer.complete(tokenList('xyz'), candidates)
             assert ['xyzabc'] == candidates
         }
     }
@@ -39,9 +39,9 @@ class VariableCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getInterp(1) { [context: [variables: [bad: '', xyzabc: '', xyzfff: '', nope: '']]] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            VariableSyntaxCompletor completor = new VariableSyntaxCompletor(groovyshMock)
+            VariableSyntaxCompleter completer = new VariableSyntaxCompleter(groovyshMock)
             def candidates = []
-            assert completor.complete(tokenList('xyz'), candidates)
+            assert completer.complete(tokenList('xyz'), candidates)
             assert ['xyzabc', 'xyzfff'] == candidates
         }
     }
@@ -50,10 +50,10 @@ class VariableCompletorTest extends CompletorTestSupport {
         groovyshMocker.demand.getInterp(1) { [context: [variables: [:]]] }
         groovyshMocker.use {
             Groovysh groovyshMock = new Groovysh()
-            VariableSyntaxCompletor completor = new VariableSyntaxCompletor(groovyshMock)
+            VariableSyntaxCompleter completer = new VariableSyntaxCompleter(groovyshMock)
             def candidates = []
             assert [] == candidates
-            assert !completor.complete(tokenList('xyz'), candidates)
+            assert !completer.complete(tokenList('xyz'), candidates)
         }
     }
 }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ClassWithPrivateConstructor.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ClassWithPrivateConstructor.groovy
index 41be4bc..480524b 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ClassWithPrivateConstructor.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ClassWithPrivateConstructor.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.expr
+package org.apache.groovy.groovysh.expr
 
 /**
  * Tests for classes defined which have private constructors.
  */
-class ClassWithPrivateConstructor
-    extends ExprTestSupport
-{
+class ClassWithPrivateConstructor extends ExprTestSupport {
     void testClass() {
         shell.execute('class K { private K(){} }')
     }
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy
index ecb1d1b..30f980d 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/ExprTestSupport.groovy
@@ -16,16 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.expr
+package org.apache.groovy.groovysh.expr
 
-import org.codehaus.groovy.tools.shell.Groovysh
+import groovy.test.GroovyTestCase
+import org.apache.groovy.groovysh.Groovysh
 
 /**
  * Support for expression tests.
  */
-abstract class ExprTestSupport
-    extends GroovyTestCase
-{
+abstract class ExprTestSupport extends GroovyTestCase {
     Groovysh shell
 
     Object lastResult
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/TimeItTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/TimeItTest.groovy
index db2cc9e..3482b21 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/TimeItTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/expr/TimeItTest.groovy
@@ -16,14 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.expr
+package org.apache.groovy.groovysh.expr
 
 /**
  * Tests for <tt>time = { it() }</tt> expressions.
  */
-class TimeItTest
-    extends ExprTestSupport
-{
+class TimeItTest extends ExprTestSupport {
     void testSingleLine() {
         def result = shell.execute('time = { it() }')
         assert result != null
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CommandArgumentParserTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CommandArgumentParserTest.groovy
index ed4f1eb..d7fa738 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CommandArgumentParserTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CommandArgumentParserTest.groovy
@@ -16,8 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.util
+package org.apache.groovy.groovysh.util
 
+import groovy.test.GroovyTestCase
 
 class CommandArgumentParserTest extends GroovyTestCase {
 
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CurlyCountingGroovyLexerTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CurlyCountingGroovyLexerTest.groovy
index 6ace4e2..8a06f2f 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CurlyCountingGroovyLexerTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/CurlyCountingGroovyLexerTest.groovy
@@ -16,14 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.util
+package org.apache.groovy.groovysh.util
+
+import groovy.test.GroovyTestCase
 
 /**
  * Unit tests for the {@link CurlyCountingGroovyLexer} class.
  */
-class CurlyCountingGroovyLexerTest
-    extends GroovyTestCase
-{
+class CurlyCountingGroovyLexerTest extends GroovyTestCase {
    void testLexerEmpty() {
        CurlyCountingGroovyLexer it = CurlyCountingGroovyLexer.createGroovyLexer('')
        assert 0 == it.parenLevel
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/MessageSourceTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/MessageSourceTest.groovy
index 07321cd..14115ba 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/MessageSourceTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/MessageSourceTest.groovy
@@ -16,7 +16,10 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.util
+package org.apache.groovy.groovysh.util
+
+import groovy.test.GroovyTestCase
+import org.codehaus.groovy.tools.shell.util.MessageSource
 
 /**
  * Unit tests for the {@link MessageSource} class.
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/PackageHelperImplTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/PackageHelperImplTest.groovy
index 0745eeb..34d8f6e 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/PackageHelperImplTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/PackageHelperImplTest.groovy
@@ -16,14 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.util
+package org.apache.groovy.groovysh.util
+
+import groovy.test.GroovyTestCase
 
 /**
  * Unit tests for the {@link PackageHelperImpl} class.
  */
-class PackageHelperImplTest
-    extends GroovyTestCase
-{
+class PackageHelperImplTest extends GroovyTestCase {
 
     void testLoadAndGetPackagesEmpty() {
         PackageHelperImpl helper = new PackageHelperImpl(null)
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/ScriptVariableAnalyzerTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/ScriptVariableAnalyzerTest.groovy
index 1ce5178..cf2f1bf 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/ScriptVariableAnalyzerTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/ScriptVariableAnalyzerTest.groovy
@@ -16,11 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.util
+package org.apache.groovy.groovysh.util
+
+import groovy.test.GroovyTestCase
 
 /**
  * Unit tests for the {@link ScriptVariableAnalyzer} class.
- *
  */
 class ScriptVariableAnalyzerTest extends GroovyTestCase {
 
diff --git a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/WrappedInputStreamTest.groovy b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/WrappedInputStreamTest.groovy
index 3bbc6c1..92e3ac1 100644
--- a/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/WrappedInputStreamTest.groovy
+++ b/subprojects/groovy-groovysh/src/test/groovy/org/apache/groovy/groovysh/util/WrappedInputStreamTest.groovy
@@ -16,15 +16,14 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.tools.shell.util
+package org.apache.groovy.groovysh.util
+
+import groovy.test.GroovyTestCase
 
 /**
  * Unit tests for the {@link WrappedInputStream} class.
- *
  */
-class WrappedInputStreamTest
-    extends GroovyTestCase
-{
+class WrappedInputStreamTest extends GroovyTestCase {
     void testWrapEmpty() {
         ByteArrayInputStream mockStream = new ByteArrayInputStream()
         WrappedInputStream stream = new WrappedInputStream(mockStream)
diff --git a/subprojects/groovy-groovysh/src/test/resources/org/codehaus/groovy/tools/shell/util/MessageSourceTest.properties b/subprojects/groovy-groovysh/src/test/resources/org/apache/groovy/groovysh/util/MessageSourceTest.properties
similarity index 100%
rename from subprojects/groovy-groovysh/src/test/resources/org/codehaus/groovy/tools/shell/util/MessageSourceTest.properties
rename to subprojects/groovy-groovysh/src/test/resources/org/apache/groovy/groovysh/util/MessageSourceTest.properties
diff --git a/subprojects/groovy-jaxb/src/test/groovy/org/apache/groovy/jaxb/extensions/JaxbExtensionsTest.groovy b/subprojects/groovy-jaxb/src/test/groovy/org/apache/groovy/jaxb/extensions/JaxbExtensionsTest.groovy
index 87ac31c..cdeadfa 100644
--- a/subprojects/groovy-jaxb/src/test/groovy/org/apache/groovy/jaxb/extensions/JaxbExtensionsTest.groovy
+++ b/subprojects/groovy-jaxb/src/test/groovy/org/apache/groovy/jaxb/extensions/JaxbExtensionsTest.groovy
@@ -20,6 +20,8 @@ package org.apache.groovy.jaxb.extensions
 
 import javax.xml.bind.JAXBContext
 
+import groovy.test.GroovyTestCase
+
 /**
  * Test cases for {@link JaxbExtensions}
  */
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxAttributeInfoManagerTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxAttributeInfoManagerTest.groovy
index 0788506..24138fa 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxAttributeInfoManagerTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxAttributeInfoManagerTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.modelmbean.DescriptorSupport
 import javax.management.modelmbean.ModelMBeanAttributeInfo
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanExportFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanExportFactoryTest.groovy
index cf24b39..a962093 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanExportFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanExportFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.MBeanServerConnection
 import javax.management.ObjectName
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanFactoryTest.groovy
index 8dc716a..4a5f6f4 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.MBeanServerConnection
 import javax.management.ObjectName
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanInfoManagerTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanInfoManagerTest.groovy
index faeb952..1c99cf9 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanInfoManagerTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeanInfoManagerTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.ObjectName
 import javax.management.modelmbean.ModelMBeanInfo
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeansFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeansFactoryTest.groovy
index ddca2fe..8638be8 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeansFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBeansFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 class JmxBeansFactoryTest extends GroovyTestCase {
     def builder
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBuilderToolsTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBuilderToolsTest.groovy
index f93d407..eef543b 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBuilderToolsTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxBuilderToolsTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.ObjectName
 
 class JmxBuilderToolsTest extends GroovyTestCase {
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxClientConnectorFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxClientConnectorFactoryTest.groovy
index b3c134f..1fae057 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxClientConnectorFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxClientConnectorFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.remote.rmi.RMIConnector
 import javax.management.remote.rmi.RMIConnectorServer
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmbeddedMetaMapBuilderTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmbeddedMetaMapBuilderTest.groovy
index 9132c06..468bac6 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmbeddedMetaMapBuilderTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmbeddedMetaMapBuilderTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.ObjectName
 
 class JmxEmbeddedMetaMapBuilderTest extends GroovyTestCase {
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmitterFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmitterFactoryTest.groovy
index 80f15c9..60b9901 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmitterFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxEmitterFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.MBeanServer
 
 public class JmxEmitterFactoryTest extends GroovyTestCase {
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxListenerFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxListenerFactoryTest.groovy
index eb9c464..c7a0e26 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxListenerFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxListenerFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.ObjectName
 
 class JmxListenerFactoryTest extends GroovyTestCase {
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxMetaMapBuilderTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxMetaMapBuilderTest.groovy
index a1209dd..88f1a5d 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxMetaMapBuilderTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxMetaMapBuilderTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.ObjectName
 
 class JmxMetaMapBuilderTest extends GroovyTestCase {
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxOperationInfoManagerTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxOperationInfoManagerTest.groovy
index aaf7760..5580067 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxOperationInfoManagerTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxOperationInfoManagerTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.Descriptor
 import javax.management.MBeanParameterInfo
 import javax.management.modelmbean.ModelMBeanConstructorInfo
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxServerConnectorFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxServerConnectorFactoryTest.groovy
index 5671bfe..d396eb8 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxServerConnectorFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxServerConnectorFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.remote.JMXServiceURL
 import javax.management.remote.rmi.RMIConnectorServer
 
diff --git a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxTimerFactoryTest.groovy b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxTimerFactoryTest.groovy
index 44cc0bd..39504ef 100644
--- a/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxTimerFactoryTest.groovy
+++ b/subprojects/groovy-jmx/src/test/groovy/groovy/jmx/builder/JmxTimerFactoryTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.jmx.builder
 
+import groovy.test.GroovyTestCase
+
 import javax.management.MBeanServer
 import javax.management.ObjectName
 
diff --git a/subprojects/groovy-jmx/src/test/java/groovy/util/MBeanTest.java b/subprojects/groovy-jmx/src/test/java/groovy/util/MBeanTest.java
index 017ae6e..1df37ff 100644
--- a/subprojects/groovy-jmx/src/test/java/groovy/util/MBeanTest.java
+++ b/subprojects/groovy-jmx/src/test/java/groovy/util/MBeanTest.java
@@ -18,6 +18,8 @@
  */
 package groovy.util;
 
+import groovy.test.GroovyTestCase;
+
 import javax.management.MBeanServer;
 import javax.management.MBeanServerFactory;
 import javax.management.ObjectName;
diff --git a/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JSR223Test.groovy b/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JSR223Test.groovy
index 4ad6f0b..ccb1014 100644
--- a/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JSR223Test.groovy
+++ b/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JSR223Test.groovy
@@ -18,13 +18,14 @@
  */
 package org.codehaus.groovy.jsr223
 
+import groovy.test.GroovyTestCase
+
 import javax.script.Invocable
 import javax.script.ScriptContext
-import javax.script.ScriptEngineManager
 import javax.script.ScriptEngine
 import javax.script.ScriptEngineFactory
+import javax.script.ScriptEngineManager
 import javax.script.ScriptException
-
 import javax.script.SimpleScriptContext
 
 /**
diff --git a/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/vm6/JavascriptTest.groovy b/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JavascriptTest.groovy
similarity index 86%
rename from subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/vm6/JavascriptTest.groovy
rename to subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JavascriptTest.groovy
index 237a26f..de9ba55 100644
--- a/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/vm6/JavascriptTest.groovy
+++ b/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/JavascriptTest.groovy
@@ -16,7 +16,9 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.codehaus.groovy.jsr223.vm6
+package org.codehaus.groovy.jsr223
+
+import groovy.test.GroovyTestCase
 
 import javax.script.ScriptEngineManager
 
@@ -26,8 +28,9 @@ class JavascriptTest extends GroovyTestCase {
         binding.x = 10
         binding.y = 5
         def js = ScriptEngineManager.javascript
-        if (!js) System.err.println("Warning: JavaScript not available on this JVM - test ignored")
-        else {
+        if (!js) {
+            System.err.println("Warning: JavaScript not available on this JVM - test ignored")
+        } else {
             def eval = js.&eval.rcurry(binding)
             assert eval('2 * x + y') == 25
             eval 'z = x + y'
diff --git a/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/SugarTest.groovy b/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/SugarTest.groovy
index 1ee358f..46c4ff3 100644
--- a/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/SugarTest.groovy
+++ b/subprojects/groovy-jsr223/src/test/groovy/org/codehaus/groovy/jsr223/SugarTest.groovy
@@ -18,6 +18,8 @@
  */
 package org.codehaus.groovy.jsr223
 
+import groovy.test.GroovyTestCase
+
 import javax.script.ScriptEngineManager
 
 class SugarTest extends GroovyTestCase {
diff --git a/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTest.groovy b/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTest.groovy
index aba9ee0..0ec9515 100644
--- a/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTest.groovy
+++ b/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTest.groovy
@@ -18,6 +18,7 @@
  */
 package org.codehaus.groovy.macro
 
+import groovy.test.GroovyTestCase
 import groovy.transform.CompileStatic
 import org.codehaus.groovy.runtime.metaclass.MethodSelectionException
 
diff --git a/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTransformationTest.groovy b/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTransformationTest.groovy
index a7975b0..8f8c0c6 100644
--- a/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTransformationTest.groovy
+++ b/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/MacroTransformationTest.groovy
@@ -18,6 +18,7 @@
  */
 package org.codehaus.groovy.macro
 
+import groovy.test.GroovyTestCase
 import groovy.transform.CompileStatic
 
 @CompileStatic
diff --git a/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/matcher/ASTMatcherTest.groovy b/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/matcher/ASTMatcherTest.groovy
index 2680e3e..0314e69 100644
--- a/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/matcher/ASTMatcherTest.groovy
+++ b/subprojects/groovy-macro/src/test/groovy/org/codehaus/groovy/macro/matcher/ASTMatcherTest.groovy
@@ -18,6 +18,8 @@
  */
 package org.codehaus.groovy.macro.matcher
 
+import groovy.test.GroovyTestCase
+
 class ASTMatcherTest extends GroovyTestCase {
     void testMatchesSimpleVar() {
         assertScript '''
diff --git a/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/AbstractHttpServletTest.groovy b/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/AbstractHttpServletTest.groovy
index 1b7fb9f..f388fe0 100644
--- a/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/AbstractHttpServletTest.groovy
+++ b/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/AbstractHttpServletTest.groovy
@@ -18,9 +18,11 @@
  */
 package groovy.servlet
 
-import javax.servlet.http.HttpServletRequest
-import javax.servlet.ServletContext
+import groovy.test.GroovyTestCase
+
 import javax.servlet.ServletConfig
+import javax.servlet.ServletContext
+import javax.servlet.http.HttpServletRequest
 
 /**
  * This test case tests the AbstractHttpServlet class. It uses a test
diff --git a/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/ServletBindingTest.groovy b/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/ServletBindingTest.groovy
index 138df07..079c7cc 100644
--- a/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/ServletBindingTest.groovy
+++ b/subprojects/groovy-servlet/src/test/groovy/groovy/servlet/ServletBindingTest.groovy
@@ -18,12 +18,14 @@
  */
 package groovy.servlet
 
+import groovy.test.GroovyTestCase
+import groovy.xml.MarkupBuilder
+
 import javax.servlet.ServletContext
 import javax.servlet.ServletOutputStream
 import javax.servlet.http.HttpServletRequest
 import javax.servlet.http.HttpServletResponse
 import javax.servlet.http.HttpSession
-import groovy.xml.MarkupBuilder
 
 /**
  * This test case tests the ServletBinding class.
diff --git a/subprojects/groovy-sql/src/spec/test/SqlTest.groovy b/subprojects/groovy-sql/src/spec/test/SqlTest.groovy
index 6d9f33e..bce979f 100644
--- a/subprojects/groovy-sql/src/spec/test/SqlTest.groovy
+++ b/subprojects/groovy-sql/src/spec/test/SqlTest.groovy
@@ -17,6 +17,8 @@
  *  under the License.
  */
 
+import groovy.test.GroovyTestCase
+
 /**
  * Tests for groovy.sql.Sql.
  */
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/bugs/ForAndSqlBug.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/bugs/ForAndSqlBug.groovy
index 1141b28..8aa87bd 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/bugs/ForAndSqlBug.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/bugs/ForAndSqlBug.groovy
@@ -19,6 +19,7 @@
 package groovy.bugs
 
 import groovy.sql.SqlHelperTestCase
+import groovy.test.GroovyTestCase
 
 class ForAndSqlBug extends GroovyTestCase {
 
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/bugs/Groovy5041Bug.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/bugs/Groovy5041Bug.groovy
index 18569af..c66f7dc 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/bugs/Groovy5041Bug.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/bugs/Groovy5041Bug.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.bugs
 
+import groovy.test.GroovyTestCase
+
 class Groovy5041Bug extends GroovyTestCase {
     void testAICParameter() {
         // GROOVY-5041
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/ExtractIndexAndSqlTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/ExtractIndexAndSqlTest.groovy
index e9e3ae0..dc5a279 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/ExtractIndexAndSqlTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/ExtractIndexAndSqlTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.sql
 
+import groovy.test.GroovyTestCase
+
 class ExtractIndexAndSqlTest extends GroovyTestCase {
 
     void testDetectsNamedParameters() {
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/GroovyRowResultTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/GroovyRowResultTest.groovy
index 104d55e..effffc4 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/GroovyRowResultTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/GroovyRowResultTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.sql
 
+import groovy.test.GroovyTestCase
+
 class GroovyRowResultTest extends GroovyTestCase {
 
     void testMap() {
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/PersonTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/PersonTest.groovy
index ef01892..806966d 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/PersonTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/PersonTest.groovy
@@ -18,9 +18,15 @@
  */
 package groovy.sql
 
+import groovy.test.GroovyTestCase
+
 import javax.sql.DataSource
 
-import static groovy.sql.SqlTestConstants.*
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 class PersonTest extends GroovyTestCase {
 
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlBatchTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlBatchTest.groovy
index 72e8e60..85cea8e 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlBatchTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlBatchTest.groovy
@@ -19,10 +19,15 @@
 package groovy.sql
 
 import groovy.test.GroovyAssert
+import groovy.test.GroovyTestCase
 
 import javax.sql.DataSource
 
-import static groovy.sql.SqlTestConstants.*
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 /**
  * Test Sql batch features
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCacheTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCacheTest.groovy
index 213ba57..77762a3 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCacheTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCacheTest.groovy
@@ -18,12 +18,18 @@
  */
 package groovy.sql
 
-import java.sql.SQLException
+import groovy.test.GroovyTestCase
+import org.codehaus.groovy.runtime.InvokerHelper
+
 import javax.sql.DataSource
 import java.sql.Connection
-import org.codehaus.groovy.runtime.InvokerHelper
+import java.sql.SQLException
 
-import static groovy.sql.SqlTestConstants.*
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 /**
  * Unit test of Sql cache feature 
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCallTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCallTest.groovy
index cc9ddef..2b1bac7 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCallTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlCallTest.groovy
@@ -18,10 +18,16 @@
  */
 package groovy.sql
 
+import groovy.test.GroovyTestCase
+
 import javax.sql.DataSource
 import java.sql.CallableStatement
 
-import static groovy.sql.SqlTestConstants.*
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 /**
  * Test Sql transaction features using a Sql built from a connection
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlHelperTestCase.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlHelperTestCase.groovy
index 4340ebc..3fb386a 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlHelperTestCase.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlHelperTestCase.groovy
@@ -18,7 +18,14 @@
  */
 package groovy.sql
 
-import static groovy.sql.SqlTestConstants.*
+import groovy.test.GroovyTestCase
+
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_URL_SUFFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 class SqlHelperTestCase extends GroovyTestCase {
     SqlHelperTestCase() {
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlStatementTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlStatementTest.groovy
index d1720dd..0608ae4 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlStatementTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlStatementTest.groovy
@@ -18,9 +18,15 @@
  */
 package groovy.sql
 
+import groovy.test.GroovyTestCase
+
 import javax.sql.DataSource
 
-import static groovy.sql.SqlTestConstants.*
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 /**
  * Unit test of Sql statement feature
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTest.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTest.groovy
index 9bf0b57..300cfd3 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTest.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTest.groovy
@@ -18,10 +18,16 @@
  */
 package groovy.sql
 
-import java.sql.Connection
+import groovy.test.GroovyTestCase
+
 import javax.sql.DataSource
+import java.sql.Connection
 
-import static groovy.sql.SqlTestConstants.*
+import static groovy.sql.SqlTestConstants.DB_DATASOURCE
+import static groovy.sql.SqlTestConstants.DB_DS_KEY
+import static groovy.sql.SqlTestConstants.DB_PASSWORD
+import static groovy.sql.SqlTestConstants.DB_URL_PREFIX
+import static groovy.sql.SqlTestConstants.DB_USER
 
 /**
  * This is more of a sample program than a unit test and is here as an easy
diff --git a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTransactionTestCase.groovy b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTransactionTestCase.groovy
index 64e5adc..695d6aa 100644
--- a/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTransactionTestCase.groovy
+++ b/subprojects/groovy-sql/src/test/groovy/groovy/sql/SqlTransactionTestCase.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.sql
 
+import groovy.test.GroovyTestCase
+
 import java.sql.Connection
 import java.sql.SQLException
 
diff --git a/subprojects/groovy-templates/src/spec/test/MarkupTemplateEngineSpecTest.groovy b/subprojects/groovy-templates/src/spec/test/MarkupTemplateEngineSpecTest.groovy
index 2849dc3..c94f449 100644
--- a/subprojects/groovy-templates/src/spec/test/MarkupTemplateEngineSpecTest.groovy
+++ b/subprojects/groovy-templates/src/spec/test/MarkupTemplateEngineSpecTest.groovy
@@ -16,12 +16,12 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
+
+import groovy.test.GroovyTestCase
 import groovy.text.Template
 import groovy.text.markup.MarkupTemplateEngine
 import groovy.text.markup.TemplateConfiguration
 
-import java.nio.charset.Charset
-
 class MarkupTemplateEngineSpecTest extends GroovyTestCase {
     private MarkupTemplateEngine engine
     private TemplateConfiguration config
diff --git a/subprojects/groovy-templates/src/test/groovy/groovy/SimpleGStringTemplateEngineTest.groovy b/subprojects/groovy-templates/src/test/groovy/groovy/SimpleGStringTemplateEngineTest.groovy
index 9f97b3c..5754d90 100644
--- a/subprojects/groovy-templates/src/test/groovy/groovy/SimpleGStringTemplateEngineTest.groovy
+++ b/subprojects/groovy-templates/src/test/groovy/groovy/SimpleGStringTemplateEngineTest.groovy
@@ -18,6 +18,7 @@
  */
 package groovy
 
+import groovy.test.GroovyTestCase
 import groovy.text.GStringTemplateEngine
 import groovy.text.Template
 
diff --git a/subprojects/groovy-templates/src/test/groovy/groovy/SimpleTemplateEngineTest.groovy b/subprojects/groovy-templates/src/test/groovy/groovy/SimpleTemplateEngineTest.groovy
index b0ba0c3..09ba693 100644
--- a/subprojects/groovy-templates/src/test/groovy/groovy/SimpleTemplateEngineTest.groovy
+++ b/subprojects/groovy-templates/src/test/groovy/groovy/SimpleTemplateEngineTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy
 
+import groovy.test.GroovyTestCase
+
 class SimpleTemplateEngineTest extends GroovyTestCase {
 
     void testBindingWithDefault() {
diff --git a/subprojects/groovy-templates/src/test/groovy/groovy/bugs/groovy4585/Groovy4585Bug.groovy b/subprojects/groovy-templates/src/test/groovy/groovy/bugs/groovy4585/Groovy4585Bug.groovy
index be344f2..6a38910 100644
--- a/subprojects/groovy-templates/src/test/groovy/groovy/bugs/groovy4585/Groovy4585Bug.groovy
+++ b/subprojects/groovy-templates/src/test/groovy/groovy/bugs/groovy4585/Groovy4585Bug.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.bugs.groovy4585
 
+import groovy.test.GroovyTestCase
+
 class Groovy4585Bug extends GroovyTestCase {
     void test() {
         def engineForBuildXml = new groovy.text.SimpleTemplateEngine(false)
diff --git a/subprojects/groovy-templates/src/test/groovy/groovy/text/MarkupTemplateEngineTest.groovy b/subprojects/groovy-templates/src/test/groovy/groovy/text/MarkupTemplateEngineTest.groovy
index 162edc1..d864013 100644
--- a/subprojects/groovy-templates/src/test/groovy/groovy/text/MarkupTemplateEngineTest.groovy
+++ b/subprojects/groovy-templates/src/test/groovy/groovy/text/MarkupTemplateEngineTest.groovy
@@ -18,6 +18,7 @@
  */
 package groovy.text
 
+import groovy.test.GroovyTestCase
 import groovy.text.markup.BaseTemplate
 import groovy.text.markup.MarkupTemplateEngine
 import groovy.text.markup.TagLibAdapter
diff --git a/subprojects/groovy-templates/src/test/groovy/groovy/text/SimpleTemplateTest.groovy b/subprojects/groovy-templates/src/test/groovy/groovy/text/SimpleTemplateTest.groovy
index d75e4d3..188ed22 100644
--- a/subprojects/groovy-templates/src/test/groovy/groovy/text/SimpleTemplateTest.groovy
+++ b/subprojects/groovy-templates/src/test/groovy/groovy/text/SimpleTemplateTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.text
 
+import groovy.test.GroovyTestCase
+
 class SimpleTemplateTest extends GroovyTestCase {
 
     void testSimpleCallFromGroovyEmpty() {
diff --git a/subprojects/groovy-templates/src/test/groovy/groovy/text/markup/TemplateResourceTest.groovy b/subprojects/groovy-templates/src/test/groovy/groovy/text/markup/TemplateResourceTest.groovy
index 695f818..958be39 100644
--- a/subprojects/groovy-templates/src/test/groovy/groovy/text/markup/TemplateResourceTest.groovy
+++ b/subprojects/groovy-templates/src/test/groovy/groovy/text/markup/TemplateResourceTest.groovy
@@ -18,6 +18,7 @@
  */
 package groovy.text.markup
 
+import groovy.test.GroovyTestCase
 import groovy.text.markup.MarkupTemplateEngine.TemplateResource;
 
 class TemplateResourceTest extends GroovyTestCase {
diff --git a/subprojects/groovy-test-junit5/src/spec/test/MyTestViaRun.groovy b/subprojects/groovy-test-junit5/src/spec/test/MyTestViaRun.groovy
index 17b4b32..0f572f3 100644
--- a/subprojects/groovy-test-junit5/src/spec/test/MyTestViaRun.groovy
+++ b/subprojects/groovy-test-junit5/src/spec/test/MyTestViaRun.groovy
@@ -16,6 +16,8 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
+import groovy.test.GroovyTestCase
+
 class MyTestViaRun extends GroovyTestCase {
   void testJunit5ViaRun() {
     new GroovyShell().run '''
diff --git a/subprojects/groovy-test/src/main/java/groovy/test/GroovyAssert.java b/subprojects/groovy-test/src/main/java/groovy/test/GroovyAssert.java
index 917fed0..e0ce566 100644
--- a/subprojects/groovy-test/src/main/java/groovy/test/GroovyAssert.java
+++ b/subprojects/groovy-test/src/main/java/groovy/test/GroovyAssert.java
@@ -32,7 +32,7 @@ import java.util.logging.Logger;
 
 /**
  * <p>{@code GroovyAssert} contains a set of static assertion and test helper methods and is supposed to be a Groovy
- * extension of JUnit 4's {@link org.junit.Assert} class. In case JUnit 3 is the choice, the {@link groovy.util.GroovyTestCase}
+ * extension of JUnit 4's {@link org.junit.Assert} class. In case JUnit 3 is the choice, the {@link groovy.test.GroovyTestCase}
  * is meant to be used for writing tests based on {@link junit.framework.TestCase}.
  * </p>
  *
@@ -51,7 +51,7 @@ import java.util.logging.Logger;
  * </pre>
  * </p>
  *
- * @see groovy.util.GroovyTestCase
+ * @see groovy.test.GroovyTestCase
  * @since 2.3
  */
 public class GroovyAssert extends org.junit.Assert {
diff --git a/subprojects/groovy-test/src/main/java/groovy/test/NotYetImplemented.java b/subprojects/groovy-test/src/main/java/groovy/test/NotYetImplemented.java
index c040417..ad21c52 100644
--- a/subprojects/groovy-test/src/main/java/groovy/test/NotYetImplemented.java
+++ b/subprojects/groovy-test/src/main/java/groovy/test/NotYetImplemented.java
@@ -33,7 +33,7 @@ import java.lang.annotation.Target;
  * This is helpful for tests that don't currently work but should work one day,
  * when the tested functionality has been implemented.
  * <p>
- * The idea for this AST transformation originated in {@link groovy.util.GroovyTestCase#notYetImplemented()}.
+ * The idea for this AST transformation originated in {@link groovy.test.GroovyTestCase#notYetImplemented()}.
  *
  * @since 3.0.0
  */
diff --git a/subprojects/groovy-test/src/main/java/groovy/transform/NotYetImplemented.java b/subprojects/groovy-test/src/main/java/groovy/transform/NotYetImplemented.java
index c383d6b..986ef99 100644
--- a/subprojects/groovy-test/src/main/java/groovy/transform/NotYetImplemented.java
+++ b/subprojects/groovy-test/src/main/java/groovy/transform/NotYetImplemented.java
@@ -33,7 +33,7 @@ import java.lang.annotation.Target;
  * This is helpful for tests that don't currently work but should work one day,
  * when the tested functionality has been implemented.
  * <p>
- * The idea for this AST transformation originated in {@link groovy.util.GroovyTestCase#notYetImplemented()}.
+ * The idea for this AST transformation originated in {@link groovy.test.GroovyTestCase#notYetImplemented()}.
  *
  * @since 2.0.0
  * @deprecated use {@link groovy.test.transform.NotYetImplemented}
diff --git a/subprojects/groovy-xml/src/spec/test/DOMBuilderTest.groovy b/subprojects/groovy-xml/src/spec/test/DOMBuilderTest.groovy
index a70f601..009d07b 100644
--- a/subprojects/groovy-xml/src/spec/test/DOMBuilderTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/DOMBuilderTest.groovy
@@ -16,6 +16,8 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
+import groovy.test.GroovyTestCase
+
 class DOMBuilderTest extends GroovyTestCase {
 
     void testParse() {
diff --git a/subprojects/groovy-xml/src/spec/test/SaxBuilderTest.groovy b/subprojects/groovy-xml/src/spec/test/SaxBuilderTest.groovy
index 22ede7a..2cd0c2f 100644
--- a/subprojects/groovy-xml/src/spec/test/SaxBuilderTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/SaxBuilderTest.groovy
@@ -17,6 +17,8 @@
  *  under the License.
  */
 
+import groovy.test.GroovyTestCase
+
 class SaxBuilderTest extends GroovyTestCase {
 
     // tag::sax_builder_handler[]
diff --git a/subprojects/groovy-xml/src/spec/test/StaxBuilderTest.groovy b/subprojects/groovy-xml/src/spec/test/StaxBuilderTest.groovy
index 7cf1f22..e4cea70 100644
--- a/subprojects/groovy-xml/src/spec/test/StaxBuilderTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/StaxBuilderTest.groovy
@@ -17,6 +17,8 @@
  *  under the License.
  */
 
+import groovy.test.GroovyTestCase
+
 class StaxBuilderTest extends GroovyTestCase {
 
     void testStaxBuilder() {
diff --git a/subprojects/groovy-xml/src/spec/test/UserGuideDOMCategoryTest.groovy b/subprojects/groovy-xml/src/spec/test/UserGuideDOMCategoryTest.groovy
index 9ef6a1b..6c2de91 100644
--- a/subprojects/groovy-xml/src/spec/test/UserGuideDOMCategoryTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/UserGuideDOMCategoryTest.groovy
@@ -18,6 +18,7 @@
  */
 package groovy.xml
 
+import groovy.test.GroovyTestCase
 import groovy.xml.dom.DOMCategory
 
 /**
diff --git a/subprojects/groovy-xml/src/spec/test/UserGuideMarkupBuilderTest.groovy b/subprojects/groovy-xml/src/spec/test/UserGuideMarkupBuilderTest.groovy
index 8c833dc..d549366 100644
--- a/subprojects/groovy-xml/src/spec/test/UserGuideMarkupBuilderTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/UserGuideMarkupBuilderTest.groovy
@@ -18,6 +18,7 @@
  */
 package groovy.xml
 
+import groovy.test.GroovyTestCase
 import org.codehaus.groovy.tools.xml.DomToGroovy
 
 /**
diff --git a/subprojects/groovy-xml/src/spec/test/UserGuideStreamingMarkupBuilderTest.groovy b/subprojects/groovy-xml/src/spec/test/UserGuideStreamingMarkupBuilderTest.groovy
index 17a2e92..b6fe469 100644
--- a/subprojects/groovy-xml/src/spec/test/UserGuideStreamingMarkupBuilderTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/UserGuideStreamingMarkupBuilderTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.xml
 
+import groovy.test.GroovyTestCase
+
 /**
  * Tests for the Groovy Xml user guide related to StreamingMarkupBuilderTest.
  */
diff --git a/subprojects/groovy-xml/src/spec/test/UserGuideXmlParserTest.groovy b/subprojects/groovy-xml/src/spec/test/UserGuideXmlParserTest.groovy
index 65d34c5..6de9fd4 100644
--- a/subprojects/groovy-xml/src/spec/test/UserGuideXmlParserTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/UserGuideXmlParserTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.xml
 
+import groovy.test.GroovyTestCase
+
 /**
  * Tests for the Groovy Xml user guide related to XmlParser.
  */
diff --git a/subprojects/groovy-xml/src/spec/test/UserGuideXmlUtilTest.groovy b/subprojects/groovy-xml/src/spec/test/UserGuideXmlUtilTest.groovy
index e817d32..77aff2d 100644
--- a/subprojects/groovy-xml/src/spec/test/UserGuideXmlUtilTest.groovy
+++ b/subprojects/groovy-xml/src/spec/test/UserGuideXmlUtilTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.xml
 
+import groovy.test.GroovyTestCase
+
 /**
  * Tests for the Groovy Xml user guide related to XmlUtil.
  */
diff --git a/subprojects/groovy-xml/src/test/groovy/groovy/xml/XmlNodePrinterTest.groovy b/subprojects/groovy-xml/src/test/groovy/groovy/xml/XmlNodePrinterTest.groovy
index b5fc4d4..7574858 100644
--- a/subprojects/groovy-xml/src/test/groovy/groovy/xml/XmlNodePrinterTest.groovy
+++ b/subprojects/groovy-xml/src/test/groovy/groovy/xml/XmlNodePrinterTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.xml
 
+import groovy.test.GroovyTestCase
+
 class XmlNodePrinterTest extends GroovyTestCase {
 
     StringWriter writer
diff --git a/subprojects/groovy-xml/src/test/groovy/groovy/xml/bugs/StaticMarkupBug.groovy b/subprojects/groovy-xml/src/test/groovy/groovy/xml/bugs/StaticMarkupBug.groovy
index 3fc4b29..5f13157 100644
--- a/subprojects/groovy-xml/src/test/groovy/groovy/xml/bugs/StaticMarkupBug.groovy
+++ b/subprojects/groovy-xml/src/test/groovy/groovy/xml/bugs/StaticMarkupBug.groovy
@@ -18,6 +18,7 @@
  */
 package groovy.xml.bugs
 
+import groovy.test.GroovyTestCase
 import groovy.xml.MarkupBuilder
 
 class StaticMarkupBug extends GroovyTestCase {
diff --git a/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlBuilderTest.groovy b/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlBuilderTest.groovy
index f590d6f..4d0602d 100644
--- a/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlBuilderTest.groovy
+++ b/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlBuilderTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.yaml
 
+import groovy.test.GroovyTestCase
+
 class YamlBuilderTest extends GroovyTestCase {
 
     void testBuild() {
diff --git a/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlParserTest.groovy b/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlParserTest.groovy
index 74b6593..f4f6960 100644
--- a/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlParserTest.groovy
+++ b/subprojects/groovy-yaml/src/spec/test/groovy/yaml/YamlParserTest.groovy
@@ -18,6 +18,8 @@
  */
 package groovy.yaml
 
+import groovy.test.GroovyTestCase
+
 class YamlParserTest extends GroovyTestCase {
 
     void testParse() {


Mime
View raw message