From 04744d1c386087e21f50ef6b55c58949d8cb74cc Mon Sep 17 00:00:00 2001 From: Peter Donald Date: Sun, 17 Mar 2002 08:07:10 +0000 Subject: [PATCH] * Migrated all tests into packages other than the one they are testing. The reason for this is that all the tests are BlackBox, using public APIs and there is no reason to have the testcases in the same package as the actual code. Thus all test code is in a sub-package from the code it actually tests. ie Test code for package foo is located in package foo.test * Migrated all the test data into the same hierarchy so that there is only one place where you have to look for test data. This required that resource retrieval be hackled a little because no longer in same package as tested code/ git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271870 13f79535-47bb-0310-9956-ffa450edef68 --- .../{IfTest.java => test/IfTestCase.java} | 10 ++- .../PropertyTestCase.java} | 17 +++-- .../antlib/core/test}/PropertyTestType.java | 2 +- .../test/org/apache/antlib/core/test/if.ant | 63 +++++++++++++++++ .../org/apache/antlib/core/test/property.ant | 65 ++++++++++++++++++ .../vfile/test/CopyFilesTaskTestCase.java} | 6 +- .../org/apache/antlib/vfile/test/copy.ant | 8 +++ .../antlib/vfile/test/src/emptyFile.txt | 0 .../apache/antlib/vfile/test/src/file1.txt | 1 + .../vfile/test/src/subdir1/someFile.html | 5 ++ .../apache/aut/bzip2/test/BzipTestCase.java} | 8 ++- .../apache/aut/bzip2/test/asf-logo-huge.tar | Bin 0 -> 3215360 bytes .../aut/bzip2/test/asf-logo-huge.tar.bz2 | Bin 0 -> 58089 bytes .../AbstractFileSystemTestCase.java} | 12 +++- .../AbstractReadOnlyFileSystemTestCase.java} | 8 ++- .../AbstractWritableFileSystemTestCase.java} | 12 ++-- .../FtpFileSystemTestCase.java} | 10 +-- .../LocalFileSystemTestCase.java} | 8 ++- .../test/NestedZipFileSystemTestCase.java} | 10 +-- .../aut/vfs/test/SmbFileSystemTestCase.java} | 8 ++- .../ZipFileSystemTestCase.java} | 8 ++- .../AsiExtraFieldTestCase.java} | 8 ++- .../ExtraFieldUtilsTestCase.java} | 12 +++- .../ZipEntryTestCase.java} | 11 ++- .../apache/aut/zip/test/ZipLongTestCase.java} | 7 +- .../ZipShortTestCase.java} | 7 +- .../apache/myrmidon/AbstractMyrmidonTest.java | 34 ++++++++- .../DefaultProjectBuilderTestCase.java} | 13 ++-- .../builder/test/bad-project-name.ant | 4 ++ .../builder/test/bad-target-name.ant | 5 ++ .../components/builder/test/bad-version.ant | 3 + .../components/builder/test/bad-xml.ant | 1 + .../components/builder/test/defaults.ant | 3 + .../builder/test/mismatched-version.ant | 3 + .../components/builder/test/no-version.ant | 3 + .../components/builder/test/set-base-dir.ant | 3 + .../builder/test/set-default-target.ant | 3 + .../builder/test/set-project-name.ant | 3 + .../{ => test}/ConfigTestConfigurable.java | 4 +- .../DefaultConfigurerTestCase.java} | 55 ++++++++------- .../configurer/{ => test}/MyRole1.java | 2 +- .../configurer/{ => test}/MyRole1Adaptor.java | 3 +- .../components/configurer/test}/MyRole2.java | 2 +- .../configurer/{ => test}/MyType1.java | 4 +- .../configurer/{ => test}/MyType2.java | 4 +- .../{ => test}/ObjectToMyRole1Converter.java | 4 +- .../data/ConfigTestAttributeConvert.java | 2 +- .../data/ConfigTestConfigAdder.java | 2 +- .../{ => test}/data/ConfigTestContent.java | 6 +- .../test}/data/ConfigTestEmpty.java | 2 +- .../test}/data/ConfigTestIdResolve.java | 6 +- .../data/ConfigTestIgnoreStringMethods.java | 6 +- .../test}/data/ConfigTestInterfaceAdder.java | 4 +- .../data/ConfigTestMismatchedRefType.java | 4 +- .../data/ConfigTestMultipleTypedAdder.java | 6 +- .../test}/data/ConfigTestNestedErrors.java | 2 +- .../data/ConfigTestNonInterfaceAdder.java | 2 +- .../test}/data/ConfigTestPropResolution.java | 6 +- .../data/ConfigTestReferenceAttribute.java | 6 +- .../data/ConfigTestReferenceConversion.java | 4 +- .../data/ConfigTestReferenceElement.java | 6 +- .../data/ConfigTestSetAttribute.java | 6 +- .../{ => test}/data/ConfigTestSetElement.java | 8 +-- .../test}/data/ConfigTestTypedAdder.java | 4 +- .../data/ConfigTestTypedAdderConversion.java | 4 +- .../data/ConfigTestTypedAdderReference.java | 4 +- .../data/ConfigTestTypedAdderRole.java | 4 +- .../data/ConfigTestTypedConfigAdder.java | 2 +- .../data/ConfigTestUnknownReference.java | 4 +- .../test/DefaultDeployerTestCase.java} | 6 +- .../deployer/{ => test}/TestConverter1.java | 2 +- .../deployer/{ => test}/TestRole1.java | 2 +- .../components/deployer/test}/TestType1.java | 3 +- .../deployer/test/ant-descriptor.xml | 18 +++++ .../components/deployer/test/ant-roles.xml | 4 ++ .../embeddor/test}/DefaultEmbeddorTest.java | 2 +- .../embeddor/test/project-builder.ant | 6 ++ .../AbstractPropertyResolverTestCase.java} | 10 ++- .../ClassicPropertyResolverTestCase.java} | 12 ++-- .../DefaultPropertyResolverTestCase.java} | 12 ++-- .../DefaultRoleManagerTestCase.java} | 12 ++-- .../InstantiatingServiceManagerTestCase.java} | 10 +-- .../{ => test}/LifecycleValidator.java | 2 +- .../components/service/test}/TestService.java | 2 +- .../{ => test}/TestServiceFactory1.java | 2 +- .../{ => test}/TestServiceFactory2.java | 3 +- .../service/test}/TestServiceImpl1.java | 4 +- .../service/{ => test}/TestServiceImpl2.java | 5 +- .../test/DefaultNameValidatorTestCase.java} | 9 +-- .../interfaces/type/{ => test}/MyType1.java | 2 +- .../interfaces/type/test}/MyType2.java | 2 +- .../type/test/TypeFactoryTestCase.java} | 10 +-- .../{IfTest.java => test/IfTestCase.java} | 10 ++- .../PropertyTestCase.java} | 17 +++-- .../antlib/core/test}/PropertyTestType.java | 2 +- .../org/apache/antlib/core/test/if.ant | 63 +++++++++++++++++ .../org/apache/antlib/core/test/property.ant | 65 ++++++++++++++++++ .../vfile/test/CopyFilesTaskTestCase.java} | 6 +- .../org/apache/antlib/vfile/test/copy.ant | 8 +++ .../antlib/vfile/test/src/emptyFile.txt | 0 .../apache/antlib/vfile/test/src/file1.txt | 1 + .../vfile/test/src/subdir1/someFile.html | 5 ++ .../apache/aut/bzip2/test/BzipTestCase.java} | 8 ++- .../apache/aut/bzip2/test/asf-logo-huge.tar | Bin 0 -> 3215360 bytes .../aut/bzip2/test/asf-logo-huge.tar.bz2 | Bin 0 -> 58089 bytes .../AbstractFileSystemTestCase.java} | 12 +++- .../AbstractReadOnlyFileSystemTestCase.java} | 8 ++- .../AbstractWritableFileSystemTestCase.java} | 12 ++-- .../FtpFileSystemTestCase.java} | 10 +-- .../LocalFileSystemTestCase.java} | 8 ++- .../test/NestedZipFileSystemTestCase.java} | 10 +-- .../aut/vfs/test/SmbFileSystemTestCase.java} | 8 ++- .../ZipFileSystemTestCase.java} | 8 ++- .../AsiExtraFieldTestCase.java} | 8 ++- .../ExtraFieldUtilsTestCase.java} | 12 +++- .../ZipEntryTestCase.java} | 11 ++- .../apache/aut/zip/test/ZipLongTestCase.java} | 7 +- .../ZipShortTestCase.java} | 7 +- .../apache/myrmidon/AbstractMyrmidonTest.java | 34 ++++++++- .../DefaultProjectBuilderTestCase.java} | 13 ++-- .../builder/test/bad-project-name.ant | 4 ++ .../builder/test/bad-target-name.ant | 5 ++ .../components/builder/test/bad-version.ant | 3 + .../components/builder/test/bad-xml.ant | 1 + .../components/builder/test/defaults.ant | 3 + .../builder/test/mismatched-version.ant | 3 + .../components/builder/test/no-version.ant | 3 + .../components/builder/test/set-base-dir.ant | 3 + .../builder/test/set-default-target.ant | 3 + .../builder/test/set-project-name.ant | 3 + .../{ => test}/ConfigTestConfigurable.java | 4 +- .../DefaultConfigurerTestCase.java} | 55 ++++++++------- .../configurer/{ => test}/MyRole1.java | 2 +- .../configurer/{ => test}/MyRole1Adaptor.java | 3 +- .../components/configurer/test}/MyRole2.java | 2 +- .../configurer/{ => test}/MyType1.java | 4 +- .../configurer/{ => test}/MyType2.java | 4 +- .../{ => test}/ObjectToMyRole1Converter.java | 4 +- .../data/ConfigTestAttributeConvert.java | 2 +- .../data/ConfigTestConfigAdder.java | 2 +- .../{ => test}/data/ConfigTestContent.java | 6 +- .../test}/data/ConfigTestEmpty.java | 2 +- .../test}/data/ConfigTestIdResolve.java | 6 +- .../data/ConfigTestIgnoreStringMethods.java | 6 +- .../test}/data/ConfigTestInterfaceAdder.java | 4 +- .../data/ConfigTestMismatchedRefType.java | 4 +- .../data/ConfigTestMultipleTypedAdder.java | 6 +- .../test}/data/ConfigTestNestedErrors.java | 2 +- .../data/ConfigTestNonInterfaceAdder.java | 2 +- .../test}/data/ConfigTestPropResolution.java | 6 +- .../data/ConfigTestReferenceAttribute.java | 6 +- .../data/ConfigTestReferenceConversion.java | 4 +- .../data/ConfigTestReferenceElement.java | 6 +- .../data/ConfigTestSetAttribute.java | 6 +- .../{ => test}/data/ConfigTestSetElement.java | 8 +-- .../test}/data/ConfigTestTypedAdder.java | 4 +- .../data/ConfigTestTypedAdderConversion.java | 4 +- .../data/ConfigTestTypedAdderReference.java | 4 +- .../data/ConfigTestTypedAdderRole.java | 4 +- .../data/ConfigTestTypedConfigAdder.java | 2 +- .../data/ConfigTestUnknownReference.java | 4 +- .../test/DefaultDeployerTestCase.java} | 6 +- .../deployer/{ => test}/TestConverter1.java | 2 +- .../deployer/{ => test}/TestRole1.java | 2 +- .../components/deployer/test}/TestType1.java | 3 +- .../deployer/test/ant-descriptor.xml | 18 +++++ .../components/deployer/test/ant-roles.xml | 4 ++ .../embeddor/test}/DefaultEmbeddorTest.java | 2 +- .../embeddor/test/project-builder.ant | 6 ++ .../AbstractPropertyResolverTestCase.java} | 10 ++- .../ClassicPropertyResolverTestCase.java} | 12 ++-- .../DefaultPropertyResolverTestCase.java} | 12 ++-- .../DefaultRoleManagerTestCase.java} | 12 ++-- .../InstantiatingServiceManagerTestCase.java} | 10 +-- .../{ => test}/LifecycleValidator.java | 2 +- .../components/service/test}/TestService.java | 2 +- .../{ => test}/TestServiceFactory1.java | 2 +- .../{ => test}/TestServiceFactory2.java | 3 +- .../service/test}/TestServiceImpl1.java | 4 +- .../service/{ => test}/TestServiceImpl2.java | 5 +- .../test/DefaultNameValidatorTestCase.java} | 9 +-- .../interfaces/type/{ => test}/MyType1.java | 2 +- .../interfaces/type/test}/MyType2.java | 2 +- .../type/test/TypeFactoryTestCase.java} | 10 +-- 184 files changed, 990 insertions(+), 414 deletions(-) rename proposal/myrmidon/src/test/org/apache/antlib/core/{IfTest.java => test/IfTestCase.java} (92%) rename proposal/myrmidon/src/test/org/apache/antlib/core/{PropertyTest.java => test/PropertyTestCase.java} (91%) rename proposal/myrmidon/src/{testcases/org/apache/antlib/core => test/org/apache/antlib/core/test}/PropertyTestType.java (95%) create mode 100644 proposal/myrmidon/src/test/org/apache/antlib/core/test/if.ant create mode 100644 proposal/myrmidon/src/test/org/apache/antlib/core/test/property.ant rename proposal/myrmidon/src/{testcases/org/apache/antlib/vfile/CopyFilesTaskTest.java => test/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java} (86%) create mode 100644 proposal/myrmidon/src/test/org/apache/antlib/vfile/test/copy.ant create mode 100644 proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/emptyFile.txt create mode 100644 proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/file1.txt create mode 100644 proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/subdir1/someFile.html rename proposal/myrmidon/src/{testcases/org/apache/aut/bzip2/BzipTest.java => test/org/apache/aut/bzip2/test/BzipTestCase.java} (95%) create mode 100644 proposal/myrmidon/src/test/org/apache/aut/bzip2/test/asf-logo-huge.tar create mode 100644 proposal/myrmidon/src/test/org/apache/aut/bzip2/test/asf-logo-huge.tar.bz2 rename proposal/myrmidon/src/test/org/apache/aut/vfs/{AbstractFileSystemTest.java => test/AbstractFileSystemTestCase.java} (98%) rename proposal/myrmidon/src/test/org/apache/aut/vfs/{AbstractReadOnlyFileSystemTest.java => test/AbstractReadOnlyFileSystemTestCase.java} (65%) rename proposal/myrmidon/src/test/org/apache/aut/vfs/{AbstractWritableFileSystemTest.java => test/AbstractWritableFileSystemTestCase.java} (95%) rename proposal/myrmidon/src/test/org/apache/aut/vfs/{FtpFileSystemTest.java => test/FtpFileSystemTestCase.java} (79%) rename proposal/myrmidon/src/test/org/apache/aut/vfs/{LocalFileSystemTest.java => test/LocalFileSystemTestCase.java} (84%) rename proposal/myrmidon/src/{testcases/org/apache/aut/vfs/NestedZipFileSystemTest.java => test/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java} (80%) rename proposal/myrmidon/src/{testcases/org/apache/aut/vfs/SmbFileSystemTest.java => test/org/apache/aut/vfs/test/SmbFileSystemTestCase.java} (80%) rename proposal/myrmidon/src/test/org/apache/aut/vfs/{ZipFileSystemTest.java => test/ZipFileSystemTestCase.java} (76%) rename proposal/myrmidon/src/test/org/apache/aut/zip/{AsiExtraFieldTest.java => test/AsiExtraFieldTestCase.java} (96%) rename proposal/myrmidon/src/test/org/apache/aut/zip/{ExtraFieldUtilsTest.java => test/ExtraFieldUtilsTestCase.java} (91%) rename proposal/myrmidon/src/test/org/apache/aut/zip/{ZipEntryTest.java => test/ZipEntryTestCase.java} (90%) rename proposal/myrmidon/src/{testcases/org/apache/aut/zip/ZipLongTest.java => test/org/apache/aut/zip/test/ZipLongTestCase.java} (94%) rename proposal/myrmidon/src/test/org/apache/aut/zip/{ZipShortTest.java => test/ZipShortTestCase.java} (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/{DefaultProjectBuilderTest.java => test/DefaultProjectBuilderTestCase.java} (95%) create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-project-name.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-target-name.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-version.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-xml.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/defaults.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/mismatched-version.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/no-version.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-base-dir.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-default-target.ant create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-project-name.ant rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/ConfigTestConfigurable.java (87%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{DefaultConfigurerTest.java => test/DefaultConfigurerTestCase.java} (92%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/MyRole1.java (90%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/MyRole1Adaptor.java (87%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/MyRole2.java (88%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/MyType1.java (82%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/MyType2.java (82%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/ObjectToMyRole1Converter.java (81%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestAttributeConvert.java (94%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestConfigAdder.java (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestContent.java (79%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestEmpty.java (89%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestIdResolve.java (79%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestIgnoreStringMethods.java (86%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestInterfaceAdder.java (86%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestMismatchedRefType.java (80%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestMultipleTypedAdder.java (75%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestNestedErrors.java (87%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestNonInterfaceAdder.java (91%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestPropResolution.java (79%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestReferenceAttribute.java (79%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestReferenceConversion.java (85%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestReferenceElement.java (76%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestSetAttribute.java (83%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestSetElement.java (79%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestTypedAdder.java (87%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/configurer => test/org/apache/myrmidon/components/configurer/test}/data/ConfigTestTypedAdderConversion.java (88%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestTypedAdderReference.java (86%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestTypedAdderRole.java (86%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestTypedConfigAdder.java (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestUnknownReference.java (80%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java => test/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java} (97%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/{ => test}/TestConverter1.java (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/{ => test}/TestRole1.java (89%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/deployer => test/org/apache/myrmidon/components/deployer/test}/TestType1.java (80%) create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-roles.xml rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/embeddor => test/org/apache/myrmidon/components/embeddor/test}/DefaultEmbeddorTest.java (98%) create mode 100644 proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/project-builder.ant rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java => test/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java} (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/property/{ClassicPropertyResolverTest.java => test/ClassicPropertyResolverTestCase.java} (66%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/property/{DefaultPropertyResolverTest.java => test/DefaultPropertyResolverTestCase.java} (70%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/role/{DefaultRoleManagerTest.java => test/DefaultRoleManagerTestCase.java} (94%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/service/{InstantiatingServiceManagerTest.java => test/InstantiatingServiceManagerTestCase.java} (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/service/{ => test}/LifecycleValidator.java (97%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/service => test/org/apache/myrmidon/components/service/test}/TestService.java (89%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/service/{ => test}/TestServiceFactory1.java (93%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/service/{ => test}/TestServiceFactory2.java (88%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/components/service => test/org/apache/myrmidon/components/service/test}/TestServiceImpl1.java (80%) rename proposal/myrmidon/src/test/org/apache/myrmidon/components/service/{ => test}/TestServiceImpl2.java (75%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java => test/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java} (90%) rename proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/{ => test}/MyType1.java (91%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/interfaces/type => test/org/apache/myrmidon/interfaces/type/test}/MyType2.java (91%) rename proposal/myrmidon/src/{testcases/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java => test/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java} (89%) rename proposal/myrmidon/src/testcases/org/apache/antlib/core/{IfTest.java => test/IfTestCase.java} (92%) rename proposal/myrmidon/src/testcases/org/apache/antlib/core/{PropertyTest.java => test/PropertyTestCase.java} (91%) rename proposal/myrmidon/src/{test/org/apache/antlib/core => testcases/org/apache/antlib/core/test}/PropertyTestType.java (95%) create mode 100644 proposal/myrmidon/src/testcases/org/apache/antlib/core/test/if.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/antlib/core/test/property.ant rename proposal/myrmidon/src/{test/org/apache/antlib/vfile/CopyFilesTaskTest.java => testcases/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java} (86%) create mode 100644 proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/copy.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/emptyFile.txt create mode 100644 proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/file1.txt create mode 100644 proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/subdir1/someFile.html rename proposal/myrmidon/src/{test/org/apache/aut/bzip2/BzipTest.java => testcases/org/apache/aut/bzip2/test/BzipTestCase.java} (95%) create mode 100644 proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/asf-logo-huge.tar create mode 100644 proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/asf-logo-huge.tar.bz2 rename proposal/myrmidon/src/testcases/org/apache/aut/vfs/{AbstractFileSystemTest.java => test/AbstractFileSystemTestCase.java} (98%) rename proposal/myrmidon/src/testcases/org/apache/aut/vfs/{AbstractReadOnlyFileSystemTest.java => test/AbstractReadOnlyFileSystemTestCase.java} (65%) rename proposal/myrmidon/src/testcases/org/apache/aut/vfs/{AbstractWritableFileSystemTest.java => test/AbstractWritableFileSystemTestCase.java} (95%) rename proposal/myrmidon/src/testcases/org/apache/aut/vfs/{FtpFileSystemTest.java => test/FtpFileSystemTestCase.java} (79%) rename proposal/myrmidon/src/testcases/org/apache/aut/vfs/{LocalFileSystemTest.java => test/LocalFileSystemTestCase.java} (84%) rename proposal/myrmidon/src/{test/org/apache/aut/vfs/NestedZipFileSystemTest.java => testcases/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java} (80%) rename proposal/myrmidon/src/{test/org/apache/aut/vfs/SmbFileSystemTest.java => testcases/org/apache/aut/vfs/test/SmbFileSystemTestCase.java} (80%) rename proposal/myrmidon/src/testcases/org/apache/aut/vfs/{ZipFileSystemTest.java => test/ZipFileSystemTestCase.java} (76%) rename proposal/myrmidon/src/testcases/org/apache/aut/zip/{AsiExtraFieldTest.java => test/AsiExtraFieldTestCase.java} (96%) rename proposal/myrmidon/src/testcases/org/apache/aut/zip/{ExtraFieldUtilsTest.java => test/ExtraFieldUtilsTestCase.java} (91%) rename proposal/myrmidon/src/testcases/org/apache/aut/zip/{ZipEntryTest.java => test/ZipEntryTestCase.java} (90%) rename proposal/myrmidon/src/{test/org/apache/aut/zip/ZipLongTest.java => testcases/org/apache/aut/zip/test/ZipLongTestCase.java} (94%) rename proposal/myrmidon/src/testcases/org/apache/aut/zip/{ZipShortTest.java => test/ZipShortTestCase.java} (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/{DefaultProjectBuilderTest.java => test/DefaultProjectBuilderTestCase.java} (95%) create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-project-name.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-target-name.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-version.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-xml.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/defaults.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/mismatched-version.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/no-version.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-base-dir.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-default-target.ant create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-project-name.ant rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/ConfigTestConfigurable.java (87%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{DefaultConfigurerTest.java => test/DefaultConfigurerTestCase.java} (92%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/MyRole1.java (90%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/MyRole1Adaptor.java (87%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/MyRole2.java (88%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/MyType1.java (82%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/MyType2.java (82%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/ObjectToMyRole1Converter.java (81%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestAttributeConvert.java (94%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestConfigAdder.java (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestContent.java (79%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestEmpty.java (89%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestIdResolve.java (79%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestIgnoreStringMethods.java (86%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestInterfaceAdder.java (86%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestMismatchedRefType.java (80%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestMultipleTypedAdder.java (75%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestNestedErrors.java (87%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestNonInterfaceAdder.java (91%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestPropResolution.java (79%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestReferenceAttribute.java (79%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestReferenceConversion.java (85%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestReferenceElement.java (76%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestSetAttribute.java (83%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestSetElement.java (79%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestTypedAdder.java (87%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/configurer => testcases/org/apache/myrmidon/components/configurer/test}/data/ConfigTestTypedAdderConversion.java (88%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestTypedAdderReference.java (86%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestTypedAdderRole.java (86%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestTypedConfigAdder.java (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/{ => test}/data/ConfigTestUnknownReference.java (80%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java => testcases/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java} (97%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/{ => test}/TestConverter1.java (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/{ => test}/TestRole1.java (89%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/deployer => testcases/org/apache/myrmidon/components/deployer/test}/TestType1.java (80%) create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-roles.xml rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/embeddor => testcases/org/apache/myrmidon/components/embeddor/test}/DefaultEmbeddorTest.java (98%) create mode 100644 proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/project-builder.ant rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java => testcases/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java} (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/{ClassicPropertyResolverTest.java => test/ClassicPropertyResolverTestCase.java} (66%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/{DefaultPropertyResolverTest.java => test/DefaultPropertyResolverTestCase.java} (70%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/{DefaultRoleManagerTest.java => test/DefaultRoleManagerTestCase.java} (94%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/{InstantiatingServiceManagerTest.java => test/InstantiatingServiceManagerTestCase.java} (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/{ => test}/LifecycleValidator.java (97%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/service => testcases/org/apache/myrmidon/components/service/test}/TestService.java (89%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/{ => test}/TestServiceFactory1.java (93%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/{ => test}/TestServiceFactory2.java (88%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/components/service => testcases/org/apache/myrmidon/components/service/test}/TestServiceImpl1.java (80%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/{ => test}/TestServiceImpl2.java (75%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java => testcases/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java} (90%) rename proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/{ => test}/MyType1.java (91%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/interfaces/type => testcases/org/apache/myrmidon/interfaces/type/test}/MyType2.java (91%) rename proposal/myrmidon/src/{test/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java => testcases/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java} (89%) diff --git a/proposal/myrmidon/src/test/org/apache/antlib/core/IfTest.java b/proposal/myrmidon/src/test/org/apache/antlib/core/test/IfTestCase.java similarity index 92% rename from proposal/myrmidon/src/test/org/apache/antlib/core/IfTest.java rename to proposal/myrmidon/src/test/org/apache/antlib/core/test/IfTestCase.java index 932fc89d9..b71d5fd4d 100644 --- a/proposal/myrmidon/src/test/org/apache/antlib/core/IfTest.java +++ b/proposal/myrmidon/src/test/org/apache/antlib/core/test/IfTestCase.java @@ -5,10 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.core; +package org.apache.antlib.core.test; import java.io.File; -import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.myrmidon.AbstractProjectTest; import org.apache.myrmidon.LogMessageTracker; @@ -19,13 +18,12 @@ import org.apache.myrmidon.LogMessageTracker; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class IfTest +public class IfTestCase extends AbstractProjectTest { - private final static Resources REZ = - ResourceManager.getPackageResources( IfTest.class ); + private final static Resources REZ = getResourcesForTested( IfTestCase.class ); - public IfTest( String name ) + public IfTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/antlib/core/PropertyTest.java b/proposal/myrmidon/src/test/org/apache/antlib/core/test/PropertyTestCase.java similarity index 91% rename from proposal/myrmidon/src/test/org/apache/antlib/core/PropertyTest.java rename to proposal/myrmidon/src/test/org/apache/antlib/core/test/PropertyTestCase.java index b53426441..b4f43f075 100644 --- a/proposal/myrmidon/src/test/org/apache/antlib/core/PropertyTest.java +++ b/proposal/myrmidon/src/test/org/apache/antlib/core/test/PropertyTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.core; +package org.apache.antlib.core.test; import java.io.File; import org.apache.avalon.excalibur.i18n.ResourceManager; @@ -20,13 +20,12 @@ import org.apache.myrmidon.components.workspace.DefaultTaskContext; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class PropertyTest +public class PropertyTestCase extends AbstractProjectTest { - private final static Resources REZ - = ResourceManager.getPackageResources( PropertyTest.class ); + private final static Resources REZ = getResourcesForTested( PropertyTestCase.class ); - public PropertyTest( final String name ) + public PropertyTestCase( final String name ) { super( name ); } @@ -66,10 +65,10 @@ public class PropertyTest // Missing name String[] messages = - { - null, - REZ.getString( "property.no-name.error" ) - }; + { + null, + REZ.getString( "property.no-name.error" ) + }; executeTargetExpectError( projectFile, "missing-name", messages ); // Missing value diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/core/PropertyTestType.java b/proposal/myrmidon/src/test/org/apache/antlib/core/test/PropertyTestType.java similarity index 95% rename from proposal/myrmidon/src/testcases/org/apache/antlib/core/PropertyTestType.java rename to proposal/myrmidon/src/test/org/apache/antlib/core/test/PropertyTestType.java index bc7fa37d1..c146a77df 100644 --- a/proposal/myrmidon/src/testcases/org/apache/antlib/core/PropertyTestType.java +++ b/proposal/myrmidon/src/test/org/apache/antlib/core/test/PropertyTestType.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.core; +package org.apache.antlib.core.test; import org.apache.myrmidon.framework.DataType; diff --git a/proposal/myrmidon/src/test/org/apache/antlib/core/test/if.ant b/proposal/myrmidon/src/test/org/apache/antlib/core/test/if.ant new file mode 100644 index 000000000..b3caca2af --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/antlib/core/test/if.ant @@ -0,0 +1,63 @@ + + + + + test-prop is set + + + test-prop is not set + + + + + + + test-prop is set + + + test-prop is not set + + + + + + test-prop is set + + + test-prop is not set + + + + + + + test-prop is set + + + test-prop is not set + + + + + + + task 1 + task 2 + task 3 + task 4 + + + + + + no go + + + + + + no go + + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/antlib/core/test/property.ant b/proposal/myrmidon/src/test/org/apache/antlib/core/test/property.ant new file mode 100644 index 000000000..03cad74a0 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/antlib/core/test/property.ant @@ -0,0 +1,65 @@ + + + + + + test-prop = [${test-prop}] + + + + + some value + test-prop2 = [${test-prop2}] + + + + + + + + test-prop3 = [${test-prop3}] + + + + + + + + + + + + + + + another value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/CopyFilesTaskTest.java b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java similarity index 86% rename from proposal/myrmidon/src/testcases/org/apache/antlib/vfile/CopyFilesTaskTest.java rename to proposal/myrmidon/src/test/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java index 5be210545..ad84a0219 100644 --- a/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/CopyFilesTaskTest.java +++ b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.vfile; +package org.apache.antlib.vfile.test; import java.io.File; import org.apache.myrmidon.AbstractProjectTest; @@ -16,10 +16,10 @@ import org.apache.myrmidon.AbstractProjectTest; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class CopyFilesTaskTest +public class CopyFilesTaskTestCase extends AbstractProjectTest { - public CopyFilesTaskTest( String name ) + public CopyFilesTaskTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/copy.ant b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/copy.ant new file mode 100644 index 000000000..18ea5067c --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/copy.ant @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/emptyFile.txt b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/emptyFile.txt new file mode 100644 index 000000000..e69de29bb diff --git a/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/file1.txt b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/file1.txt new file mode 100644 index 000000000..9ad7b1b57 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/file1.txt @@ -0,0 +1 @@ +A test file. \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/subdir1/someFile.html b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/subdir1/someFile.html new file mode 100644 index 000000000..c769030c0 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/antlib/vfile/test/src/subdir1/someFile.html @@ -0,0 +1,5 @@ + + +

Yo!

+ + diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/BzipTest.java b/proposal/myrmidon/src/test/org/apache/aut/bzip2/test/BzipTestCase.java similarity index 95% rename from proposal/myrmidon/src/testcases/org/apache/aut/bzip2/BzipTest.java rename to proposal/myrmidon/src/test/org/apache/aut/bzip2/test/BzipTestCase.java index 3820e79fa..2bd65da42 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/BzipTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/bzip2/test/BzipTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.bzip2; +package org.apache.aut.bzip2.test; import java.io.File; import java.io.FileInputStream; @@ -16,6 +16,8 @@ import java.io.OutputStream; import junit.framework.TestCase; import org.apache.avalon.excalibur.io.FileUtil; import org.apache.avalon.excalibur.io.IOUtil; +import org.apache.aut.bzip2.CBZip2OutputStream; +import org.apache.aut.bzip2.CBZip2InputStream; /** * A test the stress tested the BZip implementation to verify @@ -24,12 +26,12 @@ import org.apache.avalon.excalibur.io.IOUtil; * @author Peter Donald * @version $Revision$ $Date$ */ -public class BzipTest +public class BzipTestCase extends TestCase { private final static byte[] HEADER = new byte[]{(byte)'B', (byte)'Z'}; - public BzipTest( final String name ) + public BzipTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/bzip2/test/asf-logo-huge.tar b/proposal/myrmidon/src/test/org/apache/aut/bzip2/test/asf-logo-huge.tar new file mode 100644 index 0000000000000000000000000000000000000000..3f92609782473ce883258bc08c0578d146350e41 GIT binary patch literal 3215360 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 z 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 literal 0 HcmV?d00001 diff --git a/proposal/myrmidon/src/test/org/apache/aut/bzip2/test/asf-logo-huge.tar.bz2 b/proposal/myrmidon/src/test/org/apache/aut/bzip2/test/asf-logo-huge.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..7c2d2154a82fcf2c4fd4bef32fe7fcf0051a66f7 GIT binary patch literal 58089 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 Murdoch */ -public abstract class AbstractFileSystemTest +public abstract class AbstractFileSystemTestCase extends AbstractMyrmidonTest { private final static Resources REZ @@ -41,7 +47,7 @@ public abstract class AbstractFileSystemTest // Contents of "file1.txt" private String m_charContent; - public AbstractFileSystemTest( String name ) + public AbstractFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/AbstractReadOnlyFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/AbstractReadOnlyFileSystemTestCase.java similarity index 65% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/AbstractReadOnlyFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/AbstractReadOnlyFileSystemTestCase.java index 18f02c9d2..b415a6565 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/AbstractReadOnlyFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/AbstractReadOnlyFileSystemTestCase.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; + +import org.apache.aut.vfs.test.AbstractFileSystemTestCase; /** * File system tests which check that a read-only file system cannot be @@ -13,9 +15,9 @@ package org.apache.aut.vfs; * * @author Adam Murdoch */ -public abstract class AbstractReadOnlyFileSystemTest extends AbstractFileSystemTest +public abstract class AbstractReadOnlyFileSystemTestCase extends AbstractFileSystemTestCase { - public AbstractReadOnlyFileSystemTest( String name ) + public AbstractReadOnlyFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/AbstractWritableFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/AbstractWritableFileSystemTestCase.java similarity index 95% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/AbstractWritableFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/AbstractWritableFileSystemTestCase.java index ad57831aa..06a73c132 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/AbstractWritableFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/AbstractWritableFileSystemTestCase.java @@ -5,21 +5,25 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import java.io.OutputStream; import java.util.HashSet; import java.util.Set; +import org.apache.aut.vfs.test.AbstractFileSystemTestCase; +import org.apache.aut.vfs.FileObject; +import org.apache.aut.vfs.FileType; +import org.apache.aut.vfs.FileSystemException; /** * File system test that check that a file system can be modified. * * @author Adam Murdoch */ -public abstract class AbstractWritableFileSystemTest - extends AbstractFileSystemTest +public abstract class AbstractWritableFileSystemTestCase + extends AbstractFileSystemTestCase { - public AbstractWritableFileSystemTest( String name ) + public AbstractWritableFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/FtpFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/FtpFileSystemTestCase.java similarity index 79% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/FtpFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/FtpFileSystemTestCase.java index 56a344802..0788c6eed 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/FtpFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/FtpFileSystemTestCase.java @@ -5,19 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import org.apache.aut.vfs.provider.ftp.FtpFileSystemProvider; +import org.apache.aut.vfs.test.AbstractWritableFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for FTP file systems. * * @author Adam Murdoch */ -public class FtpFileSystemTest - extends AbstractWritableFileSystemTest +public class FtpFileSystemTestCase + extends AbstractWritableFileSystemTestCase { - public FtpFileSystemTest( String name ) + public FtpFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/LocalFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/LocalFileSystemTestCase.java similarity index 84% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/LocalFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/LocalFileSystemTestCase.java index e0218041e..540ec36f6 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/LocalFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/LocalFileSystemTestCase.java @@ -5,18 +5,20 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import java.io.File; +import org.apache.aut.vfs.test.AbstractWritableFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the local file system. * * @author Adam Murdoch */ -public class LocalFileSystemTest extends AbstractWritableFileSystemTest +public class LocalFileSystemTestCase extends AbstractWritableFileSystemTestCase { - public LocalFileSystemTest( String name ) + public LocalFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/NestedZipFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java similarity index 80% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/NestedZipFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java index b5523a688..652dcf5b9 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/NestedZipFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java @@ -5,19 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import org.apache.aut.vfs.provider.zip.ZipFileSystemProvider; +import org.apache.aut.vfs.test.AbstractReadOnlyFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the Zip file system, using a zip file nested inside another zip file. * * @author Adam Murdoch */ -public class NestedZipFileSystemTest - extends AbstractReadOnlyFileSystemTest +public class NestedZipFileSystemTestCase + extends AbstractReadOnlyFileSystemTestCase { - public NestedZipFileSystemTest( String name ) + public NestedZipFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/SmbFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/SmbFileSystemTestCase.java similarity index 80% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/SmbFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/SmbFileSystemTestCase.java index c3ff819e7..bf0402376 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/SmbFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/SmbFileSystemTestCase.java @@ -5,18 +5,20 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import org.apache.aut.vfs.provider.smb.SmbFileSystemProvider; +import org.apache.aut.vfs.test.AbstractWritableFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the SMB file system. * * @author Adam Murdoch */ -public class SmbFileSystemTest extends AbstractWritableFileSystemTest +public class SmbFileSystemTestCase extends AbstractWritableFileSystemTestCase { - public SmbFileSystemTest( String name ) + public SmbFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/ZipFileSystemTest.java b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/ZipFileSystemTestCase.java similarity index 76% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/ZipFileSystemTest.java rename to proposal/myrmidon/src/test/org/apache/aut/vfs/test/ZipFileSystemTestCase.java index 4c8b4af38..ded939ef6 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/ZipFileSystemTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/vfs/test/ZipFileSystemTestCase.java @@ -5,19 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import java.io.File; import org.apache.aut.vfs.provider.zip.ZipFileSystemProvider; +import org.apache.aut.vfs.test.AbstractReadOnlyFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the Zip file system. * * @author Adam Murdoch */ -public class ZipFileSystemTest extends AbstractReadOnlyFileSystemTest +public class ZipFileSystemTestCase extends AbstractReadOnlyFileSystemTestCase { - public ZipFileSystemTest( String name ) + public ZipFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/zip/AsiExtraFieldTest.java b/proposal/myrmidon/src/test/org/apache/aut/zip/test/AsiExtraFieldTestCase.java similarity index 96% rename from proposal/myrmidon/src/test/org/apache/aut/zip/AsiExtraFieldTest.java rename to proposal/myrmidon/src/test/org/apache/aut/zip/test/AsiExtraFieldTestCase.java index 246ca1b76..2337f3feb 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/zip/AsiExtraFieldTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/zip/test/AsiExtraFieldTestCase.java @@ -5,21 +5,23 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import java.util.zip.ZipException; import junit.framework.TestCase; +import org.apache.aut.zip.UnixStat; +import org.apache.aut.zip.AsiExtraField; /** * JUnit testcases AsiExtraField. * * @author Stefan Bodewig */ -public class AsiExtraFieldTest +public class AsiExtraFieldTestCase extends TestCase implements UnixStat { - public AsiExtraFieldTest( final String name ) + public AsiExtraFieldTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/zip/ExtraFieldUtilsTest.java b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ExtraFieldUtilsTestCase.java similarity index 91% rename from proposal/myrmidon/src/test/org/apache/aut/zip/ExtraFieldUtilsTest.java rename to proposal/myrmidon/src/test/org/apache/aut/zip/test/ExtraFieldUtilsTestCase.java index 6e2be5d4d..7f4a73e6c 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/zip/ExtraFieldUtilsTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ExtraFieldUtilsTestCase.java @@ -5,16 +5,22 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import junit.framework.TestCase; +import org.apache.aut.zip.UnixStat; +import org.apache.aut.zip.AsiExtraField; +import org.apache.aut.zip.UnrecognizedExtraField; +import org.apache.aut.zip.ZipShort; +import org.apache.aut.zip.ZipExtraField; +import org.apache.aut.zip.ExtraFieldUtils; /** * JUnit testcases ExtraFieldUtils. * * @author Stefan Bodewig */ -public class ExtraFieldUtilsTest +public class ExtraFieldUtilsTestCase extends TestCase implements UnixStat { @@ -23,7 +29,7 @@ public class ExtraFieldUtilsTest private byte[] m_data; private byte[] m_local; - public ExtraFieldUtilsTest( final String name ) + public ExtraFieldUtilsTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/zip/ZipEntryTest.java b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipEntryTestCase.java similarity index 90% rename from proposal/myrmidon/src/test/org/apache/aut/zip/ZipEntryTest.java rename to proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipEntryTestCase.java index 24e919ee0..df87812f4 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/zip/ZipEntryTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipEntryTestCase.java @@ -5,20 +5,25 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import java.util.NoSuchElementException; import junit.framework.TestCase; +import org.apache.aut.zip.AsiExtraField; +import org.apache.aut.zip.UnrecognizedExtraField; +import org.apache.aut.zip.ZipEntry; +import org.apache.aut.zip.ZipExtraField; +import org.apache.aut.zip.ZipShort; /** * JUnit testcases ZipEntry. * * @author Stefan Bodewig */ -public class ZipEntryTest +public class ZipEntryTestCase extends TestCase { - public ZipEntryTest( final String name ) + public ZipEntryTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipLongTest.java b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipLongTestCase.java similarity index 94% rename from proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipLongTest.java rename to proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipLongTestCase.java index e73f02d53..501b5f491 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipLongTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipLongTestCase.java @@ -5,20 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import junit.framework.TestCase; +import org.apache.aut.zip.ZipLong; /** * JUnit 3 testcases for org.apache.tools.zip.ZipLong. * * @author Stefan Bodewig */ -public class ZipLongTest +public class ZipLongTestCase extends TestCase { - public ZipLongTest( final String name ) + public ZipLongTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/zip/ZipShortTest.java b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipShortTestCase.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/aut/zip/ZipShortTest.java rename to proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipShortTestCase.java index ba9c459fb..7e45b1d48 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/zip/ZipShortTest.java +++ b/proposal/myrmidon/src/test/org/apache/aut/zip/test/ZipShortTestCase.java @@ -5,19 +5,20 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import junit.framework.TestCase; +import org.apache.aut.zip.ZipShort; /** * JUnit 3 testcases for org.apache.tools.zip.ZipShort. * * @author Stefan Bodewig */ -public class ZipShortTest +public class ZipShortTestCase extends TestCase { - public ZipShortTest( String name ) + public ZipShortTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/AbstractMyrmidonTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/AbstractMyrmidonTest.java index b9b0d3689..fbef96e5a 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/AbstractMyrmidonTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/AbstractMyrmidonTest.java @@ -10,6 +10,8 @@ package org.apache.myrmidon; import java.io.File; import java.io.IOException; import junit.framework.TestCase; +import org.apache.avalon.excalibur.i18n.Resources; +import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.framework.ExceptionUtil; import org.apache.avalon.framework.logger.Logger; import org.apache.myrmidon.frontends.BasicLogger; @@ -27,6 +29,36 @@ public abstract class AbstractMyrmidonTest private final File m_baseDir; private Logger m_logger; + protected static final Resources getResourcesForTested( final Class clazz ) + { + final Package pkg = clazz.getPackage(); + + String baseName; + if( null == pkg ) + { + final String name = clazz.getName(); + if( -1 == name.lastIndexOf( "." ) ) + { + baseName = ""; + } + else + { + baseName = name.substring( 0, name.lastIndexOf( "." ) ); + } + } + else + { + baseName = pkg.getName(); + } + + if( baseName.endsWith( ".test" ) ) + { + baseName = baseName.substring( 0, baseName.length() - 5 ); + } + + return ResourceManager.getBaseResources( baseName + ".Resources", AbstractMyrmidonTest.class.getClassLoader() ); + } + public AbstractMyrmidonTest( String name ) { super( name ); @@ -162,7 +194,7 @@ public abstract class AbstractMyrmidonTest */ protected void assertSameMessage( final String message, final Throwable throwable ) { - assertSameMessage( new String[] { message }, throwable ); + assertSameMessage( new String[]{message}, throwable ); } /** diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/DefaultProjectBuilderTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/DefaultProjectBuilderTestCase.java similarity index 95% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/DefaultProjectBuilderTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/DefaultProjectBuilderTestCase.java index 00c706cca..af901c97d 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/DefaultProjectBuilderTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/DefaultProjectBuilderTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.builder; +package org.apache.myrmidon.components.builder.test; import java.io.File; import java.util.Arrays; @@ -13,24 +13,25 @@ import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.excalibur.io.FileUtil; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.components.builder.DefaultProjectBuilder; +import org.apache.myrmidon.components.builder.DefaultProject; import org.apache.myrmidon.interfaces.builder.ProjectException; import org.apache.myrmidon.interfaces.model.Project; /** - * Test cases for {@link DefaultProjectBuilder}. + * Test cases for {@link org.apache.myrmidon.components.builder.DefaultProjectBuilder}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class DefaultProjectBuilderTest +public class DefaultProjectBuilderTestCase extends AbstractMyrmidonTest { - private final static Resources REZ - = ResourceManager.getPackageResources( DefaultProjectBuilderTest.class ); + private final static Resources REZ = getResourcesForTested( DefaultProjectBuilderTestCase.class ); private DefaultProjectBuilder m_builder; - public DefaultProjectBuilderTest( String name ) + public DefaultProjectBuilderTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-project-name.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-project-name.ant new file mode 100644 index 000000000..7b0ed6f75 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-project-name.ant @@ -0,0 +1,4 @@ + + + + diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-target-name.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-target-name.ant new file mode 100644 index 000000000..8c7186956 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-target-name.ant @@ -0,0 +1,5 @@ + + + + + diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-version.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-version.ant new file mode 100644 index 000000000..922f14aee --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-version.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-xml.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-xml.ant new file mode 100644 index 000000000..91717fd16 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/bad-xml.ant @@ -0,0 +1 @@ +this ain't xml. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/defaults.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/defaults.ant new file mode 100644 index 000000000..b36a5c7ce --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/defaults.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/mismatched-version.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/mismatched-version.ant new file mode 100644 index 000000000..b9176c9c0 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/mismatched-version.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/no-version.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/no-version.ant new file mode 100644 index 000000000..d1979fedf --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/no-version.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-base-dir.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-base-dir.ant new file mode 100644 index 000000000..56fe72aa4 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-base-dir.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-default-target.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-default-target.ant new file mode 100644 index 000000000..f83f3bbeb --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-default-target.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-project-name.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-project-name.ant new file mode 100644 index 000000000..a8ae1a941 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/builder/test/set-project-name.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/ConfigTestConfigurable.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/ConfigTestConfigurable.java similarity index 87% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/ConfigTestConfigurable.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/ConfigTestConfigurable.java index 9f3898fde..4a1d5d628 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/ConfigTestConfigurable.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/ConfigTestConfigurable.java @@ -5,14 +5,14 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.avalon.framework.configuration.Configurable; import org.apache.avalon.framework.configuration.Configuration; import org.apache.avalon.framework.configuration.ConfigurationException; /** - * Simple class to test {@link Configurable}. + * Simple class to test {@link org.apache.avalon.framework.configuration.Configurable}. * * @author Peter Donald * @version $Revision$ $Date$ diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/DefaultConfigurerTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/DefaultConfigurerTestCase.java similarity index 92% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/DefaultConfigurerTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/DefaultConfigurerTestCase.java index fedc0cde3..d814cda09 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/DefaultConfigurerTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/DefaultConfigurerTestCase.java @@ -5,40 +5,39 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import java.io.File; import org.apache.antlib.core.StringToIntegerConverter; -import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.framework.ExceptionUtil; import org.apache.avalon.framework.configuration.ConfigurationException; import org.apache.avalon.framework.configuration.DefaultConfiguration; import org.apache.myrmidon.api.TaskContext; import org.apache.myrmidon.components.AbstractComponentTest; -import org.apache.myrmidon.components.configurer.data.ConfigTestAttributeConvert; -import org.apache.myrmidon.components.configurer.data.ConfigTestConfigAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestContent; -import org.apache.myrmidon.components.configurer.data.ConfigTestEmpty; -import org.apache.myrmidon.components.configurer.data.ConfigTestIdResolve; -import org.apache.myrmidon.components.configurer.data.ConfigTestIgnoreStringMethods; -import org.apache.myrmidon.components.configurer.data.ConfigTestInterfaceAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestMismatchedRefType; -import org.apache.myrmidon.components.configurer.data.ConfigTestMultipleTypedAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestNestedErrors; -import org.apache.myrmidon.components.configurer.data.ConfigTestNonInterfaceAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestPropResolution; -import org.apache.myrmidon.components.configurer.data.ConfigTestReferenceAttribute; -import org.apache.myrmidon.components.configurer.data.ConfigTestReferenceConversion; -import org.apache.myrmidon.components.configurer.data.ConfigTestReferenceElement; -import org.apache.myrmidon.components.configurer.data.ConfigTestSetAttribute; -import org.apache.myrmidon.components.configurer.data.ConfigTestSetElement; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdderConversion; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdderReference; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdderRole; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedConfigAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestUnknownReference; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestAttributeConvert; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestConfigAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestContent; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestEmpty; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestIdResolve; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestIgnoreStringMethods; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestInterfaceAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestMismatchedRefType; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestMultipleTypedAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestNestedErrors; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestNonInterfaceAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestPropResolution; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestReferenceAttribute; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestReferenceConversion; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestReferenceElement; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestSetAttribute; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestSetElement; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdderConversion; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdderReference; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdderRole; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedConfigAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestUnknownReference; import org.apache.myrmidon.components.workspace.DefaultTaskContext; import org.apache.myrmidon.framework.DataType; import org.apache.myrmidon.interfaces.configurer.Configurer; @@ -49,16 +48,16 @@ import org.apache.myrmidon.interfaces.role.RoleInfo; * * @author Adam Murdoch */ -public class DefaultConfigurerTest +public class DefaultConfigurerTestCase extends AbstractComponentTest { private final static Resources REZ = - ResourceManager.getPackageResources( DefaultConfigurerTest.class ); + getResourcesForTested( DefaultConfigurerTestCase.class ); private Configurer m_configurer; private DefaultTaskContext m_context; - public DefaultConfigurerTest( String name ) + public DefaultConfigurerTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole1.java similarity index 90% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole1.java index f62943b3c..c7dc8ae9e 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.myrmidon.framework.DataType; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole1Adaptor.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole1Adaptor.java similarity index 87% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole1Adaptor.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole1Adaptor.java index a683499d3..4c8f448d7 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole1Adaptor.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole1Adaptor.java @@ -5,9 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Adapts an Object to MyRole diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole2.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole2.java similarity index 88% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole2.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole2.java index 0b061d8b4..e21a3ee95 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole2.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyRole2.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; /** * A basic interface to test configurer. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyType1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyType1.java similarity index 82% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyType1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyType1.java index ee40c9eae..a0b6b7b70 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyType1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyType1.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; + +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A basic implementation of MyRole1 to test configurer. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyType2.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyType2.java similarity index 82% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyType2.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyType2.java index c573feff1..a605ddeed 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyType2.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/MyType2.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; + +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A basic implementation of MyRole1 to test configurer. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/ObjectToMyRole1Converter.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/ObjectToMyRole1Converter.java similarity index 81% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/ObjectToMyRole1Converter.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/ObjectToMyRole1Converter.java index 34934097c..06d74ea6e 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/ObjectToMyRole1Converter.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/ObjectToMyRole1Converter.java @@ -5,10 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.aut.converter.AbstractConverter; import org.apache.aut.converter.ConverterException; +import org.apache.myrmidon.components.configurer.test.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1Adaptor; /** * Converts from Object to MyRole1. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestAttributeConvert.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestAttributeConvert.java similarity index 94% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestAttributeConvert.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestAttributeConvert.java index 6830561d2..840e6d43c 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestAttributeConvert.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestAttributeConvert.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import org.apache.myrmidon.components.AbstractComponentTest; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestConfigAdder.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestConfigAdder.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestConfigAdder.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestConfigAdder.java index 54136d96f..1568b4f28 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestConfigAdder.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestConfigAdder.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import org.apache.avalon.framework.configuration.Configuration; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestContent.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestContent.java similarity index 79% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestContent.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestContent.java index 1d28ef88f..0ab4e74c8 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestContent.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestContent.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. @@ -25,7 +25,7 @@ public class ConfigTestContent public boolean equals( final Object obj ) { final ConfigTestContent test = (ConfigTestContent)obj; - if( !DefaultConfigurerTest.equals( m_content, test.m_content ) ) + if( !DefaultConfigurerTestCase.equals( m_content, test.m_content ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestEmpty.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestEmpty.java similarity index 89% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestEmpty.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestEmpty.java index 00c5f2a8f..b39612392 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestEmpty.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestEmpty.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestIdResolve.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestIdResolve.java similarity index 79% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestIdResolve.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestIdResolve.java index 0de5265df..22fe5d770 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestIdResolve.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestIdResolve.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. @@ -25,7 +25,7 @@ public class ConfigTestIdResolve public boolean equals( final Object obj ) { final ConfigTestIdResolve test = (ConfigTestIdResolve)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestIgnoreStringMethods.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestIgnoreStringMethods.java similarity index 86% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestIgnoreStringMethods.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestIgnoreStringMethods.java index a8afb0a49..369649b7c 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestIgnoreStringMethods.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestIgnoreStringMethods.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import junit.framework.AssertionFailedError; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A test class with multiple setters/adders/creators for a property. @@ -24,7 +24,7 @@ public class ConfigTestIgnoreStringMethods public boolean equals( Object obj ) { ConfigTestIgnoreStringMethods test = (ConfigTestIgnoreStringMethods)obj; - if( !DefaultConfigurerTest.equals( m_prop1, test.m_prop1 ) ) + if( !DefaultConfigurerTestCase.equals( m_prop1, test.m_prop1 ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestInterfaceAdder.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestInterfaceAdder.java similarity index 86% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestInterfaceAdder.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestInterfaceAdder.java index 48c15109e..e622b15af 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestInterfaceAdder.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestInterfaceAdder.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A test class with an interface property. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestMismatchedRefType.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestMismatchedRefType.java similarity index 80% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestMismatchedRefType.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestMismatchedRefType.java index a00b94df8..940465036 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestMismatchedRefType.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestMismatchedRefType.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestMultipleTypedAdder.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestMultipleTypedAdder.java similarity index 75% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestMultipleTypedAdder.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestMultipleTypedAdder.java index c70b8e479..256aed403 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestMultipleTypedAdder.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestMultipleTypedAdder.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; -import org.apache.myrmidon.components.configurer.MyRole1; -import org.apache.myrmidon.components.configurer.MyRole2; +import org.apache.myrmidon.components.configurer.test.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole2; /** * Simple class with more than one typed adder method. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestNestedErrors.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestNestedErrors.java similarity index 87% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestNestedErrors.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestNestedErrors.java index ce1c04bac..e6f14a6d4 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestNestedErrors.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestNestedErrors.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; /** * A simple test class. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestNonInterfaceAdder.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestNonInterfaceAdder.java similarity index 91% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestNonInterfaceAdder.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestNonInterfaceAdder.java index 45535c961..432dd4e82 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestNonInterfaceAdder.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestNonInterfaceAdder.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; /** * Simple class to test typed adder. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestPropResolution.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestPropResolution.java similarity index 79% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestPropResolution.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestPropResolution.java index 6a9e44c56..48c729af0 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestPropResolution.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestPropResolution.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.List; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * Simple class to test typed adder. @@ -24,7 +24,7 @@ public class ConfigTestPropResolution public boolean equals( final Object obj ) { final ConfigTestPropResolution test = (ConfigTestPropResolution)obj; - if( !DefaultConfigurerTest.equals( m_prop, test.m_prop ) ) + if( !DefaultConfigurerTestCase.equals( m_prop, test.m_prop ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceAttribute.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceAttribute.java similarity index 79% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceAttribute.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceAttribute.java index 9ec47f727..5946cdcd7 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceAttribute.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceAttribute.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.List; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * Simple class to test typed adder. @@ -24,7 +24,7 @@ public class ConfigTestReferenceAttribute public boolean equals( final Object obj ) { final ConfigTestReferenceAttribute test = (ConfigTestReferenceAttribute)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceConversion.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceConversion.java similarity index 85% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceConversion.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceConversion.java index 5d1055d9a..4862d3d78 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceConversion.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceConversion.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A simple test class. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceElement.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceElement.java similarity index 76% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceElement.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceElement.java index 4bbb9f893..d6d1cd007 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceElement.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceElement.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class. @@ -23,7 +23,7 @@ public class ConfigTestReferenceElement public boolean equals( Object obj ) { ConfigTestReferenceElement test = (ConfigTestReferenceElement)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestSetAttribute.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetAttribute.java similarity index 83% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestSetAttribute.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetAttribute.java index cf44c852f..0a76b998a 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestSetAttribute.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetAttribute.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.List; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * Simple class to test typed adder. @@ -25,7 +25,7 @@ public class ConfigTestSetAttribute public boolean equals( final Object obj ) { final ConfigTestSetAttribute test = (ConfigTestSetAttribute)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestSetElement.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetElement.java similarity index 79% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestSetElement.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetElement.java index bc7b503fc..704248b46 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestSetElement.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetElement.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class. @@ -25,7 +25,7 @@ public class ConfigTestSetElement public boolean equals( Object obj ) { ConfigTestSetElement test = (ConfigTestSetElement)obj; - if( !DefaultConfigurerTest.equals( m_prop, test.m_prop ) ) + if( !DefaultConfigurerTestCase.equals( m_prop, test.m_prop ) ) { return false; } @@ -33,7 +33,7 @@ public class ConfigTestSetElement { return false; } - else if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + else if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdder.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdder.java similarity index 87% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdder.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdder.java index 7e1a75333..4beafcdd6 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdder.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdder.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import org.apache.avalon.framework.configuration.Configuration; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Simple class to test adder for Configurations. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderConversion.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderConversion.java similarity index 88% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderConversion.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderConversion.java index b6a0cb9e8..0aeb29d9b 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderConversion.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderConversion.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; import org.apache.myrmidon.framework.DataType; /** diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderReference.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderReference.java similarity index 86% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderReference.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderReference.java index 20a9c403f..6ce6bc078 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderReference.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderReference.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Simple class to test typed adder. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderRole.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderRole.java similarity index 86% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderRole.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderRole.java index ed950288a..d8ac8d59e 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderRole.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderRole.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Simple class to test typed adder. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedConfigAdder.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedConfigAdder.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedConfigAdder.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedConfigAdder.java index 790687fb8..2d7bcf02d 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedConfigAdder.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedConfigAdder.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import org.apache.avalon.framework.configuration.Configuration; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestUnknownReference.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestUnknownReference.java similarity index 80% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestUnknownReference.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestUnknownReference.java index 32d17784b..b27b04a8c 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestUnknownReference.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/test/data/ConfigTestUnknownReference.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java similarity index 97% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java index 485cd7da6..b47b5eb53 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; import java.io.File; import org.apache.aut.converter.Converter; @@ -24,7 +24,7 @@ import org.apache.myrmidon.interfaces.type.TypeFactory; * * @author Adam Murdoch */ -public class DefaultDeployerTest +public class DefaultDeployerTestCase extends AbstractComponentTest { private static final String TEST_TYPE1_NAME = "test-type1"; @@ -32,7 +32,7 @@ public class DefaultDeployerTest private Deployer m_deployer; private Converter m_converter; - public DefaultDeployerTest( final String name ) + public DefaultDeployerTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestConverter1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestConverter1.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestConverter1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestConverter1.java index fc9abe6c3..af61edaa2 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestConverter1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestConverter1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; import org.apache.aut.converter.Converter; import org.apache.aut.converter.ConverterException; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestRole1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestRole1.java similarity index 89% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestRole1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestRole1.java index 93dc94f6d..60fc79166 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestRole1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestRole1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; /** * A test role interface. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestType1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestType1.java similarity index 80% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestType1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestType1.java index 444ea9e62..7cf53f163 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestType1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/TestType1.java @@ -5,9 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; import org.apache.myrmidon.framework.DataType; +import org.apache.myrmidon.components.deployer.test.TestRole1; /** * A test data-type. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml new file mode 100644 index 000000000..43d07cd67 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-roles.xml b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-roles.xml new file mode 100644 index 000000000..86e6070ec --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/test/ant-roles.xml @@ -0,0 +1,4 @@ + + + + diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/DefaultEmbeddorTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/DefaultEmbeddorTest.java similarity index 98% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/DefaultEmbeddorTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/DefaultEmbeddorTest.java index 91289c5d1..20d971643 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/DefaultEmbeddorTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/DefaultEmbeddorTest.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.embeddor; +package org.apache.myrmidon.components.embeddor.test; import java.io.File; import org.apache.avalon.framework.parameters.Parameters; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/project-builder.ant b/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/project-builder.ant new file mode 100644 index 000000000..7f52d2702 --- /dev/null +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/test/project-builder.ant @@ -0,0 +1,6 @@ + + + + A log message + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java index 9e79a0d2b..21aba6d3d 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java @@ -5,11 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.property; +package org.apache.myrmidon.components.property.test; import java.io.File; import java.util.Date; -import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.framework.context.Context; import org.apache.myrmidon.AbstractMyrmidonTest; @@ -23,16 +22,15 @@ import org.apache.myrmidon.interfaces.property.PropertyResolver; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public abstract class AbstractPropertyResolverTest +public abstract class AbstractPropertyResolverTestCase extends AbstractMyrmidonTest { - protected final static Resources REZ - = ResourceManager.getPackageResources( AbstractPropertyResolverTest.class ); + protected final static Resources REZ = getResourcesForTested( AbstractPropertyResolverTestCase.class ); protected PropertyResolver m_resolver; protected DefaultTaskContext m_context; - public AbstractPropertyResolverTest( String name ) + public AbstractPropertyResolverTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/ClassicPropertyResolverTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/ClassicPropertyResolverTestCase.java similarity index 66% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/property/ClassicPropertyResolverTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/ClassicPropertyResolverTestCase.java index a0779291f..12eef075a 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/ClassicPropertyResolverTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/ClassicPropertyResolverTestCase.java @@ -5,20 +5,22 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.property; +package org.apache.myrmidon.components.property.test; import org.apache.myrmidon.interfaces.property.PropertyResolver; +import org.apache.myrmidon.components.property.test.AbstractPropertyResolverTestCase; +import org.apache.myrmidon.components.property.ClassicPropertyResolver; /** - * A test for {@link ClassicPropertyResolver}. + * A test for {@link org.apache.myrmidon.components.property.ClassicPropertyResolver}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class ClassicPropertyResolverTest - extends AbstractPropertyResolverTest +public class ClassicPropertyResolverTestCase + extends AbstractPropertyResolverTestCase { - public ClassicPropertyResolverTest( String name ) + public ClassicPropertyResolverTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/DefaultPropertyResolverTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/DefaultPropertyResolverTestCase.java similarity index 70% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/property/DefaultPropertyResolverTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/DefaultPropertyResolverTestCase.java index 4d1f2198d..0183adea8 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/DefaultPropertyResolverTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/test/DefaultPropertyResolverTestCase.java @@ -5,20 +5,22 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.property; +package org.apache.myrmidon.components.property.test; import org.apache.myrmidon.interfaces.property.PropertyResolver; +import org.apache.myrmidon.components.property.test.AbstractPropertyResolverTestCase; +import org.apache.myrmidon.components.property.DefaultPropertyResolver; /** - * Functional tests for {@link DefaultPropertyResolver}. + * Functional tests for {@link org.apache.myrmidon.components.property.DefaultPropertyResolver}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class DefaultPropertyResolverTest - extends AbstractPropertyResolverTest +public class DefaultPropertyResolverTestCase + extends AbstractPropertyResolverTestCase { - public DefaultPropertyResolverTest( String name ) + public DefaultPropertyResolverTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/role/DefaultRoleManagerTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/role/test/DefaultRoleManagerTestCase.java similarity index 94% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/role/DefaultRoleManagerTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/role/test/DefaultRoleManagerTestCase.java index e2332b1ae..ba68eb68c 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/role/DefaultRoleManagerTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/role/test/DefaultRoleManagerTestCase.java @@ -5,11 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.role; +package org.apache.myrmidon.components.role.test; import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.components.role.DefaultRoleManager; import org.apache.myrmidon.api.Task; import org.apache.myrmidon.interfaces.role.RoleException; import org.apache.myrmidon.interfaces.role.RoleInfo; @@ -21,15 +22,14 @@ import org.apache.myrmidon.interfaces.role.RoleManager; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class DefaultRoleManagerTest +public class DefaultRoleManagerTestCase extends AbstractMyrmidonTest { - private final static Resources REZ - = ResourceManager.getPackageResources( DefaultRoleManagerTest.class ); + private final static Resources REZ = getResourcesForTested( DefaultRoleManagerTestCase.class ); private RoleManager m_roleManager; - public DefaultRoleManagerTest( String name ) + public DefaultRoleManagerTestCase( String name ) { super( name ); } @@ -70,7 +70,7 @@ public class DefaultRoleManagerTest assertNull( unknownRole ); // Lookup an unknown role - unknownRole = m_roleManager.getRoleByType( DefaultRoleManagerTest.class ); + unknownRole = m_roleManager.getRoleByType( DefaultRoleManagerTestCase.class ); assertNull( unknownRole ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/InstantiatingServiceManagerTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/InstantiatingServiceManagerTestCase.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/InstantiatingServiceManagerTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/InstantiatingServiceManagerTestCase.java index 5f6464835..932978376 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/InstantiatingServiceManagerTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/InstantiatingServiceManagerTestCase.java @@ -5,13 +5,14 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.framework.parameters.Parameters; import org.apache.avalon.framework.service.ServiceException; import org.apache.myrmidon.components.AbstractComponentTest; +import org.apache.myrmidon.components.service.InstantiatingServiceManager; import org.apache.myrmidon.interfaces.role.RoleInfo; import org.apache.myrmidon.interfaces.role.RoleManager; import org.apache.myrmidon.interfaces.service.ServiceFactory; @@ -24,16 +25,15 @@ import org.apache.myrmidon.interfaces.type.TypeManager; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class InstantiatingServiceManagerTest +public class InstantiatingServiceManagerTestCase extends AbstractComponentTest { - private final static Resources REZ - = ResourceManager.getPackageResources( InstantiatingServiceManagerTest.class ); + private final static Resources REZ = getResourcesForTested( InstantiatingServiceManagerTestCase.class ); private InstantiatingServiceManager m_serviceManager; private Parameters m_parameters = new Parameters(); - public InstantiatingServiceManagerTest( final String name ) + public InstantiatingServiceManagerTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/LifecycleValidator.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/LifecycleValidator.java similarity index 97% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/LifecycleValidator.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/LifecycleValidator.java index 916f268cd..b95ac5ffe 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/LifecycleValidator.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/LifecycleValidator.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import junit.framework.Assert; import org.apache.avalon.framework.activity.Initializable; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestService.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestService.java similarity index 89% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestService.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestService.java index 4c0485a52..302c2a5b3 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestService.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestService.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; /** * A service interface. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceFactory1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceFactory1.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceFactory1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceFactory1.java index bccf1dd98..10e0f69bc 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceFactory1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceFactory1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import org.apache.myrmidon.interfaces.service.AntServiceException; import org.apache.myrmidon.interfaces.service.ServiceFactory; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceFactory2.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceFactory2.java similarity index 88% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceFactory2.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceFactory2.java index 8cae19da6..524d3cc04 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceFactory2.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceFactory2.java @@ -5,10 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import org.apache.myrmidon.interfaces.service.AntServiceException; import org.apache.myrmidon.interfaces.service.ServiceFactory; +import org.apache.myrmidon.components.service.test.LifecycleValidator; /** * A test service factory, which asserts that the factory has been properly diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceImpl1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceImpl1.java similarity index 80% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceImpl1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceImpl1.java index 69c393ab1..c22e4d0a7 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceImpl1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceImpl1.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; + +import org.apache.myrmidon.components.service.test.TestService; /** * A test service implementation. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceImpl2.java b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceImpl2.java similarity index 75% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceImpl2.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceImpl2.java index d715cf6dc..933d76383 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceImpl2.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/test/TestServiceImpl2.java @@ -5,7 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; + +import org.apache.myrmidon.components.service.test.LifecycleValidator; +import org.apache.myrmidon.components.service.test.TestService; /** * A test service that asserts it has been set-up correctly. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java similarity index 90% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java index 51d9710ec..ff3368e19 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java @@ -5,22 +5,23 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.model; +package org.apache.myrmidon.interfaces.model.test; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.interfaces.model.DefaultNameValidator; /** - * TestCases for {@link DefaultNameValidator}. + * TestCases for {@link org.apache.myrmidon.interfaces.model.DefaultNameValidator}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class DefaultNameValidatorTest +public class DefaultNameValidatorTestCase extends AbstractMyrmidonTest { private DefaultNameValidator m_validator = new DefaultNameValidator(); - public DefaultNameValidatorTest( String name ) + public DefaultNameValidatorTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/MyType1.java b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/MyType1.java similarity index 91% rename from proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/MyType1.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/MyType1.java index e64a7914c..226b9a3bb 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/MyType1.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/MyType1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.type; +package org.apache.myrmidon.interfaces.type.test; /** * A basic implementation of a type to test the type factory. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/MyType2.java b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/MyType2.java similarity index 91% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/MyType2.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/MyType2.java index b652f6b84..a9418f1ae 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/MyType2.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/MyType2.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.type; +package org.apache.myrmidon.interfaces.type.test; /** * A basic implementation of a type to test the type factory. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java similarity index 89% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java rename to proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java index a73626251..62ed33a88 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java +++ b/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java @@ -5,11 +5,14 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.type; +package org.apache.myrmidon.interfaces.type.test; import java.io.File; import java.net.URL; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.interfaces.type.DefaultTypeFactory; +import org.apache.myrmidon.interfaces.type.ReloadingTypeFactory; +import org.apache.myrmidon.interfaces.type.TypeException; /** * These are unit tests that test the basic operation of TypeFactories. @@ -17,7 +20,7 @@ import org.apache.myrmidon.AbstractMyrmidonTest; * @author Peter Donald * @version $Revision$ $Date$ */ -public class TypeFactoryTest +public class TypeFactoryTestCase extends AbstractMyrmidonTest { private final static String TYPE_NAME1 = "my-type1"; @@ -27,7 +30,7 @@ public class TypeFactoryTest private final static String TYPE_CLASSNAME1 = TYPE_CLASS1.getName(); private final static String TYPE_CLASSNAME2 = TYPE_CLASS2.getName(); - public TypeFactoryTest( final String name ) + public TypeFactoryTestCase( final String name ) { super( name ); } @@ -62,7 +65,6 @@ public class TypeFactoryTest throws Exception { final File file = getTestResource( "types.jar" ); - final URL[] classpath = new URL[]{file.toURL()}; final ReloadingTypeFactory factory = new ReloadingTypeFactory( classpath, null ); factory.addNameClassMapping( TYPE_NAME1, TYPE_CLASSNAME1 ); diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/core/IfTest.java b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/IfTestCase.java similarity index 92% rename from proposal/myrmidon/src/testcases/org/apache/antlib/core/IfTest.java rename to proposal/myrmidon/src/testcases/org/apache/antlib/core/test/IfTestCase.java index 932fc89d9..b71d5fd4d 100644 --- a/proposal/myrmidon/src/testcases/org/apache/antlib/core/IfTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/IfTestCase.java @@ -5,10 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.core; +package org.apache.antlib.core.test; import java.io.File; -import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.myrmidon.AbstractProjectTest; import org.apache.myrmidon.LogMessageTracker; @@ -19,13 +18,12 @@ import org.apache.myrmidon.LogMessageTracker; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class IfTest +public class IfTestCase extends AbstractProjectTest { - private final static Resources REZ = - ResourceManager.getPackageResources( IfTest.class ); + private final static Resources REZ = getResourcesForTested( IfTestCase.class ); - public IfTest( String name ) + public IfTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/core/PropertyTest.java b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/PropertyTestCase.java similarity index 91% rename from proposal/myrmidon/src/testcases/org/apache/antlib/core/PropertyTest.java rename to proposal/myrmidon/src/testcases/org/apache/antlib/core/test/PropertyTestCase.java index b53426441..b4f43f075 100644 --- a/proposal/myrmidon/src/testcases/org/apache/antlib/core/PropertyTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/PropertyTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.core; +package org.apache.antlib.core.test; import java.io.File; import org.apache.avalon.excalibur.i18n.ResourceManager; @@ -20,13 +20,12 @@ import org.apache.myrmidon.components.workspace.DefaultTaskContext; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class PropertyTest +public class PropertyTestCase extends AbstractProjectTest { - private final static Resources REZ - = ResourceManager.getPackageResources( PropertyTest.class ); + private final static Resources REZ = getResourcesForTested( PropertyTestCase.class ); - public PropertyTest( final String name ) + public PropertyTestCase( final String name ) { super( name ); } @@ -66,10 +65,10 @@ public class PropertyTest // Missing name String[] messages = - { - null, - REZ.getString( "property.no-name.error" ) - }; + { + null, + REZ.getString( "property.no-name.error" ) + }; executeTargetExpectError( projectFile, "missing-name", messages ); // Missing value diff --git a/proposal/myrmidon/src/test/org/apache/antlib/core/PropertyTestType.java b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/PropertyTestType.java similarity index 95% rename from proposal/myrmidon/src/test/org/apache/antlib/core/PropertyTestType.java rename to proposal/myrmidon/src/testcases/org/apache/antlib/core/test/PropertyTestType.java index bc7fa37d1..c146a77df 100644 --- a/proposal/myrmidon/src/test/org/apache/antlib/core/PropertyTestType.java +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/PropertyTestType.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.core; +package org.apache.antlib.core.test; import org.apache.myrmidon.framework.DataType; diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/if.ant b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/if.ant new file mode 100644 index 000000000..b3caca2af --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/if.ant @@ -0,0 +1,63 @@ + + + + + test-prop is set + + + test-prop is not set + + + + + + + test-prop is set + + + test-prop is not set + + + + + + test-prop is set + + + test-prop is not set + + + + + + + test-prop is set + + + test-prop is not set + + + + + + + task 1 + task 2 + task 3 + task 4 + + + + + + no go + + + + + + no go + + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/property.ant b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/property.ant new file mode 100644 index 000000000..03cad74a0 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/core/test/property.ant @@ -0,0 +1,65 @@ + + + + + + test-prop = [${test-prop}] + + + + + some value + test-prop2 = [${test-prop2}] + + + + + + + + test-prop3 = [${test-prop3}] + + + + + + + + + + + + + + + another value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/proposal/myrmidon/src/test/org/apache/antlib/vfile/CopyFilesTaskTest.java b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java similarity index 86% rename from proposal/myrmidon/src/test/org/apache/antlib/vfile/CopyFilesTaskTest.java rename to proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java index 5be210545..ad84a0219 100644 --- a/proposal/myrmidon/src/test/org/apache/antlib/vfile/CopyFilesTaskTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/CopyFilesTaskTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.antlib.vfile; +package org.apache.antlib.vfile.test; import java.io.File; import org.apache.myrmidon.AbstractProjectTest; @@ -16,10 +16,10 @@ import org.apache.myrmidon.AbstractProjectTest; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class CopyFilesTaskTest +public class CopyFilesTaskTestCase extends AbstractProjectTest { - public CopyFilesTaskTest( String name ) + public CopyFilesTaskTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/copy.ant b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/copy.ant new file mode 100644 index 000000000..18ea5067c --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/copy.ant @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/emptyFile.txt b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/emptyFile.txt new file mode 100644 index 000000000..e69de29bb diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/file1.txt b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/file1.txt new file mode 100644 index 000000000..9ad7b1b57 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/file1.txt @@ -0,0 +1 @@ +A test file. \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/subdir1/someFile.html b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/subdir1/someFile.html new file mode 100644 index 000000000..c769030c0 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/antlib/vfile/test/src/subdir1/someFile.html @@ -0,0 +1,5 @@ + + +

Yo!

+ + diff --git a/proposal/myrmidon/src/test/org/apache/aut/bzip2/BzipTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/BzipTestCase.java similarity index 95% rename from proposal/myrmidon/src/test/org/apache/aut/bzip2/BzipTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/BzipTestCase.java index 3820e79fa..2bd65da42 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/bzip2/BzipTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/BzipTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.bzip2; +package org.apache.aut.bzip2.test; import java.io.File; import java.io.FileInputStream; @@ -16,6 +16,8 @@ import java.io.OutputStream; import junit.framework.TestCase; import org.apache.avalon.excalibur.io.FileUtil; import org.apache.avalon.excalibur.io.IOUtil; +import org.apache.aut.bzip2.CBZip2OutputStream; +import org.apache.aut.bzip2.CBZip2InputStream; /** * A test the stress tested the BZip implementation to verify @@ -24,12 +26,12 @@ import org.apache.avalon.excalibur.io.IOUtil; * @author Peter Donald * @version $Revision$ $Date$ */ -public class BzipTest +public class BzipTestCase extends TestCase { private final static byte[] HEADER = new byte[]{(byte)'B', (byte)'Z'}; - public BzipTest( final String name ) + public BzipTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/asf-logo-huge.tar b/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/asf-logo-huge.tar new file mode 100644 index 0000000000000000000000000000000000000000..3f92609782473ce883258bc08c0578d146350e41 GIT binary patch literal 3215360 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 z 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 literal 0 HcmV?d00001 diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/asf-logo-huge.tar.bz2 b/proposal/myrmidon/src/testcases/org/apache/aut/bzip2/test/asf-logo-huge.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..7c2d2154a82fcf2c4fd4bef32fe7fcf0051a66f7 GIT binary patch literal 58089 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 Murdoch */ -public abstract class AbstractFileSystemTest +public abstract class AbstractFileSystemTestCase extends AbstractMyrmidonTest { private final static Resources REZ @@ -41,7 +47,7 @@ public abstract class AbstractFileSystemTest // Contents of "file1.txt" private String m_charContent; - public AbstractFileSystemTest( String name ) + public AbstractFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/AbstractReadOnlyFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/AbstractReadOnlyFileSystemTestCase.java similarity index 65% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/AbstractReadOnlyFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/AbstractReadOnlyFileSystemTestCase.java index 18f02c9d2..b415a6565 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/AbstractReadOnlyFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/AbstractReadOnlyFileSystemTestCase.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; + +import org.apache.aut.vfs.test.AbstractFileSystemTestCase; /** * File system tests which check that a read-only file system cannot be @@ -13,9 +15,9 @@ package org.apache.aut.vfs; * * @author Adam Murdoch */ -public abstract class AbstractReadOnlyFileSystemTest extends AbstractFileSystemTest +public abstract class AbstractReadOnlyFileSystemTestCase extends AbstractFileSystemTestCase { - public AbstractReadOnlyFileSystemTest( String name ) + public AbstractReadOnlyFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/AbstractWritableFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/AbstractWritableFileSystemTestCase.java similarity index 95% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/AbstractWritableFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/AbstractWritableFileSystemTestCase.java index ad57831aa..06a73c132 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/AbstractWritableFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/AbstractWritableFileSystemTestCase.java @@ -5,21 +5,25 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import java.io.OutputStream; import java.util.HashSet; import java.util.Set; +import org.apache.aut.vfs.test.AbstractFileSystemTestCase; +import org.apache.aut.vfs.FileObject; +import org.apache.aut.vfs.FileType; +import org.apache.aut.vfs.FileSystemException; /** * File system test that check that a file system can be modified. * * @author Adam Murdoch */ -public abstract class AbstractWritableFileSystemTest - extends AbstractFileSystemTest +public abstract class AbstractWritableFileSystemTestCase + extends AbstractFileSystemTestCase { - public AbstractWritableFileSystemTest( String name ) + public AbstractWritableFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/FtpFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/FtpFileSystemTestCase.java similarity index 79% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/FtpFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/FtpFileSystemTestCase.java index 56a344802..0788c6eed 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/FtpFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/FtpFileSystemTestCase.java @@ -5,19 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import org.apache.aut.vfs.provider.ftp.FtpFileSystemProvider; +import org.apache.aut.vfs.test.AbstractWritableFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for FTP file systems. * * @author Adam Murdoch */ -public class FtpFileSystemTest - extends AbstractWritableFileSystemTest +public class FtpFileSystemTestCase + extends AbstractWritableFileSystemTestCase { - public FtpFileSystemTest( String name ) + public FtpFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/LocalFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/LocalFileSystemTestCase.java similarity index 84% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/LocalFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/LocalFileSystemTestCase.java index e0218041e..540ec36f6 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/LocalFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/LocalFileSystemTestCase.java @@ -5,18 +5,20 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import java.io.File; +import org.apache.aut.vfs.test.AbstractWritableFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the local file system. * * @author Adam Murdoch */ -public class LocalFileSystemTest extends AbstractWritableFileSystemTest +public class LocalFileSystemTestCase extends AbstractWritableFileSystemTestCase { - public LocalFileSystemTest( String name ) + public LocalFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/NestedZipFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java similarity index 80% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/NestedZipFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java index b5523a688..652dcf5b9 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/NestedZipFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/NestedZipFileSystemTestCase.java @@ -5,19 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import org.apache.aut.vfs.provider.zip.ZipFileSystemProvider; +import org.apache.aut.vfs.test.AbstractReadOnlyFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the Zip file system, using a zip file nested inside another zip file. * * @author Adam Murdoch */ -public class NestedZipFileSystemTest - extends AbstractReadOnlyFileSystemTest +public class NestedZipFileSystemTestCase + extends AbstractReadOnlyFileSystemTestCase { - public NestedZipFileSystemTest( String name ) + public NestedZipFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/vfs/SmbFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/SmbFileSystemTestCase.java similarity index 80% rename from proposal/myrmidon/src/test/org/apache/aut/vfs/SmbFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/SmbFileSystemTestCase.java index c3ff819e7..bf0402376 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/vfs/SmbFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/SmbFileSystemTestCase.java @@ -5,18 +5,20 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import org.apache.aut.vfs.provider.smb.SmbFileSystemProvider; +import org.apache.aut.vfs.test.AbstractWritableFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the SMB file system. * * @author Adam Murdoch */ -public class SmbFileSystemTest extends AbstractWritableFileSystemTest +public class SmbFileSystemTestCase extends AbstractWritableFileSystemTestCase { - public SmbFileSystemTest( String name ) + public SmbFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/ZipFileSystemTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/ZipFileSystemTestCase.java similarity index 76% rename from proposal/myrmidon/src/testcases/org/apache/aut/vfs/ZipFileSystemTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/ZipFileSystemTestCase.java index 4c8b4af38..ded939ef6 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/vfs/ZipFileSystemTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/vfs/test/ZipFileSystemTestCase.java @@ -5,19 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.vfs; +package org.apache.aut.vfs.test; import java.io.File; import org.apache.aut.vfs.provider.zip.ZipFileSystemProvider; +import org.apache.aut.vfs.test.AbstractReadOnlyFileSystemTestCase; +import org.apache.aut.vfs.FileObject; /** * Tests for the Zip file system. * * @author Adam Murdoch */ -public class ZipFileSystemTest extends AbstractReadOnlyFileSystemTest +public class ZipFileSystemTestCase extends AbstractReadOnlyFileSystemTestCase { - public ZipFileSystemTest( String name ) + public ZipFileSystemTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/zip/AsiExtraFieldTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/AsiExtraFieldTestCase.java similarity index 96% rename from proposal/myrmidon/src/testcases/org/apache/aut/zip/AsiExtraFieldTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/zip/test/AsiExtraFieldTestCase.java index 246ca1b76..2337f3feb 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/zip/AsiExtraFieldTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/AsiExtraFieldTestCase.java @@ -5,21 +5,23 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import java.util.zip.ZipException; import junit.framework.TestCase; +import org.apache.aut.zip.UnixStat; +import org.apache.aut.zip.AsiExtraField; /** * JUnit testcases AsiExtraField. * * @author Stefan Bodewig */ -public class AsiExtraFieldTest +public class AsiExtraFieldTestCase extends TestCase implements UnixStat { - public AsiExtraFieldTest( final String name ) + public AsiExtraFieldTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ExtraFieldUtilsTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ExtraFieldUtilsTestCase.java similarity index 91% rename from proposal/myrmidon/src/testcases/org/apache/aut/zip/ExtraFieldUtilsTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ExtraFieldUtilsTestCase.java index 6e2be5d4d..7f4a73e6c 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ExtraFieldUtilsTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ExtraFieldUtilsTestCase.java @@ -5,16 +5,22 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import junit.framework.TestCase; +import org.apache.aut.zip.UnixStat; +import org.apache.aut.zip.AsiExtraField; +import org.apache.aut.zip.UnrecognizedExtraField; +import org.apache.aut.zip.ZipShort; +import org.apache.aut.zip.ZipExtraField; +import org.apache.aut.zip.ExtraFieldUtils; /** * JUnit testcases ExtraFieldUtils. * * @author Stefan Bodewig */ -public class ExtraFieldUtilsTest +public class ExtraFieldUtilsTestCase extends TestCase implements UnixStat { @@ -23,7 +29,7 @@ public class ExtraFieldUtilsTest private byte[] m_data; private byte[] m_local; - public ExtraFieldUtilsTest( final String name ) + public ExtraFieldUtilsTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipEntryTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipEntryTestCase.java similarity index 90% rename from proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipEntryTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipEntryTestCase.java index 24e919ee0..df87812f4 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipEntryTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipEntryTestCase.java @@ -5,20 +5,25 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import java.util.NoSuchElementException; import junit.framework.TestCase; +import org.apache.aut.zip.AsiExtraField; +import org.apache.aut.zip.UnrecognizedExtraField; +import org.apache.aut.zip.ZipEntry; +import org.apache.aut.zip.ZipExtraField; +import org.apache.aut.zip.ZipShort; /** * JUnit testcases ZipEntry. * * @author Stefan Bodewig */ -public class ZipEntryTest +public class ZipEntryTestCase extends TestCase { - public ZipEntryTest( final String name ) + public ZipEntryTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/test/org/apache/aut/zip/ZipLongTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipLongTestCase.java similarity index 94% rename from proposal/myrmidon/src/test/org/apache/aut/zip/ZipLongTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipLongTestCase.java index e73f02d53..501b5f491 100644 --- a/proposal/myrmidon/src/test/org/apache/aut/zip/ZipLongTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipLongTestCase.java @@ -5,20 +5,21 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import junit.framework.TestCase; +import org.apache.aut.zip.ZipLong; /** * JUnit 3 testcases for org.apache.tools.zip.ZipLong. * * @author Stefan Bodewig */ -public class ZipLongTest +public class ZipLongTestCase extends TestCase { - public ZipLongTest( final String name ) + public ZipLongTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipShortTest.java b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipShortTestCase.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipShortTest.java rename to proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipShortTestCase.java index ba9c459fb..7e45b1d48 100644 --- a/proposal/myrmidon/src/testcases/org/apache/aut/zip/ZipShortTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/aut/zip/test/ZipShortTestCase.java @@ -5,19 +5,20 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.aut.zip; +package org.apache.aut.zip.test; import junit.framework.TestCase; +import org.apache.aut.zip.ZipShort; /** * JUnit 3 testcases for org.apache.tools.zip.ZipShort. * * @author Stefan Bodewig */ -public class ZipShortTest +public class ZipShortTestCase extends TestCase { - public ZipShortTest( String name ) + public ZipShortTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/AbstractMyrmidonTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/AbstractMyrmidonTest.java index b9b0d3689..fbef96e5a 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/AbstractMyrmidonTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/AbstractMyrmidonTest.java @@ -10,6 +10,8 @@ package org.apache.myrmidon; import java.io.File; import java.io.IOException; import junit.framework.TestCase; +import org.apache.avalon.excalibur.i18n.Resources; +import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.framework.ExceptionUtil; import org.apache.avalon.framework.logger.Logger; import org.apache.myrmidon.frontends.BasicLogger; @@ -27,6 +29,36 @@ public abstract class AbstractMyrmidonTest private final File m_baseDir; private Logger m_logger; + protected static final Resources getResourcesForTested( final Class clazz ) + { + final Package pkg = clazz.getPackage(); + + String baseName; + if( null == pkg ) + { + final String name = clazz.getName(); + if( -1 == name.lastIndexOf( "." ) ) + { + baseName = ""; + } + else + { + baseName = name.substring( 0, name.lastIndexOf( "." ) ); + } + } + else + { + baseName = pkg.getName(); + } + + if( baseName.endsWith( ".test" ) ) + { + baseName = baseName.substring( 0, baseName.length() - 5 ); + } + + return ResourceManager.getBaseResources( baseName + ".Resources", AbstractMyrmidonTest.class.getClassLoader() ); + } + public AbstractMyrmidonTest( String name ) { super( name ); @@ -162,7 +194,7 @@ public abstract class AbstractMyrmidonTest */ protected void assertSameMessage( final String message, final Throwable throwable ) { - assertSameMessage( new String[] { message }, throwable ); + assertSameMessage( new String[]{message}, throwable ); } /** diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/DefaultProjectBuilderTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/DefaultProjectBuilderTestCase.java similarity index 95% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/DefaultProjectBuilderTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/DefaultProjectBuilderTestCase.java index 00c706cca..af901c97d 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/DefaultProjectBuilderTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/DefaultProjectBuilderTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.builder; +package org.apache.myrmidon.components.builder.test; import java.io.File; import java.util.Arrays; @@ -13,24 +13,25 @@ import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.excalibur.io.FileUtil; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.components.builder.DefaultProjectBuilder; +import org.apache.myrmidon.components.builder.DefaultProject; import org.apache.myrmidon.interfaces.builder.ProjectException; import org.apache.myrmidon.interfaces.model.Project; /** - * Test cases for {@link DefaultProjectBuilder}. + * Test cases for {@link org.apache.myrmidon.components.builder.DefaultProjectBuilder}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class DefaultProjectBuilderTest +public class DefaultProjectBuilderTestCase extends AbstractMyrmidonTest { - private final static Resources REZ - = ResourceManager.getPackageResources( DefaultProjectBuilderTest.class ); + private final static Resources REZ = getResourcesForTested( DefaultProjectBuilderTestCase.class ); private DefaultProjectBuilder m_builder; - public DefaultProjectBuilderTest( String name ) + public DefaultProjectBuilderTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-project-name.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-project-name.ant new file mode 100644 index 000000000..7b0ed6f75 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-project-name.ant @@ -0,0 +1,4 @@ + + + + diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-target-name.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-target-name.ant new file mode 100644 index 000000000..8c7186956 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-target-name.ant @@ -0,0 +1,5 @@ + + + + + diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-version.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-version.ant new file mode 100644 index 000000000..922f14aee --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-version.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-xml.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-xml.ant new file mode 100644 index 000000000..91717fd16 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/bad-xml.ant @@ -0,0 +1 @@ +this ain't xml. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/defaults.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/defaults.ant new file mode 100644 index 000000000..b36a5c7ce --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/defaults.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/mismatched-version.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/mismatched-version.ant new file mode 100644 index 000000000..b9176c9c0 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/mismatched-version.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/no-version.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/no-version.ant new file mode 100644 index 000000000..d1979fedf --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/no-version.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-base-dir.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-base-dir.ant new file mode 100644 index 000000000..56fe72aa4 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-base-dir.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-default-target.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-default-target.ant new file mode 100644 index 000000000..f83f3bbeb --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-default-target.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-project-name.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-project-name.ant new file mode 100644 index 000000000..a8ae1a941 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/builder/test/set-project-name.ant @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/ConfigTestConfigurable.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/ConfigTestConfigurable.java similarity index 87% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/ConfigTestConfigurable.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/ConfigTestConfigurable.java index 9f3898fde..4a1d5d628 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/ConfigTestConfigurable.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/ConfigTestConfigurable.java @@ -5,14 +5,14 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.avalon.framework.configuration.Configurable; import org.apache.avalon.framework.configuration.Configuration; import org.apache.avalon.framework.configuration.ConfigurationException; /** - * Simple class to test {@link Configurable}. + * Simple class to test {@link org.apache.avalon.framework.configuration.Configurable}. * * @author Peter Donald * @version $Revision$ $Date$ diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/DefaultConfigurerTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/DefaultConfigurerTestCase.java similarity index 92% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/DefaultConfigurerTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/DefaultConfigurerTestCase.java index fedc0cde3..d814cda09 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/DefaultConfigurerTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/DefaultConfigurerTestCase.java @@ -5,40 +5,39 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import java.io.File; import org.apache.antlib.core.StringToIntegerConverter; -import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.framework.ExceptionUtil; import org.apache.avalon.framework.configuration.ConfigurationException; import org.apache.avalon.framework.configuration.DefaultConfiguration; import org.apache.myrmidon.api.TaskContext; import org.apache.myrmidon.components.AbstractComponentTest; -import org.apache.myrmidon.components.configurer.data.ConfigTestAttributeConvert; -import org.apache.myrmidon.components.configurer.data.ConfigTestConfigAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestContent; -import org.apache.myrmidon.components.configurer.data.ConfigTestEmpty; -import org.apache.myrmidon.components.configurer.data.ConfigTestIdResolve; -import org.apache.myrmidon.components.configurer.data.ConfigTestIgnoreStringMethods; -import org.apache.myrmidon.components.configurer.data.ConfigTestInterfaceAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestMismatchedRefType; -import org.apache.myrmidon.components.configurer.data.ConfigTestMultipleTypedAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestNestedErrors; -import org.apache.myrmidon.components.configurer.data.ConfigTestNonInterfaceAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestPropResolution; -import org.apache.myrmidon.components.configurer.data.ConfigTestReferenceAttribute; -import org.apache.myrmidon.components.configurer.data.ConfigTestReferenceConversion; -import org.apache.myrmidon.components.configurer.data.ConfigTestReferenceElement; -import org.apache.myrmidon.components.configurer.data.ConfigTestSetAttribute; -import org.apache.myrmidon.components.configurer.data.ConfigTestSetElement; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdderConversion; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdderReference; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedAdderRole; -import org.apache.myrmidon.components.configurer.data.ConfigTestTypedConfigAdder; -import org.apache.myrmidon.components.configurer.data.ConfigTestUnknownReference; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestAttributeConvert; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestConfigAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestContent; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestEmpty; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestIdResolve; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestIgnoreStringMethods; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestInterfaceAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestMismatchedRefType; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestMultipleTypedAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestNestedErrors; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestNonInterfaceAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestPropResolution; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestReferenceAttribute; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestReferenceConversion; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestReferenceElement; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestSetAttribute; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestSetElement; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdderConversion; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdderReference; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedAdderRole; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestTypedConfigAdder; +import org.apache.myrmidon.components.configurer.test.data.ConfigTestUnknownReference; import org.apache.myrmidon.components.workspace.DefaultTaskContext; import org.apache.myrmidon.framework.DataType; import org.apache.myrmidon.interfaces.configurer.Configurer; @@ -49,16 +48,16 @@ import org.apache.myrmidon.interfaces.role.RoleInfo; * * @author Adam Murdoch */ -public class DefaultConfigurerTest +public class DefaultConfigurerTestCase extends AbstractComponentTest { private final static Resources REZ = - ResourceManager.getPackageResources( DefaultConfigurerTest.class ); + getResourcesForTested( DefaultConfigurerTestCase.class ); private Configurer m_configurer; private DefaultTaskContext m_context; - public DefaultConfigurerTest( String name ) + public DefaultConfigurerTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole1.java similarity index 90% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole1.java index f62943b3c..c7dc8ae9e 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.myrmidon.framework.DataType; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole1Adaptor.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole1Adaptor.java similarity index 87% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole1Adaptor.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole1Adaptor.java index a683499d3..4c8f448d7 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyRole1Adaptor.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole1Adaptor.java @@ -5,9 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Adapts an Object to MyRole diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole2.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole2.java similarity index 88% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole2.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole2.java index 0b061d8b4..e21a3ee95 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/MyRole2.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyRole2.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; /** * A basic interface to test configurer. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyType1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyType1.java similarity index 82% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyType1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyType1.java index ee40c9eae..a0b6b7b70 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyType1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyType1.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; + +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A basic implementation of MyRole1 to test configurer. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyType2.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyType2.java similarity index 82% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyType2.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyType2.java index c573feff1..a605ddeed 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/MyType2.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/MyType2.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; + +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A basic implementation of MyRole1 to test configurer. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/ObjectToMyRole1Converter.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/ObjectToMyRole1Converter.java similarity index 81% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/ObjectToMyRole1Converter.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/ObjectToMyRole1Converter.java index 34934097c..06d74ea6e 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/ObjectToMyRole1Converter.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/ObjectToMyRole1Converter.java @@ -5,10 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer; +package org.apache.myrmidon.components.configurer.test; import org.apache.aut.converter.AbstractConverter; import org.apache.aut.converter.ConverterException; +import org.apache.myrmidon.components.configurer.test.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1Adaptor; /** * Converts from Object to MyRole1. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestAttributeConvert.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestAttributeConvert.java similarity index 94% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestAttributeConvert.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestAttributeConvert.java index 6830561d2..840e6d43c 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestAttributeConvert.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestAttributeConvert.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import org.apache.myrmidon.components.AbstractComponentTest; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestConfigAdder.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestConfigAdder.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestConfigAdder.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestConfigAdder.java index 54136d96f..1568b4f28 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestConfigAdder.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestConfigAdder.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import org.apache.avalon.framework.configuration.Configuration; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestContent.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestContent.java similarity index 79% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestContent.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestContent.java index 1d28ef88f..0ab4e74c8 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestContent.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestContent.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. @@ -25,7 +25,7 @@ public class ConfigTestContent public boolean equals( final Object obj ) { final ConfigTestContent test = (ConfigTestContent)obj; - if( !DefaultConfigurerTest.equals( m_content, test.m_content ) ) + if( !DefaultConfigurerTestCase.equals( m_content, test.m_content ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestEmpty.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestEmpty.java similarity index 89% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestEmpty.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestEmpty.java index 00c5f2a8f..b39612392 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestEmpty.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestEmpty.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestIdResolve.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestIdResolve.java similarity index 79% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestIdResolve.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestIdResolve.java index 0de5265df..22fe5d770 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestIdResolve.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestIdResolve.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. @@ -25,7 +25,7 @@ public class ConfigTestIdResolve public boolean equals( final Object obj ) { final ConfigTestIdResolve test = (ConfigTestIdResolve)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestIgnoreStringMethods.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestIgnoreStringMethods.java similarity index 86% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestIgnoreStringMethods.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestIgnoreStringMethods.java index a8afb0a49..369649b7c 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestIgnoreStringMethods.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestIgnoreStringMethods.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import junit.framework.AssertionFailedError; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A test class with multiple setters/adders/creators for a property. @@ -24,7 +24,7 @@ public class ConfigTestIgnoreStringMethods public boolean equals( Object obj ) { ConfigTestIgnoreStringMethods test = (ConfigTestIgnoreStringMethods)obj; - if( !DefaultConfigurerTest.equals( m_prop1, test.m_prop1 ) ) + if( !DefaultConfigurerTestCase.equals( m_prop1, test.m_prop1 ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestInterfaceAdder.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestInterfaceAdder.java similarity index 86% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestInterfaceAdder.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestInterfaceAdder.java index 48c15109e..e622b15af 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestInterfaceAdder.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestInterfaceAdder.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A test class with an interface property. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestMismatchedRefType.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestMismatchedRefType.java similarity index 80% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestMismatchedRefType.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestMismatchedRefType.java index a00b94df8..940465036 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestMismatchedRefType.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestMismatchedRefType.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestMultipleTypedAdder.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestMultipleTypedAdder.java similarity index 75% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestMultipleTypedAdder.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestMultipleTypedAdder.java index c70b8e479..256aed403 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestMultipleTypedAdder.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestMultipleTypedAdder.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; -import org.apache.myrmidon.components.configurer.MyRole1; -import org.apache.myrmidon.components.configurer.MyRole2; +import org.apache.myrmidon.components.configurer.test.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole2; /** * Simple class with more than one typed adder method. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestNestedErrors.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestNestedErrors.java similarity index 87% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestNestedErrors.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestNestedErrors.java index ce1c04bac..e6f14a6d4 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestNestedErrors.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestNestedErrors.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; /** * A simple test class. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestNonInterfaceAdder.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestNonInterfaceAdder.java similarity index 91% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestNonInterfaceAdder.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestNonInterfaceAdder.java index 45535c961..432dd4e82 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestNonInterfaceAdder.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestNonInterfaceAdder.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; /** * Simple class to test typed adder. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestPropResolution.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestPropResolution.java similarity index 79% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestPropResolution.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestPropResolution.java index 6a9e44c56..48c729af0 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestPropResolution.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestPropResolution.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.List; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * Simple class to test typed adder. @@ -24,7 +24,7 @@ public class ConfigTestPropResolution public boolean equals( final Object obj ) { final ConfigTestPropResolution test = (ConfigTestPropResolution)obj; - if( !DefaultConfigurerTest.equals( m_prop, test.m_prop ) ) + if( !DefaultConfigurerTestCase.equals( m_prop, test.m_prop ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceAttribute.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceAttribute.java similarity index 79% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceAttribute.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceAttribute.java index 9ec47f727..5946cdcd7 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceAttribute.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceAttribute.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.List; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * Simple class to test typed adder. @@ -24,7 +24,7 @@ public class ConfigTestReferenceAttribute public boolean equals( final Object obj ) { final ConfigTestReferenceAttribute test = (ConfigTestReferenceAttribute)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceConversion.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceConversion.java similarity index 85% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceConversion.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceConversion.java index 5d1055d9a..4862d3d78 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceConversion.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceConversion.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * A simple test class. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceElement.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceElement.java similarity index 76% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceElement.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceElement.java index 4bbb9f893..d6d1cd007 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestReferenceElement.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestReferenceElement.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class. @@ -23,7 +23,7 @@ public class ConfigTestReferenceElement public boolean equals( Object obj ) { ConfigTestReferenceElement test = (ConfigTestReferenceElement)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestSetAttribute.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetAttribute.java similarity index 83% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestSetAttribute.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetAttribute.java index cf44c852f..0a76b998a 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestSetAttribute.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetAttribute.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.List; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * Simple class to test typed adder. @@ -25,7 +25,7 @@ public class ConfigTestSetAttribute public boolean equals( final Object obj ) { final ConfigTestSetAttribute test = (ConfigTestSetAttribute)obj; - if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestSetElement.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetElement.java similarity index 79% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestSetElement.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetElement.java index bc7b503fc..704248b46 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestSetElement.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestSetElement.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class. @@ -25,7 +25,7 @@ public class ConfigTestSetElement public boolean equals( Object obj ) { ConfigTestSetElement test = (ConfigTestSetElement)obj; - if( !DefaultConfigurerTest.equals( m_prop, test.m_prop ) ) + if( !DefaultConfigurerTestCase.equals( m_prop, test.m_prop ) ) { return false; } @@ -33,7 +33,7 @@ public class ConfigTestSetElement { return false; } - else if( !DefaultConfigurerTest.equals( m_someProp, test.m_someProp ) ) + else if( !DefaultConfigurerTestCase.equals( m_someProp, test.m_someProp ) ) { return false; } diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdder.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdder.java similarity index 87% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdder.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdder.java index 7e1a75333..4beafcdd6 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdder.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdder.java @@ -5,11 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import org.apache.avalon.framework.configuration.Configuration; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Simple class to test adder for Configurations. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderConversion.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderConversion.java similarity index 88% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderConversion.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderConversion.java index b6a0cb9e8..0aeb29d9b 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderConversion.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderConversion.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; import org.apache.myrmidon.framework.DataType; /** diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderReference.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderReference.java similarity index 86% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderReference.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderReference.java index 20a9c403f..6ce6bc078 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderReference.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderReference.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Simple class to test typed adder. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderRole.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderRole.java similarity index 86% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderRole.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderRole.java index ed950288a..d8ac8d59e 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedAdderRole.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedAdderRole.java @@ -5,10 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; -import org.apache.myrmidon.components.configurer.MyRole1; +import org.apache.myrmidon.components.configurer.test.MyRole1; /** * Simple class to test typed adder. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedConfigAdder.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedConfigAdder.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedConfigAdder.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedConfigAdder.java index 790687fb8..2d7bcf02d 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestTypedConfigAdder.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestTypedConfigAdder.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import org.apache.avalon.framework.configuration.Configuration; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestUnknownReference.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestUnknownReference.java similarity index 80% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestUnknownReference.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestUnknownReference.java index 32d17784b..b27b04a8c 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/data/ConfigTestUnknownReference.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/configurer/test/data/ConfigTestUnknownReference.java @@ -5,12 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.configurer.data; +package org.apache.myrmidon.components.configurer.test.data; import java.util.ArrayList; import java.util.List; import org.apache.myrmidon.framework.DataType; -import org.apache.myrmidon.components.configurer.DefaultConfigurerTest; +import org.apache.myrmidon.components.configurer.test.DefaultConfigurerTestCase; /** * A simple test class with string properties. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java similarity index 97% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java index 485cd7da6..b47b5eb53 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/DefaultDeployerTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/DefaultDeployerTestCase.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; import java.io.File; import org.apache.aut.converter.Converter; @@ -24,7 +24,7 @@ import org.apache.myrmidon.interfaces.type.TypeFactory; * * @author Adam Murdoch */ -public class DefaultDeployerTest +public class DefaultDeployerTestCase extends AbstractComponentTest { private static final String TEST_TYPE1_NAME = "test-type1"; @@ -32,7 +32,7 @@ public class DefaultDeployerTest private Deployer m_deployer; private Converter m_converter; - public DefaultDeployerTest( final String name ) + public DefaultDeployerTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestConverter1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestConverter1.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestConverter1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestConverter1.java index fc9abe6c3..af61edaa2 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestConverter1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestConverter1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; import org.apache.aut.converter.Converter; import org.apache.aut.converter.ConverterException; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestRole1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestRole1.java similarity index 89% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestRole1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestRole1.java index 93dc94f6d..60fc79166 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/TestRole1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestRole1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; /** * A test role interface. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestType1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestType1.java similarity index 80% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestType1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestType1.java index 444ea9e62..7cf53f163 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/deployer/TestType1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/TestType1.java @@ -5,9 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.deployer; +package org.apache.myrmidon.components.deployer.test; import org.apache.myrmidon.framework.DataType; +import org.apache.myrmidon.components.deployer.test.TestRole1; /** * A test data-type. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml new file mode 100644 index 000000000..43d07cd67 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-descriptor.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-roles.xml b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-roles.xml new file mode 100644 index 000000000..86e6070ec --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/deployer/test/ant-roles.xml @@ -0,0 +1,4 @@ + + + + diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/DefaultEmbeddorTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/DefaultEmbeddorTest.java similarity index 98% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/DefaultEmbeddorTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/DefaultEmbeddorTest.java index 91289c5d1..20d971643 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/embeddor/DefaultEmbeddorTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/DefaultEmbeddorTest.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.embeddor; +package org.apache.myrmidon.components.embeddor.test; import java.io.File; import org.apache.avalon.framework.parameters.Parameters; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/project-builder.ant b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/project-builder.ant new file mode 100644 index 000000000..7f52d2702 --- /dev/null +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/embeddor/test/project-builder.ant @@ -0,0 +1,6 @@ + + + + A log message + + \ No newline at end of file diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java similarity index 93% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java index 9e79a0d2b..21aba6d3d 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/property/AbstractPropertyResolverTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/AbstractPropertyResolverTestCase.java @@ -5,11 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.property; +package org.apache.myrmidon.components.property.test; import java.io.File; import java.util.Date; -import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.framework.context.Context; import org.apache.myrmidon.AbstractMyrmidonTest; @@ -23,16 +22,15 @@ import org.apache.myrmidon.interfaces.property.PropertyResolver; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public abstract class AbstractPropertyResolverTest +public abstract class AbstractPropertyResolverTestCase extends AbstractMyrmidonTest { - protected final static Resources REZ - = ResourceManager.getPackageResources( AbstractPropertyResolverTest.class ); + protected final static Resources REZ = getResourcesForTested( AbstractPropertyResolverTestCase.class ); protected PropertyResolver m_resolver; protected DefaultTaskContext m_context; - public AbstractPropertyResolverTest( String name ) + public AbstractPropertyResolverTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/ClassicPropertyResolverTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/ClassicPropertyResolverTestCase.java similarity index 66% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/ClassicPropertyResolverTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/ClassicPropertyResolverTestCase.java index a0779291f..12eef075a 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/ClassicPropertyResolverTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/ClassicPropertyResolverTestCase.java @@ -5,20 +5,22 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.property; +package org.apache.myrmidon.components.property.test; import org.apache.myrmidon.interfaces.property.PropertyResolver; +import org.apache.myrmidon.components.property.test.AbstractPropertyResolverTestCase; +import org.apache.myrmidon.components.property.ClassicPropertyResolver; /** - * A test for {@link ClassicPropertyResolver}. + * A test for {@link org.apache.myrmidon.components.property.ClassicPropertyResolver}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class ClassicPropertyResolverTest - extends AbstractPropertyResolverTest +public class ClassicPropertyResolverTestCase + extends AbstractPropertyResolverTestCase { - public ClassicPropertyResolverTest( String name ) + public ClassicPropertyResolverTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/DefaultPropertyResolverTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/DefaultPropertyResolverTestCase.java similarity index 70% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/DefaultPropertyResolverTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/DefaultPropertyResolverTestCase.java index 4d1f2198d..0183adea8 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/DefaultPropertyResolverTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/property/test/DefaultPropertyResolverTestCase.java @@ -5,20 +5,22 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.property; +package org.apache.myrmidon.components.property.test; import org.apache.myrmidon.interfaces.property.PropertyResolver; +import org.apache.myrmidon.components.property.test.AbstractPropertyResolverTestCase; +import org.apache.myrmidon.components.property.DefaultPropertyResolver; /** - * Functional tests for {@link DefaultPropertyResolver}. + * Functional tests for {@link org.apache.myrmidon.components.property.DefaultPropertyResolver}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class DefaultPropertyResolverTest - extends AbstractPropertyResolverTest +public class DefaultPropertyResolverTestCase + extends AbstractPropertyResolverTestCase { - public DefaultPropertyResolverTest( String name ) + public DefaultPropertyResolverTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/DefaultRoleManagerTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/test/DefaultRoleManagerTestCase.java similarity index 94% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/DefaultRoleManagerTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/test/DefaultRoleManagerTestCase.java index e2332b1ae..ba68eb68c 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/DefaultRoleManagerTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/role/test/DefaultRoleManagerTestCase.java @@ -5,11 +5,12 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.role; +package org.apache.myrmidon.components.role.test; import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.components.role.DefaultRoleManager; import org.apache.myrmidon.api.Task; import org.apache.myrmidon.interfaces.role.RoleException; import org.apache.myrmidon.interfaces.role.RoleInfo; @@ -21,15 +22,14 @@ import org.apache.myrmidon.interfaces.role.RoleManager; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class DefaultRoleManagerTest +public class DefaultRoleManagerTestCase extends AbstractMyrmidonTest { - private final static Resources REZ - = ResourceManager.getPackageResources( DefaultRoleManagerTest.class ); + private final static Resources REZ = getResourcesForTested( DefaultRoleManagerTestCase.class ); private RoleManager m_roleManager; - public DefaultRoleManagerTest( String name ) + public DefaultRoleManagerTestCase( String name ) { super( name ); } @@ -70,7 +70,7 @@ public class DefaultRoleManagerTest assertNull( unknownRole ); // Lookup an unknown role - unknownRole = m_roleManager.getRoleByType( DefaultRoleManagerTest.class ); + unknownRole = m_roleManager.getRoleByType( DefaultRoleManagerTestCase.class ); assertNull( unknownRole ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/InstantiatingServiceManagerTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/InstantiatingServiceManagerTestCase.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/InstantiatingServiceManagerTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/InstantiatingServiceManagerTestCase.java index 5f6464835..932978376 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/InstantiatingServiceManagerTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/InstantiatingServiceManagerTestCase.java @@ -5,13 +5,14 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import org.apache.avalon.excalibur.i18n.ResourceManager; import org.apache.avalon.excalibur.i18n.Resources; import org.apache.avalon.framework.parameters.Parameters; import org.apache.avalon.framework.service.ServiceException; import org.apache.myrmidon.components.AbstractComponentTest; +import org.apache.myrmidon.components.service.InstantiatingServiceManager; import org.apache.myrmidon.interfaces.role.RoleInfo; import org.apache.myrmidon.interfaces.role.RoleManager; import org.apache.myrmidon.interfaces.service.ServiceFactory; @@ -24,16 +25,15 @@ import org.apache.myrmidon.interfaces.type.TypeManager; * @author Adam Murdoch * @version $Revision$ $Date$ */ -public class InstantiatingServiceManagerTest +public class InstantiatingServiceManagerTestCase extends AbstractComponentTest { - private final static Resources REZ - = ResourceManager.getPackageResources( InstantiatingServiceManagerTest.class ); + private final static Resources REZ = getResourcesForTested( InstantiatingServiceManagerTestCase.class ); private InstantiatingServiceManager m_serviceManager; private Parameters m_parameters = new Parameters(); - public InstantiatingServiceManagerTest( final String name ) + public InstantiatingServiceManagerTestCase( final String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/LifecycleValidator.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/LifecycleValidator.java similarity index 97% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/LifecycleValidator.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/LifecycleValidator.java index 916f268cd..b95ac5ffe 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/LifecycleValidator.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/LifecycleValidator.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import junit.framework.Assert; import org.apache.avalon.framework.activity.Initializable; diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestService.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestService.java similarity index 89% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestService.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestService.java index 4c0485a52..302c2a5b3 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestService.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestService.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; /** * A service interface. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceFactory1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceFactory1.java similarity index 93% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceFactory1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceFactory1.java index bccf1dd98..10e0f69bc 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceFactory1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceFactory1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import org.apache.myrmidon.interfaces.service.AntServiceException; import org.apache.myrmidon.interfaces.service.ServiceFactory; diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceFactory2.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceFactory2.java similarity index 88% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceFactory2.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceFactory2.java index 8cae19da6..524d3cc04 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceFactory2.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceFactory2.java @@ -5,10 +5,11 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; import org.apache.myrmidon.interfaces.service.AntServiceException; import org.apache.myrmidon.interfaces.service.ServiceFactory; +import org.apache.myrmidon.components.service.test.LifecycleValidator; /** * A test service factory, which asserts that the factory has been properly diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceImpl1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceImpl1.java similarity index 80% rename from proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceImpl1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceImpl1.java index 69c393ab1..c22e4d0a7 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/components/service/TestServiceImpl1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceImpl1.java @@ -5,7 +5,9 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; + +import org.apache.myrmidon.components.service.test.TestService; /** * A test service implementation. diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceImpl2.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceImpl2.java similarity index 75% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceImpl2.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceImpl2.java index d715cf6dc..933d76383 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/TestServiceImpl2.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/components/service/test/TestServiceImpl2.java @@ -5,7 +5,10 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.components.service; +package org.apache.myrmidon.components.service.test; + +import org.apache.myrmidon.components.service.test.LifecycleValidator; +import org.apache.myrmidon.components.service.test.TestService; /** * A test service that asserts it has been set-up correctly. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java similarity index 90% rename from proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java index 51d9710ec..ff3368e19 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/model/DefaultNameValidatorTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/model/test/DefaultNameValidatorTestCase.java @@ -5,22 +5,23 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.model; +package org.apache.myrmidon.interfaces.model.test; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.interfaces.model.DefaultNameValidator; /** - * TestCases for {@link DefaultNameValidator}. + * TestCases for {@link org.apache.myrmidon.interfaces.model.DefaultNameValidator}. * * @author Darrell DeBoer * @version $Revision$ $Date$ */ -public class DefaultNameValidatorTest +public class DefaultNameValidatorTestCase extends AbstractMyrmidonTest { private DefaultNameValidator m_validator = new DefaultNameValidator(); - public DefaultNameValidatorTest( String name ) + public DefaultNameValidatorTestCase( String name ) { super( name ); } diff --git a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/MyType1.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/MyType1.java similarity index 91% rename from proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/MyType1.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/MyType1.java index e64a7914c..226b9a3bb 100644 --- a/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/MyType1.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/MyType1.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.type; +package org.apache.myrmidon.interfaces.type.test; /** * A basic implementation of a type to test the type factory. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/MyType2.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/MyType2.java similarity index 91% rename from proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/MyType2.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/MyType2.java index b652f6b84..a9418f1ae 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/MyType2.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/MyType2.java @@ -5,7 +5,7 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.type; +package org.apache.myrmidon.interfaces.type.test; /** * A basic implementation of a type to test the type factory. diff --git a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java similarity index 89% rename from proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java rename to proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java index a73626251..62ed33a88 100644 --- a/proposal/myrmidon/src/test/org/apache/myrmidon/interfaces/type/TypeFactoryTest.java +++ b/proposal/myrmidon/src/testcases/org/apache/myrmidon/interfaces/type/test/TypeFactoryTestCase.java @@ -5,11 +5,14 @@ * version 1.1, a copy of which has been included with this distribution in * the LICENSE.txt file. */ -package org.apache.myrmidon.interfaces.type; +package org.apache.myrmidon.interfaces.type.test; import java.io.File; import java.net.URL; import org.apache.myrmidon.AbstractMyrmidonTest; +import org.apache.myrmidon.interfaces.type.DefaultTypeFactory; +import org.apache.myrmidon.interfaces.type.ReloadingTypeFactory; +import org.apache.myrmidon.interfaces.type.TypeException; /** * These are unit tests that test the basic operation of TypeFactories. @@ -17,7 +20,7 @@ import org.apache.myrmidon.AbstractMyrmidonTest; * @author Peter Donald * @version $Revision$ $Date$ */ -public class TypeFactoryTest +public class TypeFactoryTestCase extends AbstractMyrmidonTest { private final static String TYPE_NAME1 = "my-type1"; @@ -27,7 +30,7 @@ public class TypeFactoryTest private final static String TYPE_CLASSNAME1 = TYPE_CLASS1.getName(); private final static String TYPE_CLASSNAME2 = TYPE_CLASS2.getName(); - public TypeFactoryTest( final String name ) + public TypeFactoryTestCase( final String name ) { super( name ); } @@ -62,7 +65,6 @@ public class TypeFactoryTest throws Exception { final File file = getTestResource( "types.jar" ); - final URL[] classpath = new URL[]{file.toURL()}; final ReloadingTypeFactory factory = new ReloadingTypeFactory( classpath, null ); factory.addNameClassMapping( TYPE_NAME1, TYPE_CLASSNAME1 );