You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by ju...@apache.org on 2019/05/02 21:00:22 UTC
[jspwiki] branch master updated: ensure failing test runs after
lucene indexing has taken place;
reapply last change on TestEngine regarding attachment directory
This is an automated email from the ASF dual-hosted git repository.
juanpablo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jspwiki.git
The following commit(s) were added to refs/heads/master by this push:
new d5f9f4c ensure failing test runs after lucene indexing has taken place; reapply last change on TestEngine regarding attachment directory
d5f9f4c is described below
commit d5f9f4cd0abbe1f5a67d9119c60f3a1199a7515c
Author: juanpablo <ju...@apache.org>
AuthorDate: Thu May 2 22:59:57 2019 +0200
ensure failing test runs after lucene indexing has taken place; reapply last change on TestEngine regarding attachment directory
---
.../apache/wiki/search/LuceneSearchProvider.java | 10 ++++++++-
.../src/test/java/org/apache/wiki/TestEngine.java | 2 +-
.../wiki/search/tika/TikaSearchProviderTest.java | 24 ++++++++++++++--------
.../src/test/resources/jspwiki-custom.properties | 3 +++
4 files changed, 29 insertions(+), 10 deletions(-)
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java b/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
index 5f15674..0abd4a7 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/search/LuceneSearchProvider.java
@@ -503,7 +503,6 @@ public class LuceneSearchProvider implements SearchProvider {
}
}
-
/**
* Adds a page-text pair to the lucene update queue. Safe to call always
*
@@ -534,6 +533,15 @@ public class LuceneSearchProvider implements SearchProvider {
}
/**
+ * Returns a copy of the list of lucene's pending updates - useful for testing.
+ *
+ * @return a copy of the list of lucene's pending updates.
+ */
+ public List< Object[] > pendingUpdates() {
+ return new ArrayList<>( m_updates );
+ }
+
+ /**
* {@inheritDoc}
*/
@Override
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/TestEngine.java b/jspwiki-main/src/test/java/org/apache/wiki/TestEngine.java
index 123c6a6..f372177 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/TestEngine.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/TestEngine.java
@@ -425,7 +425,7 @@ public class TestEngine extends WikiEngine
stripNumbers.replaceAll( "\\d", StringUtils.EMPTY ) + System.currentTimeMillis();
props.put( AuthenticationManager.PROP_LOGIN_THROTTLING, "false" );
props.setProperty( "jspwiki.fileSystemProvider.pageDir", testDir );
- // props.setProperty( "jspwiki.basicAttachmentProvider.storageDir", testDir );
+ props.setProperty( "jspwiki.basicAttachmentProvider.storageDir", testDir );
return props;
}
diff --git a/jspwiki-tika-searchprovider/src/test/java/org/apache/wiki/search/tika/TikaSearchProviderTest.java b/jspwiki-tika-searchprovider/src/test/java/org/apache/wiki/search/tika/TikaSearchProviderTest.java
index 9eb3b20..e53dc43 100644
--- a/jspwiki-tika-searchprovider/src/test/java/org/apache/wiki/search/tika/TikaSearchProviderTest.java
+++ b/jspwiki-tika-searchprovider/src/test/java/org/apache/wiki/search/tika/TikaSearchProviderTest.java
@@ -33,8 +33,8 @@ import java.util.Properties;
public class TikaSearchProviderTest {
- private static final long SLEEP_TIME = 2_000L;
- private static final int SLEEP_COUNT = 50;
+ private static final long SLEEP_TIME = 200L;
+ private static final int SLEEP_COUNT = 500;
TestEngine engine;
Properties props;
@@ -55,10 +55,20 @@ public class TikaSearchProviderTest {
engine.addAttachment( "test-tika", "aaa-diagram.pdf", filePdf );
engine.addAttachment( "test-tika", "favicon.png", filePng );
+ TikaSearchProvider tsp = ( TikaSearchProvider )engine.getSearchManager().getSearchEngine();
+ while( !tsp.pendingUpdates().isEmpty() ) { // allow Lucene full index to finish
+ Thread.sleep( 100L );
+ }
+
engine.getSearchManager().getSearchEngine().reindexPage( engine.getPage( "test-tika" ) );
+
+ while( !tsp.pendingUpdates().isEmpty() ) { // allow Lucene reindex to finish
+ Thread.sleep( 100L );
+ }
+
Collection< SearchResult > res = waitForIndex( "favicon.png" , "testGetAttachmentContent" );
Assertions.assertNotNull( res );
- Assertions.assertEquals( 1, res.size(), debugSearchResults( res ) );
+ Assertions.assertEquals( 2, res.size(), debugSearchResults( res ) );
res = waitForIndex( "application\\/pdf" , "testGetAttachmentContent" );
Assertions.assertNotNull( res );
@@ -80,18 +90,16 @@ public class TikaSearchProviderTest {
* Should cover for both index and initial delay
*/
Collection< SearchResult > waitForIndex( String text, String testName ) throws Exception {
- Collection< SearchResult > res = null;
+ MockHttpServletRequest request = engine.newHttpRequest();
+ WikiContext ctx = engine.createContext( request, WikiContext.VIEW );
+ Collection< SearchResult > res = engine.getSearchManager().findPages( text, ctx );
for( long l = 0; l < SLEEP_COUNT; l++ ) {
if( res == null || res.isEmpty() ) {
Thread.sleep( SLEEP_TIME );
} else {
break;
}
- MockHttpServletRequest request = engine.newHttpRequest();
- WikiContext ctx = engine.createContext( request, WikiContext.EDIT );
-
res = engine.getSearchManager().findPages( text, ctx );
-
}
return res;
}
diff --git a/jspwiki-tika-searchprovider/src/test/resources/jspwiki-custom.properties b/jspwiki-tika-searchprovider/src/test/resources/jspwiki-custom.properties
index ebc68be..66a4c74 100644
--- a/jspwiki-tika-searchprovider/src/test/resources/jspwiki-custom.properties
+++ b/jspwiki-tika-searchprovider/src/test/resources/jspwiki-custom.properties
@@ -22,6 +22,7 @@ jspwiki.fileSystemProvider.pageDir = target/test-classes/testrepository
jspwiki.workDir = target/test-classes/testworkdir
jspwiki.searchProvider = org.apache.wiki.search.tika.TikaSearchProvider
jspwiki.lucene.initialdelay = 1
+jspwiki.lucene.indexdelay = 1
jspwiki.translatorReader.camelCaseLinks = true
jspwiki.breakTitleWithSpaces = true
@@ -45,6 +46,8 @@ jspwiki.rss.fileName=./target/rss.rdf
jspwiki.xmlGroupDatabaseFile = target/test-classes/groupdatabase.xml
jspwiki.xmlUserDatabaseFile = target/test-classes/userdatabase.xml
+log4j.logger.org.apache.wiki.search=DEBUG,ConsoleAppender
+
log4j.logger.SecurityLog=INFO, SecurityAppender
log4j.appender.SecurityAppender = org.apache.log4j.RollingFileAppender
log4j.appender.SecurityAppender.File = ./target/logs/security.log