#set( $symbol_pound = '#' ) #set( $symbol_dollar = '$' ) #set( $symbol_escape = '\' ) /* * 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 domainapp.modules.simple.integtests; import java.util.List; import java.util.Map; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import org.junit.BeforeClass; import org.apache.isis.applib.annotation.DomainService; import org.apache.isis.applib.annotation.NatureOfService; import org.apache.isis.applib.fixturescripts.FixtureScripts; import org.apache.isis.applib.services.fixturespec.FixtureScriptsSpecification; import org.apache.isis.applib.services.fixturespec.FixtureScriptsSpecificationProvider; import org.apache.isis.core.integtestsupport.IntegrationTestAbstract; import org.apache.isis.core.integtestsupport.IsisSystemForTest; import org.apache.isis.core.integtestsupport.scenarios.ScenarioExecutionForIntegration; import domainapp.modules.simple.SimpleModuleManifest; public abstract class SimpleModuleIntegTestAbstract extends IntegrationTestAbstract { @BeforeClass public static void initSystem() { org.apache.log4j.PropertyConfigurator.configure("logging-integtest.properties"); IsisSystemForTest isft = IsisSystemForTest.getElseNull(); if(isft == null) { isft = new IsisSystemForTest.Builder() .withLoggingAt(org.apache.log4j.Level.INFO) .with(new SimpleModuleManifest() { @Override public Map<String, String> getConfigurationProperties() { final Map<String, String> map = Maps.newHashMap(); Util.withJavaxJdoRunInMemoryProperties(map); Util.withDataNucleusProperties(map); Util.withIsisIntegTestProperties(map); // same as in isis.properties map.put("isis.objects.editing","false"); return map; } @Override public List<Class<?>> getAdditionalServices() { return (List)Lists.newArrayList(ModuleFixtureScriptsSpecificationProvider.class); } }) .build(); isft.setUpSystem(); IsisSystemForTest.set(isft); } // instantiating will install onto ThreadLocal new ScenarioExecutionForIntegration(); } @DomainService(nature = NatureOfService.DOMAIN) public static class ModuleFixtureScriptsSpecificationProvider implements FixtureScriptsSpecificationProvider { @Override public FixtureScriptsSpecification getSpecification() { return FixtureScriptsSpecification.builder("domainapp.modules.simple").with( FixtureScripts.MultipleExecutionStrategy.EXECUTE_ONCE_BY_VALUE).build(); } } }