You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by th...@apache.org on 2020/09/12 18:58:23 UTC

[tapestry-5] branch java9modules updated (dc4ca1d -> ffabdb6)

This is an automated email from the ASF dual-hosted git repository.

thiagohp pushed a change to branch java9modules
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git.


    from dc4ca1d  TAP5-2641: moving annotations from tapestry-ioc to tapestry5-annotations
     new f11803d  TAP5-2641: moving more classes around to avoid split packages
     new ffabdb6  TAP5-2641: fixing Groovy test imports

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../services/ClientDataEncoderImplTest.groovy      |  2 +-
 .../ResponseCompressionAnalyzerTest.groovy         |  2 +-
 .../assets/AssetPathConstructorImplTest.groovy     |  2 +-
 .../services/assets/ModuleReaderSpec.groovy        |  2 +-
 .../ComponentPageElementResourcesImplTest.groovy   |  2 +-
 .../javascript/ModuleDispatcherTests.groovy        |  2 +-
 .../tapestry5/corelib/components/SubmitTest.java   |  2 +-
 .../internal/ServletContextSymbolProviderTest.java |  2 +-
 .../services/LocalizationSetterImplTest.java       |  2 +-
 .../services/PersistentLocaleImplTest.java         |  2 +-
 .../assets/ContextAssetRequestHandlerTest.java     |  2 +-
 .../org/apache/tapestry5/root/ContentTypeTest.java |  2 +-
 .../tapestry5/services/LibraryMappingTest.java     |  2 +-
 .../DefaultHibernateConfigurerFilterTest.java      |  2 +-
 .../hibernate/HibernateSessionSourceImplTest.java  |  2 +-
 .../HibernateTransactionDecoratorImplTest.java     |  2 +-
 .../org/apache/tapestry5/ioc/test/IOCTestCase.java |  1 +
 .../src/test/groovy/ioc/specs/AdvisorsSpec.groovy  | 10 ++++---
 .../specs/AspectInterceptorBuilderImplSpec.groovy  |  3 ++-
 .../src/test/groovy/ioc/specs/AutobuildSpec.groovy | 14 ++++++++--
 .../test/groovy/ioc/specs/BridgeBuilderSpec.groovy |  8 ++++++
 .../groovy/ioc/specs/ConcurrentBarrierSpec.groovy  |  5 ++--
 .../groovy/ioc/specs/ConfigurationsSpec.groovy     | 31 +++++++++++++++++++---
 .../ioc/specs/ContributionDefImplSpec.groovy       | 14 +++++-----
 .../test/groovy/ioc/specs/DecoratorsSpec.groovy    | 16 ++++++++---
 .../ioc/specs/DefaultModuleDefImplSpec.groovy      | 30 +++++++++++++++++++++
 .../src/test/groovy/ioc/specs/EagerLoadSpec.groovy |  2 +-
 .../groovy/ioc/specs/ExceptionUtilsSpec.groovy     |  2 +-
 .../ioc/specs/FilterMethodAnalyzerSpec.groovy      |  5 ++--
 .../groovy/ioc/specs/GeneralIntegrationSpec.groovy |  4 +--
 .../test/groovy/ioc/specs/GenericUtilsSpec.groovy  |  6 ++---
 .../groovy/ioc/specs/InheritanceSearchSpec.groovy  |  7 ++++-
 .../src/test/groovy/ioc/specs/InjectionSpec.groovy |  8 +++++-
 .../test/groovy/ioc/specs/InternalUtilsSpec.groovy |  8 ++++++
 .../groovy/ioc/specs/LazyAdvisorImplSpec.groovy    |  6 ++---
 .../ioc/specs/LoggingDecoratorImplSpec.groovy      |  4 +--
 .../test/groovy/ioc/specs/MessagesImplSpec.groovy  |  2 +-
 .../specs/MethodInvocationGetAnnotationSpec.groovy | 12 ++++-----
 .../test/groovy/ioc/specs/ModuleImplSpec.groovy    |  7 +++--
 .../ioc/specs/ModuleInstantiationSpec.groovy       |  4 +--
 .../ioc/specs/NonParallelExecutorSpec.groovy       |  2 +-
 .../test/groovy/ioc/specs/OneShotLockSpec.groovy   |  4 ++-
 .../groovy/ioc/specs/ParallelExecutorSpec.groovy   |  5 ++--
 .../groovy/ioc/specs/PerThreadScopeSpec.groovy     |  6 ++---
 .../ioc/specs/PipelineBuilderImplSpec.groovy       |  5 ++--
 .../groovy/ioc/specs/PropertyAccessImplSpec.groovy | 12 ++++++---
 .../groovy/ioc/specs/RegistryBuilderSpec.groovy    | 11 +++++++-
 ...RegistryConstructionAndRuntimeErrorsSpec.groovy | 13 ++++++---
 .../src/test/groovy/ioc/specs/RegistrySpec.groovy  | 18 ++++++-------
 .../groovy/ioc/specs/RegistryStartupSpec.groovy    |  3 ++-
 .../ioc/specs/ServiceActivityScoreboardSpec.groovy |  8 +++++-
 .../test/groovy/ioc/specs/ServiceBinderSpec.groovy |  4 +--
 .../specs/ServiceBuilderMethodInvokerSpec.groovy   |  6 ++---
 .../ioc/specs/ServiceCreatorGenericsSpec.groovy    | 11 ++++----
 .../test/groovy/ioc/specs/ServiceLookupSpec.groovy |  9 ++++++-
 .../test/groovy/ioc/specs/ServiceProxySpec.groovy  | 10 ++++++-
 .../ioc/specs/StringToEnumCoercionSpec.groovy      |  2 +-
 .../src/test/groovy/ioc/specs/TestBaseSpec.groovy  |  5 ++--
 .../org/apache/tapestry5/ioc/PingableImpl.java     |  6 -----
 .../internal/services/AnnotatedBeanSubclass.java   |  5 ----
 .../tapestry5/ioc/{ => test}/AdviceDemoModule.java |  3 ++-
 .../AdviceMethodMissingAdvisorParameterModule.java |  2 +-
 .../ioc/{ => test}/AutobuildInjectionModule.java   |  2 +-
 .../tapestry5/ioc/{ => test}/AutobuildModule.java  |  4 ++-
 .../tapestry5/ioc/{ => test}/BarneyModule.java     |  2 +-
 .../tapestry5/ioc/{ => test}/BlueMarker.java       |  2 +-
 .../CaseInsensitiveContributeMethodModule.java     |  2 +-
 .../CatchAllServiceConfigurationListener.java      |  2 +-
 .../{ => test}/ConcreteServiceBuilderModule.java   |  4 ++-
 .../{ => test}/ConfigurationOverrideModule.java    |  2 +-
 .../ioc/{ => test}/ContributeByClassModule.java    |  2 +-
 .../{ => test}/ContributedValueCoercionModule.java |  2 +-
 .../ioc/{ => test}/ContributionOrderModule.java    |  3 ++-
 .../ioc/{ => test}/ContributionOrderModule2.java   |  2 +-
 .../ioc/{ => test}/ContributionOrderModule3.java   |  2 +-
 .../ioc/{ => test}/ContributionOrderModule4.java   |  2 +-
 .../ioc/{ => test}/ConventionFailureModule.java    |  4 ++-
 .../tapestry5/ioc/{ => test}/ConventionModule.java |  4 ++-
 .../ConventionModuleImplementationNotFound.java    |  4 ++-
 .../ioc/{ => test}/CountingGreeterImpl.java        |  2 +-
 .../tapestry5/ioc/{ => test}/CyclicMOPModule.java  |  2 +-
 .../tapestry5/ioc/{ => test}/DecoratorList.java    |  2 +-
 .../ioc/{ => test}/DefaultMethodService.java       |  2 +-
 .../DuplicateConfigurationOverrideModule.java      |  2 +-
 .../ioc/{ => test}/DuplicateFredModule.java        |  2 +-
 .../ioc/{ => test}/DuplicateServiceTypeModule.java |  2 +-
 .../tapestry5/ioc/{ => test}/EagerLoadModule.java  |  2 +-
 .../tapestry5/ioc/{ => test}/EagerLoadService.java |  2 +-
 .../ioc/{ => test}/EagerLoadServiceImpl.java       |  2 +-
 .../ioc/{ => test}/EagerProxyReloadModule.java     |  4 ++-
 .../ioc/{ => test}/ExtraMethodsModule.java         |  2 +-
 .../ioc/{ => test}/FailInConstructorRunnable.java  |  2 +-
 .../FailedConfigurationOverrideModule.java         |  2 +-
 .../{ => test}/FieldResourceInjectionModule.java   |  3 ++-
 .../ioc/{ => test}/FieldResourceService.java       |  2 +-
 .../ioc/{ => test}/FieldResourceServiceImpl.java   |  3 ++-
 .../tapestry5/ioc/{ => test}/FredModule.java       |  3 ++-
 .../tapestry5/ioc/{ => test}/GreenMarker.java      |  2 +-
 .../apache/tapestry5/ioc/{ => test}/Greeter.java   |  2 +-
 .../tapestry5/ioc/{ => test}/GreeterModule.java    |  2 +-
 .../tapestry5/ioc/{ => test}/GreeterModule2.java   |  2 +-
 .../{ => test}/GreeterServiceOverrideModule.java   |  2 +-
 .../tapestry5/ioc/{ => test}/HelterModule.java     |  2 +-
 .../ioc/{ => test}/IndirectResources.java          |  3 ++-
 .../tapestry5/ioc/{ => test}/Indirection.java      |  2 +-
 .../tapestry5/ioc/{ => test}/InjectionCheck.java   |  2 +-
 .../ioc/{ => test}/InjectionCheckImpl.java         |  2 +-
 .../ioc/{ => test}/InjectionCheckModule.java       |  3 ++-
 .../apache/tapestry5/ioc/{ => test}/IntHolder.java |  2 +-
 .../tapestry5/ioc/{ => test}/IntHolderImpl.java    |  2 +-
 .../ioc/{ => test}/IntegrationTestFixture.java     |  2 +-
 .../ioc/{ => test}/InvalidContributeDefModule.java |  2 +-
 .../{ => test}/InvalidContributeDefModule2.java    |  2 +-
 .../{ => test}/InvalidContributeDefModule3.java    |  2 +-
 .../tapestry5/ioc/{ => test}/LocalModule.java      |  2 +-
 .../tapestry5/ioc/{ => test}/MarkerModule.java     |  3 ++-
 .../tapestry5/ioc/{ => test}/MasterModule.java     |  2 +-
 .../tapestry5/ioc/{ => test}/NameListHolder.java   |  2 +-
 .../tapestry5/ioc/{ => test}/NameListHolder2.java  |  2 +-
 .../NoImplementationClassForSimpleIdModule.java    |  6 ++++-
 .../ioc/{ => test}/NonProxiedServiceModule.java    |  4 ++-
 .../ioc/{ => test}/NonVoidAdvisorMethodModule.java |  4 ++-
 .../ioc/{ => test}/OptionalContributionModule.java |  2 +-
 .../tapestry5/ioc/{ => test}/OrderedService.java   |  2 +-
 .../tapestry5/ioc/{ => test}/PerThreadModule.java  |  3 ++-
 .../apache/tapestry5/ioc/{ => test}/Pingable.java  |  2 +-
 .../apache/tapestry5/ioc/test/PingableImpl.java    |  6 +++++
 .../ioc/{ => test}/PostInjectionMethodModule.java  |  4 ++-
 .../ioc/{ => test}/PreventDecorationModule.java    |  3 ++-
 .../ioc/{ => test}/RecursiveConstructorModule.java |  2 +-
 .../tapestry5/ioc/{ => test}/RedGreeterImpl.java   |  2 +-
 .../apache/tapestry5/ioc/{ => test}/RedMarker.java |  2 +-
 .../ioc/{ => test}/RegistryBuilderTestModule.java  |  2 +-
 .../apache/tapestry5/ioc/{ => test}/Rocket.java    |  2 +-
 .../tapestry5/ioc/{ => test}/RocketImpl.java       |  2 +-
 .../ioc/{ => test}/ScopeMismatchModule.java        |  3 ++-
 .../ServiceBuilderAutobuilderModule.java           |  4 ++-
 .../ioc/{ => test}/ServiceBuilderModule.java       |  6 ++++-
 .../tapestry5/ioc/{ => test}/ServiceIdGreeter.java |  3 ++-
 .../org/apache/tapestry5/ioc/{ => test}/Sizer.java |  2 +-
 .../tapestry5/ioc/{ => test}/SkelterModule.java    |  2 +-
 .../ioc/{ => test}/SpecificDecoratorModule.java    |  2 +-
 .../{ => test}/SpecificDecoratorModuleAgain.java   |  2 +-
 .../apache/tapestry5/ioc/{ => test}/Square.java    |  2 +-
 .../tapestry5/ioc/{ => test}/StaticModule.java     |  2 +-
 .../tapestry5/ioc/{ => test}/StringHolder.java     |  2 +-
 .../tapestry5/ioc/{ => test}/StringHolderImpl.java |  4 +--
 .../tapestry5/ioc/{ => test}/StringLookup.java     |  2 +-
 .../ioc/{ => test}/StringTransformer.java          |  2 +-
 .../ioc/{ => test}/SymbolExpandingTransformer.java |  2 +-
 .../ioc/{ => test}/UnbuildablePingable.java        |  2 +-
 .../ioc/{ => test}/UnknownColorGreeterImpl.java    |  2 +-
 .../ioc/{ => test}/UnknownScopeModule.java         |  2 +-
 .../ioc/{ => test}/UppercaseStringTransformer.java |  2 +-
 .../tapestry5/ioc/{ => test}/YellowMarker.java     |  2 +-
 .../internal/AbstractAutobuildServiceModule.java   |  2 +-
 .../internal/AbstractRunnableService.java          |  2 +-
 .../ioc/{ => test}/internal/AdviceModule.java      |  2 +-
 .../{ => test}/internal/AdviseByMarkerModule.java  |  8 +++---
 .../{ => test}/internal/AdviseByMarkerModule2.java |  6 ++---
 .../ioc/{ => test}/internal/AlphabetModule.java    | 10 +++----
 .../ioc/{ => test}/internal/AlphabetModule2.java   | 10 +++----
 .../internal/AnnotatedServiceInterface.java        |  2 +-
 .../internal/AnnotatedServiceInterfaceImpl.java    |  2 +-
 .../internal/ArrayDecoratorMethodModule.java       |  2 +-
 .../{ => test}/internal/BuilderMethodModule.java   |  2 +-
 .../internal/ComplexAutobuildModule.java           |  6 ++---
 .../internal/DecorateByMarkerModule.java           |  8 +++---
 .../internal/DecorateByMarkerModule2.java          |  6 ++---
 .../ioc/{ => test}/internal/DecoratorModule.java   |  2 +-
 .../internal/DefaultServiceIdModule.java           |  2 +-
 .../internal/EagerLoadViaAnnotationModule.java     |  2 +-
 .../EagerLoadViaAnnotationServiceImpl.java         |  2 +-
 .../{ => test}/internal/ExceptionInBindMethod.java |  2 +-
 .../internal/ExceptionInConstructorModule.java     |  4 +--
 .../ExceptionInConstructorServiceImpl.java         |  4 +--
 .../internal/ExtraPublicConstructorsModule.java    |  2 +-
 .../ioc/{ => test}/internal/FieService.java        |  2 +-
 .../ioc/{ => test}/internal/FoeService.java        |  2 +-
 .../internal/MappedConfigurationModule.java        |  3 ++-
 .../{ => test}/internal/ModuleBuilderWithId.java   |  2 +-
 .../{ => test}/internal/ModuleImplTestModule.java  |  2 +-
 .../ModuleWithOverriddenObjectMethods.java         |  2 +-
 .../MultipleConstructorsAutobuildService.java      |  4 +--
 ...MutlipleAutobuildServiceConstructorsModule.java |  4 +--
 .../{ => test}/internal/NamedServiceModule.java    |  2 +-
 .../internal/NamedViaAnnotationServiceImpl.java    |  2 +-
 .../internal/NoDelegateDecoratorMethodModule.java  |  2 +-
 .../NoUsableContributionParameterModule.java       |  3 ++-
 .../NonAnnotatedGenericServiceInterface.java       |  2 +-
 .../NonAnnotatedGenericSetServiceImpl.java         |  2 +-
 .../NonAnnotatedGenericSetServiceInterface.java    |  2 +-
 .../internal/NonAnnotatedServiceInterface.java     |  2 +-
 .../internal/NonAnnotatedServiceInterfaceImpl.java |  2 +-
 .../internal/NonStaticBindMethodModule.java        |  6 ++---
 .../internal/NoopClassLoaderDelegate.java          |  2 +-
 .../internal/OrderedConfigurationModule.java       |  3 ++-
 .../internal/PrimitiveDecoratorMethodModule.java   |  2 +-
 .../internal/PrivateConstructorModule.java         |  2 +-
 .../ioc/{ => test}/internal/ReadManifest.java      |  2 +-
 .../{ => test}/internal/RunnableServiceImpl.java   |  2 +-
 .../internal/ServiceBuilderMethodFixture.java      |  2 +-
 .../internal/ServiceDecoratorFixture.java          |  4 +--
 .../internal/ServiceIdConflictMethodModule.java    |  2 +-
 .../internal/ServiceIdViaAnnotationModule.java     |  2 +-
 .../ServiceIdViaAnnotationServiceImpl.java         |  2 +-
 .../ServiceIdViaMethodAnnotationServiceImpl.java   |  2 +-
 .../ioc/{ => test}/internal/SimpleModule.java      |  2 +-
 .../{ => test}/internal/SyntheticMethodModule.java |  2 +-
 .../ioc/{ => test}/internal/TestAdvice.java        |  2 +-
 .../ioc/{ => test}/internal/ToStringService.java   |  2 +-
 .../internal/ToUpperCaseStringHolder.java          |  4 +--
 .../TooManyContributionParametersModule.java       |  3 ++-
 .../UninstantiableAutobuildServiceModule.java      |  2 +-
 .../ioc/{ => test}/internal/UpcaseService.java     |  2 +-
 .../ioc/{ => test}/internal/UpcaseServiceImpl.java |  2 +-
 .../internal/VoidBuilderMethodModule.java          |  2 +-
 .../internal/VoidDecoratorMethodModule.java        |  2 +-
 .../internal/services/AbstractIntWrapper.java      |  2 +-
 .../internal/services/AnnotatedBean.java           |  2 +-
 .../internal/services/AnnotatedBeanSubclass.java   |  5 ++++
 .../ioc/{ => test}/internal/services/Bean.java     |  2 +-
 .../internal/services/BeanWithIndexedProperty.java |  2 +-
 .../internal/services/ExtraFilterMethod.java       |  2 +-
 .../internal/services/ExtraServiceMethod.java      |  2 +-
 .../internal/services/GrandparentInterface.java    |  2 +-
 .../internal/services/LineNumberBean.java          |  2 +-
 .../{ => test}/internal/services/MiddleFilter.java |  2 +-
 .../internal/services/MiddleService.java           |  2 +-
 .../internal/services/NonParallelModule.java       |  2 +-
 .../internal/services/ParentInterface.java         |  2 +-
 .../internal/services/PublicFieldBean.java         |  2 +-
 .../{ => test}/internal/services/SampleFilter.java |  4 ++-
 .../internal/services/SampleService.java           |  4 ++-
 .../services/ServiceDecoratorImplSpec.groovy       |  6 ++---
 .../services/ServiceProxySerializationSpec.groovy  |  2 +-
 .../internal/services/ShadowedPublicFieldBean.java |  2 +-
 .../internal/services/SimpleAnnotation.java        |  2 +-
 .../internal/services/SimpleService.java           |  2 +-
 .../internal/services/StandardFilter.java          |  2 +-
 .../internal/services/StandardService.java         |  2 +-
 .../internal/services/StartupModule.java           |  2 +-
 .../internal/services/StartupModule2.java          |  2 +-
 .../internal/services/StringLocationSpec.groovy    |  2 +-
 .../{ => test}/internal/services/SubInterface.java |  2 +-
 .../services/SymbolObjectProviderSpec.groovy       |  3 ++-
 .../{ => test}/internal/services/TargetBean.java   |  2 +-
 .../internal/services/TestAnnotation.java          |  2 +-
 .../internal/services/TextTransformer.java         |  2 +-
 .../internal/services/ToStringFilter.java          |  2 +-
 .../internal/services/ToStringService.java         |  2 +-
 .../{ => test}/internal/util/BaseGenericBean.java  |  2 +-
 .../{ => test}/internal/util/ConcurrentTarget.java |  3 ++-
 .../internal/util/ConcurrentTargetWrapper.java     |  3 ++-
 .../ioc/{ => test}/internal/util/Drivable.java     |  2 +-
 .../ioc/{ => test}/internal/util/DrivableImpl.java |  2 +-
 .../internal/util/FieldInjectionViaInject.java     |  2 +-
 .../util/FieldInjectionViaInjectService.java       |  2 +-
 .../util/FieldInjectionViaJavaxInject.java         |  2 +-
 .../internal/util/FieldInjectionViaJavaxNamed.java |  2 +-
 .../ioc/{ => test}/internal/util/InjectoBean.java  |  2 +-
 .../{ => test}/internal/util/JavaxInjectBean.java  |  2 +-
 .../{ => test}/internal/util/NonGenericBean.java   |  2 +-
 .../internal/util/NotRetainedRuntime.java          |  2 +-
 .../internal/util/OneShotLockSubject.java          |  3 ++-
 .../ioc/{ => test}/internal/util/Pair.java         |  2 +-
 .../ioc/{ => test}/internal/util/Playable.java     |  2 +-
 .../ioc/{ => test}/internal/util/PlayableImpl.java |  2 +-
 .../ioc/{ => test}/internal/util/StringBean.java   |  2 +-
 .../{ => test}/internal/util/StringLongPair.java   |  2 +-
 .../{ => test}/internal/util/TargetMessages.java   |  2 +-
 .../util/TooManyAutobuildConstructorsBean.java     |  2 +-
 .../ioc/{ => test}/internal/util/ToyTruck.java     |  2 +-
 .../ioc/{ => test}/internal/util/ToyTruckImpl.java |  2 +-
 .../ioc/{ => test}/util/ExceptionWrapper.java      |  2 +-
 ...nmatchingMappedConfigurationOverrideModule.java |  2 +-
 .../apache/tapestry5/{ => ioc}/util/Stooge.java    |  2 +-
 .../jpa/JpaTransactionAdvisorImplTest.java         |  2 +-
 .../{ioc/test => test/ioc}/MockTester.java         |  2 +-
 .../tapestry5/{ioc/test => test/ioc}/TestBase.java |  4 +--
 .../{ioc/test => test/ioc}/TestUtils.java          |  2 +-
 .../{ioc/test => test/ioc}/package-info.java       |  2 +-
 282 files changed, 583 insertions(+), 370 deletions(-)
 delete mode 100644 tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PingableImpl.java
 delete mode 100644 tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBeanSubclass.java
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/AdviceDemoModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/AdviceMethodMissingAdvisorParameterModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/AutobuildInjectionModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/AutobuildModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/BarneyModule.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/BlueMarker.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/CaseInsensitiveContributeMethodModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/CatchAllServiceConfigurationListener.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ConcreteServiceBuilderModule.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ConfigurationOverrideModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ContributeByClassModule.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ContributedValueCoercionModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ContributionOrderModule.java (91%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ContributionOrderModule2.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ContributionOrderModule3.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ContributionOrderModule4.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ConventionFailureModule.java (61%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ConventionModule.java (61%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ConventionModuleImplementationNotFound.java (65%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/CountingGreeterImpl.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/CyclicMOPModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/DecoratorList.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/DefaultMethodService.java (83%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/DuplicateConfigurationOverrideModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/DuplicateFredModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/DuplicateServiceTypeModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/EagerLoadModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/EagerLoadService.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/EagerLoadServiceImpl.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/EagerProxyReloadModule.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ExtraMethodsModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/FailInConstructorRunnable.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/FailedConfigurationOverrideModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/FieldResourceInjectionModule.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/FieldResourceService.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/FieldResourceServiceImpl.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/FredModule.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/GreenMarker.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/Greeter.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/GreeterModule.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/GreeterModule2.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/GreeterServiceOverrideModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/HelterModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/IndirectResources.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/Indirection.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/InjectionCheck.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/InjectionCheckImpl.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/InjectionCheckModule.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/IntHolder.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/IntHolderImpl.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/IntegrationTestFixture.java (86%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/InvalidContributeDefModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/InvalidContributeDefModule2.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/InvalidContributeDefModule3.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/LocalModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/MarkerModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/MasterModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/NameListHolder.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/NameListHolder2.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/NoImplementationClassForSimpleIdModule.java (84%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/NonProxiedServiceModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/NonVoidAdvisorMethodModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/OptionalContributionModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/OrderedService.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/PerThreadModule.java (91%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/Pingable.java (94%)
 create mode 100644 tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PingableImpl.java
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/PostInjectionMethodModule.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/PreventDecorationModule.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/RecursiveConstructorModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/RedGreeterImpl.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/RedMarker.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/RegistryBuilderTestModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/Rocket.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/RocketImpl.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ScopeMismatchModule.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ServiceBuilderAutobuilderModule.java (91%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ServiceBuilderModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/ServiceIdGreeter.java (91%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/Sizer.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/SkelterModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/SpecificDecoratorModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/SpecificDecoratorModuleAgain.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/Square.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/StaticModule.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/StringHolder.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/StringHolderImpl.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/StringLookup.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/StringTransformer.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/SymbolExpandingTransformer.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/UnbuildablePingable.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/UnknownColorGreeterImpl.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/UnknownScopeModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/UppercaseStringTransformer.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/YellowMarker.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AbstractAutobuildServiceModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AbstractRunnableService.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AdviceModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AdviseByMarkerModule.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AdviseByMarkerModule2.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AlphabetModule.java (88%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AlphabetModule2.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AnnotatedServiceInterface.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/AnnotatedServiceInterfaceImpl.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ArrayDecoratorMethodModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/BuilderMethodModule.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ComplexAutobuildModule.java (85%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/DecorateByMarkerModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/DecorateByMarkerModule2.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/DecoratorModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/DefaultServiceIdModule.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/EagerLoadViaAnnotationModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/EagerLoadViaAnnotationServiceImpl.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ExceptionInBindMethod.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ExceptionInConstructorModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ExceptionInConstructorServiceImpl.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ExtraPublicConstructorsModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/FieService.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/FoeService.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/MappedConfigurationModule.java (88%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ModuleBuilderWithId.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ModuleImplTestModule.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ModuleWithOverriddenObjectMethods.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/MultipleConstructorsAutobuildService.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/MutlipleAutobuildServiceConstructorsModule.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NamedServiceModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NamedViaAnnotationServiceImpl.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NoDelegateDecoratorMethodModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NoUsableContributionParameterModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NonAnnotatedGenericServiceInterface.java (84%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NonAnnotatedGenericSetServiceImpl.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NonAnnotatedGenericSetServiceInterface.java (71%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NonAnnotatedServiceInterface.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NonAnnotatedServiceInterfaceImpl.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NonStaticBindMethodModule.java (84%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/NoopClassLoaderDelegate.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/OrderedConfigurationModule.java (88%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/PrimitiveDecoratorMethodModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/PrivateConstructorModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ReadManifest.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/RunnableServiceImpl.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ServiceBuilderMethodFixture.java (98%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ServiceDecoratorFixture.java (84%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ServiceIdConflictMethodModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ServiceIdViaAnnotationModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ServiceIdViaAnnotationServiceImpl.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ServiceIdViaMethodAnnotationServiceImpl.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/SimpleModule.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/SyntheticMethodModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/TestAdvice.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ToStringService.java (60%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/ToUpperCaseStringHolder.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/TooManyContributionParametersModule.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/UninstantiableAutobuildServiceModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/UpcaseService.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/UpcaseServiceImpl.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/VoidBuilderMethodModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/VoidDecoratorMethodModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/AbstractIntWrapper.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/AnnotatedBean.java (95%)
 create mode 100644 tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBeanSubclass.java
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/Bean.java (91%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/BeanWithIndexedProperty.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ExtraFilterMethod.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ExtraServiceMethod.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/GrandparentInterface.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/LineNumberBean.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/MiddleFilter.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/MiddleService.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/NonParallelModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ParentInterface.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/PublicFieldBean.java (51%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/SampleFilter.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/SampleService.java (88%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ServiceDecoratorImplSpec.groovy (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ServiceProxySerializationSpec.groovy (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ShadowedPublicFieldBean.java (80%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/SimpleAnnotation.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/SimpleService.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/StandardFilter.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/StandardService.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/StartupModule.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/StartupModule2.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/StringLocationSpec.groovy (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/SubInterface.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/SymbolObjectProviderSpec.groovy (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/TargetBean.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/TestAnnotation.java (96%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/TextTransformer.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ToStringFilter.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/services/ToStringService.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/BaseGenericBean.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/ConcurrentTarget.java (97%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/ConcurrentTargetWrapper.java (90%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/Drivable.java (67%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/DrivableImpl.java (75%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/FieldInjectionViaInject.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/FieldInjectionViaInjectService.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/FieldInjectionViaJavaxInject.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/FieldInjectionViaJavaxNamed.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/InjectoBean.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/JavaxInjectBean.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/NonGenericBean.java (93%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/NotRetainedRuntime.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/OneShotLockSubject.java (89%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/Pair.java (94%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/Playable.java (80%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/PlayableImpl.java (77%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/StringBean.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/StringLongPair.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/TargetMessages.java (63%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/TooManyAutobuildConstructorsBean.java (92%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/ToyTruck.java (72%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/internal/util/ToyTruckImpl.java (79%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/util/ExceptionWrapper.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/{ => test}/util/NonmatchingMappedConfigurationOverrideModule.java (95%)
 rename tapestry-ioc/src/test/java/org/apache/tapestry5/{ => ioc}/util/Stooge.java (94%)
 rename tapestry-test/src/main/java/org/apache/tapestry5/{ioc/test => test/ioc}/MockTester.java (98%)
 rename tapestry-test/src/main/java/org/apache/tapestry5/{ioc/test => test/ioc}/TestBase.java (98%)
 rename tapestry-test/src/main/java/org/apache/tapestry5/{ioc/test => test/ioc}/TestUtils.java (99%)
 rename tapestry-test/src/main/java/org/apache/tapestry5/{ioc/test => test/ioc}/package-info.java (92%)


[tapestry-5] 01/02: TAP5-2641: moving more classes around to avoid split packages

Posted by th...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

thiagohp pushed a commit to branch java9modules
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git

commit f11803dcebd2ff68c21e505b711a386fb0f80c15
Author: Thiago H. de Paula Figueiredo <th...@arsmachina.com.br>
AuthorDate: Sat Sep 12 13:27:00 2020 -0300

    TAP5-2641: moving more classes around to avoid split packages
---
 .../src/test/groovy/ioc/specs/AdvisorsSpec.groovy  |  9 +++++--
 .../specs/AspectInterceptorBuilderImplSpec.groovy  |  2 +-
 .../src/test/groovy/ioc/specs/AutobuildSpec.groovy | 13 +++++++++-
 .../test/groovy/ioc/specs/BridgeBuilderSpec.groovy |  8 ++++++
 .../groovy/ioc/specs/ConcurrentBarrierSpec.groovy  |  5 ++--
 .../groovy/ioc/specs/ConfigurationsSpec.groovy     | 30 +++++++++++++++++++---
 .../ioc/specs/ContributionDefImplSpec.groovy       |  2 +-
 .../test/groovy/ioc/specs/DecoratorsSpec.groovy    | 15 +++++++++--
 .../ioc/specs/DefaultModuleDefImplSpec.groovy      | 30 ++++++++++++++++++++++
 .../src/test/groovy/ioc/specs/EagerLoadSpec.groovy |  2 +-
 .../groovy/ioc/specs/ExceptionUtilsSpec.groovy     |  2 +-
 .../ioc/specs/FilterMethodAnalyzerSpec.groovy      |  5 ++--
 .../groovy/ioc/specs/GeneralIntegrationSpec.groovy |  4 +--
 .../test/groovy/ioc/specs/GenericUtilsSpec.groovy  |  6 ++---
 .../groovy/ioc/specs/InheritanceSearchSpec.groovy  |  6 +++++
 .../src/test/groovy/ioc/specs/InjectionSpec.groovy |  7 +++++
 .../test/groovy/ioc/specs/InternalUtilsSpec.groovy |  8 ++++++
 .../groovy/ioc/specs/LazyAdvisorImplSpec.groovy    |  2 +-
 .../ioc/specs/LoggingDecoratorImplSpec.groovy      |  4 +--
 .../test/groovy/ioc/specs/MessagesImplSpec.groovy  |  2 +-
 .../specs/MethodInvocationGetAnnotationSpec.groovy | 12 ++++-----
 .../test/groovy/ioc/specs/ModuleImplSpec.groovy    |  7 +++--
 .../ioc/specs/ModuleInstantiationSpec.groovy       |  4 +--
 .../ioc/specs/NonParallelExecutorSpec.groovy       |  3 ++-
 .../test/groovy/ioc/specs/OneShotLockSpec.groovy   |  3 ++-
 .../groovy/ioc/specs/ParallelExecutorSpec.groovy   |  5 ++--
 .../groovy/ioc/specs/PerThreadScopeSpec.groovy     |  6 ++---
 .../ioc/specs/PipelineBuilderImplSpec.groovy       |  4 +--
 .../groovy/ioc/specs/PropertyAccessImplSpec.groovy | 11 ++++++--
 .../groovy/ioc/specs/RegistryBuilderSpec.groovy    |  8 ++++++
 ...RegistryConstructionAndRuntimeErrorsSpec.groovy | 12 ++++++---
 .../src/test/groovy/ioc/specs/RegistrySpec.groovy  | 18 ++++++-------
 .../groovy/ioc/specs/RegistryStartupSpec.groovy    |  2 +-
 .../ioc/specs/ServiceActivityScoreboardSpec.groovy |  6 +++++
 .../test/groovy/ioc/specs/ServiceBinderSpec.groovy |  4 +--
 .../specs/ServiceBuilderMethodInvokerSpec.groovy   |  6 ++---
 .../ioc/specs/ServiceCreatorGenericsSpec.groovy    |  3 ++-
 .../test/groovy/ioc/specs/ServiceLookupSpec.groovy |  8 ++++++
 .../test/groovy/ioc/specs/ServiceProxySpec.groovy  |  9 +++++++
 .../ioc/specs/StringToEnumCoercionSpec.groovy      |  2 +-
 .../org/apache/tapestry5/ioc/PingableImpl.java     |  6 -----
 .../internal/services/AnnotatedBeanSubclass.java   |  5 ----
 .../tapestry5/ioc/{ => test}/AdviceDemoModule.java |  3 ++-
 .../AdviceMethodMissingAdvisorParameterModule.java |  2 +-
 .../ioc/{ => test}/AutobuildInjectionModule.java   |  2 +-
 .../tapestry5/ioc/{ => test}/AutobuildModule.java  |  4 ++-
 .../tapestry5/ioc/{ => test}/BarneyModule.java     |  2 +-
 .../tapestry5/ioc/{ => test}/BlueMarker.java       |  2 +-
 .../CaseInsensitiveContributeMethodModule.java     |  2 +-
 .../CatchAllServiceConfigurationListener.java      |  2 +-
 .../{ => test}/ConcreteServiceBuilderModule.java   |  4 ++-
 .../{ => test}/ConfigurationOverrideModule.java    |  2 +-
 .../ioc/{ => test}/ContributeByClassModule.java    |  2 +-
 .../{ => test}/ContributedValueCoercionModule.java |  2 +-
 .../ioc/{ => test}/ContributionOrderModule.java    |  3 ++-
 .../ioc/{ => test}/ContributionOrderModule2.java   |  2 +-
 .../ioc/{ => test}/ContributionOrderModule3.java   |  2 +-
 .../ioc/{ => test}/ContributionOrderModule4.java   |  2 +-
 .../ioc/{ => test}/ConventionFailureModule.java    |  4 ++-
 .../tapestry5/ioc/{ => test}/ConventionModule.java |  4 ++-
 .../ConventionModuleImplementationNotFound.java    |  4 ++-
 .../ioc/{ => test}/CountingGreeterImpl.java        |  2 +-
 .../tapestry5/ioc/{ => test}/CyclicMOPModule.java  |  2 +-
 .../tapestry5/ioc/{ => test}/DecoratorList.java    |  2 +-
 .../ioc/{ => test}/DefaultMethodService.java       |  2 +-
 .../DuplicateConfigurationOverrideModule.java      |  2 +-
 .../ioc/{ => test}/DuplicateFredModule.java        |  2 +-
 .../ioc/{ => test}/DuplicateServiceTypeModule.java |  2 +-
 .../tapestry5/ioc/{ => test}/EagerLoadModule.java  |  2 +-
 .../tapestry5/ioc/{ => test}/EagerLoadService.java |  2 +-
 .../ioc/{ => test}/EagerLoadServiceImpl.java       |  2 +-
 .../ioc/{ => test}/EagerProxyReloadModule.java     |  4 ++-
 .../ioc/{ => test}/ExtraMethodsModule.java         |  2 +-
 .../ioc/{ => test}/FailInConstructorRunnable.java  |  2 +-
 .../FailedConfigurationOverrideModule.java         |  2 +-
 .../{ => test}/FieldResourceInjectionModule.java   |  3 ++-
 .../ioc/{ => test}/FieldResourceService.java       |  2 +-
 .../ioc/{ => test}/FieldResourceServiceImpl.java   |  3 ++-
 .../tapestry5/ioc/{ => test}/FredModule.java       |  3 ++-
 .../tapestry5/ioc/{ => test}/GreenMarker.java      |  2 +-
 .../apache/tapestry5/ioc/{ => test}/Greeter.java   |  2 +-
 .../tapestry5/ioc/{ => test}/GreeterModule.java    |  2 +-
 .../tapestry5/ioc/{ => test}/GreeterModule2.java   |  2 +-
 .../{ => test}/GreeterServiceOverrideModule.java   |  2 +-
 .../tapestry5/ioc/{ => test}/HelterModule.java     |  2 +-
 .../ioc/{ => test}/IndirectResources.java          |  3 ++-
 .../tapestry5/ioc/{ => test}/Indirection.java      |  2 +-
 .../tapestry5/ioc/{ => test}/InjectionCheck.java   |  2 +-
 .../ioc/{ => test}/InjectionCheckImpl.java         |  2 +-
 .../ioc/{ => test}/InjectionCheckModule.java       |  3 ++-
 .../apache/tapestry5/ioc/{ => test}/IntHolder.java |  2 +-
 .../tapestry5/ioc/{ => test}/IntHolderImpl.java    |  2 +-
 .../ioc/{ => test}/IntegrationTestFixture.java     |  2 +-
 .../ioc/{ => test}/InvalidContributeDefModule.java |  2 +-
 .../{ => test}/InvalidContributeDefModule2.java    |  2 +-
 .../{ => test}/InvalidContributeDefModule3.java    |  2 +-
 .../tapestry5/ioc/{ => test}/LocalModule.java      |  2 +-
 .../tapestry5/ioc/{ => test}/MarkerModule.java     |  3 ++-
 .../tapestry5/ioc/{ => test}/MasterModule.java     |  2 +-
 .../tapestry5/ioc/{ => test}/NameListHolder.java   |  2 +-
 .../tapestry5/ioc/{ => test}/NameListHolder2.java  |  2 +-
 .../NoImplementationClassForSimpleIdModule.java    |  6 ++++-
 .../ioc/{ => test}/NonProxiedServiceModule.java    |  4 ++-
 .../ioc/{ => test}/NonVoidAdvisorMethodModule.java |  4 ++-
 .../ioc/{ => test}/OptionalContributionModule.java |  2 +-
 .../tapestry5/ioc/{ => test}/OrderedService.java   |  2 +-
 .../tapestry5/ioc/{ => test}/PerThreadModule.java  |  3 ++-
 .../apache/tapestry5/ioc/{ => test}/Pingable.java  |  2 +-
 .../apache/tapestry5/ioc/test/PingableImpl.java    |  6 +++++
 .../ioc/{ => test}/PostInjectionMethodModule.java  |  4 ++-
 .../ioc/{ => test}/PreventDecorationModule.java    |  3 ++-
 .../ioc/{ => test}/RecursiveConstructorModule.java |  2 +-
 .../tapestry5/ioc/{ => test}/RedGreeterImpl.java   |  2 +-
 .../apache/tapestry5/ioc/{ => test}/RedMarker.java |  2 +-
 .../ioc/{ => test}/RegistryBuilderTestModule.java  |  2 +-
 .../apache/tapestry5/ioc/{ => test}/Rocket.java    |  2 +-
 .../tapestry5/ioc/{ => test}/RocketImpl.java       |  2 +-
 .../ioc/{ => test}/ScopeMismatchModule.java        |  3 ++-
 .../ServiceBuilderAutobuilderModule.java           |  4 ++-
 .../ioc/{ => test}/ServiceBuilderModule.java       |  6 ++++-
 .../tapestry5/ioc/{ => test}/ServiceIdGreeter.java |  3 ++-
 .../org/apache/tapestry5/ioc/{ => test}/Sizer.java |  2 +-
 .../tapestry5/ioc/{ => test}/SkelterModule.java    |  2 +-
 .../ioc/{ => test}/SpecificDecoratorModule.java    |  2 +-
 .../{ => test}/SpecificDecoratorModuleAgain.java   |  2 +-
 .../apache/tapestry5/ioc/{ => test}/Square.java    |  2 +-
 .../tapestry5/ioc/{ => test}/StaticModule.java     |  2 +-
 .../tapestry5/ioc/{ => test}/StringHolder.java     |  2 +-
 .../tapestry5/ioc/{ => test}/StringHolderImpl.java |  4 +--
 .../tapestry5/ioc/{ => test}/StringLookup.java     |  2 +-
 .../ioc/{ => test}/StringTransformer.java          |  2 +-
 .../ioc/{ => test}/SymbolExpandingTransformer.java |  2 +-
 .../ioc/{ => test}/UnbuildablePingable.java        |  2 +-
 .../ioc/{ => test}/UnknownColorGreeterImpl.java    |  2 +-
 .../ioc/{ => test}/UnknownScopeModule.java         |  2 +-
 .../ioc/{ => test}/UppercaseStringTransformer.java |  2 +-
 .../tapestry5/ioc/{ => test}/YellowMarker.java     |  2 +-
 .../internal/AbstractAutobuildServiceModule.java   |  2 +-
 .../internal/AbstractRunnableService.java          |  2 +-
 .../ioc/{ => test}/internal/AdviceModule.java      |  2 +-
 .../{ => test}/internal/AdviseByMarkerModule.java  |  8 +++---
 .../{ => test}/internal/AdviseByMarkerModule2.java |  6 ++---
 .../ioc/{ => test}/internal/AlphabetModule.java    | 10 ++++----
 .../ioc/{ => test}/internal/AlphabetModule2.java   | 10 ++++----
 .../internal/AnnotatedServiceInterface.java        |  2 +-
 .../internal/AnnotatedServiceInterfaceImpl.java    |  2 +-
 .../internal/ArrayDecoratorMethodModule.java       |  2 +-
 .../{ => test}/internal/BuilderMethodModule.java   |  2 +-
 .../internal/ComplexAutobuildModule.java           |  6 ++---
 .../internal/DecorateByMarkerModule.java           |  8 +++---
 .../internal/DecorateByMarkerModule2.java          |  6 ++---
 .../ioc/{ => test}/internal/DecoratorModule.java   |  2 +-
 .../internal/DefaultServiceIdModule.java           |  2 +-
 .../internal/EagerLoadViaAnnotationModule.java     |  2 +-
 .../EagerLoadViaAnnotationServiceImpl.java         |  2 +-
 .../{ => test}/internal/ExceptionInBindMethod.java |  2 +-
 .../internal/ExceptionInConstructorModule.java     |  4 +--
 .../ExceptionInConstructorServiceImpl.java         |  4 +--
 .../internal/ExtraPublicConstructorsModule.java    |  2 +-
 .../ioc/{ => test}/internal/FieService.java        |  2 +-
 .../ioc/{ => test}/internal/FoeService.java        |  2 +-
 .../internal/MappedConfigurationModule.java        |  3 ++-
 .../{ => test}/internal/ModuleBuilderWithId.java   |  2 +-
 .../{ => test}/internal/ModuleImplTestModule.java  |  2 +-
 .../ModuleWithOverriddenObjectMethods.java         |  2 +-
 .../MultipleConstructorsAutobuildService.java      |  4 +--
 ...MutlipleAutobuildServiceConstructorsModule.java |  4 +--
 .../{ => test}/internal/NamedServiceModule.java    |  2 +-
 .../internal/NamedViaAnnotationServiceImpl.java    |  2 +-
 .../internal/NoDelegateDecoratorMethodModule.java  |  2 +-
 .../NoUsableContributionParameterModule.java       |  3 ++-
 .../NonAnnotatedGenericServiceInterface.java       |  2 +-
 .../NonAnnotatedGenericSetServiceImpl.java         |  2 +-
 .../NonAnnotatedGenericSetServiceInterface.java    |  2 +-
 .../internal/NonAnnotatedServiceInterface.java     |  2 +-
 .../internal/NonAnnotatedServiceInterfaceImpl.java |  2 +-
 .../internal/NonStaticBindMethodModule.java        |  6 ++---
 .../internal/NoopClassLoaderDelegate.java          |  2 +-
 .../internal/OrderedConfigurationModule.java       |  3 ++-
 .../internal/PrimitiveDecoratorMethodModule.java   |  2 +-
 .../internal/PrivateConstructorModule.java         |  2 +-
 .../ioc/{ => test}/internal/ReadManifest.java      |  2 +-
 .../{ => test}/internal/RunnableServiceImpl.java   |  2 +-
 .../internal/ServiceBuilderMethodFixture.java      |  2 +-
 .../internal/ServiceDecoratorFixture.java          |  4 +--
 .../internal/ServiceIdConflictMethodModule.java    |  2 +-
 .../internal/ServiceIdViaAnnotationModule.java     |  2 +-
 .../ServiceIdViaAnnotationServiceImpl.java         |  2 +-
 .../ServiceIdViaMethodAnnotationServiceImpl.java   |  2 +-
 .../ioc/{ => test}/internal/SimpleModule.java      |  2 +-
 .../{ => test}/internal/SyntheticMethodModule.java |  2 +-
 .../ioc/{ => test}/internal/TestAdvice.java        |  2 +-
 .../ioc/{ => test}/internal/ToStringService.java   |  2 +-
 .../internal/ToUpperCaseStringHolder.java          |  4 +--
 .../TooManyContributionParametersModule.java       |  3 ++-
 .../UninstantiableAutobuildServiceModule.java      |  2 +-
 .../ioc/{ => test}/internal/UpcaseService.java     |  2 +-
 .../ioc/{ => test}/internal/UpcaseServiceImpl.java |  2 +-
 .../internal/VoidBuilderMethodModule.java          |  2 +-
 .../internal/VoidDecoratorMethodModule.java        |  2 +-
 .../internal/services/AbstractIntWrapper.java      |  2 +-
 .../internal/services/AnnotatedBean.java           |  2 +-
 .../internal/services/AnnotatedBeanSubclass.java   |  5 ++++
 .../ioc/{ => test}/internal/services/Bean.java     |  2 +-
 .../internal/services/BeanWithIndexedProperty.java |  2 +-
 .../internal/services/ExtraFilterMethod.java       |  2 +-
 .../internal/services/ExtraServiceMethod.java      |  2 +-
 .../internal/services/GrandparentInterface.java    |  2 +-
 .../internal/services/LineNumberBean.java          |  2 +-
 .../{ => test}/internal/services/MiddleFilter.java |  2 +-
 .../internal/services/MiddleService.java           |  2 +-
 .../internal/services/NonParallelModule.java       |  2 +-
 .../internal/services/ParentInterface.java         |  2 +-
 .../internal/services/PublicFieldBean.java         |  2 +-
 .../{ => test}/internal/services/SampleFilter.java |  4 ++-
 .../internal/services/SampleService.java           |  4 ++-
 .../services/ServiceDecoratorImplSpec.groovy       |  6 ++---
 .../services/ServiceProxySerializationSpec.groovy  |  2 +-
 .../internal/services/ShadowedPublicFieldBean.java |  2 +-
 .../internal/services/SimpleAnnotation.java        |  2 +-
 .../internal/services/SimpleService.java           |  2 +-
 .../internal/services/StandardFilter.java          |  2 +-
 .../internal/services/StandardService.java         |  2 +-
 .../internal/services/StartupModule.java           |  2 +-
 .../internal/services/StartupModule2.java          |  2 +-
 .../internal/services/StringLocationSpec.groovy    |  2 +-
 .../{ => test}/internal/services/SubInterface.java |  2 +-
 .../services/SymbolObjectProviderSpec.groovy       |  3 ++-
 .../{ => test}/internal/services/TargetBean.java   |  2 +-
 .../internal/services/TestAnnotation.java          |  2 +-
 .../internal/services/TextTransformer.java         |  2 +-
 .../internal/services/ToStringFilter.java          |  2 +-
 .../internal/services/ToStringService.java         |  2 +-
 .../{ => test}/internal/util/BaseGenericBean.java  |  2 +-
 .../{ => test}/internal/util/ConcurrentTarget.java |  3 ++-
 .../internal/util/ConcurrentTargetWrapper.java     |  3 ++-
 .../ioc/{ => test}/internal/util/Drivable.java     |  2 +-
 .../ioc/{ => test}/internal/util/DrivableImpl.java |  2 +-
 .../internal/util/FieldInjectionViaInject.java     |  2 +-
 .../util/FieldInjectionViaInjectService.java       |  2 +-
 .../util/FieldInjectionViaJavaxInject.java         |  2 +-
 .../internal/util/FieldInjectionViaJavaxNamed.java |  2 +-
 .../ioc/{ => test}/internal/util/InjectoBean.java  |  2 +-
 .../{ => test}/internal/util/JavaxInjectBean.java  |  2 +-
 .../{ => test}/internal/util/NonGenericBean.java   |  2 +-
 .../internal/util/NotRetainedRuntime.java          |  2 +-
 .../internal/util/OneShotLockSubject.java          |  3 ++-
 .../ioc/{ => test}/internal/util/Pair.java         |  2 +-
 .../ioc/{ => test}/internal/util/Playable.java     |  2 +-
 .../ioc/{ => test}/internal/util/PlayableImpl.java |  2 +-
 .../ioc/{ => test}/internal/util/StringBean.java   |  2 +-
 .../{ => test}/internal/util/StringLongPair.java   |  2 +-
 .../{ => test}/internal/util/TargetMessages.java   |  2 +-
 .../util/TooManyAutobuildConstructorsBean.java     |  2 +-
 .../ioc/{ => test}/internal/util/ToyTruck.java     |  2 +-
 .../ioc/{ => test}/internal/util/ToyTruckImpl.java |  2 +-
 .../ioc/{ => test}/util/ExceptionWrapper.java      |  2 +-
 ...nmatchingMappedConfigurationOverrideModule.java |  2 +-
 .../apache/tapestry5/{ => ioc}/util/Stooge.java    |  2 +-
 .../{ioc/test => test/ioc}/MockTester.java         |  0
 .../tapestry5/{ioc/test => test/ioc}/TestBase.java |  0
 .../{ioc/test => test/ioc}/TestUtils.java          |  0
 .../{ioc/test => test/ioc}/package-info.java       |  0
 263 files changed, 538 insertions(+), 323 deletions(-)

diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy
index 3254e5a..7cd8eeb 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy
@@ -1,7 +1,12 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.AdviseByMarkerModule
-import org.apache.tapestry5.ioc.internal.AdviseByMarkerModule2
+import org.apache.tapestry5.ioc.test.AdviceDemoModule
+import org.apache.tapestry5.ioc.test.AdviceMethodMissingAdvisorParameterModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.GreeterModule2
+import org.apache.tapestry5.ioc.test.NonVoidAdvisorMethodModule
+import org.apache.tapestry5.ioc.test.internal.AdviseByMarkerModule
+import org.apache.tapestry5.ioc.test.internal.AdviseByMarkerModule2
 import org.apache.tapestry5.ioc.*
 
 class AdvisorsSpec extends AbstractRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy
index b614c38..ce1e010 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy
@@ -1,8 +1,8 @@
 package ioc.specs
 
 import org.apache.commons.lang3.StringUtils
-import org.apache.tapestry5.ioc.internal.services.TextTransformer
 import org.apache.tapestry5.ioc.services.AspectDecorator
+import org.apache.tapestry5.ioc.test.internal.services.TextTransformer
 import org.apache.tapestry5.plastic.MethodAdvice
 import org.apache.tapestry5.plastic.MethodInvocation
 import spock.lang.Shared
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy
index 78d46ed..c6a8481 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy
@@ -1,6 +1,17 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.ExceptionInConstructorModule
+import org.apache.tapestry5.ioc.test.AutobuildInjectionModule
+import org.apache.tapestry5.ioc.test.AutobuildModule
+import org.apache.tapestry5.ioc.test.ConventionFailureModule
+import org.apache.tapestry5.ioc.test.ConventionModule
+import org.apache.tapestry5.ioc.test.ConventionModuleImplementationNotFound
+import org.apache.tapestry5.ioc.test.Pingable
+import org.apache.tapestry5.ioc.test.ServiceBuilderAutobuilderModule
+import org.apache.tapestry5.ioc.test.StringHolder
+import org.apache.tapestry5.ioc.test.StringHolderImpl
+import org.apache.tapestry5.ioc.test.StringTransformer
+import org.apache.tapestry5.ioc.test.UnbuildablePingable
+import org.apache.tapestry5.ioc.test.internal.ExceptionInConstructorModule
 import org.apache.tapestry5.ioc.*
 
 class AutobuildSpec extends AbstractRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/BridgeBuilderSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/BridgeBuilderSpec.groovy
index 2c1a466..df7f259 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/BridgeBuilderSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/BridgeBuilderSpec.groovy
@@ -2,6 +2,14 @@ package ioc.specs
 
 import org.apache.tapestry5.commons.services.PlasticProxyFactory
 import org.apache.tapestry5.ioc.internal.services.*
+import org.apache.tapestry5.ioc.test.internal.services.ExtraFilterMethod
+import org.apache.tapestry5.ioc.test.internal.services.ExtraServiceMethod
+import org.apache.tapestry5.ioc.test.internal.services.MiddleFilter
+import org.apache.tapestry5.ioc.test.internal.services.MiddleService
+import org.apache.tapestry5.ioc.test.internal.services.StandardFilter
+import org.apache.tapestry5.ioc.test.internal.services.StandardService
+import org.apache.tapestry5.ioc.test.internal.services.ToStringFilter
+import org.apache.tapestry5.ioc.test.internal.services.ToStringService
 import org.slf4j.Logger
 
 import spock.lang.Shared
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ConcurrentBarrierSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ConcurrentBarrierSpec.groovy
index e1e571d..1a4ca01 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ConcurrentBarrierSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ConcurrentBarrierSpec.groovy
@@ -1,7 +1,8 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.util.ConcurrentTarget
-import org.apache.tapestry5.ioc.internal.util.ConcurrentTargetWrapper
+import org.apache.tapestry5.ioc.test.internal.util.ConcurrentTarget
+import org.apache.tapestry5.ioc.test.internal.util.ConcurrentTargetWrapper
+
 import spock.lang.Specification
 
 class ConcurrentBarrierSpec extends Specification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy
index c9b2ab8..a952e84 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy
@@ -1,9 +1,33 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.AlphabetModule
-import org.apache.tapestry5.ioc.internal.AlphabetModule2
 import org.apache.tapestry5.ioc.services.SymbolSource
-import org.apache.tapestry5.ioc.util.NonmatchingMappedConfigurationOverrideModule
+import org.apache.tapestry5.ioc.test.BarneyModule
+import org.apache.tapestry5.ioc.test.CaseInsensitiveContributeMethodModule
+import org.apache.tapestry5.ioc.test.ConfigurationOverrideModule
+import org.apache.tapestry5.ioc.test.ContributeByClassModule
+import org.apache.tapestry5.ioc.test.ContributedValueCoercionModule
+import org.apache.tapestry5.ioc.test.ContributionOrderModule
+import org.apache.tapestry5.ioc.test.ContributionOrderModule2
+import org.apache.tapestry5.ioc.test.ContributionOrderModule3
+import org.apache.tapestry5.ioc.test.ContributionOrderModule4
+import org.apache.tapestry5.ioc.test.DuplicateConfigurationOverrideModule
+import org.apache.tapestry5.ioc.test.FailedConfigurationOverrideModule
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.InjectionCheck
+import org.apache.tapestry5.ioc.test.InjectionCheckModule
+import org.apache.tapestry5.ioc.test.InvalidContributeDefModule
+import org.apache.tapestry5.ioc.test.InvalidContributeDefModule2
+import org.apache.tapestry5.ioc.test.InvalidContributeDefModule3
+import org.apache.tapestry5.ioc.test.NameListHolder
+import org.apache.tapestry5.ioc.test.NameListHolder2
+import org.apache.tapestry5.ioc.test.OptionalContributionModule
+import org.apache.tapestry5.ioc.test.OrderedService
+import org.apache.tapestry5.ioc.test.Sizer
+import org.apache.tapestry5.ioc.test.StringLookup
+import org.apache.tapestry5.ioc.test.StringTransformer
+import org.apache.tapestry5.ioc.test.internal.AlphabetModule
+import org.apache.tapestry5.ioc.test.internal.AlphabetModule2
+import org.apache.tapestry5.ioc.test.util.NonmatchingMappedConfigurationOverrideModule
 import org.apache.tapestry5.ioc.*
 
 /** Integration tests for various types of service configurations. */
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy
index 02c6492..6cb960c 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy
@@ -3,7 +3,7 @@ package ioc.specs
 import org.apache.tapestry5.ioc.annotations.InjectService
 import org.apache.tapestry5.ioc.internal.ContributionDefImpl
 import org.apache.tapestry5.ioc.internal.QuietOperationTracker
-import org.apache.tapestry5.ioc.internal.UpcaseService
+import org.apache.tapestry5.ioc.test.internal.UpcaseService
 import org.slf4j.Logger
 import spock.lang.Shared
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy
index 0a62539..ae7d700 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy
@@ -1,7 +1,18 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.DecorateByMarkerModule
-import org.apache.tapestry5.ioc.internal.DecorateByMarkerModule2
+import org.apache.tapestry5.ioc.test.BarneyModule
+import org.apache.tapestry5.ioc.test.DecoratorList
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.GreeterModule
+import org.apache.tapestry5.ioc.test.GreeterModule2
+import org.apache.tapestry5.ioc.test.PreventDecorationModule
+import org.apache.tapestry5.ioc.test.Rocket
+import org.apache.tapestry5.ioc.test.SpecificDecoratorModule
+import org.apache.tapestry5.ioc.test.SpecificDecoratorModuleAgain
+import org.apache.tapestry5.ioc.test.StringTransformer
+import org.apache.tapestry5.ioc.test.internal.DecorateByMarkerModule
+import org.apache.tapestry5.ioc.test.internal.DecorateByMarkerModule2
 import org.apache.tapestry5.ioc.*
 
 /** Integration tests for service decorators and some related behaviors. */
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/DefaultModuleDefImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/DefaultModuleDefImplSpec.groovy
index eb047a3..10528b5 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/DefaultModuleDefImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/DefaultModuleDefImplSpec.groovy
@@ -10,6 +10,36 @@ import org.apache.tapestry5.internal.plastic.asm.ClassWriter
 import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.def.ServiceDef3
 import org.apache.tapestry5.ioc.internal.*
+import org.apache.tapestry5.ioc.test.AutobuildModule
+import org.apache.tapestry5.ioc.test.BlueMarker
+import org.apache.tapestry5.ioc.test.MarkerModule
+import org.apache.tapestry5.ioc.test.RedMarker
+import org.apache.tapestry5.ioc.test.StringHolder
+import org.apache.tapestry5.ioc.test.internal.AbstractAutobuildServiceModule
+import org.apache.tapestry5.ioc.test.internal.ArrayDecoratorMethodModule
+import org.apache.tapestry5.ioc.test.internal.BuilderMethodModule
+import org.apache.tapestry5.ioc.test.internal.ComplexAutobuildModule
+import org.apache.tapestry5.ioc.test.internal.DefaultServiceIdModule
+import org.apache.tapestry5.ioc.test.internal.EagerLoadViaAnnotationModule
+import org.apache.tapestry5.ioc.test.internal.ExceptionInBindMethod
+import org.apache.tapestry5.ioc.test.internal.FieService
+import org.apache.tapestry5.ioc.test.internal.MappedConfigurationModule
+import org.apache.tapestry5.ioc.test.internal.ModuleWithOverriddenObjectMethods
+import org.apache.tapestry5.ioc.test.internal.MutlipleAutobuildServiceConstructorsModule
+import org.apache.tapestry5.ioc.test.internal.NamedServiceModule
+import org.apache.tapestry5.ioc.test.internal.NoUsableContributionParameterModule
+import org.apache.tapestry5.ioc.test.internal.NonStaticBindMethodModule
+import org.apache.tapestry5.ioc.test.internal.NoopClassLoaderDelegate
+import org.apache.tapestry5.ioc.test.internal.OrderedConfigurationModule
+import org.apache.tapestry5.ioc.test.internal.PrimitiveDecoratorMethodModule
+import org.apache.tapestry5.ioc.test.internal.ServiceIdConflictMethodModule
+import org.apache.tapestry5.ioc.test.internal.ServiceIdViaAnnotationModule
+import org.apache.tapestry5.ioc.test.internal.SimpleModule
+import org.apache.tapestry5.ioc.test.internal.SyntheticMethodModule
+import org.apache.tapestry5.ioc.test.internal.ToUpperCaseStringHolder
+import org.apache.tapestry5.ioc.test.internal.TooManyContributionParametersModule
+import org.apache.tapestry5.ioc.test.internal.UninstantiableAutobuildServiceModule
+import org.apache.tapestry5.ioc.test.internal.VoidBuilderMethodModule
 import org.slf4j.Logger
 
 import spock.lang.Issue;
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/EagerLoadSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/EagerLoadSpec.groovy
index 563d2c7..de47abe 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/EagerLoadSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/EagerLoadSpec.groovy
@@ -1,6 +1,6 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.EagerProxyReloadModule
+import org.apache.tapestry5.ioc.test.EagerProxyReloadModule
 
 class EagerLoadSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ExceptionUtilsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ExceptionUtilsSpec.groovy
index 8344a29..1e90ae2 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ExceptionUtilsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ExceptionUtilsSpec.groovy
@@ -3,7 +3,7 @@ package ioc.specs
 import org.apache.tapestry5.beanmodel.internal.services.PropertyAccessImpl
 import org.apache.tapestry5.commons.internal.util.TapestryException
 import org.apache.tapestry5.commons.util.ExceptionUtils
-import org.apache.tapestry5.ioc.util.ExceptionWrapper
+import org.apache.tapestry5.ioc.test.util.ExceptionWrapper
 
 import spock.lang.Shared
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/FilterMethodAnalyzerSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/FilterMethodAnalyzerSpec.groovy
index 7e0e626..1c2bf84 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/FilterMethodAnalyzerSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/FilterMethodAnalyzerSpec.groovy
@@ -2,8 +2,9 @@ package ioc.specs
 
 import org.apache.tapestry5.ioc.internal.services.FilterMethodAnalyzer
 import org.apache.tapestry5.ioc.internal.services.MethodSignature
-import org.apache.tapestry5.ioc.internal.services.SampleFilter
-import org.apache.tapestry5.ioc.internal.services.SampleService
+import org.apache.tapestry5.ioc.test.internal.services.SampleFilter
+import org.apache.tapestry5.ioc.test.internal.services.SampleService
+
 import spock.lang.Specification
 import spock.lang.Unroll
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/GeneralIntegrationSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/GeneralIntegrationSpec.groovy
index bc1a9b1..cc90b36 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/GeneralIntegrationSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/GeneralIntegrationSpec.groovy
@@ -2,11 +2,11 @@ package ioc.specs
 
 import org.apache.tapestry5.commons.ObjectLocator
 import org.apache.tapestry5.commons.services.PropertyAccess
-import org.apache.tapestry5.ioc.DefaultMethodService
 import org.apache.tapestry5.ioc.Registry
 import org.apache.tapestry5.ioc.RegistryBuilder
 import org.apache.tapestry5.ioc.ServiceBinder
-import org.apache.tapestry5.ioc.internal.services.Bean
+import org.apache.tapestry5.ioc.test.DefaultMethodService
+import org.apache.tapestry5.ioc.test.internal.services.Bean
 import org.hibernate.Session
 import org.hibernate.cfg.Configuration
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/GenericUtilsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/GenericUtilsSpec.groovy
index 134cf78..e3ef1fb 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/GenericUtilsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/GenericUtilsSpec.groovy
@@ -1,9 +1,9 @@
 package ioc.specs
 
 import org.apache.tapestry5.commons.internal.util.GenericsUtils
-import org.apache.tapestry5.ioc.internal.util.NonGenericBean
-import org.apache.tapestry5.ioc.internal.util.StringBean
-import org.apache.tapestry5.ioc.internal.util.StringLongPair
+import org.apache.tapestry5.ioc.test.internal.util.NonGenericBean
+import org.apache.tapestry5.ioc.test.internal.util.StringBean
+import org.apache.tapestry5.ioc.test.internal.util.StringLongPair
 
 import spock.lang.Specification
 import spock.lang.Unroll
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy
index 5332750..d3f5118 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy
@@ -2,6 +2,12 @@ package ioc.specs
 
 import org.apache.tapestry5.commons.internal.util.InheritanceSearch
 import org.apache.tapestry5.ioc.internal.util.*
+import org.apache.tapestry5.ioc.test.internal.util.Drivable
+import org.apache.tapestry5.ioc.test.internal.util.DrivableImpl
+import org.apache.tapestry5.ioc.test.internal.util.Playable
+import org.apache.tapestry5.ioc.test.internal.util.PlayableImpl
+import org.apache.tapestry5.ioc.test.internal.util.ToyTruck
+import org.apache.tapestry5.ioc.test.internal.util.ToyTruckImpl
 import org.apache.tapestry5.plastic.PlasticUtils
 
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy
index 7c7d549..e929b73 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy
@@ -1,6 +1,13 @@
 package ioc.specs
 
 import org.apache.tapestry5.ioc.*
+import org.apache.tapestry5.ioc.test.CyclicMOPModule
+import org.apache.tapestry5.ioc.test.FieldResourceInjectionModule
+import org.apache.tapestry5.ioc.test.FieldResourceService
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.GreeterModule
+import org.apache.tapestry5.ioc.test.GreeterServiceOverrideModule
+import org.apache.tapestry5.ioc.test.PostInjectionMethodModule
 
 class InjectionSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/InternalUtilsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/InternalUtilsSpec.groovy
index d4c628d..2fd222a 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/InternalUtilsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/InternalUtilsSpec.groovy
@@ -17,6 +17,14 @@ import org.apache.tapestry5.ioc.internal.QuietOperationTracker
 import org.apache.tapestry5.ioc.internal.util.*
 import org.apache.tapestry5.ioc.services.Builtin
 import org.apache.tapestry5.ioc.services.SymbolSource
+import org.apache.tapestry5.ioc.test.internal.util.FieldInjectionViaInject
+import org.apache.tapestry5.ioc.test.internal.util.FieldInjectionViaInjectService
+import org.apache.tapestry5.ioc.test.internal.util.FieldInjectionViaJavaxInject
+import org.apache.tapestry5.ioc.test.internal.util.FieldInjectionViaJavaxNamed
+import org.apache.tapestry5.ioc.test.internal.util.InjectoBean
+import org.apache.tapestry5.ioc.test.internal.util.JavaxInjectBean
+import org.apache.tapestry5.ioc.test.internal.util.NotRetainedRuntime
+import org.apache.tapestry5.ioc.test.internal.util.TooManyAutobuildConstructorsBean
 
 import spock.lang.Shared
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy
index cfc6fc0..9bdebbb 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy
@@ -1,9 +1,9 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.Greeter
 import org.apache.tapestry5.ioc.annotations.NotLazy
 import org.apache.tapestry5.ioc.services.AspectDecorator
 import org.apache.tapestry5.ioc.services.LazyAdvisor
+import org.apache.tapestry5.ioc.test.Greeter
 
 import java.sql.SQLException
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy
index 248cb2a..95e8178 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy
@@ -1,8 +1,8 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.ToStringService
-import org.apache.tapestry5.ioc.internal.UpcaseService
 import org.apache.tapestry5.ioc.services.LoggingDecorator
+import org.apache.tapestry5.ioc.test.internal.ToStringService
+import org.apache.tapestry5.ioc.test.internal.UpcaseService
 import org.slf4j.Logger
 import org.xml.sax.SAXParseException
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/MessagesImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/MessagesImplSpec.groovy
index 170a1b1..0323dd9 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/MessagesImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/MessagesImplSpec.groovy
@@ -2,7 +2,7 @@ package ioc.specs
 
 import org.apache.tapestry5.commons.Messages
 import org.apache.tapestry5.commons.internal.util.MessagesImpl
-import org.apache.tapestry5.ioc.internal.util.TargetMessages
+import org.apache.tapestry5.ioc.test.internal.util.TargetMessages
 
 import spock.lang.Shared
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/MethodInvocationGetAnnotationSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/MethodInvocationGetAnnotationSpec.groovy
index d7c0f09..6ff9c95 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/MethodInvocationGetAnnotationSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/MethodInvocationGetAnnotationSpec.groovy
@@ -3,12 +3,12 @@ package ioc.specs
 import org.apache.tapestry5.beaneditor.ReorderProperties
 import org.apache.tapestry5.ioc.annotations.Advise
 import org.apache.tapestry5.ioc.annotations.IntermediateType;
-import org.apache.tapestry5.ioc.internal.AdviceModule
-import org.apache.tapestry5.ioc.internal.AnnotatedServiceInterface
-import org.apache.tapestry5.ioc.internal.DecoratorModule
-import org.apache.tapestry5.ioc.internal.NonAnnotatedGenericSetServiceInterface
-import org.apache.tapestry5.ioc.internal.NonAnnotatedServiceInterface
-import org.apache.tapestry5.ioc.internal.TestAdvice
+import org.apache.tapestry5.ioc.test.internal.AdviceModule
+import org.apache.tapestry5.ioc.test.internal.AnnotatedServiceInterface
+import org.apache.tapestry5.ioc.test.internal.DecoratorModule
+import org.apache.tapestry5.ioc.test.internal.NonAnnotatedGenericSetServiceInterface
+import org.apache.tapestry5.ioc.test.internal.NonAnnotatedServiceInterface
+import org.apache.tapestry5.ioc.test.internal.TestAdvice
 
 /**
  * Tests whether MethodAdvice.getAnnotation() is actually returning annotations from
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy
index 37754db..c586c6f 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy
@@ -2,10 +2,13 @@ package ioc.specs
 
 import org.apache.tapestry5.commons.services.PlasticProxyFactory
 import org.apache.tapestry5.ioc.AdvisorDef2
-import org.apache.tapestry5.ioc.BlueMarker
-import org.apache.tapestry5.ioc.RedMarker
 import org.apache.tapestry5.ioc.def.*
 import org.apache.tapestry5.ioc.internal.*
+import org.apache.tapestry5.ioc.test.BlueMarker
+import org.apache.tapestry5.ioc.test.RedMarker
+import org.apache.tapestry5.ioc.test.internal.FieService
+import org.apache.tapestry5.ioc.test.internal.ModuleImplTestModule
+import org.apache.tapestry5.ioc.test.internal.ToStringService
 import org.slf4j.Logger
 
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ModuleInstantiationSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ModuleInstantiationSpec.groovy
index 006e70b..21176b8 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ModuleInstantiationSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ModuleInstantiationSpec.groovy
@@ -1,7 +1,7 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.NameListHolder
-import org.apache.tapestry5.ioc.StaticModule
+import org.apache.tapestry5.ioc.test.NameListHolder
+import org.apache.tapestry5.ioc.test.StaticModule
 
 class ModuleInstantiationSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy
index 65e12de..be8a05f 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy
@@ -3,8 +3,9 @@ package ioc.specs
 import org.apache.tapestry5.ioc.Invokable
 import org.apache.tapestry5.ioc.Registry
 import org.apache.tapestry5.ioc.RegistryBuilder
-import org.apache.tapestry5.ioc.internal.services.NonParallelModule
 import org.apache.tapestry5.ioc.services.ParallelExecutor
+import org.apache.tapestry5.ioc.test.internal.services.NonParallelModule
+
 import spock.lang.AutoCleanup
 import spock.lang.Shared
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy
index 5fea3c5..eec1dd6 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy
@@ -1,6 +1,7 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.util.OneShotLockSubject
+import org.apache.tapestry5.ioc.test.internal.util.OneShotLockSubject
+
 import spock.lang.Specification
 
 class OneShotLockSpec extends Specification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ParallelExecutorSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ParallelExecutorSpec.groovy
index 6a3e632..8060cae 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ParallelExecutorSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ParallelExecutorSpec.groovy
@@ -1,9 +1,10 @@
 package ioc.specs
 
 import org.apache.tapestry5.ioc.Invokable
-import org.apache.tapestry5.ioc.StringHolder
-import org.apache.tapestry5.ioc.StringHolderImpl
 import org.apache.tapestry5.ioc.services.ParallelExecutor
+import org.apache.tapestry5.ioc.test.StringHolder
+import org.apache.tapestry5.ioc.test.StringHolderImpl
+
 import spock.lang.Shared
 
 class ParallelExecutorSpec extends AbstractSharedRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/PerThreadScopeSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/PerThreadScopeSpec.groovy
index d79c6ce..b0dbd8a 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/PerThreadScopeSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/PerThreadScopeSpec.groovy
@@ -1,8 +1,8 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.PerThreadModule
-import org.apache.tapestry5.ioc.ScopeMismatchModule
-import org.apache.tapestry5.ioc.StringHolder
+import org.apache.tapestry5.ioc.test.PerThreadModule
+import org.apache.tapestry5.ioc.test.ScopeMismatchModule
+import org.apache.tapestry5.ioc.test.StringHolder
 
 class PerThreadScopeSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy
index 2748e61..73af03f 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy
@@ -1,8 +1,8 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.services.StandardFilter
-import org.apache.tapestry5.ioc.internal.services.StandardService
 import org.apache.tapestry5.ioc.services.PipelineBuilder
+import org.apache.tapestry5.ioc.test.internal.services.StandardFilter
+import org.apache.tapestry5.ioc.test.internal.services.StandardService
 import org.slf4j.Logger
 import spock.lang.Shared
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
index 2eba312..0d2abc9 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
@@ -11,8 +11,15 @@ import org.apache.tapestry5.commons.services.ClassPropertyAdapter
 import org.apache.tapestry5.commons.services.PropertyAccess
 import org.apache.tapestry5.ioc.annotations.Scope
 import org.apache.tapestry5.ioc.internal.services.*
-import org.apache.tapestry5.ioc.internal.util.Pair
-import org.apache.tapestry5.ioc.internal.util.StringLongPair
+import org.apache.tapestry5.ioc.test.internal.services.AnnotatedBean
+import org.apache.tapestry5.ioc.test.internal.services.AnnotatedBeanSubclass
+import org.apache.tapestry5.ioc.test.internal.services.Bean
+import org.apache.tapestry5.ioc.test.internal.services.BeanWithIndexedProperty
+import org.apache.tapestry5.ioc.test.internal.services.PublicFieldBean
+import org.apache.tapestry5.ioc.test.internal.services.ShadowedPublicFieldBean
+import org.apache.tapestry5.ioc.test.internal.services.SubInterface
+import org.apache.tapestry5.ioc.test.internal.util.Pair
+import org.apache.tapestry5.ioc.test.internal.util.StringLongPair
 
 import com.example.TestInterface
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy
index 3428ece..392b9e5 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy
@@ -2,6 +2,14 @@ package ioc.specs
 
 import org.apache.tapestry5.ioc.def.ModuleDef
 import org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl
+import org.apache.tapestry5.ioc.test.BarneyModule
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.MasterModule
+import org.apache.tapestry5.ioc.test.NameListHolder
+import org.apache.tapestry5.ioc.test.RegistryBuilderTestModule
+import org.apache.tapestry5.ioc.test.ServiceBuilderModule
+import org.apache.tapestry5.ioc.test.Square
 import org.slf4j.Logger
 import org.slf4j.LoggerFactory
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy
index a746d07..91ef24b 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy
@@ -1,8 +1,14 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.internal.ExtraPublicConstructorsModule
-import org.apache.tapestry5.ioc.internal.PrivateConstructorModule
-import org.apache.tapestry5.ioc.internal.UpcaseService
+import org.apache.tapestry5.ioc.test.DuplicateFredModule
+import org.apache.tapestry5.ioc.test.ExtraMethodsModule
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.NoImplementationClassForSimpleIdModule
+import org.apache.tapestry5.ioc.test.RecursiveConstructorModule
+import org.apache.tapestry5.ioc.test.UnknownScopeModule
+import org.apache.tapestry5.ioc.test.internal.ExtraPublicConstructorsModule
+import org.apache.tapestry5.ioc.test.internal.PrivateConstructorModule
+import org.apache.tapestry5.ioc.test.internal.UpcaseService
 import org.apache.tapestry5.ioc.*
 
 /**
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistrySpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistrySpec.groovy
index d429b0b..6cdca84 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistrySpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistrySpec.groovy
@@ -1,14 +1,14 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.BarneyModule;
-import org.apache.tapestry5.ioc.CatchAllServiceConfigurationListener;
-import org.apache.tapestry5.ioc.Greeter
-import org.apache.tapestry5.ioc.FredModule
-import org.apache.tapestry5.ioc.GreeterModule
-import org.apache.tapestry5.ioc.HelterModule
-import org.apache.tapestry5.ioc.NameListHolder;
-import org.apache.tapestry5.ioc.StringLookup;
-import org.apache.tapestry5.ioc.internal.services.StartupModule2
+import org.apache.tapestry5.ioc.test.BarneyModule
+import org.apache.tapestry5.ioc.test.CatchAllServiceConfigurationListener
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.GreeterModule
+import org.apache.tapestry5.ioc.test.HelterModule
+import org.apache.tapestry5.ioc.test.NameListHolder
+import org.apache.tapestry5.ioc.test.StringLookup
+import org.apache.tapestry5.ioc.test.internal.services.StartupModule2
 
 class RegistrySpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy
index ea0e459..3b96552 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy
@@ -2,7 +2,7 @@ package ioc.specs
 
 import org.apache.tapestry5.ioc.RegistryBuilder
 import org.apache.tapestry5.ioc.internal.services.RegistryStartup
-import org.apache.tapestry5.ioc.internal.services.StartupModule
+import org.apache.tapestry5.ioc.test.internal.services.StartupModule
 import org.slf4j.Logger
 import spock.lang.Specification
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy
index 7386fa8..a9dde7e 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy
@@ -2,6 +2,12 @@ package ioc.specs
 
 import org.apache.tapestry5.ioc.services.ServiceActivityScoreboard
 import org.apache.tapestry5.ioc.services.Status
+import org.apache.tapestry5.ioc.test.BlueMarker
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.GreeterModule
+import org.apache.tapestry5.ioc.test.PerThreadModule
+import org.apache.tapestry5.ioc.test.RedMarker
+import org.apache.tapestry5.ioc.test.StringHolder
 import org.apache.tapestry5.ioc.*
 
 class ServiceActivityScoreboardSpec extends AbstractRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBinderSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBinderSpec.groovy
index c42976b..296d6f9 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBinderSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBinderSpec.groovy
@@ -1,7 +1,7 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.Greeter
-import org.apache.tapestry5.ioc.ServiceBuilderModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.ServiceBuilderModule
 
 class ServiceBinderSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBuilderMethodInvokerSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBuilderMethodInvokerSpec.groovy
index 11db8be..73109e1 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBuilderMethodInvokerSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceBuilderMethodInvokerSpec.groovy
@@ -3,10 +3,10 @@ package ioc.specs
 import org.apache.tapestry5.commons.AnnotationProvider
 import org.apache.tapestry5.commons.ObjectCreator
 import org.apache.tapestry5.ioc.ServiceBuilderResources
-import org.apache.tapestry5.ioc.internal.FieService
-import org.apache.tapestry5.ioc.internal.FoeService
-import org.apache.tapestry5.ioc.internal.ServiceBuilderMethodFixture
 import org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker
+import org.apache.tapestry5.ioc.test.internal.FieService
+import org.apache.tapestry5.ioc.test.internal.FoeService
+import org.apache.tapestry5.ioc.test.internal.ServiceBuilderMethodFixture
 import org.slf4j.Logger
 
 class ServiceBuilderMethodInvokerSpec extends AbstractSharedRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy
index 0e7814c..a2eb792 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy
@@ -2,7 +2,8 @@ package ioc.specs
 
 import org.apache.tapestry5.ioc.internal.AbstractServiceCreator
 import org.apache.tapestry5.ioc.internal.IOCMessages
-import org.apache.tapestry5.ioc.internal.ServiceBuilderMethodFixture
+import org.apache.tapestry5.ioc.test.internal.ServiceBuilderMethodFixture
+
 import spock.lang.Specification
 
 import java.lang.reflect.Method
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy
index 408ad13..7a91158 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy
@@ -6,6 +6,14 @@ import org.apache.tapestry5.commons.AnnotationProvider
 import org.apache.tapestry5.commons.services.TypeCoercer
 import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.services.Builtin
+import org.apache.tapestry5.ioc.test.BlueMarker
+import org.apache.tapestry5.ioc.test.DuplicateServiceTypeModule
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.GreeterModule
+import org.apache.tapestry5.ioc.test.LocalModule
+import org.apache.tapestry5.ioc.test.Pingable
+import org.apache.tapestry5.ioc.test.StringHolder
 
 class ServiceLookupSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy
index 91a05be..9a56e87 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy
@@ -1,6 +1,15 @@
 package ioc.specs
 
 import org.apache.tapestry5.ioc.*
+import org.apache.tapestry5.ioc.test.BarneyModule
+import org.apache.tapestry5.ioc.test.ConcreteServiceBuilderModule
+import org.apache.tapestry5.ioc.test.CountingGreeterImpl
+import org.apache.tapestry5.ioc.test.FredModule
+import org.apache.tapestry5.ioc.test.Greeter
+import org.apache.tapestry5.ioc.test.IntegrationTestFixture
+import org.apache.tapestry5.ioc.test.NonProxiedServiceModule
+import org.apache.tapestry5.ioc.test.StringHolder
+import org.apache.tapestry5.ioc.test.StringHolderImpl
 
 class ServiceProxySpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/StringToEnumCoercionSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/StringToEnumCoercionSpec.groovy
index 3677e2f..c91b153 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/StringToEnumCoercionSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/StringToEnumCoercionSpec.groovy
@@ -1,7 +1,7 @@
 package ioc.specs
 
 import org.apache.tapestry5.commons.util.StringToEnumCoercion
-import org.apache.tapestry5.util.Stooge
+import org.apache.tapestry5.ioc.util.Stooge
 
 import spock.lang.Specification
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PingableImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PingableImpl.java
deleted file mode 100644
index f09accc..0000000
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PingableImpl.java
+++ /dev/null
@@ -1,6 +0,0 @@
-package org.apache.tapestry5.ioc;
-
-public class PingableImpl
-{
-
-}
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBeanSubclass.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBeanSubclass.java
deleted file mode 100644
index 13c7844..0000000
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBeanSubclass.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package org.apache.tapestry5.ioc.internal.services;
-
-public class AnnotatedBeanSubclass extends Bean
-{
-}
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AdviceDemoModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AdviceDemoModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AdviceDemoModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AdviceDemoModule.java
index c3bad72..a218c3e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AdviceDemoModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AdviceDemoModule.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.MethodAdviceReceiver;
 import org.apache.tapestry5.ioc.annotations.Match;
 import org.apache.tapestry5.ioc.annotations.Order;
 import org.apache.tapestry5.ioc.services.LoggingAdvisor;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AdviceMethodMissingAdvisorParameterModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AdviceMethodMissingAdvisorParameterModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AdviceMethodMissingAdvisorParameterModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AdviceMethodMissingAdvisorParameterModule.java
index 5a2b213..01ad302 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AdviceMethodMissingAdvisorParameterModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AdviceMethodMissingAdvisorParameterModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class AdviceMethodMissingAdvisorParameterModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AutobuildInjectionModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AutobuildInjectionModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AutobuildInjectionModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AutobuildInjectionModule.java
index 7ae1569..3b29052 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AutobuildInjectionModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AutobuildInjectionModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.ioc.annotations.Autobuild;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AutobuildModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AutobuildModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AutobuildModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AutobuildModule.java
index 120ed93..e41bc5b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/AutobuildModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/AutobuildModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class AutobuildModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/BarneyModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/BarneyModule.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/BarneyModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/BarneyModule.java
index 1c28b1a..9dcd698 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/BarneyModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/BarneyModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.commons.MappedConfiguration;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/BlueMarker.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/BlueMarker.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/BlueMarker.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/BlueMarker.java
index f8b9330..7aef61a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/BlueMarker.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/BlueMarker.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import static java.lang.annotation.ElementType.FIELD;
 import static java.lang.annotation.ElementType.METHOD;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CaseInsensitiveContributeMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CaseInsensitiveContributeMethodModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CaseInsensitiveContributeMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CaseInsensitiveContributeMethodModule.java
index f6286d1..1fc987a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CaseInsensitiveContributeMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CaseInsensitiveContributeMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CatchAllServiceConfigurationListener.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CatchAllServiceConfigurationListener.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CatchAllServiceConfigurationListener.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CatchAllServiceConfigurationListener.java
index b151fd3..d4dc1e5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CatchAllServiceConfigurationListener.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CatchAllServiceConfigurationListener.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.Collection;
 import java.util.List;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConcreteServiceBuilderModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConcreteServiceBuilderModule.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConcreteServiceBuilderModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConcreteServiceBuilderModule.java
index c67b48d..07bc949 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConcreteServiceBuilderModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConcreteServiceBuilderModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class ConcreteServiceBuilderModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConfigurationOverrideModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConfigurationOverrideModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConfigurationOverrideModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConfigurationOverrideModule.java
index bd3442e..55e8e97 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConfigurationOverrideModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConfigurationOverrideModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.commons.OrderedConfiguration;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributeByClassModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributeByClassModule.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributeByClassModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributeByClassModule.java
index 8b68116..4847d54 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributeByClassModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributeByClassModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.commons.MappedConfiguration;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributedValueCoercionModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributedValueCoercionModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributedValueCoercionModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributedValueCoercionModule.java
index c859dcb..659a07c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributedValueCoercionModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributedValueCoercionModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.ioc.annotations.Contribute;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule.java
similarity index 91%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule.java
index 35fc4a7..ede0491 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule.java
@@ -11,9 +11,10 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.OrderedConfiguration;
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class ContributionOrderModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule2.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule2.java
index 8597803..ef593c9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule2.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.text.DecimalFormat;
 import java.text.NumberFormat;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule3.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule3.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule3.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule3.java
index bbf6fcc..7577ae5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule3.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule3.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.text.DecimalFormat;
 import java.text.NumberFormat;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule4.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule4.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule4.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule4.java
index 269fb3a..abd007c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ContributionOrderModule4.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ContributionOrderModule4.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.text.DecimalFormat;
 import java.text.NumberFormat;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionFailureModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionFailureModule.java
similarity index 61%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionFailureModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionFailureModule.java
index b717fb2..3b4d601 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionFailureModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionFailureModule.java
@@ -1,4 +1,6 @@
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class ConventionFailureModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionModule.java
similarity index 61%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionModule.java
index 81a3377..721098b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionModule.java
@@ -1,4 +1,6 @@
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class ConventionModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionModuleImplementationNotFound.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionModuleImplementationNotFound.java
similarity index 65%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionModuleImplementationNotFound.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionModuleImplementationNotFound.java
index 91d28eb..22776c9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ConventionModuleImplementationNotFound.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ConventionModuleImplementationNotFound.java
@@ -1,4 +1,6 @@
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class ConventionModuleImplementationNotFound
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CountingGreeterImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CountingGreeterImpl.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CountingGreeterImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CountingGreeterImpl.java
index 8bd15b0..526a26e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CountingGreeterImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CountingGreeterImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class CountingGreeterImpl implements Greeter
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CyclicMOPModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CyclicMOPModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CyclicMOPModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CyclicMOPModule.java
index 554bfc4..aecfcb7 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/CyclicMOPModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/CyclicMOPModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.commons.MappedConfiguration;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DecoratorList.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DecoratorList.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DecoratorList.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DecoratorList.java
index 55f213b..2f64c84 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DecoratorList.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DecoratorList.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DefaultMethodService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DefaultMethodService.java
similarity index 83%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DefaultMethodService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DefaultMethodService.java
index 2f391ed..5131d75 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DefaultMethodService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DefaultMethodService.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public interface DefaultMethodService {
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateConfigurationOverrideModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateConfigurationOverrideModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateConfigurationOverrideModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateConfigurationOverrideModule.java
index b67663c..556e49a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateConfigurationOverrideModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateConfigurationOverrideModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.commons.OrderedConfiguration;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateFredModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateFredModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateFredModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateFredModule.java
index 2471e8d..1f622a0 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateFredModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateFredModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class DuplicateFredModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateServiceTypeModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateServiceTypeModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateServiceTypeModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateServiceTypeModule.java
index 724c3a2..36b276f 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DuplicateServiceTypeModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/DuplicateServiceTypeModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class DuplicateServiceTypeModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadModule.java
index d69d8a0..fe71e64 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.EagerLoad;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadService.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadService.java
index d0e7f97..808fb8c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public interface EagerLoadService
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadServiceImpl.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadServiceImpl.java
index f73eb86..d2274d0 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerLoadServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerLoadServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.EagerLoad;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerProxyReloadModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerProxyReloadModule.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerProxyReloadModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerProxyReloadModule.java
index 8859003..1ba7d39 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/EagerProxyReloadModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/EagerProxyReloadModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class EagerProxyReloadModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ExtraMethodsModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ExtraMethodsModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ExtraMethodsModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ExtraMethodsModule.java
index 300b147..6be92ab 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ExtraMethodsModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ExtraMethodsModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class ExtraMethodsModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FailInConstructorRunnable.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FailInConstructorRunnable.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FailInConstructorRunnable.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FailInConstructorRunnable.java
index 1e5be21..d0fb361 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FailInConstructorRunnable.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FailInConstructorRunnable.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class FailInConstructorRunnable implements Runnable
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FailedConfigurationOverrideModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FailedConfigurationOverrideModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FailedConfigurationOverrideModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FailedConfigurationOverrideModule.java
index de71e68..6bbba35 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FailedConfigurationOverrideModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FailedConfigurationOverrideModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.OrderedConfiguration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceInjectionModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceInjectionModule.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceInjectionModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceInjectionModule.java
index 5503b39..d6dc976 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceInjectionModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceInjectionModule.java
@@ -12,9 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class FieldResourceInjectionModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceService.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceService.java
index 8fc2a33..4092421 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceServiceImpl.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceServiceImpl.java
index 2d8d01f..5a49193 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FieldResourceServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FieldResourceServiceImpl.java
@@ -12,9 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.util.CollectionFactory;
+import org.apache.tapestry5.ioc.ServiceResources;
 import org.apache.tapestry5.ioc.annotations.InjectResource;
 
 import java.util.Collection;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FredModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FredModule.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FredModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FredModule.java
index e9b5c50..d3619ae 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/FredModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/FredModule.java
@@ -12,12 +12,13 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.commons.OrderedConfiguration;
 import org.apache.tapestry5.commons.util.CollectionFactory;
+import org.apache.tapestry5.ioc.ServiceBinder;
 import org.apache.tapestry5.ioc.annotations.Contribute;
 import org.apache.tapestry5.ioc.annotations.Match;
 import org.apache.tapestry5.ioc.annotations.Order;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreenMarker.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreenMarker.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreenMarker.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreenMarker.java
index 9044fda..9a9364e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreenMarker.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreenMarker.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import static java.lang.annotation.ElementType.FIELD;
 import static java.lang.annotation.ElementType.METHOD;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Greeter.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Greeter.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Greeter.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Greeter.java
index 4be0b86..c468604 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Greeter.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Greeter.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public interface Greeter
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterModule.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterModule.java
index 2daf0e7..3748ee1 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.ioc.annotations.InjectService;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterModule2.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterModule2.java
index dc8cb50..eac5174 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterModule2.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.Marker;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterServiceOverrideModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterServiceOverrideModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterServiceOverrideModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterServiceOverrideModule.java
index def7899..7ab6e30 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/GreeterServiceOverrideModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/GreeterServiceOverrideModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/HelterModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/HelterModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/HelterModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/HelterModule.java
index f2feb6b..b217399 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/HelterModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/HelterModule.java
@@ -10,7 +10,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.ImportModule;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IndirectResources.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IndirectResources.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IndirectResources.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IndirectResources.java
index bb1110a..78c5cab 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IndirectResources.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IndirectResources.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.ServiceResources;
 import org.slf4j.Logger;
 
 public class IndirectResources
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Indirection.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Indirection.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Indirection.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Indirection.java
index 322b7d0..5e3e1d7 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Indirection.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Indirection.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Used to demonstrate indirection via symbols.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheck.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheck.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheck.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheck.java
index 18ba1e1..0fbd22c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheck.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheck.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.slf4j.Logger;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheckImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheckImpl.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheckImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheckImpl.java
index c9f26e8..5946b13 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheckImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheckImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.Map;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheckModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheckModule.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheckModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheckModule.java
index 18eb6cb..3f86892 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InjectionCheckModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InjectionCheckModule.java
@@ -12,9 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
+import org.apache.tapestry5.ioc.ServiceBinder;
 import org.slf4j.Logger;
 
 /**
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntHolder.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntHolder.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntHolder.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntHolder.java
index db73cec..a8f7381 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntHolder.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntHolder.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public interface IntHolder
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntHolderImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntHolderImpl.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntHolderImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntHolderImpl.java
index 8c3c9ef..fedaae4 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntHolderImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntHolderImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class IntHolderImpl implements IntHolder
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntegrationTestFixture.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntegrationTestFixture.java
similarity index 86%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntegrationTestFixture.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntegrationTestFixture.java
index 3ea3dcb..ce80256 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/IntegrationTestFixture.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/IntegrationTestFixture.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Provides a convenient places to store a few values, when communicating between text fixture classes and test specifications
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule.java
index 6f6308e..66a9701 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule2.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule2.java
index 10e36ad..e817df6 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule2.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule3.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule3.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule3.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule3.java
index 84a94fe..6ab4967 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/InvalidContributeDefModule3.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/InvalidContributeDefModule3.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/LocalModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/LocalModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/LocalModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/LocalModule.java
index 7cab003..97cd26e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/LocalModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/LocalModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.Local;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/MarkerModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/MarkerModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/MarkerModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/MarkerModule.java
index cfbe531..b75670d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/MarkerModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/MarkerModule.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.ServiceBinder;
 import org.apache.tapestry5.ioc.annotations.Marker;
 
 public class MarkerModule
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/MasterModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/MasterModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/MasterModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/MasterModule.java
index 7bd3a6b..1d49333 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/MasterModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/MasterModule.java
@@ -10,7 +10,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.SubModule;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NameListHolder.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NameListHolder.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NameListHolder.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NameListHolder.java
index 5c61b38..6a7d7b5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NameListHolder.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NameListHolder.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NameListHolder2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NameListHolder2.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NameListHolder2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NameListHolder2.java
index 0d90c4d..400ca6c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NameListHolder2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NameListHolder2.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NoImplementationClassForSimpleIdModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NoImplementationClassForSimpleIdModule.java
similarity index 84%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NoImplementationClassForSimpleIdModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NoImplementationClassForSimpleIdModule.java
index 1c5a289..c808640 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NoImplementationClassForSimpleIdModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NoImplementationClassForSimpleIdModule.java
@@ -12,7 +12,11 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
+import org.apache.tapestry5.ioc.ServiceBuilder;
+import org.apache.tapestry5.ioc.ServiceResources;
 
 public class NoImplementationClassForSimpleIdModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NonProxiedServiceModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NonProxiedServiceModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NonProxiedServiceModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NonProxiedServiceModule.java
index f92f608..f2c364a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NonProxiedServiceModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NonProxiedServiceModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class NonProxiedServiceModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NonVoidAdvisorMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NonVoidAdvisorMethodModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NonVoidAdvisorMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NonVoidAdvisorMethodModule.java
index 2ec5058..211473b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/NonVoidAdvisorMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/NonVoidAdvisorMethodModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.MethodAdviceReceiver;
 
 public class NonVoidAdvisorMethodModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/OptionalContributionModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/OptionalContributionModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/OptionalContributionModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/OptionalContributionModule.java
index 07e0b2c..3132e1c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/OptionalContributionModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/OptionalContributionModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.ioc.annotations.Optional;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/OrderedService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/OrderedService.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/OrderedService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/OrderedService.java
index e908a80..df74a0d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/OrderedService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/OrderedService.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PerThreadModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PerThreadModule.java
similarity index 91%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PerThreadModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PerThreadModule.java
index 4700363..95b73ac 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PerThreadModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PerThreadModule.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.ScopeConstants;
 import org.apache.tapestry5.ioc.annotations.Autobuild;
 import org.apache.tapestry5.ioc.annotations.Scope;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Pingable.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Pingable.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Pingable.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Pingable.java
index 6770951..51bb7ac 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Pingable.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Pingable.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Interface used as a stand-in for testing for more complicated services.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PingableImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PingableImpl.java
new file mode 100644
index 0000000..7e0d4ca
--- /dev/null
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PingableImpl.java
@@ -0,0 +1,6 @@
+package org.apache.tapestry5.ioc.test;
+
+public class PingableImpl
+{
+
+}
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PostInjectionMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PostInjectionMethodModule.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PostInjectionMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PostInjectionMethodModule.java
index e7ef264..e57de98 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PostInjectionMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PostInjectionMethodModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
 
 public class PostInjectionMethodModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PreventDecorationModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PreventDecorationModule.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PreventDecorationModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PreventDecorationModule.java
index f7b0258..1c094b9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/PreventDecorationModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/PreventDecorationModule.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.ServiceBinder;
 import org.apache.tapestry5.ioc.annotations.Match;
 import org.apache.tapestry5.ioc.annotations.PreventServiceDecoration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RecursiveConstructorModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RecursiveConstructorModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RecursiveConstructorModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RecursiveConstructorModule.java
index b06a993..d6edd27 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RecursiveConstructorModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RecursiveConstructorModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.InjectService;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RedGreeterImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RedGreeterImpl.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RedGreeterImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RedGreeterImpl.java
index 78e5db7..4bc4729 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RedGreeterImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RedGreeterImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.Marker;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RedMarker.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RedMarker.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RedMarker.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RedMarker.java
index bed490f..6157ca6 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RedMarker.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RedMarker.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import static java.lang.annotation.ElementType.FIELD;
 import static java.lang.annotation.ElementType.METHOD;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RegistryBuilderTestModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RegistryBuilderTestModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RegistryBuilderTestModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RegistryBuilderTestModule.java
index 719db46..4ba3781 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RegistryBuilderTestModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RegistryBuilderTestModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class RegistryBuilderTestModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Rocket.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Rocket.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Rocket.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Rocket.java
index de24f52..b6a5511 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Rocket.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Rocket.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public interface Rocket
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RocketImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RocketImpl.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RocketImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RocketImpl.java
index 3d534e0..473b52e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/RocketImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/RocketImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.PreventServiceDecoration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ScopeMismatchModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ScopeMismatchModule.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ScopeMismatchModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ScopeMismatchModule.java
index 700e753..f689dcf 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ScopeMismatchModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ScopeMismatchModule.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.ScopeConstants;
 import org.apache.tapestry5.ioc.annotations.Scope;
 
 public class ScopeMismatchModule
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceBuilderAutobuilderModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceBuilderAutobuilderModule.java
similarity index 91%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceBuilderAutobuilderModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceBuilderAutobuilderModule.java
index e4e9ed3..d11dc53 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceBuilderAutobuilderModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceBuilderAutobuilderModule.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceResources;
 
 public class ServiceBuilderAutobuilderModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceBuilderModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceBuilderModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceBuilderModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceBuilderModule.java
index 4e9b78f..c476120 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceBuilderModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceBuilderModule.java
@@ -12,7 +12,11 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
+
+import org.apache.tapestry5.ioc.ServiceBinder;
+import org.apache.tapestry5.ioc.ServiceBuilder;
+import org.apache.tapestry5.ioc.ServiceResources;
 
 /**
  * Used to test the functionality related to {@link org.apache.tapestry5.ioc.ServiceBinder#bind(Class,
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceIdGreeter.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceIdGreeter.java
similarity index 91%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceIdGreeter.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceIdGreeter.java
index aa74783..bef42d4 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/ServiceIdGreeter.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/ServiceIdGreeter.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
+import org.apache.tapestry5.ioc.ServiceResources;
 import org.apache.tapestry5.ioc.annotations.PostInjection;
 
 public class ServiceIdGreeter implements Greeter
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Sizer.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Sizer.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Sizer.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Sizer.java
index 0c69470..dac2807 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Sizer.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Sizer.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Encapsulates a strategy for determining the size of an object. Different implementations are mapped to different
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SkelterModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SkelterModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SkelterModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SkelterModule.java
index a3dc900..04bd3b4 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SkelterModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SkelterModule.java
@@ -10,7 +10,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.ImportModule;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SpecificDecoratorModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SpecificDecoratorModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SpecificDecoratorModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SpecificDecoratorModule.java
index 1f5c7f1..a265341 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SpecificDecoratorModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SpecificDecoratorModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class SpecificDecoratorModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SpecificDecoratorModuleAgain.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SpecificDecoratorModuleAgain.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SpecificDecoratorModuleAgain.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SpecificDecoratorModuleAgain.java
index 9dc1e43..c2c362d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SpecificDecoratorModuleAgain.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SpecificDecoratorModuleAgain.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Part of the test for two different decorate() methods in different classes, but the same name. 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Square.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Square.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Square.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Square.java
index fd7a5ff..afbc261 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/Square.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/Square.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Used by {@link ioc.specs.RegistryBuilderSpec}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StaticModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StaticModule.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StaticModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StaticModule.java
index df42da4..d6bc1be 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StaticModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StaticModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.Collection;
 import java.util.Collections;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringHolder.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringHolder.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringHolder.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringHolder.java
index 027beb4..77e35f6 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringHolder.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringHolder.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public interface StringHolder
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringHolderImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringHolderImpl.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringHolderImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringHolderImpl.java
index f433ad4..2fc5ff9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringHolderImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringHolderImpl.java
@@ -12,9 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
-import org.apache.tapestry5.ioc.internal.services.SimpleAnnotation;
+import org.apache.tapestry5.ioc.test.internal.services.SimpleAnnotation;
 
 /**
  *
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringLookup.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringLookup.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringLookup.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringLookup.java
index 1a1e4bf..5e147d0 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringLookup.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringLookup.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.util.List;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringTransformer.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringTransformer.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringTransformer.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringTransformer.java
index fcff2ce..848a2c8 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/StringTransformer.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/StringTransformer.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /** Used in various integration tests. */
 public interface StringTransformer
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SymbolExpandingTransformer.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SymbolExpandingTransformer.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SymbolExpandingTransformer.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SymbolExpandingTransformer.java
index 1526274..160204c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/SymbolExpandingTransformer.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/SymbolExpandingTransformer.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.services.SymbolSource;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnbuildablePingable.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnbuildablePingable.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnbuildablePingable.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnbuildablePingable.java
index 76432c1..85b065d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnbuildablePingable.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnbuildablePingable.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 /**
  * Used to test failure to autobuild a service because of a lack of a public constructor.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnknownColorGreeterImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnknownColorGreeterImpl.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnknownColorGreeterImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnknownColorGreeterImpl.java
index 3dee8d5..22a9e75 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnknownColorGreeterImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnknownColorGreeterImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class UnknownColorGreeterImpl implements Greeter
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnknownScopeModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnknownScopeModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnknownScopeModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnknownScopeModule.java
index 166ee21..60e99d6 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UnknownScopeModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UnknownScopeModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import org.apache.tapestry5.ioc.annotations.Scope;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UppercaseStringTransformer.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UppercaseStringTransformer.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UppercaseStringTransformer.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UppercaseStringTransformer.java
index 24637e7..ed7113d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/UppercaseStringTransformer.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/UppercaseStringTransformer.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 public class UppercaseStringTransformer implements StringTransformer
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/YellowMarker.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/YellowMarker.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/YellowMarker.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/YellowMarker.java
index a32d25d..ff8db79 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/YellowMarker.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/YellowMarker.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc;
+package org.apache.tapestry5.ioc.test;
 
 import java.lang.annotation.Documented;
 import static java.lang.annotation.ElementType.FIELD;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AbstractAutobuildServiceModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AbstractAutobuildServiceModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AbstractAutobuildServiceModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AbstractAutobuildServiceModule.java
index 13bc367..bfca1d4 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AbstractAutobuildServiceModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AbstractAutobuildServiceModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AbstractRunnableService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AbstractRunnableService.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AbstractRunnableService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AbstractRunnableService.java
index 978286a..405c819 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AbstractRunnableService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AbstractRunnableService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * This service implementation is abstract, which triggers an exception.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviceModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviceModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviceModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviceModule.java
index b974eea..2b0ac7b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviceModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviceModule.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 
 import org.apache.tapestry5.commons.ObjectLocator;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviseByMarkerModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviseByMarkerModule.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviseByMarkerModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviseByMarkerModule.java
index e2905ef..d4fed70 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviseByMarkerModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviseByMarkerModule.java
@@ -11,16 +11,16 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.GreenMarker;
-import org.apache.tapestry5.ioc.Greeter;
 import org.apache.tapestry5.ioc.MethodAdviceReceiver;
-import org.apache.tapestry5.ioc.RedMarker;
 import org.apache.tapestry5.ioc.annotations.Advise;
 import org.apache.tapestry5.ioc.annotations.Local;
 import org.apache.tapestry5.ioc.annotations.Marker;
 import org.apache.tapestry5.ioc.annotations.Order;
+import org.apache.tapestry5.ioc.test.GreenMarker;
+import org.apache.tapestry5.ioc.test.Greeter;
+import org.apache.tapestry5.ioc.test.RedMarker;
 import org.apache.tapestry5.plastic.MethodAdvice;
 import org.apache.tapestry5.plastic.MethodInvocation;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviseByMarkerModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviseByMarkerModule2.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviseByMarkerModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviseByMarkerModule2.java
index f0b5e74..f080e1f 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AdviseByMarkerModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AdviseByMarkerModule2.java
@@ -11,15 +11,15 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.Greeter;
 import org.apache.tapestry5.ioc.MethodAdviceReceiver;
-import org.apache.tapestry5.ioc.RedMarker;
 import org.apache.tapestry5.ioc.annotations.Advise;
 import org.apache.tapestry5.ioc.annotations.Marker;
 import org.apache.tapestry5.ioc.annotations.Match;
 import org.apache.tapestry5.ioc.annotations.Order;
+import org.apache.tapestry5.ioc.test.Greeter;
+import org.apache.tapestry5.ioc.test.RedMarker;
 import org.apache.tapestry5.plastic.MethodAdvice;
 import org.apache.tapestry5.plastic.MethodInvocation;
 import org.testng.Assert;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AlphabetModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AlphabetModule.java
similarity index 88%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AlphabetModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AlphabetModule.java
index 0c6e4cf..6574a3b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AlphabetModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AlphabetModule.java
@@ -12,17 +12,17 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import java.util.List;
 
 import org.apache.tapestry5.commons.OrderedConfiguration;
-import org.apache.tapestry5.ioc.BlueMarker;
-import org.apache.tapestry5.ioc.GreenMarker;
-import org.apache.tapestry5.ioc.NameListHolder;
-import org.apache.tapestry5.ioc.NameListHolder2;
 import org.apache.tapestry5.ioc.annotations.Contribute;
 import org.apache.tapestry5.ioc.annotations.Marker;
+import org.apache.tapestry5.ioc.test.BlueMarker;
+import org.apache.tapestry5.ioc.test.GreenMarker;
+import org.apache.tapestry5.ioc.test.NameListHolder;
+import org.apache.tapestry5.ioc.test.NameListHolder2;
 
 public class AlphabetModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AlphabetModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AlphabetModule2.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AlphabetModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AlphabetModule2.java
index 66addb3..5723d2c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AlphabetModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AlphabetModule2.java
@@ -12,18 +12,18 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import java.util.List;
 
 import org.apache.tapestry5.commons.OrderedConfiguration;
-import org.apache.tapestry5.ioc.BlueMarker;
-import org.apache.tapestry5.ioc.GreenMarker;
-import org.apache.tapestry5.ioc.NameListHolder;
-import org.apache.tapestry5.ioc.RedMarker;
 import org.apache.tapestry5.ioc.annotations.Contribute;
 import org.apache.tapestry5.ioc.annotations.Local;
 import org.apache.tapestry5.ioc.annotations.Marker;
+import org.apache.tapestry5.ioc.test.BlueMarker;
+import org.apache.tapestry5.ioc.test.GreenMarker;
+import org.apache.tapestry5.ioc.test.NameListHolder;
+import org.apache.tapestry5.ioc.test.RedMarker;
 
 public class AlphabetModule2
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AnnotatedServiceInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AnnotatedServiceInterface.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AnnotatedServiceInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AnnotatedServiceInterface.java
index 5934d4a..e384079 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AnnotatedServiceInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AnnotatedServiceInterface.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.beaneditor.ReorderProperties;
 import org.apache.tapestry5.ioc.annotations.Advise;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AnnotatedServiceInterfaceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AnnotatedServiceInterfaceImpl.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AnnotatedServiceInterfaceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AnnotatedServiceInterfaceImpl.java
index 09c549e..b49d41b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/AnnotatedServiceInterfaceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/AnnotatedServiceInterfaceImpl.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 
 public class AnnotatedServiceInterfaceImpl implements AnnotatedServiceInterface {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ArrayDecoratorMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ArrayDecoratorMethodModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ArrayDecoratorMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ArrayDecoratorMethodModule.java
index 17e2817..c9b70a5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ArrayDecoratorMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ArrayDecoratorMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/BuilderMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/BuilderMethodModule.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/BuilderMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/BuilderMethodModule.java
index 053fa3b..d2e014b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/BuilderMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/BuilderMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 public class BuilderMethodModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ComplexAutobuildModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ComplexAutobuildModule.java
similarity index 85%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ComplexAutobuildModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ComplexAutobuildModule.java
index cc578fa..40972de 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ComplexAutobuildModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ComplexAutobuildModule.java
@@ -12,11 +12,11 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
-import org.apache.tapestry5.ioc.StringHolder;
-import org.apache.tapestry5.ioc.StringHolderImpl;
+import org.apache.tapestry5.ioc.test.StringHolder;
+import org.apache.tapestry5.ioc.test.StringHolderImpl;
 
 public class ComplexAutobuildModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecorateByMarkerModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecorateByMarkerModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecorateByMarkerModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecorateByMarkerModule.java
index 3686a29..c04eba1 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecorateByMarkerModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecorateByMarkerModule.java
@@ -11,11 +11,8 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.GreenMarker;
-import org.apache.tapestry5.ioc.Greeter;
-import org.apache.tapestry5.ioc.RedMarker;
 import org.apache.tapestry5.ioc.ServiceResources;
 import org.apache.tapestry5.ioc.annotations.Decorate;
 import org.apache.tapestry5.ioc.annotations.Local;
@@ -23,6 +20,9 @@ import org.apache.tapestry5.ioc.annotations.Marker;
 import org.apache.tapestry5.ioc.annotations.Order;
 import org.apache.tapestry5.ioc.services.AspectDecorator;
 import org.apache.tapestry5.ioc.services.AspectInterceptorBuilder;
+import org.apache.tapestry5.ioc.test.GreenMarker;
+import org.apache.tapestry5.ioc.test.Greeter;
+import org.apache.tapestry5.ioc.test.RedMarker;
 import org.apache.tapestry5.plastic.MethodAdvice;
 import org.apache.tapestry5.plastic.MethodInvocation;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecorateByMarkerModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecorateByMarkerModule2.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecorateByMarkerModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecorateByMarkerModule2.java
index e3d917a..4811794 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecorateByMarkerModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecorateByMarkerModule2.java
@@ -11,10 +11,8 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.Greeter;
-import org.apache.tapestry5.ioc.RedMarker;
 import org.apache.tapestry5.ioc.ServiceResources;
 import org.apache.tapestry5.ioc.annotations.Decorate;
 import org.apache.tapestry5.ioc.annotations.Marker;
@@ -22,6 +20,8 @@ import org.apache.tapestry5.ioc.annotations.Match;
 import org.apache.tapestry5.ioc.annotations.Order;
 import org.apache.tapestry5.ioc.services.AspectDecorator;
 import org.apache.tapestry5.ioc.services.AspectInterceptorBuilder;
+import org.apache.tapestry5.ioc.test.Greeter;
+import org.apache.tapestry5.ioc.test.RedMarker;
 import org.apache.tapestry5.plastic.MethodAdvice;
 import org.apache.tapestry5.plastic.MethodInvocation;
 import org.testng.Assert;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecoratorModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecoratorModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecoratorModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecoratorModule.java
index ebe972a..d52a3e5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DecoratorModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DecoratorModule.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
 import org.apache.tapestry5.ioc.annotations.Decorate;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DefaultServiceIdModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DefaultServiceIdModule.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DefaultServiceIdModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DefaultServiceIdModule.java
index 4d75d58..4a29184 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/DefaultServiceIdModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/DefaultServiceIdModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 public class DefaultServiceIdModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/EagerLoadViaAnnotationModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/EagerLoadViaAnnotationModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/EagerLoadViaAnnotationModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/EagerLoadViaAnnotationModule.java
index d2ec410..9447268 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/EagerLoadViaAnnotationModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/EagerLoadViaAnnotationModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/EagerLoadViaAnnotationServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/EagerLoadViaAnnotationServiceImpl.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/EagerLoadViaAnnotationServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/EagerLoadViaAnnotationServiceImpl.java
index a01ad5a..4f894f5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/EagerLoadViaAnnotationServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/EagerLoadViaAnnotationServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.annotations.EagerLoad;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInBindMethod.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInBindMethod.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInBindMethod.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInBindMethod.java
index a2e1f13..3735343 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInBindMethod.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInBindMethod.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInConstructorModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInConstructorModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInConstructorModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInConstructorModule.java
index 4818545..bb5e23f 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInConstructorModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInConstructorModule.java
@@ -12,10 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.Pingable;
 import org.apache.tapestry5.ioc.ServiceBinder;
+import org.apache.tapestry5.ioc.test.Pingable;
 
 public class ExceptionInConstructorModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInConstructorServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInConstructorServiceImpl.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInConstructorServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInConstructorServiceImpl.java
index d4b8637..9abfa43 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExceptionInConstructorServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExceptionInConstructorServiceImpl.java
@@ -12,9 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.Pingable;
+import org.apache.tapestry5.ioc.test.Pingable;
 
 public class ExceptionInConstructorServiceImpl implements Pingable
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExtraPublicConstructorsModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExtraPublicConstructorsModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExtraPublicConstructorsModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExtraPublicConstructorsModule.java
index d22b2a3..9f00318 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ExtraPublicConstructorsModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ExtraPublicConstructorsModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.ioc.services.SymbolSource;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/FieService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/FieService.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/FieService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/FieService.java
index 60f3ed1..c3bf338 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/FieService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/FieService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * A placeholder for a real service interface.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/FoeService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/FoeService.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/FoeService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/FoeService.java
index 92dbf22..3b3c491 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/FoeService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/FoeService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * A placeholder for a real service interface.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MappedConfigurationModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MappedConfigurationModule.java
similarity index 88%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MappedConfigurationModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MappedConfigurationModule.java
index bb4cf99..559ba1c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MappedConfigurationModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MappedConfigurationModule.java
@@ -12,9 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
+import org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleBuilderWithId.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleBuilderWithId.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleBuilderWithId.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleBuilderWithId.java
index fcff4a5..ab79a24 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleBuilderWithId.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleBuilderWithId.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleImplTestModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleImplTestModule.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleImplTestModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleImplTestModule.java
index 16e8320..f57e81d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleImplTestModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleImplTestModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceResources;
 import org.apache.tapestry5.ioc.annotations.InjectService;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleWithOverriddenObjectMethods.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleWithOverriddenObjectMethods.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleWithOverriddenObjectMethods.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleWithOverriddenObjectMethods.java
index 3999820..a9df105 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ModuleWithOverriddenObjectMethods.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ModuleWithOverriddenObjectMethods.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MultipleConstructorsAutobuildService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MultipleConstructorsAutobuildService.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MultipleConstructorsAutobuildService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MultipleConstructorsAutobuildService.java
index 3c38f05..292c150 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MultipleConstructorsAutobuildService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MultipleConstructorsAutobuildService.java
@@ -12,10 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.StringHolder;
 import org.apache.tapestry5.ioc.annotations.InjectService;
+import org.apache.tapestry5.ioc.test.StringHolder;
 
 public class MultipleConstructorsAutobuildService implements StringHolder
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MutlipleAutobuildServiceConstructorsModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MutlipleAutobuildServiceConstructorsModule.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MutlipleAutobuildServiceConstructorsModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MutlipleAutobuildServiceConstructorsModule.java
index 7c6f065..a903402 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/MutlipleAutobuildServiceConstructorsModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/MutlipleAutobuildServiceConstructorsModule.java
@@ -12,10 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
-import org.apache.tapestry5.ioc.StringHolder;
+import org.apache.tapestry5.ioc.test.StringHolder;
 
 public class MutlipleAutobuildServiceConstructorsModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NamedServiceModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NamedServiceModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NamedServiceModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NamedServiceModule.java
index f35b778..ef12505 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NamedServiceModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NamedServiceModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import javax.inject.Named;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NamedViaAnnotationServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NamedViaAnnotationServiceImpl.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NamedViaAnnotationServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NamedViaAnnotationServiceImpl.java
index ed57f2c..92ea346 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NamedViaAnnotationServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NamedViaAnnotationServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import javax.inject.Named;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoDelegateDecoratorMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoDelegateDecoratorMethodModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoDelegateDecoratorMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoDelegateDecoratorMethodModule.java
index 629299e..c82dd32 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoDelegateDecoratorMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoDelegateDecoratorMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoUsableContributionParameterModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoUsableContributionParameterModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoUsableContributionParameterModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoUsableContributionParameterModule.java
index 215367c..9e4b763 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoUsableContributionParameterModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoUsableContributionParameterModule.java
@@ -12,9 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.annotations.InjectService;
+import org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericServiceInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericServiceInterface.java
similarity index 84%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericServiceInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericServiceInterface.java
index 34216df..a8612b8 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericServiceInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericServiceInterface.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import java.io.File;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericSetServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericSetServiceImpl.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericSetServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericSetServiceImpl.java
index 509d5b4..3c0512e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericSetServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericSetServiceImpl.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import java.io.File;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericSetServiceInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericSetServiceInterface.java
similarity index 71%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericSetServiceInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericSetServiceInterface.java
index 1bb5369..94802e7 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedGenericSetServiceInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedGenericSetServiceInterface.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 public interface NonAnnotatedGenericSetServiceInterface extends
         NonAnnotatedGenericServiceInterface<String>
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedServiceInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedServiceInterface.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedServiceInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedServiceInterface.java
index bff57bc..d9b3682 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedServiceInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedServiceInterface.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.beaneditor.ReorderProperties;
 import org.apache.tapestry5.ioc.annotations.Advise;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedServiceInterfaceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedServiceInterfaceImpl.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedServiceInterfaceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedServiceInterfaceImpl.java
index 5a14841..e5e7a75 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonAnnotatedServiceInterfaceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonAnnotatedServiceInterfaceImpl.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.beaneditor.ReorderProperties;
 import org.apache.tapestry5.ioc.annotations.Advise;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonStaticBindMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonStaticBindMethodModule.java
similarity index 84%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonStaticBindMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonStaticBindMethodModule.java
index bfff2ff..7d4e0fa 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NonStaticBindMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NonStaticBindMethodModule.java
@@ -12,11 +12,11 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
-import org.apache.tapestry5.ioc.StringHolder;
-import org.apache.tapestry5.ioc.StringHolderImpl;
+import org.apache.tapestry5.ioc.test.StringHolder;
+import org.apache.tapestry5.ioc.test.StringHolderImpl;
 
 public class NonStaticBindMethodModule
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoopClassLoaderDelegate.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoopClassLoaderDelegate.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoopClassLoaderDelegate.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoopClassLoaderDelegate.java
index 0395697..c769898 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/NoopClassLoaderDelegate.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/NoopClassLoaderDelegate.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.internal.plastic.ClassLoaderDelegate;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/OrderedConfigurationModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/OrderedConfigurationModule.java
similarity index 88%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/OrderedConfigurationModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/OrderedConfigurationModule.java
index 38dc9f8..bbdcad7 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/OrderedConfigurationModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/OrderedConfigurationModule.java
@@ -12,9 +12,10 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.commons.OrderedConfiguration;
+import org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/PrimitiveDecoratorMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/PrimitiveDecoratorMethodModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/PrimitiveDecoratorMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/PrimitiveDecoratorMethodModule.java
index 0256f42..640fc6d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/PrimitiveDecoratorMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/PrimitiveDecoratorMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/PrivateConstructorModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/PrivateConstructorModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/PrivateConstructorModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/PrivateConstructorModule.java
index 2fc257f..fbde85a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/PrivateConstructorModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/PrivateConstructorModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 
 /**
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ReadManifest.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ReadManifest.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ReadManifest.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ReadManifest.java
index df2775d..cdc3c26 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ReadManifest.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ReadManifest.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import java.io.InputStream;
 import static java.lang.String.format;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/RunnableServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/RunnableServiceImpl.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/RunnableServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/RunnableServiceImpl.java
index 21f66b9..87a8197 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/RunnableServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/RunnableServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * This service implementation is not instantiable, which triggers an exception.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceBuilderMethodFixture.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceBuilderMethodFixture.java
similarity index 98%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceBuilderMethodFixture.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceBuilderMethodFixture.java
index 5e2d0bd..e4e0e7b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceBuilderMethodFixture.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceBuilderMethodFixture.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceResources;
 import org.apache.tapestry5.ioc.annotations.InjectService;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceDecoratorFixture.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceDecoratorFixture.java
similarity index 84%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceDecoratorFixture.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceDecoratorFixture.java
index 1364346..79bee8b 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceDecoratorFixture.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceDecoratorFixture.java
@@ -1,9 +1,9 @@
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.testng.Assert;
 
 /**
- * Used by {@link org.apache.tapestry5.ioc.internal.services.ServiceDecoratorImplSpec}.
+ * Used by {@link org.apache.tapestry5.ioc.test.internal.services.ServiceDecoratorImplSpec}.
  */
 public class ServiceDecoratorFixture extends Assert
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdConflictMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdConflictMethodModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdConflictMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdConflictMethodModule.java
index e0fb89c..dfe5cfe 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdConflictMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdConflictMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaAnnotationModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaAnnotationModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaAnnotationModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaAnnotationModule.java
index 1892deb..6c85225 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaAnnotationModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaAnnotationModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
 import org.apache.tapestry5.ioc.annotations.ServiceId;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaAnnotationServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaAnnotationServiceImpl.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaAnnotationServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaAnnotationServiceImpl.java
index 21f7406..08977d5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaAnnotationServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaAnnotationServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.annotations.ServiceId;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaMethodAnnotationServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaMethodAnnotationServiceImpl.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaMethodAnnotationServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaMethodAnnotationServiceImpl.java
index bde2ca3..dc24da3 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ServiceIdViaMethodAnnotationServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ServiceIdViaMethodAnnotationServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 
 public class ServiceIdViaMethodAnnotationServiceImpl implements Runnable
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/SimpleModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/SimpleModule.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/SimpleModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/SimpleModule.java
index edea1ff..25f995c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/SimpleModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/SimpleModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.ioc.annotations.EagerLoad;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/SyntheticMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/SyntheticMethodModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/SyntheticMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/SyntheticMethodModule.java
index f7e1ead..b18dff1 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/SyntheticMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/SyntheticMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 // test will enhance this class to contain a public synthetic method
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/TestAdvice.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/TestAdvice.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/TestAdvice.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/TestAdvice.java
index 0709437..e5fc458 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/TestAdvice.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/TestAdvice.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Method;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ToStringService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ToStringService.java
similarity index 60%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ToStringService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ToStringService.java
index 22b8ab5..d88cd37 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ToStringService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ToStringService.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 public interface ToStringService
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ToUpperCaseStringHolder.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ToUpperCaseStringHolder.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ToUpperCaseStringHolder.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ToUpperCaseStringHolder.java
index 04915ac..1800458 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/ToUpperCaseStringHolder.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/ToUpperCaseStringHolder.java
@@ -12,9 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
-import org.apache.tapestry5.ioc.StringHolder;
+import org.apache.tapestry5.ioc.test.StringHolder;
 
 public class ToUpperCaseStringHolder implements StringHolder
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/TooManyContributionParametersModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/TooManyContributionParametersModule.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/TooManyContributionParametersModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/TooManyContributionParametersModule.java
index 2b9eb07..516ed30 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/TooManyContributionParametersModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/TooManyContributionParametersModule.java
@@ -12,10 +12,11 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.commons.Configuration;
 import org.apache.tapestry5.commons.OrderedConfiguration;
+import org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UninstantiableAutobuildServiceModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UninstantiableAutobuildServiceModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UninstantiableAutobuildServiceModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UninstantiableAutobuildServiceModule.java
index c92016f..3841fba 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UninstantiableAutobuildServiceModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UninstantiableAutobuildServiceModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 import org.apache.tapestry5.ioc.ServiceBinder;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UpcaseService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UpcaseService.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UpcaseService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UpcaseService.java
index c7cbe63..e61f745 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UpcaseService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UpcaseService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.SingletonServiceLifecycleTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UpcaseServiceImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UpcaseServiceImpl.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UpcaseServiceImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UpcaseServiceImpl.java
index 36ae8ac..10f3f4a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/UpcaseServiceImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/UpcaseServiceImpl.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 public class UpcaseServiceImpl implements UpcaseService
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/VoidBuilderMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/VoidBuilderMethodModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/VoidBuilderMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/VoidBuilderMethodModule.java
index 198d307..8b978c8 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/VoidBuilderMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/VoidBuilderMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/VoidDecoratorMethodModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/VoidDecoratorMethodModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/VoidDecoratorMethodModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/VoidDecoratorMethodModule.java
index d8ffa3d..e4130cb 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/VoidDecoratorMethodModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/VoidDecoratorMethodModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal;
+package org.apache.tapestry5.ioc.test.internal;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.DefaultModuleDefImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AbstractIntWrapper.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AbstractIntWrapper.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AbstractIntWrapper.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AbstractIntWrapper.java
index e63db8b..0417f6e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AbstractIntWrapper.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AbstractIntWrapper.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.services.ClassFabImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBean.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBean.java
index 622ab43..c2fb0c2 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/AnnotatedBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import org.apache.tapestry5.ioc.annotations.Scope;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBeanSubclass.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBeanSubclass.java
new file mode 100644
index 0000000..530ab5f
--- /dev/null
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/AnnotatedBeanSubclass.java
@@ -0,0 +1,5 @@
+package org.apache.tapestry5.ioc.test.internal.services;
+
+public class AnnotatedBeanSubclass extends Bean
+{
+}
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/Bean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/Bean.java
similarity index 91%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/Bean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/Bean.java
index 3fae5a6..67ad9a2 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/Bean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/Bean.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import org.apache.tapestry5.beaneditor.DataType;
 import org.apache.tapestry5.beaneditor.Validate;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/BeanWithIndexedProperty.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/BeanWithIndexedProperty.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/BeanWithIndexedProperty.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/BeanWithIndexedProperty.java
index 62e3af0..6141d30 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/BeanWithIndexedProperty.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/BeanWithIndexedProperty.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public class BeanWithIndexedProperty
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ExtraFilterMethod.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ExtraFilterMethod.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ExtraFilterMethod.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ExtraFilterMethod.java
index 4b43650..53061fa 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ExtraFilterMethod.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ExtraFilterMethod.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface ExtraFilterMethod
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ExtraServiceMethod.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ExtraServiceMethod.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ExtraServiceMethod.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ExtraServiceMethod.java
index daf2bbc..7c7760d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ExtraServiceMethod.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ExtraServiceMethod.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface ExtraServiceMethod
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/GrandparentInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/GrandparentInterface.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/GrandparentInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/GrandparentInterface.java
index 0a30fd8..ebc0d93 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/GrandparentInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/GrandparentInterface.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface GrandparentInterface
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/LineNumberBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/LineNumberBean.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/LineNumberBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/LineNumberBean.java
index d36a434..f739ea5 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/LineNumberBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/LineNumberBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public class LineNumberBean
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MiddleFilter.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/MiddleFilter.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MiddleFilter.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/MiddleFilter.java
index fc47fe9..962aaaf 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MiddleFilter.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/MiddleFilter.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface MiddleFilter
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MiddleService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/MiddleService.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MiddleService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/MiddleService.java
index 251ebf5..faf2f58 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/MiddleService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/MiddleService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface MiddleService
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/NonParallelModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/NonParallelModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/NonParallelModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/NonParallelModule.java
index d408358..eb23834 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/NonParallelModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/NonParallelModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 import org.apache.tapestry5.ioc.IOCSymbols;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ParentInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ParentInterface.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ParentInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ParentInterface.java
index 1756ae2..f75bbd9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ParentInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ParentInterface.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface ParentInterface extends GrandparentInterface
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/PublicFieldBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/PublicFieldBean.java
similarity index 51%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/PublicFieldBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/PublicFieldBean.java
index abb0e3c..dc58128 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/PublicFieldBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/PublicFieldBean.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public class PublicFieldBean
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SampleFilter.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SampleFilter.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SampleFilter.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SampleFilter.java
index 4a08816..f41462f 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SampleFilter.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SampleFilter.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
+
+import org.apache.tapestry5.ioc.internal.services.FilterMethodAnalyzer;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.services.FilterMethodAnalyzer}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SampleService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SampleService.java
similarity index 88%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SampleService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SampleService.java
index 2a8f6c9..cf20759 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SampleService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SampleService.java
@@ -12,7 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
+
+import org.apache.tapestry5.ioc.internal.services.FilterMethodAnalyzer;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.services.FilterMethodAnalyzer}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ServiceDecoratorImplSpec.groovy b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ServiceDecoratorImplSpec.groovy
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ServiceDecoratorImplSpec.groovy
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ServiceDecoratorImplSpec.groovy
index 04ed03b..f163696 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ServiceDecoratorImplSpec.groovy
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ServiceDecoratorImplSpec.groovy
@@ -1,12 +1,12 @@
-package org.apache.tapestry5.ioc.internal.services
+package org.apache.tapestry5.ioc.test.internal.services
 
 import org.apache.tapestry5.commons.services.PlasticProxyFactory
 import org.apache.tapestry5.ioc.ModuleBuilderSource
 import org.apache.tapestry5.ioc.ServiceDecorator
 import org.apache.tapestry5.ioc.ServiceResources
-import org.apache.tapestry5.ioc.internal.FieService
-import org.apache.tapestry5.ioc.internal.ServiceDecoratorFixture
 import org.apache.tapestry5.ioc.internal.ServiceDecoratorImpl
+import org.apache.tapestry5.ioc.test.internal.FieService
+import org.apache.tapestry5.ioc.test.internal.ServiceDecoratorFixture
 import org.slf4j.Logger
 
 import ioc.specs.AbstractSharedRegistrySpecification
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ServiceProxySerializationSpec.groovy b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ServiceProxySerializationSpec.groovy
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ServiceProxySerializationSpec.groovy
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ServiceProxySerializationSpec.groovy
index 4ba3743..4e09b43 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ServiceProxySerializationSpec.groovy
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ServiceProxySerializationSpec.groovy
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.services
+package org.apache.tapestry5.ioc.test.internal.services
 
 import org.apache.tapestry5.commons.services.TypeCoercer
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ShadowedPublicFieldBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ShadowedPublicFieldBean.java
similarity index 80%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ShadowedPublicFieldBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ShadowedPublicFieldBean.java
index 485806e..81f9970 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ShadowedPublicFieldBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ShadowedPublicFieldBean.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public class ShadowedPublicFieldBean
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SimpleAnnotation.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SimpleAnnotation.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SimpleAnnotation.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SimpleAnnotation.java
index dd9b8c2..224ba96 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SimpleAnnotation.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SimpleAnnotation.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import static java.lang.annotation.ElementType.METHOD;
 import static java.lang.annotation.ElementType.TYPE;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SimpleService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SimpleService.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SimpleService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SimpleService.java
index 0b78c78..5e48997 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SimpleService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SimpleService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 /**
  * Used by {@link org.apache.tapestry5.ioc.internal.services.ClassFabImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StandardFilter.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StandardFilter.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StandardFilter.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StandardFilter.java
index 86f6cec..0d2b2b4 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StandardFilter.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StandardFilter.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface StandardFilter
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StandardService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StandardService.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StandardService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StandardService.java
index 3180f7e..f61871e 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StandardService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StandardService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface StandardService
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StartupModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StartupModule.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StartupModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StartupModule.java
index e59a49c..1c36422 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StartupModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StartupModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import org.apache.tapestry5.commons.OrderedConfiguration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StartupModule2.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StartupModule2.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StartupModule2.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StartupModule2.java
index 88bcb19..438a256 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StartupModule2.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StartupModule2.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import org.apache.tapestry5.commons.ObjectLocator;
 import org.apache.tapestry5.ioc.annotations.Startup;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StringLocationSpec.groovy b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StringLocationSpec.groovy
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StringLocationSpec.groovy
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StringLocationSpec.groovy
index e879b0d..ecbcbfa 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/StringLocationSpec.groovy
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/StringLocationSpec.groovy
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.services
+package org.apache.tapestry5.ioc.test.internal.services
 
 import org.apache.tapestry5.commons.Location
 import org.apache.tapestry5.commons.internal.services.StringLocation
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SubInterface.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SubInterface.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SubInterface.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SubInterface.java
index 484e2b9..d6f73cc 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SubInterface.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SubInterface.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface SubInterface extends ParentInterface
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SymbolObjectProviderSpec.groovy b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SymbolObjectProviderSpec.groovy
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SymbolObjectProviderSpec.groovy
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SymbolObjectProviderSpec.groovy
index aadc599..ce85930 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/SymbolObjectProviderSpec.groovy
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/SymbolObjectProviderSpec.groovy
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.services
+package org.apache.tapestry5.ioc.test.internal.services
 
 import org.apache.tapestry5.commons.AnnotationProvider
 import org.apache.tapestry5.commons.ObjectLocator
@@ -6,6 +6,7 @@ import org.apache.tapestry5.commons.ObjectProvider
 import org.apache.tapestry5.commons.services.TypeCoercer
 import org.apache.tapestry5.ioc.annotations.IntermediateType
 import org.apache.tapestry5.ioc.annotations.Symbol
+import org.apache.tapestry5.ioc.internal.services.SymbolObjectProvider
 import org.apache.tapestry5.ioc.services.SymbolSource
 
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TargetBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TargetBean.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TargetBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TargetBean.java
index fcf731a..a7538c9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TargetBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TargetBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 /**
  * Used by {@link ClassFactoryImplTest}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TestAnnotation.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TestAnnotation.java
similarity index 96%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TestAnnotation.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TestAnnotation.java
index 13abb85..e44f086 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TestAnnotation.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TestAnnotation.java
@@ -11,7 +11,7 @@
 // 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.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 import static java.lang.annotation.ElementType.METHOD;
 import static java.lang.annotation.ElementType.TYPE;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TextTransformer.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TextTransformer.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TextTransformer.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TextTransformer.java
index c0eb887..9699622 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/TextTransformer.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/TextTransformer.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface TextTransformer
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ToStringFilter.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ToStringFilter.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ToStringFilter.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ToStringFilter.java
index 00822b5..87749fb 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ToStringFilter.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ToStringFilter.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface ToStringFilter
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ToStringService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ToStringService.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ToStringService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ToStringService.java
index adbbe45..741590c 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/services/ToStringService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/services/ToStringService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.services;
+package org.apache.tapestry5.ioc.test.internal.services;
 
 public interface ToStringService
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/BaseGenericBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/BaseGenericBean.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/BaseGenericBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/BaseGenericBean.java
index dc4c2c7..0caa302 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/BaseGenericBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/BaseGenericBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 public class BaseGenericBean<T>
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ConcurrentTarget.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ConcurrentTarget.java
similarity index 97%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ConcurrentTarget.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ConcurrentTarget.java
index 2a0f8f4..984bdfb 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ConcurrentTarget.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ConcurrentTarget.java
@@ -12,11 +12,12 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import java.util.ArrayList;
 import java.util.List;
 import org.apache.tapestry5.ioc.Invokable;
+import org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier;
 
 import java.util.concurrent.TimeUnit;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ConcurrentTargetWrapper.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ConcurrentTargetWrapper.java
similarity index 90%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ConcurrentTargetWrapper.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ConcurrentTargetWrapper.java
index 96fea8a..2c77a2d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ConcurrentTargetWrapper.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ConcurrentTargetWrapper.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
+import org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier;
 
 public class ConcurrentTargetWrapper implements Runnable
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Drivable.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Drivable.java
similarity index 67%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Drivable.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Drivable.java
index b6cf120..fbf92fc 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Drivable.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Drivable.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 /**
  * Used by {@link ioc.specs.InheritanceSearchSpec}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/DrivableImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/DrivableImpl.java
similarity index 75%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/DrivableImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/DrivableImpl.java
index a5d0520..c5e7558 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/DrivableImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/DrivableImpl.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 
 /**
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaInject.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaInject.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaInject.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaInject.java
index 9788d6c..db4eef9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaInject.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaInject.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import org.apache.tapestry5.ioc.annotations.Inject;
 import org.apache.tapestry5.ioc.services.Builtin;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaInjectService.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaInjectService.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaInjectService.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaInjectService.java
index 693351c..66f934a 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaInjectService.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaInjectService.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import org.apache.tapestry5.ioc.annotations.InjectService;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaJavaxInject.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaJavaxInject.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaJavaxInject.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaJavaxInject.java
index ac9fd13..7b023d4 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaJavaxInject.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaJavaxInject.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import javax.inject.Inject;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaJavaxNamed.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaJavaxNamed.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaJavaxNamed.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaJavaxNamed.java
index 359c945..36c8f09 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/FieldInjectionViaJavaxNamed.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/FieldInjectionViaJavaxNamed.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import javax.inject.Inject;
 import javax.inject.Named;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/InjectoBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/InjectoBean.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/InjectoBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/InjectoBean.java
index f0d7a78..98a53b9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/InjectoBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/InjectoBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import org.apache.tapestry5.ioc.annotations.Inject;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/JavaxInjectBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/JavaxInjectBean.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/JavaxInjectBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/JavaxInjectBean.java
index d662119..09f2a01 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/JavaxInjectBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/JavaxInjectBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import javax.inject.Inject;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NonGenericBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/NonGenericBean.java
similarity index 93%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NonGenericBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/NonGenericBean.java
index 8cce49f..6db1db9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NonGenericBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/NonGenericBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 public class NonGenericBean
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NotRetainedRuntime.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/NotRetainedRuntime.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NotRetainedRuntime.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/NotRetainedRuntime.java
index ac3eced..e6d81dd 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/NotRetainedRuntime.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/NotRetainedRuntime.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Target;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/OneShotLockSubject.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/OneShotLockSubject.java
similarity index 89%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/OneShotLockSubject.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/OneShotLockSubject.java
index d06a546..c5f61b9 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/OneShotLockSubject.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/OneShotLockSubject.java
@@ -12,8 +12,9 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
+import org.apache.tapestry5.ioc.internal.util.OneShotLock;
 
 /**
  * Evolved from a test for aspects + annotations to a test of a class that utilizeds OneShotLock as a utility.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Pair.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Pair.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Pair.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Pair.java
index 00722f4..66f45f8 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Pair.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Pair.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 public class Pair<K, V>
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Playable.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Playable.java
similarity index 80%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Playable.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Playable.java
index 1181ae1..d48b32d 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/Playable.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/Playable.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 
 /**
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/PlayableImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/PlayableImpl.java
similarity index 77%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/PlayableImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/PlayableImpl.java
index 3c99ef1..d91a9f7 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/PlayableImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/PlayableImpl.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 /**
  * Used by {@link ioc.specs.InheritanceSearchSpec}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/StringBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/StringBean.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/StringBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/StringBean.java
index 1b13856..31ffc06 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/StringBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/StringBean.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 public class StringBean extends BaseGenericBean<String>
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/StringLongPair.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/StringLongPair.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/StringLongPair.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/StringLongPair.java
index 0071beb..11a2146 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/StringLongPair.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/StringLongPair.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 public class StringLongPair extends Pair<String, Long>
 {
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/TargetMessages.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/TargetMessages.java
similarity index 63%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/TargetMessages.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/TargetMessages.java
index dced51e..0ac6e14 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/TargetMessages.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/TargetMessages.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 /**
  * Used with {@link ioc.specs.MessagesImplSpec}.
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/TooManyAutobuildConstructorsBean.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/TooManyAutobuildConstructorsBean.java
similarity index 92%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/TooManyAutobuildConstructorsBean.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/TooManyAutobuildConstructorsBean.java
index cd998ef..803a921 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/TooManyAutobuildConstructorsBean.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/TooManyAutobuildConstructorsBean.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 
 import org.apache.tapestry5.ioc.annotations.Inject;
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ToyTruck.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ToyTruck.java
similarity index 72%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ToyTruck.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ToyTruck.java
index 79fb4fd..ff3dbf8 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ToyTruck.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ToyTruck.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 
 /**
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ToyTruckImpl.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ToyTruckImpl.java
similarity index 79%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ToyTruckImpl.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ToyTruckImpl.java
index 99b4782..84f9196 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/internal/util/ToyTruckImpl.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/internal/util/ToyTruckImpl.java
@@ -1,4 +1,4 @@
-package org.apache.tapestry5.ioc.internal.util;
+package org.apache.tapestry5.ioc.test.internal.util;
 
 
 /**
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/ExceptionWrapper.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/util/ExceptionWrapper.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/ExceptionWrapper.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/util/ExceptionWrapper.java
index 7f032cb..bd52f11 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/ExceptionWrapper.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/util/ExceptionWrapper.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.util;
+package org.apache.tapestry5.ioc.test.util;
 
 
 public class ExceptionWrapper extends Exception
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/NonmatchingMappedConfigurationOverrideModule.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/util/NonmatchingMappedConfigurationOverrideModule.java
similarity index 95%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/NonmatchingMappedConfigurationOverrideModule.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/util/NonmatchingMappedConfigurationOverrideModule.java
index 5b084ea..5453f2f 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/NonmatchingMappedConfigurationOverrideModule.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/test/util/NonmatchingMappedConfigurationOverrideModule.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.util;
+package org.apache.tapestry5.ioc.test.util;
 
 import org.apache.tapestry5.commons.MappedConfiguration;
 
diff --git a/tapestry-ioc/src/test/java/org/apache/tapestry5/util/Stooge.java b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/Stooge.java
similarity index 94%
rename from tapestry-ioc/src/test/java/org/apache/tapestry5/util/Stooge.java
rename to tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/Stooge.java
index f2278b4..9c020a7 100644
--- a/tapestry-ioc/src/test/java/org/apache/tapestry5/util/Stooge.java
+++ b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/util/Stooge.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.util;
+package org.apache.tapestry5.ioc.util;
 
 public enum Stooge
 {
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/MockTester.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/MockTester.java
similarity index 100%
rename from tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/MockTester.java
rename to tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/MockTester.java
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/TestBase.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestBase.java
similarity index 100%
rename from tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/TestBase.java
rename to tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestBase.java
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/TestUtils.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestUtils.java
similarity index 100%
rename from tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/TestUtils.java
rename to tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestUtils.java
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/package-info.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/package-info.java
similarity index 100%
rename from tapestry-test/src/main/java/org/apache/tapestry5/ioc/test/package-info.java
rename to tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/package-info.java


[tapestry-5] 02/02: TAP5-2641: fixing Groovy test imports

Posted by th...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

thiagohp pushed a commit to branch java9modules
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git

commit ffabdb6188b87c64733173299b85a8593758f4c0
Author: Thiago H. de Paula Figueiredo <th...@arsmachina.com.br>
AuthorDate: Sat Sep 12 15:42:10 2020 -0300

    TAP5-2641: fixing Groovy test imports
---
 .../internal/services/ClientDataEncoderImplTest.groovy       |  2 +-
 .../internal/services/ResponseCompressionAnalyzerTest.groovy |  2 +-
 .../services/assets/AssetPathConstructorImplTest.groovy      |  2 +-
 .../internal/services/assets/ModuleReaderSpec.groovy         |  2 +-
 .../structure/ComponentPageElementResourcesImplTest.groovy   |  2 +-
 .../services/javascript/ModuleDispatcherTests.groovy         |  2 +-
 .../org/apache/tapestry5/corelib/components/SubmitTest.java  |  2 +-
 .../tapestry5/internal/ServletContextSymbolProviderTest.java |  2 +-
 .../internal/services/LocalizationSetterImplTest.java        |  2 +-
 .../internal/services/PersistentLocaleImplTest.java          |  2 +-
 .../services/assets/ContextAssetRequestHandlerTest.java      |  2 +-
 .../test/java/org/apache/tapestry5/root/ContentTypeTest.java |  2 +-
 .../org/apache/tapestry5/services/LibraryMappingTest.java    |  2 +-
 .../hibernate/DefaultHibernateConfigurerFilterTest.java      |  2 +-
 .../internal/hibernate/HibernateSessionSourceImplTest.java   |  2 +-
 .../hibernate/HibernateTransactionDecoratorImplTest.java     |  2 +-
 .../main/java/org/apache/tapestry5/ioc/test/IOCTestCase.java |  1 +
 tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy   |  1 -
 .../groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy |  1 +
 tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy  |  1 -
 .../src/test/groovy/ioc/specs/ConfigurationsSpec.groovy      |  1 -
 .../src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy | 12 +++++++-----
 tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy |  1 -
 .../src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy   |  1 -
 tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy  |  1 -
 .../src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy     |  4 ++--
 .../test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy    |  2 +-
 tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy |  2 +-
 .../src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy |  1 -
 .../src/test/groovy/ioc/specs/OneShotLockSpec.groovy         |  1 +
 .../src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy |  1 +
 .../src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy  |  1 -
 .../src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy     |  3 ++-
 .../specs/RegistryConstructionAndRuntimeErrorsSpec.groovy    |  1 -
 .../src/test/groovy/ioc/specs/RegistryStartupSpec.groovy     |  1 +
 .../groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy    |  2 +-
 .../test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy  |  8 ++++----
 .../src/test/groovy/ioc/specs/ServiceLookupSpec.groovy       |  1 -
 .../src/test/groovy/ioc/specs/ServiceProxySpec.groovy        |  1 -
 tapestry-ioc/src/test/groovy/ioc/specs/TestBaseSpec.groovy   |  5 +++--
 .../internal/jpa/JpaTransactionAdvisorImplTest.java          |  2 +-
 .../main/java/org/apache/tapestry5/test/ioc/MockTester.java  |  2 +-
 .../main/java/org/apache/tapestry5/test/ioc/TestBase.java    |  4 ++--
 .../main/java/org/apache/tapestry5/test/ioc/TestUtils.java   |  2 +-
 .../java/org/apache/tapestry5/test/ioc/package-info.java     |  2 +-
 45 files changed, 48 insertions(+), 50 deletions(-)

diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ClientDataEncoderImplTest.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ClientDataEncoderImplTest.groovy
index c2f3948..71cc545 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ClientDataEncoderImplTest.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ClientDataEncoderImplTest.groovy
@@ -1,8 +1,8 @@
 package org.apache.tapestry5.internal.services
 
 import org.apache.tapestry5.alerts.AlertManager
-import org.apache.tapestry5.ioc.test.TestBase
 import org.apache.tapestry5.services.ClientDataEncoder
+import org.apache.tapestry5.test.ioc.TestBase
 import org.easymock.EasyMock
 import org.slf4j.Logger
 import org.testng.annotations.Test
diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
index 05a535a..db3b0bc 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
@@ -3,8 +3,8 @@ package org.apache.tapestry5.internal.services
 import javax.servlet.http.HttpServletRequest
 
 import org.apache.tapestry5.internal.InternalConstants;
-import org.apache.tapestry5.ioc.test.TestBase
 import org.apache.tapestry5.services.ResponseCompressionAnalyzer
+import org.apache.tapestry5.test.ioc.TestBase
 import org.testng.annotations.Test
 
 class ResponseCompressionAnalyzerTest extends TestBase {
diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/AssetPathConstructorImplTest.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/AssetPathConstructorImplTest.groovy
index b6e4337..128a151 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/AssetPathConstructorImplTest.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/AssetPathConstructorImplTest.groovy
@@ -1,13 +1,13 @@
 package org.apache.tapestry5.internal.services.assets
 
 import org.apache.tapestry5.internal.services.IdentityAssetPathConverter
-import org.apache.tapestry5.ioc.test.TestBase
 import org.apache.tapestry5.services.BaseURLSource
 import org.apache.tapestry5.services.PathConstructor
 import org.apache.tapestry5.services.Request
 import org.apache.tapestry5.services.assets.AssetChecksumGenerator
 import org.apache.tapestry5.services.assets.CompressionStatus
 import org.apache.tapestry5.services.assets.StreamableResource
+import org.apache.tapestry5.test.ioc.TestBase
 import org.testng.annotations.Test
 
 class AssetPathConstructorImplTest extends TestBase {
diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/ModuleReaderSpec.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/ModuleReaderSpec.groovy
index e6d871f..d3b8c2d 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/ModuleReaderSpec.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/ModuleReaderSpec.groovy
@@ -1,7 +1,7 @@
 package org.apache.tapestry5.internal.services.assets
 
 import org.apache.tapestry5.internal.services.assets.JavaScriptStackAssemblerImpl.ModuleReader;
-import org.apache.tapestry5.ioc.test.TestBase
+import org.apache.tapestry5.test.ioc.TestBase
 import org.testng.annotations.Test
 
 class ModuleReaderTest extends TestBase {
diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/structure/ComponentPageElementResourcesImplTest.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/structure/ComponentPageElementResourcesImplTest.groovy
index 5acf1e6..0d5c1c4 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/structure/ComponentPageElementResourcesImplTest.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/structure/ComponentPageElementResourcesImplTest.groovy
@@ -1,8 +1,8 @@
 package org.apache.tapestry5.internal.structure
 
 import org.apache.tapestry5.internal.services.RequestGlobalsImpl
-import org.apache.tapestry5.ioc.test.TestBase
 import org.apache.tapestry5.services.Request
+import org.apache.tapestry5.test.ioc.TestBase
 import org.testng.annotations.Test
 
 class ComponentPageElementResourcesImplTest extends TestBase {
diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/services/javascript/ModuleDispatcherTests.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/services/javascript/ModuleDispatcherTests.groovy
index 1a6bc9f..26f5184 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/services/javascript/ModuleDispatcherTests.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/services/javascript/ModuleDispatcherTests.groovy
@@ -5,11 +5,11 @@ import javax.servlet.http.HttpServletResponse
 import org.apache.tapestry5.internal.services.javascript.JavaScriptStackPathConstructor
 import org.apache.tapestry5.internal.services.javascript.ModuleDispatcher
 import org.apache.tapestry5.ioc.internal.QuietOperationTracker
-import org.apache.tapestry5.ioc.test.TestBase
 import org.apache.tapestry5.services.LocalizationSetter
 import org.apache.tapestry5.services.PathConstructor
 import org.apache.tapestry5.services.Request
 import org.apache.tapestry5.services.Response
+import org.apache.tapestry5.test.ioc.TestBase
 import org.easymock.EasyMock
 import org.testng.annotations.DataProvider
 import org.testng.annotations.Test
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/SubmitTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/SubmitTest.java
index 5888c21..472c0ea 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/SubmitTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/SubmitTest.java
@@ -22,10 +22,10 @@ import org.apache.tapestry5.EventConstants;
 import org.apache.tapestry5.corelib.internal.FormSupportImpl;
 import org.apache.tapestry5.internal.services.HeartbeatImpl;
 import org.apache.tapestry5.internal.test.InternalBaseTestCase;
-import org.apache.tapestry5.ioc.test.TestBase;
 import org.apache.tapestry5.services.FormSupport;
 import org.apache.tapestry5.services.Heartbeat;
 import org.apache.tapestry5.services.Request;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.Test;
 
 public class SubmitTest extends InternalBaseTestCase
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/internal/ServletContextSymbolProviderTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/internal/ServletContextSymbolProviderTest.java
index ef5d94a..204d041 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/internal/ServletContextSymbolProviderTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/internal/ServletContextSymbolProviderTest.java
@@ -15,7 +15,7 @@
 package org.apache.tapestry5.internal;
 
 import org.apache.tapestry5.ioc.services.SymbolProvider;
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.Test;
 
 import javax.servlet.ServletContext;
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/LocalizationSetterImplTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/LocalizationSetterImplTest.java
index ec3481e..ed09a0e 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/LocalizationSetterImplTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/LocalizationSetterImplTest.java
@@ -23,10 +23,10 @@ import org.apache.tapestry5.OptionModel;
 import org.apache.tapestry5.SelectModel;
 import org.apache.tapestry5.internal.test.InternalBaseTestCase;
 import org.apache.tapestry5.ioc.services.ThreadLocale;
-import org.apache.tapestry5.ioc.test.TestBase;
 import org.apache.tapestry5.services.LocalizationSetter;
 import org.apache.tapestry5.services.PersistentLocale;
 import org.apache.tapestry5.services.Request;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.Test;
 
 public class LocalizationSetterImplTest extends InternalBaseTestCase
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/PersistentLocaleImplTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/PersistentLocaleImplTest.java
index 0b59749..3040716 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/PersistentLocaleImplTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/PersistentLocaleImplTest.java
@@ -15,8 +15,8 @@
 package org.apache.tapestry5.internal.services;
 
 import org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl;
-import org.apache.tapestry5.ioc.test.TestBase;
 import org.apache.tapestry5.services.PersistentLocale;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.Test;
 
 import java.util.Locale;
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/assets/ContextAssetRequestHandlerTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/assets/ContextAssetRequestHandlerTest.java
index 767ed12..1f3709f 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/assets/ContextAssetRequestHandlerTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/assets/ContextAssetRequestHandlerTest.java
@@ -14,7 +14,7 @@
 
 package org.apache.tapestry5.internal.services.assets;
 
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
 
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/root/ContentTypeTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/root/ContentTypeTest.java
index b469efc..371a0b6 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/root/ContentTypeTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/root/ContentTypeTest.java
@@ -13,7 +13,7 @@
 package org.apache.tapestry5.root;
 
 import org.apache.tapestry5.ContentType;
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
 
diff --git a/tapestry-core/src/test/java/org/apache/tapestry5/services/LibraryMappingTest.java b/tapestry-core/src/test/java/org/apache/tapestry5/services/LibraryMappingTest.java
index 3066d3d..c31d248 100644
--- a/tapestry-core/src/test/java/org/apache/tapestry5/services/LibraryMappingTest.java
+++ b/tapestry-core/src/test/java/org/apache/tapestry5/services/LibraryMappingTest.java
@@ -14,7 +14,7 @@
 
 package org.apache.tapestry5.services;
 
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.annotations.Test;
 
 public class LibraryMappingTest extends TestBase
diff --git a/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/DefaultHibernateConfigurerFilterTest.java b/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/DefaultHibernateConfigurerFilterTest.java
index 2c56dd6..729815f 100644
--- a/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/DefaultHibernateConfigurerFilterTest.java
+++ b/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/DefaultHibernateConfigurerFilterTest.java
@@ -15,7 +15,7 @@
 package org.apache.tapestry5.internal.hibernate;
 
 import org.apache.tapestry5.hibernate.internal.DefaultHibernateConfigurer;
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.hibernate.cfg.Configuration;
 import org.testng.annotations.Test;
 
diff --git a/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateSessionSourceImplTest.java b/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateSessionSourceImplTest.java
index 7ef5d64..ea80c95 100644
--- a/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateSessionSourceImplTest.java
+++ b/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateSessionSourceImplTest.java
@@ -25,7 +25,7 @@ import org.apache.tapestry5.ioc.internal.services.ClassNameLocatorImpl;
 import org.apache.tapestry5.ioc.internal.services.ClasspathScannerImpl;
 import org.apache.tapestry5.ioc.internal.services.ClasspathURLConverterImpl;
 import org.apache.tapestry5.ioc.test.IOCTestCase;
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.example.app0.entities.User;
 import org.hibernate.Session;
 import org.hibernate.cfg.Configuration;
diff --git a/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateTransactionDecoratorImplTest.java b/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateTransactionDecoratorImplTest.java
index e6d9b33..8ea1739 100644
--- a/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateTransactionDecoratorImplTest.java
+++ b/tapestry-hibernate-core/src/test/java/org/apache/tapestry5/internal/hibernate/HibernateTransactionDecoratorImplTest.java
@@ -23,7 +23,7 @@ import org.apache.tapestry5.ioc.IOCUtilities;
 import org.apache.tapestry5.ioc.Registry;
 import org.apache.tapestry5.ioc.services.AspectDecorator;
 import org.apache.tapestry5.ioc.test.IOCTestCase;
-import org.apache.tapestry5.ioc.test.TestBase;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.Assert;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
diff --git a/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/test/IOCTestCase.java b/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/test/IOCTestCase.java
index 5a2587f..f471d41 100644
--- a/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/test/IOCTestCase.java
+++ b/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/test/IOCTestCase.java
@@ -31,6 +31,7 @@ import org.apache.tapestry5.ioc.services.MasterObjectProvider;
 import org.apache.tapestry5.ioc.services.PerthreadManager;
 import org.apache.tapestry5.ioc.services.SymbolSource;
 import org.apache.tapestry5.ioc.services.ThreadLocale;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.slf4j.Logger;
 
 import java.io.File;
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy
index 7cd8eeb..de54449 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/AdvisorsSpec.groovy
@@ -7,7 +7,6 @@ import org.apache.tapestry5.ioc.test.GreeterModule2
 import org.apache.tapestry5.ioc.test.NonVoidAdvisorMethodModule
 import org.apache.tapestry5.ioc.test.internal.AdviseByMarkerModule
 import org.apache.tapestry5.ioc.test.internal.AdviseByMarkerModule2
-import org.apache.tapestry5.ioc.*
 
 class AdvisorsSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy
index ce1e010..6854356 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/AspectInterceptorBuilderImplSpec.groovy
@@ -5,6 +5,7 @@ import org.apache.tapestry5.ioc.services.AspectDecorator
 import org.apache.tapestry5.ioc.test.internal.services.TextTransformer
 import org.apache.tapestry5.plastic.MethodAdvice
 import org.apache.tapestry5.plastic.MethodInvocation
+
 import spock.lang.Shared
 
 interface Subject {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy
index c6a8481..6f6ae67 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/AutobuildSpec.groovy
@@ -12,7 +12,6 @@ import org.apache.tapestry5.ioc.test.StringHolderImpl
 import org.apache.tapestry5.ioc.test.StringTransformer
 import org.apache.tapestry5.ioc.test.UnbuildablePingable
 import org.apache.tapestry5.ioc.test.internal.ExceptionInConstructorModule
-import org.apache.tapestry5.ioc.*
 
 class AutobuildSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy
index a952e84..9a48842 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ConfigurationsSpec.groovy
@@ -28,7 +28,6 @@ import org.apache.tapestry5.ioc.test.StringTransformer
 import org.apache.tapestry5.ioc.test.internal.AlphabetModule
 import org.apache.tapestry5.ioc.test.internal.AlphabetModule2
 import org.apache.tapestry5.ioc.test.util.NonmatchingMappedConfigurationOverrideModule
-import org.apache.tapestry5.ioc.*
 
 /** Integration tests for various types of service configurations. */
 class ConfigurationsSpec extends AbstractRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy
index 6cb960c..fa08879 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ContributionDefImplSpec.groovy
@@ -1,18 +1,20 @@
 package ioc.specs
 
+import java.lang.reflect.Method
+
+import javax.inject.Named
+
+import org.apache.tapestry5.commons.*
+import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.annotations.InjectService
 import org.apache.tapestry5.ioc.internal.ContributionDefImpl
 import org.apache.tapestry5.ioc.internal.QuietOperationTracker
 import org.apache.tapestry5.ioc.test.internal.UpcaseService
 import org.slf4j.Logger
+
 import spock.lang.Shared
 import spock.lang.Specification
 
-import java.lang.reflect.Method
-import javax.inject.Named
-import org.apache.tapestry5.ioc.*
-import org.apache.tapestry5.commons.*
-
 class ModuleFixture {
 
   void contributeUnordered(Configuration configuration) {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy
index ae7d700..32a861b 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/DecoratorsSpec.groovy
@@ -13,7 +13,6 @@ import org.apache.tapestry5.ioc.test.SpecificDecoratorModuleAgain
 import org.apache.tapestry5.ioc.test.StringTransformer
 import org.apache.tapestry5.ioc.test.internal.DecorateByMarkerModule
 import org.apache.tapestry5.ioc.test.internal.DecorateByMarkerModule2
-import org.apache.tapestry5.ioc.*
 
 /** Integration tests for service decorators and some related behaviors. */
 class DecoratorsSpec extends AbstractRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy
index d3f5118..993b657 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/InheritanceSearchSpec.groovy
@@ -1,7 +1,6 @@
 package ioc.specs
 
 import org.apache.tapestry5.commons.internal.util.InheritanceSearch
-import org.apache.tapestry5.ioc.internal.util.*
 import org.apache.tapestry5.ioc.test.internal.util.Drivable
 import org.apache.tapestry5.ioc.test.internal.util.DrivableImpl
 import org.apache.tapestry5.ioc.test.internal.util.Playable
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy
index e929b73..2b0508e 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/InjectionSpec.groovy
@@ -1,6 +1,5 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.test.CyclicMOPModule
 import org.apache.tapestry5.ioc.test.FieldResourceInjectionModule
 import org.apache.tapestry5.ioc.test.FieldResourceService
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy
index 9bdebbb..d3de85f 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/LazyAdvisorImplSpec.groovy
@@ -1,12 +1,12 @@
 package ioc.specs
 
+import java.sql.SQLException
+
 import org.apache.tapestry5.ioc.annotations.NotLazy
 import org.apache.tapestry5.ioc.services.AspectDecorator
 import org.apache.tapestry5.ioc.services.LazyAdvisor
 import org.apache.tapestry5.ioc.test.Greeter
 
-import java.sql.SQLException
-
 public interface LazyService {
 
   void notLazyBecauseVoid();
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy
index 95e8178..480cea3 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/LoggingDecoratorImplSpec.groovy
@@ -1,8 +1,8 @@
 package ioc.specs
 
 import org.apache.tapestry5.ioc.services.LoggingDecorator
-import org.apache.tapestry5.ioc.test.internal.ToStringService
 import org.apache.tapestry5.ioc.test.internal.UpcaseService
+import org.apache.tapestry5.ioc.test.internal.services.ToStringService
 import org.slf4j.Logger
 import org.xml.sax.SAXParseException
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy
index c586c6f..5775e61 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ModuleImplSpec.groovy
@@ -8,7 +8,7 @@ import org.apache.tapestry5.ioc.test.BlueMarker
 import org.apache.tapestry5.ioc.test.RedMarker
 import org.apache.tapestry5.ioc.test.internal.FieService
 import org.apache.tapestry5.ioc.test.internal.ModuleImplTestModule
-import org.apache.tapestry5.ioc.test.internal.ToStringService
+import org.apache.tapestry5.ioc.test.internal.services.ToStringService
 import org.slf4j.Logger
 
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy
index be8a05f..36b64e2 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/NonParallelExecutorSpec.groovy
@@ -4,7 +4,6 @@ import org.apache.tapestry5.ioc.Invokable
 import org.apache.tapestry5.ioc.Registry
 import org.apache.tapestry5.ioc.RegistryBuilder
 import org.apache.tapestry5.ioc.services.ParallelExecutor
-import org.apache.tapestry5.ioc.test.internal.services.NonParallelModule
 
 import spock.lang.AutoCleanup
 import spock.lang.Shared
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy
index eec1dd6..7382447 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/OneShotLockSpec.groovy
@@ -1,5 +1,6 @@
 package ioc.specs
 
+
 import org.apache.tapestry5.ioc.test.internal.util.OneShotLockSubject
 
 import spock.lang.Specification
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy
index 73af03f..f543c28 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/PipelineBuilderImplSpec.groovy
@@ -4,6 +4,7 @@ import org.apache.tapestry5.ioc.services.PipelineBuilder
 import org.apache.tapestry5.ioc.test.internal.services.StandardFilter
 import org.apache.tapestry5.ioc.test.internal.services.StandardService
 import org.slf4j.Logger
+
 import spock.lang.Shared
 
 class PipelineBuilderImplSpec extends AbstractSharedRegistrySpecification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
index 0d2abc9..3344787 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/PropertyAccessImplSpec.groovy
@@ -10,7 +10,6 @@ import org.apache.tapestry5.beanmodel.internal.services.PropertyAccessImpl
 import org.apache.tapestry5.commons.services.ClassPropertyAdapter
 import org.apache.tapestry5.commons.services.PropertyAccess
 import org.apache.tapestry5.ioc.annotations.Scope
-import org.apache.tapestry5.ioc.internal.services.*
 import org.apache.tapestry5.ioc.test.internal.services.AnnotatedBean
 import org.apache.tapestry5.ioc.test.internal.services.AnnotatedBeanSubclass
 import org.apache.tapestry5.ioc.test.internal.services.Bean
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy
index 392b9e5..438e161 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryBuilderSpec.groovy
@@ -1,5 +1,6 @@
 package ioc.specs
 
+import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.def.ModuleDef
 import org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl
 import org.apache.tapestry5.ioc.test.BarneyModule
@@ -12,8 +13,8 @@ import org.apache.tapestry5.ioc.test.ServiceBuilderModule
 import org.apache.tapestry5.ioc.test.Square
 import org.slf4j.Logger
 import org.slf4j.LoggerFactory
+
 import spock.lang.Specification
-import org.apache.tapestry5.ioc.*
 
 class RegistryBuilderSpec extends Specification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy
index 91ef24b..e84e353 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryConstructionAndRuntimeErrorsSpec.groovy
@@ -9,7 +9,6 @@ import org.apache.tapestry5.ioc.test.UnknownScopeModule
 import org.apache.tapestry5.ioc.test.internal.ExtraPublicConstructorsModule
 import org.apache.tapestry5.ioc.test.internal.PrivateConstructorModule
 import org.apache.tapestry5.ioc.test.internal.UpcaseService
-import org.apache.tapestry5.ioc.*
 
 /**
  * A few tests that are easiest (or even just possible) by building a Registry and trying out a few
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy
index 3b96552..577e69d 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/RegistryStartupSpec.groovy
@@ -4,6 +4,7 @@ import org.apache.tapestry5.ioc.RegistryBuilder
 import org.apache.tapestry5.ioc.internal.services.RegistryStartup
 import org.apache.tapestry5.ioc.test.internal.services.StartupModule
 import org.slf4j.Logger
+
 import spock.lang.Specification
 
 class RegistryStartupSpec extends Specification {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy
index a9dde7e..f25ff8d 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceActivityScoreboardSpec.groovy
@@ -1,5 +1,6 @@
 package ioc.specs
 
+import org.apache.tapestry5.commons.services.TypeCoercer
 import org.apache.tapestry5.ioc.services.ServiceActivityScoreboard
 import org.apache.tapestry5.ioc.services.Status
 import org.apache.tapestry5.ioc.test.BlueMarker
@@ -8,7 +9,6 @@ import org.apache.tapestry5.ioc.test.GreeterModule
 import org.apache.tapestry5.ioc.test.PerThreadModule
 import org.apache.tapestry5.ioc.test.RedMarker
 import org.apache.tapestry5.ioc.test.StringHolder
-import org.apache.tapestry5.ioc.*
 
 class ServiceActivityScoreboardSpec extends AbstractRegistrySpecification {
 
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy
index a2eb792..162814e 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceCreatorGenericsSpec.groovy
@@ -1,15 +1,15 @@
 package ioc.specs
 
+import static org.apache.tapestry5.ioc.internal.AbstractServiceCreator.findParameterizedTypeFromGenericType
+
+import java.lang.reflect.Method
+
 import org.apache.tapestry5.ioc.internal.AbstractServiceCreator
 import org.apache.tapestry5.ioc.internal.IOCMessages
 import org.apache.tapestry5.ioc.test.internal.ServiceBuilderMethodFixture
 
 import spock.lang.Specification
 
-import java.lang.reflect.Method
-
-import static org.apache.tapestry5.ioc.internal.AbstractServiceCreator.findParameterizedTypeFromGenericType
-
 class ServiceCreatorGenericsSpec extends Specification {
 
   Method findMethod(name) {
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy
index 7a91158..6810705 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceLookupSpec.groovy
@@ -4,7 +4,6 @@ import java.sql.PreparedStatement
 
 import org.apache.tapestry5.commons.AnnotationProvider
 import org.apache.tapestry5.commons.services.TypeCoercer
-import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.services.Builtin
 import org.apache.tapestry5.ioc.test.BlueMarker
 import org.apache.tapestry5.ioc.test.DuplicateServiceTypeModule
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy
index 9a56e87..224e709 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/ServiceProxySpec.groovy
@@ -1,6 +1,5 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.*
 import org.apache.tapestry5.ioc.test.BarneyModule
 import org.apache.tapestry5.ioc.test.ConcreteServiceBuilderModule
 import org.apache.tapestry5.ioc.test.CountingGreeterImpl
diff --git a/tapestry-ioc/src/test/groovy/ioc/specs/TestBaseSpec.groovy b/tapestry-ioc/src/test/groovy/ioc/specs/TestBaseSpec.groovy
index 9eaadf6..9a381e9 100644
--- a/tapestry-ioc/src/test/groovy/ioc/specs/TestBaseSpec.groovy
+++ b/tapestry-ioc/src/test/groovy/ioc/specs/TestBaseSpec.groovy
@@ -1,8 +1,9 @@
 package ioc.specs
 
-import org.apache.tapestry5.ioc.test.Bean
 import org.apache.tapestry5.ioc.test.BeanSubclass
-import org.apache.tapestry5.ioc.test.TestBase
+import org.apache.tapestry5.ioc.test.internal.services.Bean
+import org.apache.tapestry5.test.ioc.TestBase
+
 import spock.lang.Specification
 
 class TestBaseSpec extends Specification {
diff --git a/tapestry-jpa/src/test/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImplTest.java b/tapestry-jpa/src/test/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImplTest.java
index ae2118e..5789ad6 100644
--- a/tapestry-jpa/src/test/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImplTest.java
+++ b/tapestry-jpa/src/test/java/org/apache/tapestry5/internal/jpa/JpaTransactionAdvisorImplTest.java
@@ -27,11 +27,11 @@ import org.apache.tapestry5.ioc.Registry;
 import org.apache.tapestry5.ioc.services.AspectDecorator;
 import org.apache.tapestry5.ioc.services.AspectInterceptorBuilder;
 import org.apache.tapestry5.ioc.test.IOCTestCase;
-import org.apache.tapestry5.ioc.test.TestBase;
 import org.apache.tapestry5.jpa.EntityManagerManager;
 import org.apache.tapestry5.jpa.EntityTransactionManager;
 import org.apache.tapestry5.jpa.JpaTransactionAdvisor;
 import org.apache.tapestry5.jpa.annotations.CommitAfter;
+import org.apache.tapestry5.test.ioc.TestBase;
 import org.testng.Assert;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/MockTester.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/MockTester.java
index eca1c1f..50f7a2b 100644
--- a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/MockTester.java
+++ b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/MockTester.java
@@ -10,7 +10,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.test;
+package org.apache.tapestry5.test.ioc;
 
 import org.easymock.EasyMock;
 import org.easymock.IMocksControl;
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestBase.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestBase.java
index e8f5788..c9fcc7d 100644
--- a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestBase.java
+++ b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestBase.java
@@ -10,7 +10,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.test;
+package org.apache.tapestry5.test.ioc;
 
 import org.easymock.*;
 import org.testng.annotations.AfterMethod;
@@ -35,7 +35,7 @@ import org.testng.annotations.AfterMethod;
  * to ensure backwards compatibility.
  * 
  * @see org.easymock.EasyMock#createControl()
- * @see org.apache.tapestry5.ioc.test.MockTester
+ * @see org.apache.tapestry5.test.ioc.MockTester
  * @deprecated In 5.4, with no replacement
  */
 public class TestBase extends TestUtils
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestUtils.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestUtils.java
index 0cfdcc2..48bfe56 100644
--- a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestUtils.java
+++ b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/TestUtils.java
@@ -10,7 +10,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package org.apache.tapestry5.ioc.test;
+package org.apache.tapestry5.test.ioc;
 
 import org.testng.Assert;
 
diff --git a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/package-info.java b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/package-info.java
index 03eff30..31ff3a6 100644
--- a/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/package-info.java
+++ b/tapestry-test/src/main/java/org/apache/tapestry5/test/ioc/package-info.java
@@ -13,4 +13,4 @@
 // limitations under the License.
 
 /** Classes supporting testing of Tapestry IOC services */
-package org.apache.tapestry5.ioc.test;
+package org.apache.tapestry5.test.ioc;