You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2019/11/27 11:07:10 UTC

[isis] 01/04: ISIS-2186: starts to add in fakedata integ tests.

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

danhaywood pushed a commit to branch ISIS-2186
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 55048005df2c8cf3256ac0f36ae9605114a22236
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Nov 26 17:27:17 2019 +0000

    ISIS-2186: starts to add in fakedata integ tests.
    
    ... though have commented out in order to look at simpleapp more closely first.
---
 extensions/lib/fakedata/fixture/pom.xml            | 124 ---------------------
 .../fakedata/fixture/FakeDataFixturesModule.java   |   2 +
 .../isisaddons/module/fakedata/FakeDataModule.java |   4 +
 extensions/lib/fakedata/integtests/pom.xml         |  54 ++-------
 .../integtests/AppConfigurationForTesting.java     |  29 +----
 .../FakeDataModuleBootstrapIntegTest.java          |  26 ++---
 .../FakeDataModuleIntegTestAbstract.java           |  12 +-
 .../integtests/FakeDataModuleIntegTestModule.java  |  26 ++---
 extensions/pom.xml                                 |   5 +-
 .../integtests/SimpleModuleManifestForTesting.java |   1 -
 10 files changed, 52 insertions(+), 231 deletions(-)

diff --git a/extensions/lib/fakedata/fixture/pom.xml b/extensions/lib/fakedata/fixture/pom.xml
index 6054733..581d6fa 100644
--- a/extensions/lib/fakedata/fixture/pom.xml
+++ b/extensions/lib/fakedata/fixture/pom.xml
@@ -75,130 +75,6 @@
             <artifactId>guava</artifactId>
         </dependency>
 
-        <!--
-                <dependency>
-                    <groupId>org.hsqldb</groupId>
-                    <artifactId>hsqldb</artifactId>
-                </dependency>
-        -->
-
-<!--
-        <dependency>
-            <groupId>org.togglz</groupId>
-            <artifactId>togglz-core</artifactId>
-        </dependency>
--->
-
-<!--
-        <dependency>
-            <groupId>org.isisaddons.module.docx</groupId>
-            <artifactId>isis-module-docx-dom</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.jdom</groupId>
-            <artifactId>jdom2</artifactId>
-            <version>2.0.3</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.excel</groupId>
-            <artifactId>isis-module-excel-dom</artifactId>
-        </dependency>
-
-
-        <dependency>
-            <groupId>org.isisaddons.module.poly</groupId>
-            <artifactId>isis-module-poly-dom</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.servletapi</groupId>
-            <artifactId>isis-module-servletapi-dom</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.stringinterpolator</groupId>
-            <artifactId>isis-module-stringinterpolator-dom</artifactId>
-        </dependency>
-
-
-        <dependency>
-            <groupId>org.isisaddons.module.audit</groupId>
-            <artifactId>isis-module-audit-dom</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.command</groupId>
-            <artifactId>isis-module-command-dom</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.publishmq</groupId>
-            <artifactId>isis-module-publishmq-dom-jdo</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.isisaddons.module.publishmq</groupId>
-            <artifactId>isis-module-publishmq-dom-outbox</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.isisaddons.module.publishmq</groupId>
-            <artifactId>isis-module-publishmq-dom-mq</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.isisaddons.module.publishmq</groupId>
-            <artifactId>isis-module-publishmq-dom-status</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.security</groupId>
-            <artifactId>isis-module-security-dom</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.module.sessionlogger</groupId>
-            <artifactId>isis-module-sessionlogger-dom</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.wicket.fullcalendar2</groupId>
-            <artifactId>isis-wicket-fullcalendar2-cpt</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.wicket.gmap3</groupId>
-            <artifactId>isis-wicket-gmap3-cpt</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.wicket.pdfjs</groupId>
-            <artifactId>isis-wicket-pdfjs-cpt</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.wicket.summernote</groupId>
-            <artifactId>isis-wicket-summernote-cpt</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.isisaddons.wicket.wickedcharts</groupId>
-            <artifactId>isis-wicket-wickedcharts-cpt</artifactId>
-        </dependency>
--->
-
-
-        <!-- test -->
-        <dependency>
-            <groupId>org.apache.isis.mavendeps</groupId>
-            <artifactId>isis-mavendeps-testing</artifactId>
-            <type>pom</type>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.togglz</groupId>
-            <artifactId>togglz-junit</artifactId>
-            <scope>test</scope>
-        </dependency>
 
         <dependency>
             <groupId>org.projectlombok</groupId>
