You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/12/21 07:53:09 UTC
[isis] branch master updated: ISIS-2033: regression tests: house
keeping
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/master by this push:
new 218c02a ISIS-2033: regression tests: house keeping
218c02a is described below
commit 218c02ae622bda896c199ef6b5543145713cb0e7
Author: Andi Huber <ah...@apache.org>
AuthorDate: Mon Dec 21 08:52:55 2020 +0100
ISIS-2033: regression tests: house keeping
---
.../domainmodel/DomainModelTest_forEditing.java | 3 -
.../DomainModelTest_usingBadDomain.java | 5 -
...nModelTest_usingBadDomain_noActionEnforced.java | 1 -
.../DomainModelTest_usingGoodDomain.java | 4 -
.../jdo/isis/DomainModelTest_jdoIsisMixins.java | 102 +--------------------
.../datanucleus/enhancer/EnhancementHelper.java | 3 +
6 files changed, 4 insertions(+), 114 deletions(-)
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_forEditing.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_forEditing.java
index b276226..1d77ac5 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_forEditing.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_forEditing.java
@@ -24,7 +24,6 @@ import javax.xml.bind.annotation.XmlRootElement;
import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
import org.springframework.test.context.TestPropertySource;
import static org.junit.Assert.assertTrue;
@@ -59,8 +58,6 @@ import lombok.val;
IsisPresets.SilenceMetaModel,
IsisPresets.SilenceProgrammingModel
})
-@DirtiesContext
-//@Incubating("fails when run with surefire")
class DomainModelTest_forEditing extends IsisIntegrationTestAbstract {
@Inject private WrapperFactory wrapper;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java
index 6ee40d2..8d74499 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java
@@ -23,7 +23,6 @@ import javax.inject.Inject;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
import org.springframework.test.context.TestPropertySource;
import static org.junit.jupiter.api.Assertions.assertThrows;
@@ -60,15 +59,11 @@ import lombok.val;
IsisPresets.SilenceMetaModel,
IsisPresets.SilenceProgrammingModel
})
-@DirtiesContext // because of the temporary installed 'bad' domain
-//@Incubating("does not work, when executed in sequence with other regressiontests")
class DomainModelTest_usingBadDomain {
@Inject private IsisConfiguration configuration;
@Inject private IsisSystemEnvironment isisSystemEnvironment;
@Inject private SpecificationLoader specificationLoader;
- //@Inject private ApplicationContext applicationContext;
-
@Test
void fullIntrospection_shouldBeEnabledByThisTestClass() {
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java
index e37753d..7369b97 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java
@@ -56,7 +56,6 @@ import lombok.val;
IsisPresets.SilenceMetaModel,
IsisPresets.SilenceProgrammingModel
})
-//@Incubating("does not work, when executed in sequence with other regressiontests")
class DomainModelTest_usingBadDomain_noActionEnforced {
@Inject private IsisConfiguration configuration;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java
index eeac5a3..b1abd68 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java
@@ -22,7 +22,6 @@ import javax.inject.Inject;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
import org.springframework.test.context.TestPropertySource;
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -64,9 +63,6 @@ import lombok.val;
IsisPresets.SilenceMetaModel,
IsisPresets.SilenceProgrammingModel
})
-@DirtiesContext // because of the temporary installed 'good' domain
-//@Transactional
-//@Incubating("might fail when run with surefire")
class DomainModelTest_usingGoodDomain {
@Inject private MetaModelService metaModelService;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/jdo/isis/DomainModelTest_jdoIsisMixins.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/jdo/isis/DomainModelTest_jdoIsisMixins.java
index 4755a1d..4521b9f 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/jdo/isis/DomainModelTest_jdoIsisMixins.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/jdo/isis/DomainModelTest_jdoIsisMixins.java
@@ -22,27 +22,17 @@ import javax.inject.Inject;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.annotation.DirtiesContext;
import org.springframework.test.context.TestPropertySource;
-import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-import org.apache.isis.applib.services.jaxb.JaxbService;
-import org.apache.isis.applib.services.metamodel.MetaModelService;
import org.apache.isis.applib.services.registry.ServiceRegistry;
import org.apache.isis.core.config.presets.IsisPresets;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.members.publish.execution.ExecutionPublishingFacet;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
-import org.apache.isis.core.metamodel.specloader.specimpl.IntrospectionState;
-import org.apache.isis.schema.metamodel.v2.DomainClassDto;
import org.apache.isis.testdomain.conf.Configuration_usingJdoIsis;
import org.apache.isis.testdomain.jdo.entities.JdoProduct;
import org.apache.isis.testdomain.model.good.Configuration_usingValidDomain;
-import org.apache.isis.testdomain.model.good.ProperMemberSupport;
import org.apache.isis.testing.integtestsupport.applib.validate.DomainModelValidator;
import lombok.val;
@@ -60,42 +50,14 @@ import lombok.val;
"logging.level.DependentArgUtils=DEBUG"
})
@TestPropertySource({
- //IsisPresets.DebugMetaModel,
- //IsisPresets.DebugProgrammingModel,
IsisPresets.SilenceMetaModel,
IsisPresets.SilenceProgrammingModel
})
-@DirtiesContext // because of the temporary installed 'good' domain
-//@Transactional
-//@Incubating("might fail when run with surefire")
class DomainModelTest_jdoIsisMixins {
- @Inject private MetaModelService metaModelService;
- @Inject private JaxbService jaxbService;
@Inject private ServiceRegistry serviceRegistry;
-// @Inject private FactoryService factoryService;
@Inject private SpecificationLoader specificationLoader;
-
- void debug() {
- val config = new MetaModelService.Config()
-// .withIgnoreNoop()
-// .withIgnoreAbstractClasses()
-// .withIgnoreBuiltInValueTypes()
-// .withIgnoreInterfaces()
- //.withPackagePrefix("*")
- .withPackagePrefix("org.apache.isis.testdomain.")
- ;
-
- System.out.println("!!! listing MM");
- val metamodelDto = metaModelService.exportMetaModel(config);
- for (DomainClassDto domainClass : metamodelDto.getDomainClassDto()) {
- System.out.println("dc: " + domainClass.getId());
- val xmlString = jaxbService.toXml(domainClass);
- System.out.println(xmlString);
- }
- System.out.println("!!! ---");
- }
-
+
@Test
void goodDomain_shouldPassValidation() {
//debug();
@@ -106,61 +68,6 @@ class DomainModelTest_jdoIsisMixins {
}
@Test
- void typeLevelAnnotations_shouldBeHonored_onMixins() {
-
- val holderSpec = specificationLoader.loadSpecification(ProperMemberSupport.class,
- IntrospectionState.TYPE_AND_MEMBERS_INTROSPECTED);
-
- val mx_action = holderSpec.getObjectActionElseFail("action"); // when @Action at type level
- assertNotNull(mx_action);
- assertEquals("action", mx_action.getId());
- assertEquals("foo", mx_action.getName());
- assertEquals("bar", mx_action.getDescription());
- assertHasPublishedActionFacet(mx_action);
-
- val mx_action2 = holderSpec.getObjectActionElseFail("action2"); // proper mixed-in action support
- assertNotNull(mx_action2);
- assertHasPublishedActionFacet(mx_action2);
-
- val mx_property = holderSpec.getAssociationElseFail("property"); // when @Property at type level
- assertNotNull(mx_property);
- assertEquals("property", mx_property.getId());
- assertEquals("foo", mx_property.getName());
- assertEquals("bar", mx_property.getDescription());
-
- val mx_property2 = holderSpec.getAssociationElseFail("property2"); // when @Property at method level
- assertNotNull(mx_property2);
- assertEquals("property2", mx_property2.getId());
- assertEquals("foo", mx_property2.getName());
- assertEquals("bar", mx_property2.getDescription());
-
- val mx_collection = holderSpec.getAssociationElseFail("collection"); // when @Collection at type level
- assertNotNull(mx_collection);
- assertEquals("collection", mx_collection.getId());
- assertEquals("foo", mx_collection.getName());
- assertEquals("bar", mx_collection.getDescription());
-
- val mx_collection2 = holderSpec.getAssociationElseFail("collection2"); // when @Collection at method level
- assertNotNull(mx_collection2);
- assertEquals("collection2", mx_collection2.getId());
- assertEquals("foo", mx_collection2.getName());
- assertEquals("bar", mx_collection2.getDescription());
-
- }
-
- @Test
- void memberLevelAnnotations_shouldResolveUnambiguous_onMixins() {
-
- val holderSpec = specificationLoader.loadSpecification(ProperMemberSupport.class);
-
- val mx_openRestApi = holderSpec.getObjectAction("openRestApi"); // built-in mixin support
- assertNotNull(mx_openRestApi);
-
- assertThrows(Exception.class, ()->holderSpec.getAssociationElseFail("openRestApi")); // should not be picked up as a property
-
- }
-
- @Test
void pluginProvidedMixins_shouldBePickedUp() {
val holderSpec = specificationLoader.loadSpecification(JdoProduct.class);
@@ -170,12 +77,5 @@ class DomainModelTest_jdoIsisMixins {
}
- // -- HELPER
-
- private void assertHasPublishedActionFacet(FacetHolder facetHolder) {
- val facet = facetHolder.getFacet(ExecutionPublishingFacet.class);
- assertNotNull(facet);
- }
-
}
diff --git a/regressiontests/stable/src/test/java/org/datanucleus/enhancer/EnhancementHelper.java b/regressiontests/stable/src/test/java/org/datanucleus/enhancer/EnhancementHelper.java
index 2f521ee..2d8e1e5 100644
--- a/regressiontests/stable/src/test/java/org/datanucleus/enhancer/EnhancementHelper.java
+++ b/regressiontests/stable/src/test/java/org/datanucleus/enhancer/EnhancementHelper.java
@@ -42,6 +42,7 @@ import org.datanucleus.exceptions.NucleusUserException;
*
* TODO Provide a mechanism to automatically deregister classes when their class loader exits? or register against the NucleusContext?
*/
+@SuppressWarnings("rawtypes")
public class EnhancementHelper extends java.lang.Object
{
private static EnhancementHelper singletonHelper = new EnhancementHelper();
@@ -50,6 +51,7 @@ public class EnhancementHelper extends java.lang.Object
* Static mapping of <code>Persistable</code> class to an instance of that class.
* New entries are added by the static method in each <code>Persistable</code> class initialisation. Entries are never removed.
*/
+
private static Map<Class, Meta> registeredClasses = new ConcurrentHashMap<>();
/**
@@ -251,6 +253,7 @@ public class EnhancementHelper extends java.lang.Object
* @param pcClass the <code>Class</code>.
* @return the Persistable instance for the <code>Class</code>.
*/
+ @SuppressWarnings("deprecation")
private static Persistable getPersistableForClass(Class pcClass)
{
Meta ret = registeredClasses.get(pcClass);