refactor tests so they only build a TestEngine instance per class instead of per test
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/plugin/RecentChangesPluginTest.java b/jspwiki-main/src/test/java/org/apache/wiki/plugin/RecentChangesPluginTest.java
index fcc8f47..3a4c3ad 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/plugin/RecentChangesPluginTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/plugin/RecentChangesPluginTest.java
@@ -32,24 +32,17 @@
public class RecentChangesPluginTest {
Properties props = TestEngine.getTestProperties();
-
- TestEngine testEngine;
+ TestEngine testEngine = TestEngine.build( props );
+ PluginManager manager = new DefaultPluginManager(testEngine, props);
WikiContext context;
- PluginManager manager;
-
@BeforeEach
public void setUp() throws Exception {
- CacheManager.getInstance().removeAllCaches();
- testEngine = new TestEngine(props);
-
testEngine.saveText("TestPage01", "Some Text for testing 01");
testEngine.saveText("TestPage02", "Some Text for testing 02");
testEngine.saveText("TestPage03", "Some Text for testing 03");
testEngine.saveText("TestPage04", "Some Text for testing 04");
-
- manager = new DefaultPluginManager(testEngine, props);
}
@AfterEach
@@ -60,6 +53,7 @@
testEngine.deleteTestPage("TestPage04");
TestEngine.emptyWorkDir();
+ CacheManager.getInstance().removeAllCaches();
}
/**
@@ -90,8 +84,7 @@
public void testParmInClude() throws Exception {
context = new WikiContext(testEngine, new WikiPage(testEngine, "TestPage02"));
- final String res = manager.execute( context,
- "{INSERT org.apache.wiki.plugin.RecentChangesPlugin include='TestPage02*'}" );
+ final String res = manager.execute( context, "{INSERT org.apache.wiki.plugin.RecentChangesPlugin include='TestPage02*'}" );
Assertions.assertTrue(res.contains("<table class=\"recentchanges\" cellpadding=\"4\">"));
Assertions.assertFalse(res.contains("<a href=\"/test/Wiki.jsp?page=TestPage01\">Test Page 01</a>"));
@@ -126,11 +119,10 @@
public void testNoRecentChanges() throws Exception {
context = new WikiContext(testEngine, new WikiPage(testEngine, "TestPage04"));
- final String res = manager.execute( context,
- "{INSERT org.apache.wiki.plugin.RecentChangesPlugin since='-1'}" );
+ final String res = manager.execute( context, "{INSERT org.apache.wiki.plugin.RecentChangesPlugin since='-1'}" );
- Assertions.assertTrue( "<table class=\"recentchanges\" cellpadding=\"4\"></table>".equals( res ) );
- Assertions.assertFalse( "<table class=\"recentchanges\" cellpadding=\"4\" />".equals( res ) );
+ Assertions.assertEquals( "<table class=\"recentchanges\" cellpadding=\"4\"></table>", res );
+ Assertions.assertNotEquals( "<table class=\"recentchanges\" cellpadding=\"4\" />", res );
}
}
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/providers/BasicAttachmentProviderTest.java b/jspwiki-main/src/test/java/org/apache/wiki/providers/BasicAttachmentProviderTest.java
index ff7809e..185fc08 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/providers/BasicAttachmentProviderTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/providers/BasicAttachmentProviderTest.java
@@ -45,7 +45,7 @@
public static final String NAME2 = "AfterFirstTestPage";
Properties props = TestEngine.getTestProperties();
- TestEngine m_engine;
+ TestEngine m_engine = TestEngine.build( props );
BasicAttachmentProvider m_provider;
/** This is the sound of my head hitting the keyboard. */
@@ -53,8 +53,6 @@
@BeforeEach
public void setUp() throws Exception {
- m_engine = new TestEngine( props );
-
m_provider = new BasicAttachmentProvider();
m_provider.initialize( m_engine, props );
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/providers/FileSystemProviderTest.java b/jspwiki-main/src/test/java/org/apache/wiki/providers/FileSystemProviderTest.java
index 30ea671..9cea2d2 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/providers/FileSystemProviderTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/providers/FileSystemProviderTest.java
@@ -18,10 +18,11 @@
*/
package org.apache.wiki.providers;
-import org.apache.log4j.PropertyConfigurator;
+
import org.apache.wiki.TestEngine;
-import org.apache.wiki.WikiEngine;
import org.apache.wiki.WikiPage;
+import org.apache.wiki.api.core.Engine;
+import org.apache.wiki.api.core.Page;
import org.apache.wiki.pages.PageManager;
import org.apache.wiki.util.FileUtil;
import org.junit.jupiter.api.AfterEach;
@@ -34,31 +35,27 @@
import java.io.IOException;
import java.util.Properties;
+import static org.apache.wiki.TestEngine.with;
public class FileSystemProviderTest {
FileSystemProvider m_provider;
FileSystemProvider m_providerUTF8;
- String m_pagedir;
Properties props = TestEngine.getTestProperties();
- TestEngine m_engine;
+ Engine m_engine = TestEngine.build( with( PageManager.PROP_PAGEPROVIDER, "FileSystemProvider" ),
+ with( FileSystemProvider.PROP_PAGEDIR, "./target/jspwiki.test.pages" ) );
@BeforeEach
public void setUp() throws Exception {
- m_pagedir = "./target/jspwiki.test.pages";
props.setProperty( PageManager.PROP_PAGEPROVIDER, "FileSystemProvider" );
- props.setProperty( FileSystemProvider.PROP_PAGEDIR, m_pagedir );
+ props.setProperty( FileSystemProvider.PROP_PAGEDIR, "./target/jspwiki.test.pages" );
- Properties props2 = new Properties();
- PropertyConfigurator.configure( props2 );
-
- m_engine = new TestEngine(props);
m_provider = new FileSystemProvider();
m_provider.initialize( m_engine, props );
- props.setProperty( WikiEngine.PROP_ENCODING, "UTF-8" );
+ props.setProperty( Engine.PROP_ENCODING, "UTF-8" );
m_providerUTF8 = new FileSystemProvider();
m_providerUTF8.initialize( m_engine, props );
}
@@ -70,30 +67,30 @@
@Test
public void testScandinavianLetters() throws Exception {
- WikiPage page = new WikiPage(m_engine, "\u00c5\u00e4Test");
+ final WikiPage page = new WikiPage(m_engine, "\u00c5\u00e4Test");
m_provider.putPageText( page, "test" );
- File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "%C5%E4Test.txt" );
+ final File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "%C5%E4Test.txt" );
Assertions.assertTrue( resultfile.exists(), "No such file" );
- String contents = FileUtil.readContents( new FileInputStream(resultfile), "ISO-8859-1" );
+ final String contents = FileUtil.readContents( new FileInputStream(resultfile), "ISO-8859-1" );
Assertions.assertEquals( contents, "test", "Wrong contents" );
}
@Test
public void testScandinavianLettersUTF8() throws Exception {
- WikiPage page = new WikiPage(m_engine, "\u00c5\u00e4Test");
+ final WikiPage page = new WikiPage(m_engine, "\u00c5\u00e4Test");
m_providerUTF8.putPageText( page, "test\u00d6" );
- File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "%C3%85%C3%A4Test.txt" );
+ final File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "%C3%85%C3%A4Test.txt" );
Assertions.assertTrue( resultfile.exists(), "No such file" );
- String contents = FileUtil.readContents( new FileInputStream(resultfile),
+ final String contents = FileUtil.readContents( new FileInputStream(resultfile),
"UTF-8" );
Assertions.assertEquals( contents, "test\u00d6", "Wrong contents" );
@@ -107,15 +104,15 @@
public void testSlashesInPageNamesUTF8()
throws Exception
{
- WikiPage page = new WikiPage(m_engine, "Test/Foobar");
+ final WikiPage page = new WikiPage(m_engine, "Test/Foobar");
m_providerUTF8.putPageText( page, "test" );
- File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "Test%2FFoobar.txt" );
+ final File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "Test%2FFoobar.txt" );
Assertions.assertTrue( resultfile.exists(), "No such file" );
- String contents = FileUtil.readContents( new FileInputStream(resultfile),
+ final String contents = FileUtil.readContents( new FileInputStream(resultfile),
"UTF-8" );
Assertions.assertEquals( contents, "test", "Wrong contents" );
@@ -125,15 +122,15 @@
public void testSlashesInPageNames()
throws Exception
{
- WikiPage page = new WikiPage(m_engine, "Test/Foobar");
+ final WikiPage page = new WikiPage(m_engine, "Test/Foobar");
m_provider.putPageText( page, "test" );
- File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "Test%2FFoobar.txt" );
+ final File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "Test%2FFoobar.txt" );
Assertions.assertTrue( resultfile.exists(), "No such file" );
- String contents = FileUtil.readContents( new FileInputStream(resultfile),
+ final String contents = FileUtil.readContents( new FileInputStream(resultfile),
"ISO-8859-1" );
Assertions.assertEquals( contents, "test", "Wrong contents" );
@@ -143,15 +140,15 @@
public void testDotsInBeginning()
throws Exception
{
- WikiPage page = new WikiPage(m_engine, ".Test");
+ final WikiPage page = new WikiPage(m_engine, ".Test");
m_provider.putPageText( page, "test" );
- File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "%2ETest.txt" );
+ final File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ) , "%2ETest.txt" );
Assertions.assertTrue( resultfile.exists(), "No such file" );
- String contents = FileUtil.readContents( new FileInputStream(resultfile), "ISO-8859-1" );
+ final String contents = FileUtil.readContents( new FileInputStream(resultfile), "ISO-8859-1" );
Assertions.assertEquals( contents, "test", "Wrong contents" );
}
@@ -162,12 +159,12 @@
{
try
{
- WikiPage page = new WikiPage(m_engine, "\u00c5\u00e4Test");
+ final WikiPage page = new WikiPage(m_engine, "\u00c5\u00e4Test");
page.setAuthor("Min\u00e4");
m_provider.putPageText( page, "test" );
- WikiPage page2 = m_provider.getPageInfo( "\u00c5\u00e4Test", 1 );
+ final Page page2 = m_provider.getPageInfo( "\u00c5\u00e4Test", 1 );
Assertions.assertEquals( "Min\u00e4", page2.getAuthor() );
}
@@ -176,32 +173,32 @@
File resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ), "%C5%E4Test.txt" );
try {
resultfile.delete();
- } catch(Exception e) {}
+ } catch( final Exception e) {}
resultfile = new File( props.getProperty( FileSystemProvider.PROP_PAGEDIR ), "%C5%E4Test.properties" );
try {
resultfile.delete();
- } catch(Exception e) {}
+ } catch( final Exception e) {}
}
}
@Test
public void testNonExistantDirectory() throws Exception {
- String tmpdir = props.getProperty( FileSystemProvider.PROP_PAGEDIR ) ;
- String dirname = "non-existant-directory";
+ final String tmpdir = props.getProperty( FileSystemProvider.PROP_PAGEDIR ) ;
+ final String dirname = "non-existant-directory";
- String newdir = tmpdir + File.separator + dirname;
+ final String newdir = tmpdir + File.separator + dirname;
- Properties pr = new Properties();
+ final Properties pr = new Properties();
pr.setProperty( FileSystemProvider.PROP_PAGEDIR,
newdir );
- FileSystemProvider test = new FileSystemProvider();
+ final FileSystemProvider test = new FileSystemProvider();
test.initialize( m_engine, pr );
- File f = new File( newdir );
+ final File f = new File( newdir );
Assertions.assertTrue( f.exists(), "didn't create it" );
Assertions.assertTrue( f.isDirectory(), "isn't a dir" );
@@ -219,11 +216,11 @@
{
tmpFile = FileUtil.newTmpFile("foobar"); // Content does not matter.
- Properties pr = new Properties();
+ final Properties pr = new Properties();
pr.setProperty( FileSystemProvider.PROP_PAGEDIR, tmpFile.getAbsolutePath() );
- FileSystemProvider test = new FileSystemProvider();
+ final FileSystemProvider test = new FileSystemProvider();
try
{
@@ -231,7 +228,7 @@
Assertions.fail( "Wiki did not warn about wrong property." );
}
- catch( IOException e )
+ catch( final IOException e )
{
// This is okay.
}
@@ -249,9 +246,9 @@
public void testDelete()
throws Exception
{
- String files = props.getProperty( FileSystemProvider.PROP_PAGEDIR );
+ final String files = props.getProperty( FileSystemProvider.PROP_PAGEDIR );
- WikiPage p = new WikiPage(m_engine,"Test");
+ final WikiPage p = new WikiPage(m_engine,"Test");
p.setAuthor("AnonymousCoward");
m_provider.putPageText( p, "v1" );
@@ -277,23 +274,23 @@
@Test
public void testCustomProperties() throws Exception {
- String pageDir = props.getProperty( FileSystemProvider.PROP_PAGEDIR );
- String pageName = "CustomPropertiesTest";
- String fileName = pageName+FileSystemProvider.FILE_EXT;
- File file = new File (pageDir,fileName);
+ final String pageDir = props.getProperty( FileSystemProvider.PROP_PAGEDIR );
+ final String pageName = "CustomPropertiesTest";
+ final String fileName = pageName+FileSystemProvider.FILE_EXT;
+ final File file = new File (pageDir,fileName);
Assertions.assertFalse( file.exists() );
- WikiPage testPage = new WikiPage(m_engine,pageName);
+ final WikiPage testPage = new WikiPage(m_engine,pageName);
testPage.setAuthor("TestAuthor");
testPage.setAttribute("@test","Save Me");
testPage.setAttribute("@test2","Save You");
testPage.setAttribute("test3","Do not save");
m_provider.putPageText( testPage, "This page has custom properties" );
Assertions.assertTrue( file.exists(), "No such file" );
- WikiPage pageRetrieved = m_provider.getPageInfo( pageName, -1 );
- String value = pageRetrieved.getAttribute("@test");
- String value2 = pageRetrieved.getAttribute("@test2");
- String value3 = pageRetrieved.getAttribute("test3");
+ final Page pageRetrieved = m_provider.getPageInfo( pageName, -1 );
+ final String value = pageRetrieved.getAttribute("@test");
+ final String value2 = pageRetrieved.getAttribute("@test2");
+ final String value3 = pageRetrieved.getAttribute("test3");
Assertions.assertNotNull(value);
Assertions.assertNotNull(value2);
Assertions.assertNull(value3);