Hi Georg, I get a build failure.
[INFO] /home/painter/workspace-turbine/fulcrum/testcontainer/src/java/org/apache/fulcrum/testcontainer/ECMContainer.java: Recompile with -Xlint:deprecation for details. [INFO] [INFO] --- maven-resources-plugin:3.1.0:testResources (default-testResources) @ fulcrum-testcontainer --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 5 resources to [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.001 s [INFO] Finished at: 2018-11-29T10:32:11-05:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.1.0:testResources (default-testResources) on project fulcrum-testcontainer: /log4j2.xml (Permission denied) -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException - Jeff On 11/29/18 10:29 AM, [email protected] wrote: > Author: gk > Date: Thu Nov 29 15:29:54 2018 > New Revision: 1847727 > > URL: http://svn.apache.org/viewvc?rev=1847727&view=rev > Log: > - add JUnit 5 support, still support JUnit 4 and 3 > - TestEngine with ID 'junit-vintage' failed to discover tests... : was > resolved by setting reuseForks = true, which is together with forkCount=1, > the default behaviour for surefire - in BaseUnit4Test the container is now > with setter set instead of statically with non static setter. Other test may > need remove forkMode=always.. > - remove log4j dependency, add log4j2 with log4j1.2 bridge for ECMContainer > > Added: > > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit5Test.java > (with props) > turbine/fulcrum/trunk/testcontainer/src/test/log4j2.xml (with props) > > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerJunit5Test.java > (with props) > Modified: > turbine/fulcrum/trunk/testcontainer/pom.xml > turbine/fulcrum/trunk/testcontainer/src/changes/changes.xml > > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit4Test.java > > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/ECMContainer.java > > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/EcmContainerTest.java > > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerTest.java > turbine/fulcrum/trunk/testcontainer/xdocs/index.xml > > Modified: turbine/fulcrum/trunk/testcontainer/pom.xml > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/pom.xml?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- turbine/fulcrum/trunk/testcontainer/pom.xml (original) > +++ turbine/fulcrum/trunk/testcontainer/pom.xml Thu Nov 29 15:29:54 2018 > @@ -30,13 +30,21 @@ > <inceptionYear>2004</inceptionYear> > <description>A test framework for Avalon components</description> > <url>http://turbine.apache.org/fulcrum/fulcrum-testcontainer</url> > - > + > <scm> > > <connection>scm:svn:http://svn.apache.org/repos/asf/turbine/fulcrum/trunk/testcontainer</connection> > > <developerConnection>scm:svn:https://svn.apache.org/repos/asf/turbine/fulcrum/trunk/testcontainer</developerConnection> > > <url>http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer</url> > </scm> > > + <distributionManagement> > + <site> > + <id>apache.website</id> > + <name>Fulcrum Website</name> > + <url>http://turbine.apache.org/fulcrum/fulcrum-testcontainer/</url> > + </site> > + </distributionManagement> > + > <developers> > <developer> > <name>Siegfried Goeschl</name> > @@ -50,11 +58,46 @@ > </developers> > > <dependencies> > + <!-- we still need this dependency to compile --> > + <dependency> > + <groupId>junit</groupId> > + <artifactId>junit</artifactId> > + <version>4.12</version> > + </dependency> > <dependency> > - <groupId>junit</groupId> > - <artifactId>junit</artifactId> > - <version>4.12</version> > + <groupId>org.junit.jupiter</groupId> > + <artifactId>junit-jupiter-api</artifactId> > + <version>${junit.jupiter.version}</version> > + <!--scope>test</scope--> > + </dependency> > + <dependency> > + <groupId>org.junit.jupiter</groupId> > + <artifactId>junit-jupiter-params</artifactId> > + <version>${junit.jupiter.version}</version> > + <!--scope>test</scope--> > + </dependency> > + <dependency> > + <groupId>org.junit.jupiter</groupId> > + <artifactId>junit-jupiter-engine</artifactId> > + <version>${junit.jupiter.version}</version> > + </dependency> > + <!-- use Junit 4 within Junit 5 --> > + <dependency> > + <groupId>org.junit.vintage</groupId> > + <artifactId>junit-vintage-engine</artifactId> > + <version>${junit.jupiter.version}</version> > + </dependency> > + <dependency> > + <groupId>org.junit.platform</groupId> > + <artifactId>junit-platform-runner</artifactId> > + <version>${junit.platform}</version> > </dependency> > + <dependency> > + <groupId>org.junit.platform</groupId> > + <artifactId>junit-platform-launcher</artifactId> > + <version>${junit.platform}</version> > + </dependency> > + > <!-- Needed if testing with YAAFI --> > <dependency> > <groupId>org.apache.fulcrum</groupId> > @@ -62,11 +105,11 @@ > <version>1.0.8-SNAPSHOT</version> > <optional>true</optional> > </dependency> > - <dependency> > - <groupId>javax.servlet</groupId> > - <artifactId>javax.servlet-api</artifactId> > - <version>3.1.0</version> > - </dependency> > + <dependency> > + <groupId>javax.servlet</groupId> > + <artifactId>javax.servlet-api</artifactId> > + <version>3.1.0</version> > + </dependency> > <dependency> > <groupId>org.mockito</groupId> > <artifactId>mockito-core</artifactId> > @@ -80,47 +123,64 @@ > <type>jar</type> > <optional>true</optional> > </dependency> > + > <dependency> > - <groupId>log4j</groupId> > - <artifactId>log4j</artifactId> > - <version>1.2.15</version> > - <type>jar</type> > + <groupId>org.apache.logging.log4j</groupId> > + <artifactId>log4j-api</artifactId> > + <version>${log4j2.version}</version> > <optional>true</optional> > - <exclusions> > - <exclusion> > - <groupId>com.sun.jdmk</groupId> > - <artifactId>jmxtools</artifactId> > - </exclusion> > - <exclusion> > - <groupId>com.sun.jmx</groupId> > - <artifactId>jmxri</artifactId> > - </exclusion> > - <exclusion> > - <groupId>javax.jms</groupId> > - <artifactId>jms</artifactId> > - </exclusion> > - </exclusions> > </dependency> > + <dependency> > + <groupId>org.apache.logging.log4j</groupId> > + <artifactId>log4j-core</artifactId> > + <version>${log4j2.version}</version> > + <optional>true</optional> > + </dependency> > + <!-- log4j1.2 bridge instead of log4j --> > + <dependency> > + <groupId>org.apache.logging.log4j</groupId> > + <artifactId>log4j-1.2-api</artifactId> > + <version>${log4j2.version}</version> > + <optional>true</optional> > + </dependency> > + > </dependencies> > > <build> > <sourceDirectory>${basedir}/src/java</sourceDirectory> > <testSourceDirectory>${basedir}/src/test</testSourceDirectory> > + <testResources> > + <testResource> > + <targetPath /> > + <directory>${basedir}/src/test</directory> > + <includes> > + <include>*.xml</include> > + </includes> > + </testResource> > + </testResources> > <plugins> > <plugin> > + <!-- JUnit 5 requires Surefire version 2.22.0 or higher --> > <groupId>org.apache.maven.plugins</groupId> > <artifactId>maven-surefire-plugin</artifactId> > <configuration> > - <!-- forkMode=always equivalent --> > + <!-- setting the default: forkCount=1/reuseForks=true --> > <forkCount>1</forkCount> > - <reuseForks>false</reuseForks> > + <!-- setting this to false (highest isolation: each test class has > its own jvm process) let maven test ignore all tests? --> > + <reuseForks>true</reuseForks> > </configuration> > + <dependencies> > + <!-- need no junit-platform-surefire-provider dependency--> > + </dependencies> > </plugin> > </plugins> > </build> > - > + > <properties> > <turbine.site.path>fulcrum/fulcrum-testcontainer</turbine.site.path> > + <junit.jupiter.version>5.3.1</junit.jupiter.version> > + <junit.platform>1.3.2</junit.platform> > + <log4j2.version>2.11.1</log4j2.version> > </properties> > - > -</project> > + > +</project> > \ No newline at end of file > > Modified: turbine/fulcrum/trunk/testcontainer/src/changes/changes.xml > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/changes/changes.xml?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- turbine/fulcrum/trunk/testcontainer/src/changes/changes.xml (original) > +++ turbine/fulcrum/trunk/testcontainer/src/changes/changes.xml Thu Nov 29 > 15:29:54 2018 > @@ -25,6 +25,9 @@ > </properties> > <body> > <release version="1.0.8" date="in Subversion"> > + <action type="update" dev="gk"> > + Add support for JUnit 5 > + </action> > </release> > <release version="1.0.7" date="2015-08-08"> > <action type="update" dev="gk"> > > Modified: > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit4Test.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit4Test.java?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit4Test.java > (original) > +++ > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit4Test.java > Thu Nov 29 15:29:54 2018 > @@ -54,6 +54,7 @@ import org.mockito.stubbing.Answer; > * @author <a href="mailto:[email protected]">Quinton McCombs</a> > * @version $Id$ > */ > + > public class BaseUnit4Test > { > public static final String CONTAINER_ECM = "CONTAINER_ECM"; > @@ -63,7 +64,7 @@ public class BaseUnit4Test > public static final String COMPONENT_APP_ROOT = > Container.COMPONENT_APP_ROOT; > > /** Pick the default container to be YAAFI **/ > - public static String containerType = CONTAINER_YAAFI; > + private String containerType = CONTAINER_YAAFI; > > /** Use INFO for ConsoleLogger */ > public static final int defaultLogLevel = ConsoleLogger.LEVEL_INFO; > @@ -285,4 +286,14 @@ public class BaseUnit4Test > when(request.getParameterNames()).thenReturn(v.elements()); > return request; > } > + > + public String getContainerType() > + { > + return containerType; > + } > + > + public void setContainerType( String containerType ) > + { > + this.containerType = containerType; > + } > } > > Added: > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit5Test.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit5Test.java?rev=1847727&view=auto > ============================================================================== > --- > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit5Test.java > (added) > +++ > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit5Test.java > Thu Nov 29 15:29:54 2018 > @@ -0,0 +1,302 @@ > +package org.apache.fulcrum.testcontainer; > + > +import static org.mockito.ArgumentMatchers.any; > +import static org.mockito.ArgumentMatchers.anyInt; > +import static org.mockito.ArgumentMatchers.anyString; > +import static org.mockito.Mockito.doAnswer; > +import static org.mockito.Mockito.mock; > +import static org.mockito.Mockito.when; > + > +import java.util.HashMap; > +import java.util.Locale; > +import java.util.Map; > +import java.util.Vector; > + > +import javax.servlet.http.HttpServletRequest; > +import javax.servlet.http.HttpSession; > + > +import org.apache.avalon.framework.component.ComponentException; > +import org.apache.avalon.framework.logger.ConsoleLogger; > +// import static org.junit.jupiter.api.Assertions.*; > +import org.junit.jupiter.api.AfterEach; > +import org.mockito.invocation.InvocationOnMock; > +import org.mockito.stubbing.Answer; > + > + > +/* > + * 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. > + */ > + > +/** > + * Alternative Base class to {@link BaseUnit4Test} for component tests. > + * > + * This version doesn't load the container until the > + * first request for a component. This allows the tester to populate the > configurationFileName and > + * roleFileName, possible one per test. > + * > + * JUnit 5 Version of BaseUnitTest class. > + * > + * @see {@link BaseUnit4Test} > + * > + * @author <a href="mailto:[email protected]">Eric Pugh</a> > + * @author <a href="mailto:[email protected]">Quinton McCombs</a> > + * @version $Id$ > + */ > +//@RunWith(JUnitPlatform.class) > +public class BaseUnit5Test > +{ > + public static final String CONTAINER_ECM = "CONTAINER_ECM"; > + public static final String CONTAINER_YAAFI = "CONTAINER_YAAFI"; > + > + /** Key used in the context for defining the application root */ > + public static final String COMPONENT_APP_ROOT = > Container.COMPONENT_APP_ROOT; > + > + /** Pick the default container to be YAAFI, running in **/ > + private String containerType = CONTAINER_YAAFI; > + > + /** Use INFO for ConsoleLogger */ > + public static final int defaultLogLevel = ConsoleLogger.LEVEL_INFO; > + > + /** Container for the components */ > + private Container container; > + > + /** Setup our default configurationFileName */ > + private String configurationFileName = > "src/test/TestComponentConfig.xml"; > + > + /** Setup our default roleFileName */ > + private String roleFileName = "src/test/TestRoleConfig.xml"; > + > + /** Setup our default parameterFileName */ > + private String parameterFileName = null; > + > + /** Set the log level (only works for YAAFI container) */ > + private int logLevel = defaultLogLevel; > + > + /** Hash map to store attributes for the test **/ > + public Map<String,Object> attributes = new HashMap<String,Object>(); > + > + /** set the Max inactive interval **/ > + public int maxInactiveInterval = 0; > + > + /** > + * Gets the configuration file name for the container should use for > this test. By default it > + * is src/test/TestComponentConfig. > + * > + * @param configurationFileName the location of the config file > + */ > + protected void setConfigurationFileName(String configurationFileName) > + { > + this.configurationFileName = configurationFileName; > + } > + > + /** > + * Override the role file name for the container should use for this > test. By default it is > + * src/test/TestRoleConfig. > + * > + * @param roleFileName location of the role file > + */ > + protected void setRoleFileName(String roleFileName) > + { > + this.roleFileName = roleFileName; > + } > + > + /** > + * Set the console logger level > + * > + * @see org.apache.avalon.framework.logger.ConsoleLogger for debugging > levels > + * @param logLevel set valid logging level > + */ > + protected void setLogLevel(int logLevel) { > + this.logLevel = logLevel; > + } > + > + /** > + * Constructor for test. > + */ > + public BaseUnit5Test() > + { > + } > + > + /** > + * Clean up after each test is run. > + */ > + @AfterEach > + public void tearDown() > + { > + if (container != null) > + { > + container.dispose(); > + } > + container = null; > + } > + > + /** > + * Gets the configuration file name for the container should use for > this test. > + * > + * @return The filename of the configuration file > + */ > + protected String getConfigurationFileName() > + { > + return configurationFileName; > + } > + > + /** > + * Gets the role file name for the container should use for this test. > + * > + * @return The filename of the role configuration file > + */ > + protected String getRoleFileName() > + { > + return roleFileName; > + } > + > + /** > + * Gets the parameter file name for the container should use for this > test. > + * > + * @return The filename of the role configuration file > + */ > + protected String getParameterFileName() > + { > + return parameterFileName; > + } > + > + /** > + * Returns an instance of the named component. > + * This method will also start the container if it > + * has not been started already > + * > + * @param roleName Name of the role the component fills. > + * @return instance of the component > + * @throws ComponentException generic exception > + */ > + protected Object lookup(String roleName) throws ComponentException > + { > + if (container == null) > + { > + if(containerType.equals(CONTAINER_ECM)){ > + container = new ECMContainer(); > + } > + else { > + container = new YAAFIContainer(logLevel); > + } > + container.startup(getConfigurationFileName(), > getRoleFileName(),getParameterFileName()); > + } > + return container.lookup(roleName); > + } > + > + /** > + * Releases the component. > + * > + * @param component component to be released > + */ > + protected void release(Object component) > + { > + if (container != null) > + { > + container.release(component); > + } > + } > + > + > + /** > + * Get a mock requestion > + * > + * @return HttpServletRequest a mock servlet request > + */ > + protected HttpServletRequest getMockRequest() > + { > + HttpServletRequest request = mock(HttpServletRequest.class); > + HttpSession session = mock(HttpSession.class); > + > + doAnswer(new Answer<Object>() > + { > + @Override > + public Object answer(InvocationOnMock invocation) throws > Throwable > + { > + String key = (String) invocation.getArguments()[0]; > + return attributes.get(key); > + } > + }).when(session).getAttribute(anyString()); > + > + doAnswer(new Answer<Object>() > + { > + @Override > + public Object answer(InvocationOnMock invocation) throws > Throwable > + { > + String key = (String) invocation.getArguments()[0]; > + Object value = invocation.getArguments()[1]; > + attributes.put(key, value); > + return null; > + } > + }).when(session).setAttribute(anyString(), any()); > + > + > when(session.getMaxInactiveInterval()).thenReturn(maxInactiveInterval); > + > + doAnswer(new Answer<Integer>() > + { > + @Override > + public Integer answer(InvocationOnMock invocation) throws > Throwable > + { > + return Integer.valueOf(maxInactiveInterval); > + } > + }).when(session).getMaxInactiveInterval(); > + > + doAnswer(new Answer<Object>() > + { > + @Override > + public Object answer(InvocationOnMock invocation) throws > Throwable > + { > + Integer value = (Integer) invocation.getArguments()[0]; > + maxInactiveInterval = value.intValue(); > + return null; > + } > + }).when(session).setMaxInactiveInterval(anyInt()); > + > + when(session.isNew()).thenReturn(true); > + when(request.getSession()).thenReturn(session); > + > + when(request.getServerName()).thenReturn("bob"); > + when(request.getProtocol()).thenReturn("http"); > + when(request.getScheme()).thenReturn("scheme"); > + when(request.getPathInfo()).thenReturn("damn"); > + when(request.getServletPath()).thenReturn("damn2"); > + when(request.getContextPath()).thenReturn("wow"); > + when(request.getContentType()).thenReturn("text/html"); > + > + when(request.getCharacterEncoding()).thenReturn("US-ASCII"); > + when(request.getServerPort()).thenReturn(8080); > + when(request.getLocale()).thenReturn(Locale.US); > + > + when(request.getHeader("Content-type")).thenReturn("text/html"); > + when(request.getHeader("Accept-Language")).thenReturn("en-US"); > + > + Vector<String> v = new Vector<String>(); > + when(request.getParameterNames()).thenReturn(v.elements()); > + return request; > + } > + > + public String getContainerType() > + { > + return containerType; > + } > + > + public void setContainerType( String containerType ) > + { > + this.containerType = containerType; > + } > +} > > Propchange: > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/BaseUnit5Test.java > ------------------------------------------------------------------------------ > svn:eol-style = native > > Modified: > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/ECMContainer.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/ECMContainer.java?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/ECMContainer.java > (original) > +++ > turbine/fulcrum/trunk/testcontainer/src/java/org/apache/fulcrum/testcontainer/ECMContainer.java > Thu Nov 29 15:29:54 2018 > @@ -53,7 +53,6 @@ public class ECMContainer extends Abstra > */ > public ECMContainer() > { > - org.apache.log4j.BasicConfigurator.configure(); > > this.enableLogging(lm.getLoggerForCategory("org.apache.fulcrum.testcontainer.Container")); > } > /** > > Added: turbine/fulcrum/trunk/testcontainer/src/test/log4j2.xml > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/test/log4j2.xml?rev=1847727&view=auto > ============================================================================== > --- turbine/fulcrum/trunk/testcontainer/src/test/log4j2.xml (added) > +++ turbine/fulcrum/trunk/testcontainer/src/test/log4j2.xml Thu Nov 29 > 15:29:54 2018 > @@ -0,0 +1,43 @@ > +<?xml version="1.0" encoding="UTF-8"?> > +<!-- > + 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. > +--> > +<Configuration> > + <Appenders> > + <Console name="console" target="SYSTEM_OUT"> > + <PatternLayout pattern="%d [%t] %-5p %c - %m%n"/> > + </Console> > + <File name="logfile" fileName="target/fulcrum-test.log"> > + <PatternLayout pattern="%d [%t] %-5p %c - %m%n"/> > + </File> > + </Appenders> > + <Loggers> > + <Logger name="org.apache.fulcrum" level="debug" additivity="false"> > + <AppenderRef ref="console"/> > + </Logger> > + <Logger name="avalon" level="debug" additivity="false"> > + <AppenderRef ref="console"/> > + </Logger> > + <Logger name="org.apache.logging.log4j" level="debug" > additivity="false"> > + <AppenderRef ref="logfile"/> > + </Logger> > + <Root level="error"> > + <AppenderRef ref="console"/> > + </Root> > + </Loggers> > +</Configuration> > \ No newline at end of file > > Propchange: turbine/fulcrum/trunk/testcontainer/src/test/log4j2.xml > ------------------------------------------------------------------------------ > svn:eol-style = native > > Modified: > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/EcmContainerTest.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/EcmContainerTest.java?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/EcmContainerTest.java > (original) > +++ > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/EcmContainerTest.java > Thu Nov 29 15:29:54 2018 > @@ -1,4 +1,5 @@ > package org.apache.fulcrum.testcontainer; > + > /* > * Licensed to the Apache Software Foundation (ASF) under one > * or more contributor license agreements. See the NOTICE file > @@ -17,22 +18,25 @@ package org.apache.fulcrum.testcontainer > * specific language governing permissions and limitations > * under the License. > */ > + > +import static org.junit.jupiter.api.Assertions.assertEquals; > +import static org.junit.jupiter.api.Assertions.assertNotNull; > +import static org.junit.jupiter.api.Assertions.assertTrue; > +import static org.junit.jupiter.api.Assertions.fail; > + > import java.io.File; > > import org.apache.avalon.framework.component.ComponentException; > import org.junit.Before; > import org.junit.Test; > > -import static org.junit.Assert.assertEquals; > -import static org.junit.Assert.assertNotNull; > -import static org.junit.Assert.assertTrue; > -import static org.junit.Assert.fail; > /** > * Basic testing of the Container > * > * @author <a href="mailto:[email protected]">Quinton McCombs</a> > * @version $Id$ > */ > + > public class EcmContainerTest extends BaseUnit4Test > { > /** > @@ -44,7 +48,7 @@ public class EcmContainerTest extends Ba > > @Before > public void setUp() throws Exception{ > - containerType=CONTAINER_ECM; > + setContainerType( CONTAINER_ECM); > } > > @Test > > Added: > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerJunit5Test.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerJunit5Test.java?rev=1847727&view=auto > ============================================================================== > --- > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerJunit5Test.java > (added) > +++ > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerJunit5Test.java > Thu Nov 29 15:29:54 2018 > @@ -0,0 +1,125 @@ > +package org.apache.fulcrum.testcontainer; > + > + > +import static org.junit.jupiter.api.Assertions.assertEquals; > +import static org.junit.jupiter.api.Assertions.assertNotNull; > +import static org.junit.jupiter.api.Assertions.assertTrue; > +import static org.junit.jupiter.api.Assertions.fail; > + > +import java.io.File; > + > +import org.apache.avalon.framework.component.ComponentException; > +import org.apache.avalon.framework.logger.ConsoleLogger; > +import org.junit.jupiter.api.Test; > +/* > + * 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. > + */ > + > + > +/** > + * Basic testing of the Container > + * > + * @author <a href="mailto:[email protected]">Quinton McCombs</a> > + * @version $Id: YaafiContainerTest.java 1694570 2015-08-06 20:35:41Z > sgoeschl $ > + */ > +public class YaafiContainerJunit5Test extends BaseUnit5Test > +{ > + /** > + * Constructor for test. > + */ > + public YaafiContainerJunit5Test() > + { > + } > + > + @Test > + public void testInitialization() > + { > + assertTrue(true); > + } > + > + @Test > + public void testComponentUsage() > + { > + SimpleComponent sc = null; > + try > + { > + sc = (SimpleComponent) > this.lookup(SimpleComponent.class.getName()); > + } > + catch (ComponentException e) > + { > + e.printStackTrace(); > + fail(e.getMessage()); > + } > + assertNotNull(sc); > + sc.test(); > + System.out.println( sc ); > + assertEquals(sc.getAppRoot(),sc.getAppRoot2()); > + this.release(sc); > + } > + > + @Test > + public void testAlternativeRoles() > + { > + SimpleComponent sc = null; > + File f = new File("src/test/TestAlternativeRoleConfig.xml"); > + assertTrue(f.exists()); > + this.setRoleFileName("src/test/TestAlternativeRoleConfig.xml"); > + try > + { > + sc = (SimpleComponent) this.lookup(SimpleComponent.ROLE); > + } > + catch (ComponentException e) > + { > + e.printStackTrace(); > + fail(e.getMessage()); > + } > + assertTrue(sc instanceof AlternativeComponentImpl); > + assertNotNull(sc); > + sc.test(); > + this.release(sc); > + } > + > + @Test > + public void testLoadingContainerWithNoRolesfileFails() > + { > + this.setLogLevel(ConsoleLogger.LEVEL_DISABLED); > + > + this.setRoleFileName(null); > + > + try > + { > + this.lookup(SimpleComponent.class.getName()); > + fail("We should fail"); > + } > + catch (ComponentException e) > + { > + e.printStackTrace(); > + fail(e.getMessage()); > + } > + catch (Exception e) > + { > + // We expect to fail with a ConfigurationException > + } > + } > + @Test > + public void testWithLogLevel() throws Exception > + { > + this.setLogLevel(ConsoleLogger.LEVEL_ERROR); > + this.lookup(SimpleComponent.class.getName()); > + } > +} > > Propchange: > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerJunit5Test.java > ------------------------------------------------------------------------------ > svn:eol-style = native > > Modified: > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerTest.java > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerTest.java?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerTest.java > (original) > +++ > turbine/fulcrum/trunk/testcontainer/src/test/org/apache/fulcrum/testcontainer/YaafiContainerTest.java > Thu Nov 29 15:29:54 2018 > @@ -1,4 +1,5 @@ > package org.apache.fulcrum.testcontainer; > + > /* > * Licensed to the Apache Software Foundation (ASF) under one > * or more contributor license agreements. See the NOTICE file > @@ -23,10 +24,11 @@ import org.apache.avalon.framework.compo > import org.apache.avalon.framework.logger.ConsoleLogger; > import org.junit.Test; > > -import static org.junit.Assert.assertEquals; > -import static org.junit.Assert.assertNotNull; > -import static org.junit.Assert.assertTrue; > -import static org.junit.Assert.fail; > +import static org.junit.jupiter.api.Assertions.assertEquals; > +import static org.junit.jupiter.api.Assertions.assertNotNull; > +import static org.junit.jupiter.api.Assertions.assertTrue; > +import static org.junit.jupiter.api.Assertions.fail; > + > /** > * Basic testing of the Container > * > @@ -62,6 +64,7 @@ public class YaafiContainerTest extends > fail(e.getMessage()); > } > assertNotNull(sc); > + System.out.println( sc ); > sc.test(); > assertEquals(sc.getAppRoot(),sc.getAppRoot2()); > this.release(sc); > > Modified: turbine/fulcrum/trunk/testcontainer/xdocs/index.xml > URL: > http://svn.apache.org/viewvc/turbine/fulcrum/trunk/testcontainer/xdocs/index.xml?rev=1847727&r1=1847726&r2=1847727&view=diff > ============================================================================== > --- turbine/fulcrum/trunk/testcontainer/xdocs/index.xml (original) > +++ turbine/fulcrum/trunk/testcontainer/xdocs/index.xml Thu Nov 29 15:29:54 > 2018 > @@ -32,8 +32,10 @@ > <p> This component is really just a test container for testing the > other components. This > container is not meant to be used in a production environment. </p> > <p> In order to save you a little coding, a base class has been > provided for your test cases. > - Simply extend > <code>org.apache.fulcrum.testcontainer.BaseUnitTest</code> for JUnit3 or > <code>org.apache.fulcrum.testcontainer.BaseUnit4Test</code> for JUnit 4 > support and you are ready > - to go. </p> > + Simply extend > <code>org.apache.fulcrum.testcontainer.BaseUnitTest</code> for JUnit3, > <code>org.apache.fulcrum.testcontainer.BaseUnit4Test</code> for JUnit 4 and > <code>org.apache.fulcrum.testcontainer.BaseUnit5Test</code> JUnit 5 support > and you are ready to go. </p> > + > + <p>More Information about the <a > href="https://junit.org/junit5/docs/current/user-guide/#migrating-from-junit4-running">migration > to Junit5:</a>. > + </p> > </section> > > <section name="Usage"> > > -- Jeff Painter CEO and Founder of JiveCast Software and analytics, made together https://jivecast.com 301 Fayetteville St. Unit 2301, Raleigh, NC 27601 (919) 533-9024
signature.asc
Description: OpenPGP digital signature
