From 2acdf2f4bfd77382a38e4d6d0d5739473412d389 Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Sun, 27 Mar 2022 17:06:52 +1300 Subject: [PATCH] Refactor tests, move some internal core tests to ebean-core --- ...faultServer_createOrmQueryRequestTest.java | 8 +- .../core/OrmQueryRequestTestHelper.java | 18 ++++ .../server/core/TestDiffHelpSimple.java | 3 +- .../server/core/TestDiffHelpWithEmbedded.java | 3 +- .../ebeaninternal/server/deploy/BaseTest.java | 14 +++ .../BeanDescriptor_documentMappingTest.java | 3 +- .../java/org/tests/model/basic/EBasic.java | 88 +++++++++++++++++++ .../java/org/tests/model/embedded/EMain.java | 52 +++++++++++ .../org/tests/model/embedded/Eembeddable.java | 18 ++++ .../core/DefaultServer_getReferenceTest.java | 2 +- 10 files changed, 200 insertions(+), 9 deletions(-) rename {ebean-test => ebean-core}/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java (98%) create mode 100644 ebean-core/src/test/java/io/ebeaninternal/server/core/OrmQueryRequestTestHelper.java rename {ebean-test => ebean-core}/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java (98%) rename {ebean-test => ebean-core}/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java (97%) create mode 100644 ebean-core/src/test/java/io/ebeaninternal/server/deploy/BaseTest.java rename {ebean-test => ebean-core}/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java (98%) create mode 100644 ebean-core/src/test/java/org/tests/model/basic/EBasic.java create mode 100644 ebean-core/src/test/java/org/tests/model/embedded/EMain.java create mode 100644 ebean-core/src/test/java/org/tests/model/embedded/Eembeddable.java rename ebean-test/src/test/java/io/{ebeaninternal/server => ebean/xtest}/core/DefaultServer_getReferenceTest.java (97%) diff --git a/ebean-test/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java b/ebean-core/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java similarity index 98% rename from ebean-test/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java rename to ebean-core/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java index d4dd8f389..aedbb29a9 100644 --- a/ebean-test/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java +++ b/ebean-core/src/test/java/io/ebeaninternal/server/core/DefaultServer_createOrmQueryRequestTest.java @@ -1,8 +1,8 @@ package io.ebeaninternal.server.core; -import io.ebean.xtest.BaseTestCase; import io.ebean.DB; +import io.ebean.Database; import io.ebean.FetchConfig; import io.ebean.Query; import io.ebeaninternal.server.querydefn.DefaultOrmQuery; @@ -12,12 +12,16 @@ import org.tests.model.basic.Order; import static org.assertj.core.api.Assertions.assertThat; -public class DefaultServer_createOrmQueryRequestTest extends BaseTestCase { +public class DefaultServer_createOrmQueryRequestTest { Query query() { return server().find(Order.class); } + private Database server() { + return DB.getDefault(); + } + OrmQueryRequest queryRequest(Query query) { return OrmQueryRequestTestHelper.queryRequest(query); } diff --git a/ebean-core/src/test/java/io/ebeaninternal/server/core/OrmQueryRequestTestHelper.java b/ebean-core/src/test/java/io/ebeaninternal/server/core/OrmQueryRequestTestHelper.java new file mode 100644 index 000000000..e0ab5e746 --- /dev/null +++ b/ebean-core/src/test/java/io/ebeaninternal/server/core/OrmQueryRequestTestHelper.java @@ -0,0 +1,18 @@ +package io.ebeaninternal.server.core; + +import io.ebean.DB; +import io.ebean.Query; +import io.ebeaninternal.api.SpiQuery; + +public class OrmQueryRequestTestHelper { + + static DefaultServer defaultServer = (DefaultServer) DB.getDefault(); + + /** + * Create and return a OrmQueryRequest for the given query. + */ + public static OrmQueryRequest queryRequest(Query query) { + return (OrmQueryRequest) defaultServer.createQueryRequest(SpiQuery.Type.LIST, query, null); + } + +} diff --git a/ebean-test/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java b/ebean-core/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java similarity index 98% rename from ebean-test/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java rename to ebean-core/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java index 03c82cde0..52ee01500 100644 --- a/ebean-test/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java +++ b/ebean-core/src/test/java/io/ebeaninternal/server/core/TestDiffHelpSimple.java @@ -1,6 +1,5 @@ package io.ebeaninternal.server.core; -import io.ebean.xtest.BaseTestCase; import io.ebean.DB; import io.ebean.Database; import io.ebean.ValuePair; @@ -19,7 +18,7 @@ import java.util.Set; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.*; -class TestDiffHelpSimple extends BaseTestCase { +class TestDiffHelpSimple { long firstTime = System.currentTimeMillis() - 10000; long secondTime = System.currentTimeMillis(); diff --git a/ebean-test/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java b/ebean-core/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java similarity index 97% rename from ebean-test/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java rename to ebean-core/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java index 2a7018e52..22fce4538 100644 --- a/ebean-test/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java +++ b/ebean-core/src/test/java/io/ebeaninternal/server/core/TestDiffHelpWithEmbedded.java @@ -1,6 +1,5 @@ package io.ebeaninternal.server.core; -import io.ebean.xtest.BaseTestCase; import io.ebean.DB; import io.ebean.Database; import io.ebean.ValuePair; @@ -14,7 +13,7 @@ import java.util.Map; import static org.junit.jupiter.api.Assertions.*; -public class TestDiffHelpWithEmbedded extends BaseTestCase { +public class TestDiffHelpWithEmbedded { Database server; diff --git a/ebean-core/src/test/java/io/ebeaninternal/server/deploy/BaseTest.java b/ebean-core/src/test/java/io/ebeaninternal/server/deploy/BaseTest.java new file mode 100644 index 000000000..df637087d --- /dev/null +++ b/ebean-core/src/test/java/io/ebeaninternal/server/deploy/BaseTest.java @@ -0,0 +1,14 @@ +package io.ebeaninternal.server.deploy; + +import io.ebean.DB; +import io.ebeaninternal.api.SpiEbeanServer; + +public class BaseTest { + + protected SpiEbeanServer server = (SpiEbeanServer)DB.getDefault(); + + protected BeanDescriptor getBeanDescriptor(Class cls) { + return server.descriptor(cls); + } + +} diff --git a/ebean-test/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java b/ebean-core/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java similarity index 98% rename from ebean-test/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java rename to ebean-core/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java index e4c4620c3..6968e3fc7 100644 --- a/ebean-test/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java +++ b/ebean-core/src/test/java/io/ebeaninternal/server/deploy/BeanDescriptor_documentMappingTest.java @@ -1,6 +1,5 @@ package io.ebeaninternal.server.deploy; -import io.ebean.xtest.BaseTestCase; import io.ebeanservice.docstore.api.mapping.DocPropertyAdapter; import io.ebeanservice.docstore.api.mapping.DocPropertyMapping; import io.ebeanservice.docstore.api.mapping.DocumentMapping; @@ -9,7 +8,7 @@ import org.tests.model.basic.Order; import static org.assertj.core.api.Assertions.assertThat; -public class BeanDescriptor_documentMappingTest extends BaseTestCase { +public class BeanDescriptor_documentMappingTest extends BaseTest { @Test diff --git a/ebean-core/src/test/java/org/tests/model/basic/EBasic.java b/ebean-core/src/test/java/org/tests/model/basic/EBasic.java new file mode 100644 index 000000000..603102032 --- /dev/null +++ b/ebean-core/src/test/java/org/tests/model/basic/EBasic.java @@ -0,0 +1,88 @@ +package org.tests.model.basic; + +import io.ebean.annotation.EnumValue; +import io.ebean.annotation.Index; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.validation.constraints.Size; +import java.sql.Timestamp; + +@Entity +@Table(name = "e_basic") +public class EBasic { + + public enum Status { + @EnumValue("N") + NEW, + + @EnumValue("A") + ACTIVE, + + @EnumValue("I") + INACTIVE, + } + + @Id + Integer id; + + Status status; + + @Index + @Size(max=127) + String name; + + String description; + + Timestamp someDate; + + public EBasic() { + + } + + public EBasic(String name) { + this.name = name; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Status getStatus() { + return status; + } + + public void setStatus(Status status) { + this.status = status; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Timestamp getSomeDate() { + return someDate; + } + + public void setSomeDate(Timestamp someDate) { + this.someDate = someDate; + } + +} diff --git a/ebean-core/src/test/java/org/tests/model/embedded/EMain.java b/ebean-core/src/test/java/org/tests/model/embedded/EMain.java new file mode 100644 index 000000000..edb13ac1b --- /dev/null +++ b/ebean-core/src/test/java/org/tests/model/embedded/EMain.java @@ -0,0 +1,52 @@ +package org.tests.model.embedded; + +import javax.persistence.*; + +@Entity +@Table(name = "e_main") +public class EMain { + + @Id + private Integer id; + + private String name; + + @Embedded + private Eembeddable embeddable = new Eembeddable(); + + @Version + private Long version; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Eembeddable getEmbeddable() { + return embeddable; + } + + public void setEmbeddable(Eembeddable embeddable) { + this.embeddable = embeddable; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + +} diff --git a/ebean-core/src/test/java/org/tests/model/embedded/Eembeddable.java b/ebean-core/src/test/java/org/tests/model/embedded/Eembeddable.java new file mode 100644 index 000000000..574a557a6 --- /dev/null +++ b/ebean-core/src/test/java/org/tests/model/embedded/Eembeddable.java @@ -0,0 +1,18 @@ +package org.tests.model.embedded; + +import javax.persistence.Embeddable; + +@Embeddable +public class Eembeddable { + + String description; + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + +} diff --git a/ebean-test/src/test/java/io/ebeaninternal/server/core/DefaultServer_getReferenceTest.java b/ebean-test/src/test/java/io/ebean/xtest/core/DefaultServer_getReferenceTest.java similarity index 97% rename from ebean-test/src/test/java/io/ebeaninternal/server/core/DefaultServer_getReferenceTest.java rename to ebean-test/src/test/java/io/ebean/xtest/core/DefaultServer_getReferenceTest.java index 28f058595..7f8502000 100644 --- a/ebean-test/src/test/java/io/ebeaninternal/server/core/DefaultServer_getReferenceTest.java +++ b/ebean-test/src/test/java/io/ebean/xtest/core/DefaultServer_getReferenceTest.java @@ -1,4 +1,4 @@ -package io.ebeaninternal.server.core; +package io.ebean.xtest.core; import io.ebean.xtest.BaseTestCase;