diff --git a/extensions/lib/fakedata/fixture/src/main/java/org/isisaddons/module/fakedata/fixture/FakeDataFixturesModule.java b/extensions/lib/fakedata/fixture/src/main/java/org/isisaddons/module/fakedata/fixture/FakeDataFixturesModule.java
index bc4f7fe..aaec713 100644
--- a/extensions/lib/fakedata/fixture/src/main/java/org/isisaddons/module/fakedata/fixture/FakeDataFixturesModule.java
+++ b/extensions/lib/fakedata/fixture/src/main/java/org/isisaddons/module/fakedata/fixture/FakeDataFixturesModule.java
@@ -3,7 +3,9 @@ package org.isisaddons.module.fakedata.fixture;
 import org.apache.isis.extensions.fixtures.fixturescripts.FixtureScript;
 import org.apache.isis.extensions.fixtures.modules.Module;
 import org.isisaddons.module.fakedata.fixture.demoapp.demomodule.fixturescripts.FakeDataDemoObjectWithAll_tearDown;
+import org.springframework.context.annotation.Configuration;
 
+@Configuration
 public class FakeDataFixturesModule implements Module {
 
     @Override public FixtureScript getTeardownFixture() {
diff --git a/extensions/lib/fakedata/impl/src/main/java/org/isisaddons/module/fakedata/FakeDataModule.java b/extensions/lib/fakedata/impl/src/main/java/org/isisaddons/module/fakedata/FakeDataModule.java
index a2b2ac3..11cff57 100644
--- a/extensions/lib/fakedata/impl/src/main/java/org/isisaddons/module/fakedata/FakeDataModule.java
+++ b/extensions/lib/fakedata/impl/src/main/java/org/isisaddons/module/fakedata/FakeDataModule.java
@@ -1,5 +1,9 @@
 package org.isisaddons.module.fakedata;
 
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@Configuration
 public class FakeDataModule {
 
     public abstract static class ActionDomainEvent<S> extends org.apache.isis.applib.events.domain.ActionDomainEvent<S> {}
diff --git a/extensions/lib/fakedata/integtests/pom.xml b/extensions/lib/fakedata/integtests/pom.xml
index 1eb5037..0b19f08 100644
--- a/extensions/lib/fakedata/integtests/pom.xml
+++ b/extensions/lib/fakedata/integtests/pom.xml
@@ -4,9 +4,9 @@
     <modelVersion>4.0.0</modelVersion>
 
     <parent>
-        <groupId>org.incode</groupId>
-        <artifactId>incode-parent</artifactId>
-        <version>${revision}</version>
+        <groupId>org.apache.isis.extensions</groupId>
+        <artifactId>isis-extensions</artifactId>
+        <version>2.0.0-M3-SNAPSHOT</version>
         <relativePath>../../../pom.xml</relativePath>
     </parent>
 
@@ -40,26 +40,6 @@
                 </excludes>
             </testResource>
         </testResources>
-        <plugins>
-            <plugin>
-                <groupId>com.github.odavid.maven.plugins</groupId>
-                <artifactId>mixin-maven-plugin</artifactId>
-                <version>0.1-alpha-39</version>
-                <extensions>true</extensions>
-                <configuration>
-                    <mixins>
-                        <mixin>
-                            <groupId>com.danhaywood.mavenmixin</groupId>
-                            <artifactId>standard</artifactId>
-                        </mixin>
-                        <mixin>
-                            <groupId>com.danhaywood.mavenmixin</groupId>
-                            <artifactId>surefire</artifactId>
-                        </mixin>
-                    </mixins>
-                </configuration>
-            </plugin>
-        </plugins>
     </build>
 
     <dependencies>
@@ -83,42 +63,22 @@
             <scope>test</scope>
         </dependency>
 
-        <dependency>
-            <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-wrapper</artifactId>
-            <scope>test</scope>
-        </dependency>
-
+<!--
         <dependency>
             <groupId>org.incode.module.base</groupId>
             <artifactId>incode-module-base-dom</artifactId>
             <type>test-jar</type>
             <scope>test</scope>
         </dependency>
+-->
 
-        <dependency>
-            <groupId>org.incode.module.integtestsupport</groupId>
-            <artifactId>incode-module-integtestsupport-dom</artifactId>
-            <scope>test</scope>
-        </dependency>
-
+<!--
         <dependency>
             <groupId>org.datanucleus</groupId>
             <artifactId>datanucleus-core</artifactId>
             <scope>test</scope>
         </dependency>
-
-        <dependency>
-            <groupId>com.danhaywood.java</groupId>
-            <artifactId>danhaywood-java-assertjext</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.isis.core</groupId>
-            <artifactId>isis-core-applib</artifactId>
-            <scope>test</scope>
-        </dependency>
+-->
 
         <dependency>
             <groupId>org.hsqldb</groupId>
diff --git a/starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/AppConfigurationForTesting.java
similarity index 60%
copy from starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java
copy to extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/AppConfigurationForTesting.java
index 1c64d9e..41eb50d 100644
--- a/starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java
+++ b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/AppConfigurationForTesting.java
@@ -16,34 +16,23 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package domainapp.modules.simple.integtests;
+package org.isisaddons.module.fakedata.integtests;
 
-import javax.inject.Singleton;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Import;
-import org.springframework.context.annotation.PropertySource;
-import org.springframework.context.annotation.PropertySources;
 
 import org.apache.isis.config.IsisPresets;
-import org.apache.isis.config.beans.WebAppConfigBean;
 import org.apache.isis.extensions.fixtures.ExtFixturesModule;
 import org.apache.isis.jdo.IsisBootDataNucleus;
 import org.apache.isis.runtime.spring.IsisBoot;
 import org.apache.isis.security.IsisBootSecurityBypass;
-
-import domainapp.modules.simple.SimpleModule;
-
+import org.springframework.context.annotation.*;
 
 /**
- * Makes the integral parts of the 'module-simple' integration tests.
+ * Makes the integral parts of the 'simple app' web application.
  */
 @Configuration
 @PropertySources({
-    //@PropertySource("classpath:/domainapp/application/manifest/isis-non-changing.properties"),
     @PropertySource(IsisPresets.H2InMemory),
+    @PropertySource(IsisPresets.NoTranslations),
     @PropertySource(IsisPresets.DataNucleusAutoCreate),
 })
 @Import({
@@ -54,14 +43,8 @@ import domainapp.modules.simple.SimpleModule;
 })
 @ComponentScan(
         basePackageClasses= {
-                SimpleModule.class
+                FakeDataModuleIntegTestModule.class
         })
-public class SimpleModuleManifestForTesting {
-
-    @Bean @Singleton
-    public WebAppConfigBean webAppConfigBean() {
-        return WebAppConfigBean.builder()
-                .build();
-    }
+public class AppConfigurationForTesting {
 
 }
diff --git a/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleBootstrapIntegTest.java b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleBootstrapIntegTest.java
index cc56e3c..651ff53 100644
--- a/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleBootstrapIntegTest.java
+++ b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleBootstrapIntegTest.java
@@ -20,26 +20,22 @@ package org.isisaddons.module.fakedata.integtests;
 
 import javax.inject.Inject;
 
-import org.junit.Test;
-
-import org.apache.isis.applib.Module;
 import org.apache.isis.applib.services.jaxb.JaxbService;
-import org.apache.isis.applib.services.metamodel.MetaModelService4;
-
+import org.junit.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.ContextConfiguration;
+
+@SpringBootTest(
+        classes = AppConfigurationForTesting.class,
+        properties = {
+        })
+@ContextConfiguration
 public class FakeDataModuleBootstrapIntegTest extends FakeDataModuleIntegTestAbstract {
 
     @Test
-    public void serializes_module() throws Exception {
-
-        final Module module = metaModelService4.getAppManifest2().getModule();
+    public void bootstraps_ok() throws Exception {
 
-        final String s = jaxbService.toXml(module);
-        System.out.println(s);
     }
 
-    @Inject
-    MetaModelService4 metaModelService4;
+}
 
-    @Inject
-    JaxbService jaxbService;
-}
\ No newline at end of file
diff --git a/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestAbstract.java b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestAbstract.java
index b07907d..605832d 100644
--- a/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestAbstract.java
+++ b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestAbstract.java
@@ -1,9 +1,15 @@
 package org.isisaddons.module.fakedata.integtests;
 
-import org.apache.isis.applib.ModuleAbstract;
-import org.apache.isis.core.integtestsupport.IntegrationTestAbstract3;
 
-public abstract class FakeDataModuleIntegTestAbstract extends IntegrationTestAbstract3 {
+import org.apache.isis.extensions.fixtures.IsisIntegrationTestAbstractWithFixtures;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@SpringBootTest(
+        classes = SimpleModuleManifestForTesting.class,
+        properties = {
+                "isis.objects.editing=false"
+        })
+public abstract class FakeDataModuleIntegTestAbstract extends IsisIntegrationTestAbstractWithFixtures {
 
     public static ModuleAbstract module() {
         return new FakeDataModuleIntegTestModule();
diff --git a/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestModule.java b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestModule.java
index f7c36a1..edc69df 100644
--- a/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestModule.java
+++ b/extensions/lib/fakedata/integtests/src/test/java/org/isisaddons/module/fakedata/integtests/FakeDataModuleIntegTestModule.java
@@ -2,24 +2,16 @@ package org.isisaddons.module.fakedata.integtests;
 
 import java.util.Set;
 
-import javax.xml.bind.annotation.XmlRootElement;
-
-import com.google.common.collect.Sets;
-
-import org.apache.isis.applib.Module;
-import org.apache.isis.applib.ModuleAbstract;
-
 import org.isisaddons.module.fakedata.FakeDataModule;
 import org.isisaddons.module.fakedata.fixture.FakeDataFixturesModule;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
 
-@XmlRootElement(name = "module")
-public class FakeDataModuleIntegTestModule extends ModuleAbstract {
+import com.google.common.collect.Sets;
 
-    @Override
-    public Set<Module> getDependencies() {
-        return Sets.newHashSet(
-                new FakeDataModule(),
-                new FakeDataFixturesModule()
-        );
-    }
-}
+@Configuration
+@Import({
+        FakeDataModule.class,
+        FakeDataFixturesModule.class
+})
+public class FakeDataModuleIntegTestModule {}
diff --git a/extensions/pom.xml b/extensions/pom.xml
index 62f62ea..e79529b 100644
--- a/extensions/pom.xml
+++ b/extensions/pom.xml
@@ -280,8 +280,11 @@
 		<module>lib/base/impl</module>
 		<module>lib/excel/impl</module>
 		<module>lib/fakedata/impl</module>
-		<module>lib/unittestsupport/impl</module>
 		<module>lib/fakedata/fixture</module>
+<!--
+		<module>lib/fakedata/integtests</module>
+-->
+		<module>lib/unittestsupport/impl</module>
 	</modules>
 
 </project>
diff --git a/starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java b/starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java
index 1c64d9e..1899b5d 100644
--- a/starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java
+++ b/starters/simpleapp/module-simple/src/test/java/domainapp/modules/simple/integtests/SimpleModuleManifestForTesting.java
@@ -42,7 +42,6 @@ import domainapp.modules.simple.SimpleModule;
  */
 @Configuration
 @PropertySources({
-    //@PropertySource("classpath:/domainapp/application/manifest/isis-non-changing.properties"),
     @PropertySource(IsisPresets.H2InMemory),
     @PropertySource(IsisPresets.DataNucleusAutoCreate),
 })