From commits-return-3499-archive-asf-public=cust-asf.ponee.io@polygene.apache.org Wed Apr 18 03:24:52 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 1C5B518076D for ; Wed, 18 Apr 2018 03:24:49 +0200 (CEST) Received: (qmail 15172 invoked by uid 500); 18 Apr 2018 01:24:49 -0000 Mailing-List: contact commits-help@polygene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@polygene.apache.org Delivered-To: mailing list commits@polygene.apache.org Received: (qmail 15152 invoked by uid 99); 18 Apr 2018 01:24:48 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Apr 2018 01:24:48 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id BCEBCF3246; Wed, 18 Apr 2018 01:24:48 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: niclas@apache.org To: commits@polygene.apache.org Date: Wed, 18 Apr 2018 01:24:49 -0000 Message-Id: <3c032235f8b046839d5431bedcf37acb@git.apache.org> In-Reply-To: <9f4d89e27fde4c8b93eb017d2053f8d4@git.apache.org> References: <9f4d89e27fde4c8b93eb017d2053f8d4@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [2/2] polygene-java git commit: Managed to get everything to build and tests passing with only JUnit5 in place. Managed to get everything to build and tests passing with only JUnit5 in place. Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/f2fcd58d Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/f2fcd58d Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/f2fcd58d Branch: refs/heads/Migrate_Junit5 Commit: f2fcd58dbd2bc369515b3aa03f8116399b1813cd Parents: 7585af0 Author: niclas Authored: Wed Apr 18 08:25:05 2018 +0800 Committer: niclas Committed: Wed Apr 18 08:25:06 2018 +0800 ---------------------------------------------------------------------- .../polygene/gradle/code/CodePlugin.groovy | 3 + core/bootstrap/build.gradle | 2 + .../apache/polygene/bootstrap/ClassScanner.java | 4 +- .../polygene/bootstrap/ClassScannerTest.java | 2 +- .../associations/ImmutableAssociationTest.java | 2 +- .../runtime/mixin/InitializableTest.java | 7 +- .../query/QueryBuilderFactoryImplTest.java | 8 +- .../structure/TypeToCompositeLookupTest.java | 6 +- .../polygene/test/AbstractPolygeneBaseTest.java | 2 - .../polygene/test/PolygeneUnitExtension.java | 28 +++++++ .../apache/polygene/test/TemporaryFolder.java | 46 ++++++----- .../java/org/apache/polygene/test/TestName.java | 14 +--- .../test/indexing/AbstractAnyQueryTest.java | 3 +- .../test/indexing/AbstractEntityFinderTest.java | 7 +- .../test/indexing/layered/Suite1Case1.java | 2 +- .../test/indexing/layered/Suite1Case2.java | 2 +- .../polygene/test/util/NotYetImplemented.java | 80 -------------------- dependencies.gradle | 12 ++- extensions/cache-memcache/build.gradle | 2 +- .../cache/memcache/MemcacheCachePoolTest.java | 4 +- extensions/entitystore-berkeleydb/build.gradle | 2 +- extensions/entitystore-cassandra/build.gradle | 2 +- .../cassandra/CassandraEntityStoreTest.java | 5 +- .../CassandraEntityStoreTestSuite.java | 6 +- extensions/entitystore-jclouds/build.gradle | 2 +- .../entitystore/jclouds/JCloudsS3Test.java | 6 +- .../entitystore/jclouds/JCloudsS3TestSuite.java | 6 +- extensions/entitystore-mongodb/build.gradle | 2 +- .../mongodb/MongoDBEntityStoreTest.java | 4 +- .../mongodb/MongoDBEntityStoreTestSuite.java | 13 +++- .../MongoDBEntityStoreWithCacheTest.java | 4 +- .../PreferencesEntityStoreTestSuite.java | 1 + extensions/entitystore-redis/build.gradle | 2 +- .../entitystore/redis/RedisEntityStoreTest.java | 4 +- .../redis/RedisEntityStoreTestSuite.java | 17 +++-- .../redis/RedisEntityStoreWithCacheTest.java | 4 +- extensions/entitystore-riak/build.gradle | 2 +- .../entitystore/riak/RiakEntityStoreTest.java | 13 ++-- .../riak/RiakEntityStoreTestSuite.java | 25 +++--- .../riak/RiakEntityStoreWithCacheTest.java | 12 +-- extensions/entitystore-sql/build.gradle | 2 +- .../sql/DerbySQLEntityStoreTest.java | 3 +- .../sql/DerbySQLEntityStoreTestSuite.java | 3 +- .../entitystore/sql/H2SQLEntityStoreTest.java | 3 +- .../sql/H2SQLEntityStoreTestSuite.java | 3 +- .../entitystore/sql/MariaDbEntityStoreTest.java | 40 +++++++--- .../sql/MariaDbEntityStoreTestSuite.java | 8 +- .../entitystore/sql/MySQLEntityStoreTest.java | 7 +- .../sql/MySQLEntityStoreTestSuite.java | 7 +- .../sql/PostgreSQLEntityStoreTest.java | 14 ++-- .../sql/PostgreSQLEntityStoreTestSuite.java | 14 ++-- .../entitystore/sql/SQLiteEntityStoreTest.java | 3 +- .../sql/SQLiteEntityStoreTestSuite.java | 3 +- .../entitystore/sql/SqlEntityStoreTest.java | 3 +- extensions/entitystore-sqlkv/build.gradle | 2 +- .../sqlkv/MariaDbEntityStoreTest.java | 4 +- .../sqlkv/MariaDbEntityStoreTestSuite.java | 4 +- .../entitystore/sqlkv/MySQLEntityStoreTest.java | 4 +- .../sqlkv/MySQLEntityStoreTestSuite.java | 4 +- .../sqlkv/PostgreSQLEntityStoreTest.java | 7 +- .../sqlkv/PostgreSQLEntityStoreTestSuite.java | 10 ++- .../elasticsearch/ElasticSearchFinderTest.java | 3 +- .../elasticsearch/ElasticSearchQueryTest.java | 11 ++- .../index/elasticsearch/ElasticSearchTest.java | 10 +-- .../EmbeddedElasticSearchExtension.java | 30 +++++--- extensions/indexing-sql/build.gradle | 2 +- .../postgresql/PostgreSQLComplexQueryTest.java | 8 +- .../postgresql/PostgreSQLDBIntegrityTest.java | 8 +- .../postgresql/PostgreSQLEntityFinderTest.java | 8 +- .../sql/postgresql/PostgreSQLQueryTest.java | 8 +- .../index/sql/postgresql/SQLTestHelper.java | 11 +++ .../polygene/index/reindexer/ReindexerTest.java | 2 +- internals/testsupport-internal/build.gradle | 9 --- .../src/main/docker/mariadb/Dockerfile | 16 ++++ .../src/main/docker/mysql/Dockerfile | 2 +- .../polygene/test/docker/DockerExtension.java | 23 ------ .../org/apache/polygene/test/docker/Dummy.java | 24 ++++++ .../apache/polygene/test/docker/package.html | 25 ------ libraries/http/build.gradle | 1 + .../library/scripting/ScriptMixinTest.java | 6 +- .../generator/PostgreSQLDataDefinitionTest.java | 2 - .../sql/generator/PostgreSQLQueryTest.java | 2 - .../uid/sequence/PersistingSequencingTest.java | 8 +- .../uid/sequence/TransientSequencingTest.java | 11 +-- 84 files changed, 387 insertions(+), 359 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/buildSrc/src/main/groovy/org/apache/polygene/gradle/code/CodePlugin.groovy ---------------------------------------------------------------------- diff --git a/buildSrc/src/main/groovy/org/apache/polygene/gradle/code/CodePlugin.groovy b/buildSrc/src/main/groovy/org/apache/polygene/gradle/code/CodePlugin.groovy index 5653967..a30706a 100644 --- a/buildSrc/src/main/groovy/org/apache/polygene/gradle/code/CodePlugin.groovy +++ b/buildSrc/src/main/groovy/org/apache/polygene/gradle/code/CodePlugin.groovy @@ -82,6 +82,8 @@ class CodePlugin implements Plugin } } } + def junitEngine = declaration.libraries.get("junit_engine") + project.dependencies.add "testRuntime", junitEngine } private static void configureTest( Project project ) @@ -104,6 +106,7 @@ class CodePlugin implements Plugin def workDir = new File( testDir, 'work' ) def tmpDir = new File( testDir, 'tmp' ) def homeDir = new File( testDir, 'home' ) + testTask.useJUnitPlatform() testTask.workingDir = workDir testTask.systemProperties << ( [ 'user.dir' : workDir.absolutePath, http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/bootstrap/build.gradle ---------------------------------------------------------------------- diff --git a/core/bootstrap/build.gradle b/core/bootstrap/build.gradle index 594c1e2..5cf51f8 100644 --- a/core/bootstrap/build.gradle +++ b/core/bootstrap/build.gradle @@ -26,4 +26,6 @@ dependencies { api polygene.core.spi testRuntimeOnly polygene.core.runtime + + testRuntime libraries.kotlin } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/bootstrap/src/main/java/org/apache/polygene/bootstrap/ClassScanner.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/main/java/org/apache/polygene/bootstrap/ClassScanner.java b/core/bootstrap/src/main/java/org/apache/polygene/bootstrap/ClassScanner.java index 5850e95..b5c6fe6 100644 --- a/core/bootstrap/src/main/java/org/apache/polygene/bootstrap/ClassScanner.java +++ b/core/bootstrap/src/main/java/org/apache/polygene/bootstrap/ClassScanner.java @@ -100,7 +100,7 @@ public class ClassScanner { return seedClass.getClassLoader().loadClass( name ); } - catch( ClassNotFoundException e ) + catch( ClassNotFoundException | NoClassDefFoundError e ) { return null; } @@ -175,7 +175,7 @@ public class ClassScanner @Override public boolean test( Class item ) { - return ( item.isInterface() || !Modifier.isAbstract( item.getModifiers() ) ) + return item != null && ( item.isInterface() || !Modifier.isAbstract( item.getModifiers() ) ) && ( !item.isEnum() && !item.isAnonymousClass() ); } } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/bootstrap/src/test/java/org/apache/polygene/bootstrap/ClassScannerTest.java ---------------------------------------------------------------------- diff --git a/core/bootstrap/src/test/java/org/apache/polygene/bootstrap/ClassScannerTest.java b/core/bootstrap/src/test/java/org/apache/polygene/bootstrap/ClassScannerTest.java index 7f191eb..e830995 100644 --- a/core/bootstrap/src/test/java/org/apache/polygene/bootstrap/ClassScannerTest.java +++ b/core/bootstrap/src/test/java/org/apache/polygene/bootstrap/ClassScannerTest.java @@ -52,6 +52,6 @@ public class ClassScannerTest @Test public void testClassScannerJar() { - assertThat( findClasses( Test.class ).count(), equalTo( 185 ) ); + assertThat( findClasses( Test.class ).count(), equalTo( 89L ) ); } } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/runtime/src/test/java/org/apache/polygene/runtime/entity/associations/ImmutableAssociationTest.java ---------------------------------------------------------------------- diff --git a/core/runtime/src/test/java/org/apache/polygene/runtime/entity/associations/ImmutableAssociationTest.java b/core/runtime/src/test/java/org/apache/polygene/runtime/entity/associations/ImmutableAssociationTest.java index 57aebac..364b587 100644 --- a/core/runtime/src/test/java/org/apache/polygene/runtime/entity/associations/ImmutableAssociationTest.java +++ b/core/runtime/src/test/java/org/apache/polygene/runtime/entity/associations/ImmutableAssociationTest.java @@ -73,7 +73,7 @@ public class ImmutableAssociationTest public void givenEntityWithImmutableAssociationWhenChangingValueThenThrowException() throws Exception { - assertThrows( ConstraintViolationException.class, () -> { + assertThrows( IllegalStateException.class, () -> { UnitOfWork unitOfWork = unitOfWorkFactory.newUnitOfWork(); try { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java ---------------------------------------------------------------------- diff --git a/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java b/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java index b956db3..a67899d 100644 --- a/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java +++ b/core/runtime/src/test/java/org/apache/polygene/runtime/mixin/InitializableTest.java @@ -27,8 +27,8 @@ import org.apache.polygene.api.unitofwork.UnitOfWork; import org.apache.polygene.bootstrap.ModuleAssembly; import org.apache.polygene.test.AbstractPolygeneTest; import org.apache.polygene.test.EntityTestAssembler; -import org.apache.polygene.test.util.NotYetImplemented; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import static org.hamcrest.CoreMatchers.equalTo; @@ -87,12 +87,13 @@ public class InitializableTest extends AbstractPolygeneTest assertThat( "object has been initialized", instance.ok(), equalTo( true ) ); } - @NotYetImplemented( reason = "Mixin of types with no method are not scrutinized for Initializable implementation" ) + // TODO: (niclas) This is part of the whole lifecycle mess, that needs to be worked out once and for all. + @Disabled( "Mixin of types with no method are not scrutinized for Initializable implementation" ) @Test public void givenTypeWithNoMethodsAndInitializableMixinWhenInstantiatedThenInvokeInitialize() { NoMethod instance = transientBuilderFactory.newTransient( NoMethod.class ); - assertThat( "mixin has been initialized", noMethodMixinOk, equalTo( true ) ); + assertThat( "mixin has not been initialized", noMethodMixinOk, equalTo( true ) ); } @Mixins( TestMixin.class ) http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/runtime/src/test/java/org/apache/polygene/runtime/query/QueryBuilderFactoryImplTest.java ---------------------------------------------------------------------- diff --git a/core/runtime/src/test/java/org/apache/polygene/runtime/query/QueryBuilderFactoryImplTest.java b/core/runtime/src/test/java/org/apache/polygene/runtime/query/QueryBuilderFactoryImplTest.java index f27b92d..d2237cf 100644 --- a/core/runtime/src/test/java/org/apache/polygene/runtime/query/QueryBuilderFactoryImplTest.java +++ b/core/runtime/src/test/java/org/apache/polygene/runtime/query/QueryBuilderFactoryImplTest.java @@ -75,7 +75,7 @@ public class QueryBuilderFactoryImplTest { Query query = queryBuilderFactory.newQueryBuilder( TestComposite.class ).newQuery( composites ); assertThat( query.find().a().get(), equalTo( "A" ) ); - assertThat( query.count(), equalTo( 6 ) ); + assertThat( query.count(), equalTo( 6L ) ); } @Test @@ -137,13 +137,13 @@ public class QueryBuilderFactoryImplTest private void verifyOrder( Query query, String expected ) { - String actual = ""; + StringBuilder actual = new StringBuilder(); for( TestComposite testComposite : query ) { - actual = actual + testComposite.b().get(); + actual.append( testComposite.b().get() ); } - assertThat( "Query is correct", actual, equalTo( expected ) ); + assertThat( "Query is correct", actual.toString(), equalTo( expected ) ); assertThat( "Count is correct", query.count(), equalTo( (long) expected.length() ) ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/runtime/src/test/java/org/apache/polygene/runtime/structure/TypeToCompositeLookupTest.java ---------------------------------------------------------------------- diff --git a/core/runtime/src/test/java/org/apache/polygene/runtime/structure/TypeToCompositeLookupTest.java b/core/runtime/src/test/java/org/apache/polygene/runtime/structure/TypeToCompositeLookupTest.java index 6c96122..9393844 100644 --- a/core/runtime/src/test/java/org/apache/polygene/runtime/structure/TypeToCompositeLookupTest.java +++ b/core/runtime/src/test/java/org/apache/polygene/runtime/structure/TypeToCompositeLookupTest.java @@ -372,9 +372,9 @@ public class TypeToCompositeLookupTest }.module(); - assertThat( module.findServices( SomeOtherFoo.class ).count(), equalTo( 1 ) ); - assertThat( module.findServices( BasicFoo.class ).count(), equalTo( 2 ) ); - assertThat( module.findServices( Foo.class ).count(), equalTo( 2 ) ); + assertThat( module.findServices( SomeOtherFoo.class ).count(), equalTo( 1L ) ); + assertThat( module.findServices( BasicFoo.class ).count(), equalTo( 2L ) ); + assertThat( module.findServices( Foo.class ).count(), equalTo( 2L ) ); assertThat( module.findService( SomeOtherFoo.class ).get().bar(), equalTo( CATHEDRAL ) ); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/AbstractPolygeneBaseTest.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/AbstractPolygeneBaseTest.java b/core/testsupport/src/main/java/org/apache/polygene/test/AbstractPolygeneBaseTest.java index 91fbda9..e3ce0ca 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/AbstractPolygeneBaseTest.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/AbstractPolygeneBaseTest.java @@ -32,8 +32,6 @@ import org.junit.jupiter.api.BeforeEach; public abstract class AbstractPolygeneBaseTest { -// @Rule public NotYetImplemented.Rule notYetImplementedRule = new NotYetImplemented.Rule(); - protected PolygeneAPI api; protected PolygeneSPI spi; http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/PolygeneUnitExtension.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/PolygeneUnitExtension.java b/core/testsupport/src/main/java/org/apache/polygene/test/PolygeneUnitExtension.java index 928b613..e5c71b4 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/PolygeneUnitExtension.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/PolygeneUnitExtension.java @@ -19,6 +19,10 @@ */ package org.apache.polygene.test; +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; +import java.lang.reflect.UndeclaredThrowableException; +import java.util.Optional; import org.apache.polygene.api.structure.Application; import org.apache.polygene.bootstrap.Assembler; import org.apache.polygene.bootstrap.ModuleAssembly; @@ -49,6 +53,30 @@ public class PolygeneUnitExtension this.assembler = assembler; } + static void setField( Field f, Object injectable, ExtensionContext context ) + { + try + { + f.setAccessible( true ); + Optional possibleInstance = context.getTestInstance(); + if( possibleInstance.isPresent() ) + { + f.set( possibleInstance.get(), injectable ); + } + else + { + if( Modifier.isStatic( f.getModifiers() ) ) + { + f.set( null, injectable ); + } + } + } + catch( IllegalAccessException e ) + { + throw new UndeclaredThrowableException( e ); + } + } + @Override public void beforeTestExecution( ExtensionContext context ) throws Exception http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/TemporaryFolder.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/TemporaryFolder.java b/core/testsupport/src/main/java/org/apache/polygene/test/TemporaryFolder.java index dacfd4c..7810ff5 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/TemporaryFolder.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/TemporaryFolder.java @@ -21,13 +21,14 @@ package org.apache.polygene.test; import java.io.File; import java.io.IOException; -import java.lang.reflect.UndeclaredThrowableException; import java.nio.file.FileVisitResult; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.SimpleFileVisitor; import java.nio.file.attribute.BasicFileAttributes; +import org.junit.jupiter.api.extension.AfterAllCallback; import org.junit.jupiter.api.extension.AfterEachCallback; +import org.junit.jupiter.api.extension.BeforeAllCallback; import org.junit.jupiter.api.extension.BeforeEachCallback; import org.junit.jupiter.api.extension.Extension; import org.junit.jupiter.api.extension.ExtensionContext; @@ -37,7 +38,7 @@ import static org.junit.platform.commons.util.ReflectionUtils.HierarchyTraversal import static org.junit.platform.commons.util.ReflectionUtils.findFields; public class TemporaryFolder - implements Extension, BeforeEachCallback, AfterEachCallback + implements Extension, BeforeEachCallback, AfterEachCallback, BeforeAllCallback, AfterAllCallback { private File root; @@ -45,9 +46,27 @@ public class TemporaryFolder { } + public void beforeAll( ExtensionContext context ) + { + createDir(); + inject( context ); + } + @Override public void beforeEach( ExtensionContext context ) - throws Exception + { + createDir(); + inject( context ); + } + + private void inject( ExtensionContext context ) + { + findFields( context.getRequiredTestClass(), + f -> f.getType().equals( TemporaryFolder.class ), BOTTOM_UP ) + .forEach( f -> PolygeneUnitExtension.setField( f, this, context ) ); + } + + public void createDir() { try { @@ -59,20 +78,13 @@ public class TemporaryFolder } root.delete(); // Remove if already exists root.mkdir(); + } - findFields( context.getRequiredTestClass(), - f -> f.getType().equals( TemporaryFolder.class ), BOTTOM_UP ) - .forEach( f -> { - try - { - f.setAccessible( true ); - f.set( context.getRequiredTestInstance(), this ); - } - catch( IllegalAccessException e ) - { - throw new UndeclaredThrowableException( e ); - } - } ); + @Override + public void afterAll( ExtensionContext context ) + throws Exception + { + afterEach( context ); } @Override @@ -85,7 +97,7 @@ public class TemporaryFolder } catch( IOException ioe ) { - throw new RuntimeException( ioe ); + // ignore, nothing we can/should do. In JUnit5, we get that some files are not found in afterAll() cases. } } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/TestName.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/TestName.java b/core/testsupport/src/main/java/org/apache/polygene/test/TestName.java index 24d71fd..077ba3c 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/TestName.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/TestName.java @@ -1,11 +1,11 @@ package org.apache.polygene.test; -import java.lang.reflect.UndeclaredThrowableException; import java.util.Optional; import org.junit.jupiter.api.extension.BeforeAllCallback; import org.junit.jupiter.api.extension.BeforeEachCallback; import org.junit.jupiter.api.extension.ExtensionContext; +import static org.junit.jupiter.api.Assertions.fail; import static org.junit.platform.commons.util.ReflectionUtils.HierarchyTraversalMode.BOTTOM_UP; import static org.junit.platform.commons.util.ReflectionUtils.findFields; @@ -39,17 +39,7 @@ public class TestName { findFields( context.getRequiredTestClass(), f -> f.getType().equals( TestName.class ), BOTTOM_UP ) - .forEach( f -> { - try - { - f.setAccessible( true ); - f.set( context.getRequiredTestInstance(), this ); - } - catch( IllegalAccessException e ) - { - throw new UndeclaredThrowableException( e ); - } - } ); + .forEach( f -> PolygeneUnitExtension.setField( f, this, context ) ); } public String getTestName() http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractAnyQueryTest.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractAnyQueryTest.java b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractAnyQueryTest.java index 677a6db..b9be34d 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractAnyQueryTest.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractAnyQueryTest.java @@ -43,8 +43,7 @@ import org.junit.jupiter.api.BeforeEach; /** * Abstract satisfiedBy with tests for any queries against Index/Query engines. */ -public class AbstractAnyQueryTest - extends AbstractPolygeneTest +public class AbstractAnyQueryTest extends AbstractPolygeneTest { protected UnitOfWork unitOfWork; http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractEntityFinderTest.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractEntityFinderTest.java b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractEntityFinderTest.java index c79200a..005fe4f 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractEntityFinderTest.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/AbstractEntityFinderTest.java @@ -64,8 +64,7 @@ import static org.hamcrest.core.IsEqual.equalTo; /** * Abstract satisfiedBy with tests for the EntityFinder interface. */ -public abstract class AbstractEntityFinderTest - extends AbstractAnyQueryTest +public abstract class AbstractEntityFinderTest extends AbstractAnyQueryTest { private static final Predicate ALL = null; @@ -330,7 +329,7 @@ public abstract class AbstractEntityFinderTest NO_SORTING2, NO_FIRST_RESULT, 2, NO_VARIABLES ); - assertThat( "2 identities", references.count(), equalTo( 2 ) ); + assertThat( "2 identities", references.count(), equalTo( 2L ) ); } @Test @@ -343,7 +342,7 @@ public abstract class AbstractEntityFinderTest NO_SORTING2, 3, 2, NO_VARIABLES ); - assertThat( "2 identitities", references.count(), equalTo( 2 ) ); + assertThat( "2 identitities", references.count(), equalTo( 2L ) ); } @Test http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case1.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case1.java b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case1.java index 8c7de00..af1d4e8 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case1.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case1.java @@ -67,7 +67,7 @@ public class Suite1Case1 public void expect() throws Exception { - assertThat( query.count(), equalTo(1) ); + assertThat( query.count(), equalTo(1L) ); Male male = query.find(); assertThat( male.title().get(), equalTo( Person.Title.MR )); assertThat( male.name().get(), equalTo( "Joe Doe" )); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case2.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case2.java b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case2.java index b1450ee..e5797e4 100644 --- a/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case2.java +++ b/core/testsupport/src/main/java/org/apache/polygene/test/indexing/layered/Suite1Case2.java @@ -69,7 +69,7 @@ public class Suite1Case2 public void expect() throws Exception { - assertThat( query.count(), equalTo(1) ); + assertThat( query.count(), equalTo(1L) ); Male male = query.find(); assertThat( male.title().get(), equalTo( Person.Title.MR )); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/core/testsupport/src/main/java/org/apache/polygene/test/util/NotYetImplemented.java ---------------------------------------------------------------------- diff --git a/core/testsupport/src/main/java/org/apache/polygene/test/util/NotYetImplemented.java b/core/testsupport/src/main/java/org/apache/polygene/test/util/NotYetImplemented.java deleted file mode 100644 index 0c9fe94..0000000 --- a/core/testsupport/src/main/java/org/apache/polygene/test/util/NotYetImplemented.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.polygene.test.util; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; -//import junit.framework.AssertionFailedError; -//import org.junit.rules.TestRule; -//import org.junit.runner.Description; -//import org.junit.runners.model.Statement; - -/** - * JUnit annotation and rule to mark not yet implemented tests. - * - * In order to use this annotation you must register the corresponding {@link NotYetImplemented.Rule}. - * - * Not yet implemented tests are run an expected to fail, an assertion error is thrown if they pass. - */ -@Retention( RetentionPolicy.RUNTIME ) -@Target( { ElementType.TYPE, ElementType.METHOD } ) -@Documented -public @interface NotYetImplemented -{ - String reason() default ""; - -// class Rule implements TestRule -// { -// @Override -// public Statement apply( Statement base, Description description ) -// { -// if( description.getAnnotation( NotYetImplemented.class ) == null ) -// { -// return base; -// } -// return new Statement() -// { -// @Override -// public void evaluate() throws Throwable -// { -// boolean passed = false; -// try -// { -// base.evaluate(); -// passed = true; -// } -// catch( Throwable ex ) -// { -// System.err.println( "Not yet implemented test expectedly failed" ); -// ex.printStackTrace( System.err ); -// } -// if( passed ) -// { -// throw new AssertionFailedError( -// "Test " + description.getDisplayName() -// + " is annotated as not yet implemented, expected it to fail but it passed." -// ); -// } -// } -// }; -// } -// } -} http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/dependencies.gradle ---------------------------------------------------------------------- diff --git a/dependencies.gradle b/dependencies.gradle index 7758b24..e12df5c 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -66,7 +66,8 @@ def jdbmVersion = '2.4' def jedisVersion = '2.9.0' def jettyVersion = '9.2.17.v20160517' // 9.3.x Tests fail! def johnzonVersion = '1.1.1' -def jooqVersion = '3.10.1' +def jooqVersion = '3.10.6' +def kotlinVersion = '1.2.31' def leveldbVersion = '0.9' def leveldbJniVersion = '1.8' def liquibaseVersion = '3.5.3' @@ -128,6 +129,7 @@ dependencies.libraries << [ jooq : "org.jooq:jooq:$jooqVersion", jdbm : "jdbm:jdbm:$jdbmVersion", jedis : "redis.clients:jedis:$jedisVersion", + kotlin : "org.jetbrains.kotlin:kotlin-project:$kotlinVersion", leveldb_api : "org.iq80.leveldb:leveldb-api:$leveldbVersion", leveldb_java : "org.iq80.leveldb:leveldb:$leveldbVersion", leveldb_jni_all : "org.fusesource.leveldbjni:leveldbjni-all:$leveldbJniVersion", @@ -208,8 +210,9 @@ dependencies.libraries << [ hamcrest : ["org.hamcrest:hamcrest-core:$hamcrestVersion", "org.hamcrest:hamcrest-library:$hamcrestVersion"], junit : ["org.junit.jupiter:junit-jupiter-api:$junitVersion", - "org.junit.jupiter:junit-jupiter-params:$junitVersion" + "org.junit.jupiter:junit-jupiter-params:$junitVersion", ], + junit_engine : "org.junit.jupiter:junit-jupiter-engine:$junitVersion", logback : "ch.qos.logback:logback-classic:$logbackVersion", mockito : "org.mockito:mockito-core:$mockitoVersion", @@ -222,7 +225,10 @@ dependencies.libraries << [ // Default dependencies dependencies.defaultDependencies << [ - testImplementation: [dependencies.libraries.junit, dependencies.libraries.hamcrest] + testImplementation: [ + dependencies.libraries.junit, + dependencies.libraries.hamcrest, + ] ] // Resolution rules http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/cache-memcache/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/cache-memcache/build.gradle b/extensions/cache-memcache/build.gradle index 675e6fb..a960843 100644 --- a/extensions/cache-memcache/build.gradle +++ b/extensions/cache-memcache/build.gradle @@ -31,7 +31,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation libraries.docker_junit testRuntimeOnly libraries.logback http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/cache-memcache/src/test/java/org/apache/polygene/cache/memcache/MemcacheCachePoolTest.java ---------------------------------------------------------------------- diff --git a/extensions/cache-memcache/src/test/java/org/apache/polygene/cache/memcache/MemcacheCachePoolTest.java b/extensions/cache-memcache/src/test/java/org/apache/polygene/cache/memcache/MemcacheCachePoolTest.java index d033739..bd0d2b8 100644 --- a/extensions/cache-memcache/src/test/java/org/apache/polygene/cache/memcache/MemcacheCachePoolTest.java +++ b/extensions/cache-memcache/src/test/java/org/apache/polygene/cache/memcache/MemcacheCachePoolTest.java @@ -31,7 +31,9 @@ import org.apache.polygene.test.cache.AbstractCachePoolTest; /** * Memcache CachePool Test. */ -@Docker( image = "memcached", ports = @Port( exposed = 11211, inner = 11211 ), newForEachCase = false ) +@Docker( image = "memcached", + ports = @Port( exposed = 11211, inner = 11211 ), + newForEachCase = false ) public class MemcacheCachePoolTest extends AbstractCachePoolTest { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-berkeleydb/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-berkeleydb/build.gradle b/extensions/entitystore-berkeleydb/build.gradle index ea14aef..0e9a468 100644 --- a/extensions/entitystore-berkeleydb/build.gradle +++ b/extensions/entitystore-berkeleydb/build.gradle @@ -35,7 +35,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testRuntimeOnly libraries.logback } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-cassandra/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-cassandra/build.gradle b/extensions/entitystore-cassandra/build.gradle index 4025575..506f239 100644 --- a/extensions/entitystore-cassandra/build.gradle +++ b/extensions/entitystore-cassandra/build.gradle @@ -34,7 +34,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation libraries.docker_junit testRuntimeOnly libraries.logback http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTest.java b/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTest.java index 1af6a8b..8ab161e 100644 --- a/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTest.java +++ b/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTest.java @@ -35,7 +35,10 @@ import org.junit.jupiter.api.BeforeEach; /** * Test the CassandraEntityStoreService. */ -@Docker( image = "cassandra", ports = @Port( exposed = 8801, inner = 9042), waitFor = @WaitFor( value = "Starting listening for CQL clients", timeoutInMillis = 30000)) +@Docker( image = "cassandra", + ports = @Port( exposed = 8801, inner = 9042), + waitFor = @WaitFor( value = "Starting listening for CQL clients", timeoutInMillis = 60000), + newForEachCase = false) public class CassandraEntityStoreTest extends AbstractEntityStoreTest { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTestSuite.java b/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTestSuite.java index c015c28..2b62bf6 100644 --- a/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTestSuite.java +++ b/extensions/entitystore-cassandra/src/test/java/org/apache/polygene/entitystore/cassandra/CassandraEntityStoreTestSuite.java @@ -29,13 +29,16 @@ import org.apache.polygene.bootstrap.ModuleAssembly; import org.apache.polygene.entitystore.cassandra.assembly.CassandraEntityStoreAssembler; import org.apache.polygene.test.entity.CanRemoveAll; import org.apache.polygene.test.entity.model.EntityStoreTestSuite; +import org.junit.jupiter.api.AfterEach; /** * Test the CassandraEntityStoreService. */ @Docker( image = "cassandra", ports = @Port( exposed = 8801, inner = 9042), - waitFor = @WaitFor( value = "Starting listening for CQL clients", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "Starting listening for CQL clients", timeoutInMillis = 60000), + newForEachCase = false +) public class CassandraEntityStoreTestSuite extends EntityStoreTestSuite { @Override @@ -62,6 +65,7 @@ public class CassandraEntityStoreTestSuite extends EntityStoreTestSuite } @Override + @AfterEach public void tearDown() { Module module = application.findModule( "Infrastructure Layer", "Storage Module" ); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-jclouds/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-jclouds/build.gradle b/extensions/entitystore-jclouds/build.gradle index c74af11..b93ad73 100644 --- a/extensions/entitystore-jclouds/build.gradle +++ b/extensions/entitystore-jclouds/build.gradle @@ -36,7 +36,7 @@ dependencies { runtimeOnly polygene.core.runtime runtimeOnly libraries.jaxb_api - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation libraries.jclouds_filesystem testImplementation libraries.docker_junit http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3Test.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3Test.java b/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3Test.java index b0a2d81..adb25ba 100644 --- a/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3Test.java +++ b/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3Test.java @@ -28,9 +28,11 @@ import org.apache.polygene.entitystore.jclouds.assembly.JCloudsEntityStoreAssemb import org.apache.polygene.test.EntityTestAssembler; import org.apache.polygene.test.entity.AbstractEntityStoreTest; -@Docker( image = "s3server", +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-s3server", ports = @Port( exposed = 8801, inner = 8000), - waitFor = @WaitFor( value = "server started", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "server started", timeoutInMillis = 30000), + newForEachCase = false +) public class JCloudsS3Test extends AbstractEntityStoreTest { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3TestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3TestSuite.java b/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3TestSuite.java index d7fbd76..5fca708 100644 --- a/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3TestSuite.java +++ b/extensions/entitystore-jclouds/src/test/java/org/apache/polygene/entitystore/jclouds/JCloudsS3TestSuite.java @@ -27,9 +27,11 @@ import org.apache.polygene.bootstrap.ModuleAssembly; import org.apache.polygene.entitystore.jclouds.assembly.JCloudsEntityStoreAssembler; import org.apache.polygene.test.entity.model.EntityStoreTestSuite; -@Docker( image = "s3server", +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-s3server", ports = @Port( exposed = 8801, inner = 8000), - waitFor = @WaitFor( value = "server started", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "server started", timeoutInMillis = 30000), + newForEachCase = false +) public class JCloudsS3TestSuite extends EntityStoreTestSuite { @Override http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-mongodb/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-mongodb/build.gradle b/extensions/entitystore-mongodb/build.gradle index 8a97852..3c2b82e 100644 --- a/extensions/entitystore-mongodb/build.gradle +++ b/extensions/entitystore-mongodb/build.gradle @@ -32,7 +32,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation libraries.docker_junit testRuntimeOnly libraries.logback http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTest.java b/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTest.java index 3a2bec8..6dfb295 100644 --- a/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTest.java +++ b/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTest.java @@ -36,7 +36,9 @@ import org.junit.jupiter.api.BeforeEach; * Test the MongoDBEntityStoreService. */ @Docker( image = "mongo", - ports = @Port( exposed = 8801, inner = 27017)) + ports = @Port( exposed = 8801, inner = 27017), + newForEachCase = false +) public class MongoDBEntityStoreTest extends AbstractEntityStoreTest { @Override http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTestSuite.java b/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTestSuite.java index 5af028f..efe0547 100644 --- a/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTestSuite.java +++ b/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreTestSuite.java @@ -28,12 +28,17 @@ import org.apache.polygene.api.structure.Module; import org.apache.polygene.bootstrap.ModuleAssembly; import org.apache.polygene.entitystore.mongodb.assembly.MongoDBEntityStoreAssembler; import org.apache.polygene.test.entity.model.EntityStoreTestSuite; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; /** * Test the MongoDBEntityStoreService. */ @Docker( image = "mongo", - ports = @Port( exposed = 8801, inner = 27017)) + ports = @Port( exposed = 8801, inner = 27017), + waitFor = @WaitFor( value = "MongoDB starting", timeoutInMillis = 30000), + newForEachCase = false +) public class MongoDBEntityStoreTestSuite extends EntityStoreTestSuite { @Override @@ -56,11 +61,10 @@ public class MongoDBEntityStoreTestSuite extends EntityStoreTestSuite private Mongo mongo; private String dbName; - @Override - public void setUp() + @BeforeEach + public void initializeMongo() throws Exception { - super.setUp(); Module storageModule = application.findModule( "Infrastructure Layer", "Storage Module" ); MongoDBEntityStoreService es = storageModule.serviceFinder().findService( MongoDBEntityStoreService.class ).get(); mongo = es.mongoInstanceUsed(); @@ -68,6 +72,7 @@ public class MongoDBEntityStoreTestSuite extends EntityStoreTestSuite } @Override + @AfterEach public void tearDown() { mongo.dropDatabase( dbName ); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreWithCacheTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreWithCacheTest.java b/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreWithCacheTest.java index 23d4999..3a257ef 100644 --- a/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreWithCacheTest.java +++ b/extensions/entitystore-mongodb/src/test/java/org/apache/polygene/entitystore/mongodb/MongoDBEntityStoreWithCacheTest.java @@ -35,7 +35,9 @@ import org.junit.jupiter.api.BeforeEach; * Test the MongoDBEntityStoreService usage with a CachePool. */ @Docker( image = "mongo", - ports = @Port( exposed = 8801, inner = 27017)) + ports = @Port( exposed = 8801, inner = 27017), + newForEachCase = false +) public class MongoDBEntityStoreWithCacheTest extends AbstractEntityStoreWithCacheTest { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-preferences/src/test/java/org/apache/polygene/entitystore/preferences/PreferencesEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-preferences/src/test/java/org/apache/polygene/entitystore/preferences/PreferencesEntityStoreTestSuite.java b/extensions/entitystore-preferences/src/test/java/org/apache/polygene/entitystore/preferences/PreferencesEntityStoreTestSuite.java index f5eeb02..a08bb6e 100644 --- a/extensions/entitystore-preferences/src/test/java/org/apache/polygene/entitystore/preferences/PreferencesEntityStoreTestSuite.java +++ b/extensions/entitystore-preferences/src/test/java/org/apache/polygene/entitystore/preferences/PreferencesEntityStoreTestSuite.java @@ -47,6 +47,7 @@ public class PreferencesEntityStoreTestSuite extends EntityStoreTestSuite .assemble( module ); } + @Override @AfterEach public void tearDown() { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-redis/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-redis/build.gradle b/extensions/entitystore-redis/build.gradle index aa06c8d..50fdef2 100644 --- a/extensions/entitystore-redis/build.gradle +++ b/extensions/entitystore-redis/build.gradle @@ -32,7 +32,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation libraries.docker_junit testRuntimeOnly libraries.logback http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTest.java b/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTest.java index cf5b379..b80cde4 100644 --- a/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTest.java +++ b/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTest.java @@ -34,7 +34,9 @@ import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; @Docker( image = "redis", - ports = @Port( exposed = 8801, inner = 6379)) + ports = @Port( exposed = 8801, inner = 6379), + newForEachCase = false +) public class RedisEntityStoreTest extends AbstractEntityStoreTest { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTestSuite.java b/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTestSuite.java index 438ae92..c3da811 100644 --- a/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTestSuite.java +++ b/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreTestSuite.java @@ -27,11 +27,15 @@ import org.apache.polygene.api.structure.Module; import org.apache.polygene.bootstrap.ModuleAssembly; import org.apache.polygene.entitystore.redis.assembly.RedisEntityStoreAssembler; import org.apache.polygene.test.entity.model.EntityStoreTestSuite; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; @Docker( image = "redis", - ports = @Port( exposed = 8801, inner = 6379)) + ports = @Port( exposed = 8801, inner = 6379), + newForEachCase = false +) public class RedisEntityStoreTestSuite extends EntityStoreTestSuite { @Override @@ -51,23 +55,20 @@ public class RedisEntityStoreTestSuite extends EntityStoreTestSuite private JedisPool jedisPool; - @Override - public void setUp() - throws Exception + @BeforeEach + public void initializeRedis() { - super.setUp(); Module storageModule = application.findModule( "Infrastructure Layer", "Storage Module" ); RedisEntityStoreService es = storageModule.findService( RedisEntityStoreService.class ).get(); jedisPool = es.jedisPool(); } - @Override - public void tearDown() + @AfterEach + public void cleanUpRedis() { try( Jedis jedis = jedisPool.getResource() ) { jedis.flushDB(); } - super.tearDown(); } } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreWithCacheTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreWithCacheTest.java b/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreWithCacheTest.java index 427dcaa..38a05b5 100644 --- a/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreWithCacheTest.java +++ b/extensions/entitystore-redis/src/test/java/org/apache/polygene/entitystore/redis/RedisEntityStoreWithCacheTest.java @@ -33,7 +33,9 @@ import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; @Docker( image = "redis", - ports = @Port( exposed = 8801, inner = 6379)) + ports = @Port( exposed = 8801, inner = 6379), + newForEachCase = false +) public class RedisEntityStoreWithCacheTest extends AbstractEntityStoreWithCacheTest { http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-riak/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-riak/build.gradle b/extensions/entitystore-riak/build.gradle index a160c63..9300f8a 100644 --- a/extensions/entitystore-riak/build.gradle +++ b/extensions/entitystore-riak/build.gradle @@ -33,7 +33,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation libraries.awaitility testImplementation libraries.docker_junit http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTest.java b/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTest.java index dc7a5fd..dae77ea 100644 --- a/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTest.java +++ b/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTest.java @@ -29,27 +29,26 @@ import org.apache.polygene.test.entity.AbstractEntityStoreTest; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; -@Docker( image = "riak", +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-riak", ports = @Port( exposed = 8801, inner = 8087), - waitFor = @WaitFor( value = "riak_auth_mods started on node", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "riak_auth_mods started on node", timeoutInMillis = 60000), + newForEachCase = false +) public class RiakEntityStoreTest extends AbstractEntityStoreTest { private RiakFixture riakFixture; - @Override @BeforeEach - public void setUp() + public void setupRiak() throws Exception { - super.setUp(); RiakEntityStoreService es = serviceFinder.findService( RiakEntityStoreService.class ).get(); riakFixture = new RiakFixture( es.riakClient(), es.riakNamespace() ); riakFixture.waitUntilReady(); } - @Override @AfterEach - public void tearDown() + public void cleanUpRiak() { riakFixture.deleteTestData(); super.tearDown(); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTestSuite.java b/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTestSuite.java index fc9d477..aefb338 100644 --- a/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTestSuite.java +++ b/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreTestSuite.java @@ -26,11 +26,14 @@ import org.apache.polygene.api.structure.Module; import org.apache.polygene.bootstrap.ModuleAssembly; import org.apache.polygene.entitystore.riak.assembly.RiakEntityStoreAssembler; import org.apache.polygene.test.entity.model.EntityStoreTestSuite; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; -@Docker( image = "riak", +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-riak", ports = @Port( exposed = 8801, inner = 8087), - waitFor = @WaitFor( value = "riak_auth_mods started on node", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "riak_auth_mods started on node", timeoutInMillis = 60000), + newForEachCase = false +) public class RiakEntityStoreTestSuite extends EntityStoreTestSuite { private RiakFixture riakFixture; @@ -51,22 +54,20 @@ public class RiakEntityStoreTestSuite extends EntityStoreTestSuite riakConfig.hosts().set( Collections.singletonList( host + ':' + port ) ); } - @Override - public void tearDown() - { - riakFixture.deleteTestData(); - super.tearDown(); - } - - @Override @BeforeEach - public void setUp() + public void initializeRiak() throws Exception { - super.setUp(); Module storageModule = application.findModule( "Infrastructure Layer", "Storage Module" ); RiakEntityStoreService es = storageModule.findService( RiakEntityStoreService.class ).get(); riakFixture = new RiakFixture( es.riakClient(), es.riakNamespace() ); riakFixture.waitUntilReady(); } + + @AfterEach + public void cleanUpRiak() + { + riakFixture.deleteTestData(); + super.tearDown(); + } } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreWithCacheTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreWithCacheTest.java b/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreWithCacheTest.java index f6d4a33..e97e219 100644 --- a/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreWithCacheTest.java +++ b/extensions/entitystore-riak/src/test/java/org/apache/polygene/entitystore/riak/RiakEntityStoreWithCacheTest.java @@ -32,16 +32,17 @@ import org.apache.polygene.test.cache.AbstractEntityStoreWithCacheTest; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; -@Docker( image = "riak", +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-riak", ports = @Port( exposed = 8801, inner = 8087 ), - waitFor = @WaitFor( value = "riak_auth_mods started on node", timeoutInMillis = 30000 ) ) + waitFor = @WaitFor( value = "riak_auth_mods started on node", timeoutInMillis = 60000 ), + newForEachCase = false +) public class RiakEntityStoreWithCacheTest extends AbstractEntityStoreWithCacheTest { private RiakFixture riakFixture; - @Override @BeforeEach - public void setUp() + public void setupRiak() throws Exception { super.setUp(); @@ -50,9 +51,8 @@ public class RiakEntityStoreWithCacheTest extends AbstractEntityStoreWithCacheTe riakFixture.waitUntilReady(); } - @Override @AfterEach - public void tearDown() + public void cleanUpRiak() { riakFixture.deleteTestData(); super.tearDown(); http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/build.gradle b/extensions/entitystore-sql/build.gradle index a6b9fc4..e3388ac 100644 --- a/extensions/entitystore-sql/build.gradle +++ b/extensions/entitystore-sql/build.gradle @@ -31,7 +31,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation polygene.library( 'sql-dbcp' ) testImplementation polygene.library( 'sql-bonecp' ) http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTest.java index e49aec6..ea404f0 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTest.java @@ -67,9 +67,8 @@ public class DerbySQLEntityStoreTest } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.DERBY, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTestSuite.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTestSuite.java index 54b067a..d9fb5b3 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTestSuite.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/DerbySQLEntityStoreTestSuite.java @@ -56,9 +56,8 @@ public class DerbySQLEntityStoreTestSuite extends EntityStoreTestSuite .assemble( module ); } - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( application.findModule( INFRASTRUCTURE_LAYER, STORAGE_MODULE ), SQLDialect.DERBY, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTest.java index f1acf22..51c1afd 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTest.java @@ -67,9 +67,8 @@ public class H2SQLEntityStoreTest } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.H2, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTestSuite.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTestSuite.java index 120b9d8..1ffaecc 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTestSuite.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/H2SQLEntityStoreTestSuite.java @@ -56,9 +56,8 @@ public class H2SQLEntityStoreTestSuite extends EntityStoreTestSuite .assemble( module ); } - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( application.findModule( INFRASTRUCTURE_LAYER, STORAGE_MODULE ), SQLDialect.H2, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTest.java index 10921a8..76fd950 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTest.java @@ -37,14 +37,16 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Disabled; @Disabled( "Waiting response from JOOQ to fix SQL generation. VARCHAR instead of CHAR") -@Docker( image = "mariadb", ports = @Port( exposed = 8801, inner = 3306), +@Docker( image = "mariadb", ports = @Port( exposed = 8801, inner = 3306 ), environments = { - @Environment( key = "MYSQL_ROOT_PASSWORD", value = ""), - @Environment(key = "MYSQL_ALLOW_EMPTY_PASSWORD", value = "yes"), - @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), - @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), + @Environment( key = "MYSQL_ROOT_PASSWORD", value = "" ), + @Environment( key = "MYSQL_ALLOW_EMPTY_PASSWORD", value = "yes" ), + @Environment( key = "MYSQL_DATABASE", value = "jdbc_test_db" ), + @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1" ), }, - waitFor = @WaitFor( value = "mysqld: ready for connections",timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000 ), + newForEachCase = false +) public class MariaDbEntityStoreTest extends AbstractEntityStoreTest { @@ -55,6 +57,7 @@ public class MariaDbEntityStoreTest throws AssemblyException { // END SNIPPET: assembly + sleep(); super.assemble( module ); ModuleAssembly config = module.layer().module( "config" ); new EntityTestAssembler().defaultServicesVisibleIn( Visibility.layer ).assemble( config ); @@ -83,17 +86,30 @@ public class MariaDbEntityStoreTest // END SNIPPET: assembly String host = "localhost"; int port = 8801; - config.forMixin( DataSourceConfiguration.class ).declareDefaults() - .url().set( "jdbc:mysql://" + host + ":" + port - + "/jdbc_test_db?profileSQL=false&useLegacyDatetimeCode=false&serverTimezone=UTC" - + "&nullCatalogMeansCurrent=true&nullNamePatternMatchesAll=true" ); + DataSourceConfiguration defaults = config.forMixin( DataSourceConfiguration.class ).declareDefaults(); + defaults.url().set( "jdbc:mysql://" + host + ":" + port + + "/jdbc_test_db?profileSQL=false&useLegacyDatetimeCode=false&serverTimezone=UTC" + + "&nullCatalogMeansCurrent=true&nullNamePatternMatchesAll=true" ); + defaults.driver().set( "com.mysql.jdbc.Driver" ); + defaults.enabled().set( true ); // START SNIPPET: assembly } // END SNIPPET: assembly - @Override + static void sleep() + { + try + { + Thread.sleep( 500 ); + } + catch( InterruptedException e ) + { + e.printStackTrace(); + } + } + @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.MARIADB, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTestSuite.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTestSuite.java index edebfc9..2bd63b6 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTestSuite.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MariaDbEntityStoreTestSuite.java @@ -42,13 +42,16 @@ import org.junit.jupiter.api.Disabled; @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), }, - waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000), + newForEachCase = false +) public class MariaDbEntityStoreTestSuite extends EntityStoreTestSuite { @Override protected void defineStorageModule( ModuleAssembly module ) { + MariaDbEntityStoreTest.sleep(); module.defaultServices(); // DataSourceService new DBCPDataSourceServiceAssembler() @@ -79,9 +82,8 @@ public class MariaDbEntityStoreTestSuite extends EntityStoreTestSuite + "&nullCatalogMeansCurrent=true&nullNamePatternMatchesAll=true" ); } - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( application.findModule( INFRASTRUCTURE_LAYER, STORAGE_MODULE ), SQLDialect.MARIADB, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTest.java index 1771c89..73fa5f7 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTest.java @@ -44,7 +44,9 @@ import org.junit.jupiter.api.Disabled; @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), }, - waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000), + newForEachCase = false +) public class MySQLEntityStoreTest extends AbstractEntityStoreTest { @@ -90,9 +92,8 @@ public class MySQLEntityStoreTest } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.MYSQL, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTestSuite.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTestSuite.java index ae1f22f..f062eb8 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTestSuite.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/MySQLEntityStoreTestSuite.java @@ -42,7 +42,9 @@ import org.junit.jupiter.api.Disabled; @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), }, - waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000), + newForEachCase = false +) public class MySQLEntityStoreTestSuite extends EntityStoreTestSuite { @Override @@ -78,9 +80,8 @@ public class MySQLEntityStoreTestSuite extends EntityStoreTestSuite + "&nullCatalogMeansCurrent=true&nullNamePatternMatchesAll=true" ); } - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( application.findModule( INFRASTRUCTURE_LAYER, STORAGE_MODULE ), SQLDialect.MYSQL, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java index 0102e09..cd21471 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTest.java @@ -35,12 +35,15 @@ import org.apache.polygene.test.entity.AbstractEntityStoreTest; import org.jooq.SQLDialect; import org.junit.jupiter.api.AfterEach; -@Docker( image = "postgres", ports = @Port( exposed = 8801, inner = 5432), +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-postgres", + ports = @Port( exposed = 8801, inner = 5432), + waitFor = @WaitFor( value = "PostgreSQL init process complete; ready for start up.", timeoutInMillis = 30000), + newForEachCase = false, environments = { @Environment( key = "POSTGRES_USER", value = "polygene" ), - @Environment(key = "POSTGRES_PASSWORD", value = "ThisIsGreat!") - }, - waitFor = @WaitFor( value = "PostgreSQL init process complete; ready for start up.", timeoutInMillis = 30000)) + @Environment( key = "POSTGRES_PASSWORD", value = "ThisIsGreat!" ) + } +) public class PostgreSQLEntityStoreTest extends AbstractEntityStoreTest { @@ -103,9 +106,8 @@ public class PostgreSQLEntityStoreTest } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.POSTGRES, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTestSuite.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTestSuite.java index 2c2ef5d..d22716f 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTestSuite.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/PostgreSQLEntityStoreTestSuite.java @@ -33,12 +33,15 @@ import org.apache.polygene.test.entity.model.EntityStoreTestSuite; import org.jooq.SQLDialect; import org.junit.jupiter.api.AfterEach; -@Docker( image = "postgres", ports = @Port( exposed = 8801, inner = 5432), +@Docker( image = "org.apache.polygene:org.apache.polygene.internal.docker-postgres", + ports = @Port( exposed = 8801, inner = 5432 ), + waitFor = @WaitFor( value = "PostgreSQL init process complete; ready for start up.", timeoutInMillis = 30000 ), + newForEachCase = false, environments = { @Environment( key = "POSTGRES_USER", value = "polygene" ), - @Environment(key = "POSTGRES_PASSWORD", value = "ThisIsGreat!") - }, - waitFor = @WaitFor( value = "PostgreSQL init process complete; ready for start up.", timeoutInMillis = 30000)) + @Environment( key = "POSTGRES_PASSWORD", value = "ThisIsGreat!" ) + } +) public class PostgreSQLEntityStoreTestSuite extends EntityStoreTestSuite { @Override @@ -78,9 +81,8 @@ public class PostgreSQLEntityStoreTestSuite extends EntityStoreTestSuite } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( application.findModule( INFRASTRUCTURE_LAYER, STORAGE_MODULE ), SQLDialect.POSTGRES, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTest.java index 43138a8..a1de998 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTest.java @@ -75,9 +75,8 @@ public class SQLiteEntityStoreTest extends AbstractEntityStoreTest } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.DERBY, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTestSuite.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTestSuite.java index 8c6f589..86dfcdb 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTestSuite.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SQLiteEntityStoreTestSuite.java @@ -65,9 +65,8 @@ public class SQLiteEntityStoreTestSuite extends EntityStoreTestSuite .assemble( module ); } - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( application.findModule( INFRASTRUCTURE_LAYER, STORAGE_MODULE ), SQLDialect.SQLITE, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SqlEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SqlEntityStoreTest.java b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SqlEntityStoreTest.java index 496add0..c3d2a19 100644 --- a/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SqlEntityStoreTest.java +++ b/extensions/entitystore-sql/src/test/java/org/apache/polygene/entitystore/sql/SqlEntityStoreTest.java @@ -87,9 +87,8 @@ public class SqlEntityStoreTest extends AbstractEntityStoreTest } // END SNIPPET: assembly - @Override @AfterEach - public void tearDown() + public void cleanUpData() { TearDown.dropTables( moduleInstance, SQLDialect.DERBY, super::tearDown ); } http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sqlkv/build.gradle ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sqlkv/build.gradle b/extensions/entitystore-sqlkv/build.gradle index f86274c..56d4ab9 100644 --- a/extensions/entitystore-sqlkv/build.gradle +++ b/extensions/entitystore-sqlkv/build.gradle @@ -31,7 +31,7 @@ dependencies { runtimeOnly polygene.core.runtime - testImplementation polygene.internals.testsupport + testImplementation polygene.core.testsupport testImplementation polygene.library( 'sql-dbcp' ) testImplementation libraries.docker_junit http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTest.java b/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTest.java index 59f3882..1f0582a 100644 --- a/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTest.java +++ b/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTest.java @@ -44,7 +44,9 @@ import org.junit.jupiter.api.Disabled; @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), }, - waitFor = @WaitFor( value = "mysqld: ready for connections",timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections",timeoutInMillis = 30000), + newForEachCase = false +) public class MariaDbEntityStoreTest extends AbstractEntityStoreTest { @Override http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTestSuite.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTestSuite.java b/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTestSuite.java index afb1d05..54cc22d 100644 --- a/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTestSuite.java +++ b/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MariaDbEntityStoreTestSuite.java @@ -42,7 +42,9 @@ import org.junit.jupiter.api.Disabled; @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), }, - waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000), + newForEachCase = false +) public class MariaDbEntityStoreTestSuite extends EntityStoreTestSuite { @Override http://git-wip-us.apache.org/repos/asf/polygene-java/blob/f2fcd58d/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MySQLEntityStoreTest.java ---------------------------------------------------------------------- diff --git a/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MySQLEntityStoreTest.java b/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MySQLEntityStoreTest.java index d18e90f..e94da01 100644 --- a/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MySQLEntityStoreTest.java +++ b/extensions/entitystore-sqlkv/src/test/java/org/apache/polygene/entitystore/sqlkv/MySQLEntityStoreTest.java @@ -44,7 +44,9 @@ import org.junit.jupiter.api.Disabled; @Environment(key = "MYSQL_DATABASE", value = "jdbc_test_db"), @Environment( key = "MYSQL_ROOT_HOST", value = "172.17.0.1"), }, - waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000)) + waitFor = @WaitFor( value = "mysqld: ready for connections", timeoutInMillis = 30000), + newForEachCase = false +) public class MySQLEntityStoreTest extends AbstractEntityStoreTest { @Override