Author: rwesten
Date: Tue Oct 20 07:44:27 2015
New Revision: 1709526

URL: http://svn.apache.org/viewvc?rev=1709526&view=rev
Log:
minor: The Enhancer Stress Test Tool does no longer use Assert.assert*(..) 
during response processing. This caused responses not to be marked as success 
or failed. Now exceptions are thrown instead.

Modified:
    stanbol/trunk/integration-tests/   (props changed)
    
stanbol/trunk/integration-tests/src/test/java/org/apache/stanbol/enhancer/it/MultiThreadedTestBase.java

Propchange: stanbol/trunk/integration-tests/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 20 07:44:27 2015
@@ -1,2 +1,2 @@
-/stanbol/branches/release-0.12/integration-tests:1587573,1594122,1697898
+/stanbol/branches/release-0.12/integration-tests:1587573,1594122,1697898,1709397
 /stanbol/branches/stanbol-solr4/integration-tests:1455112-1458685

Modified: 
stanbol/trunk/integration-tests/src/test/java/org/apache/stanbol/enhancer/it/MultiThreadedTestBase.java
URL: 
http://svn.apache.org/viewvc/stanbol/trunk/integration-tests/src/test/java/org/apache/stanbol/enhancer/it/MultiThreadedTestBase.java?rev=1709526&r1=1709525&r2=1709526&view=diff
==============================================================================
--- 
stanbol/trunk/integration-tests/src/test/java/org/apache/stanbol/enhancer/it/MultiThreadedTestBase.java
 (original)
+++ 
stanbol/trunk/integration-tests/src/test/java/org/apache/stanbol/enhancer/it/MultiThreadedTestBase.java
 Tue Oct 20 07:44:27 2015
@@ -39,8 +39,6 @@ import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
 import java.util.zip.GZIPInputStream;
 
-import javax.ws.rs.core.MediaType;
-
 import org.apache.clerezza.rdf.core.Literal;
 import org.apache.clerezza.rdf.core.Resource;
 import org.apache.clerezza.rdf.core.Triple;
@@ -57,18 +55,12 @@ import org.apache.commons.compress.archi
 import 
org.apache.commons.compress.compressors.bzip2.BZip2CompressorInputStream;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.io.IOUtils;
-import org.apache.http.HttpResponse;
+import org.apache.commons.lang.StringUtils;
 import org.apache.http.client.config.RequestConfig;
-import org.apache.http.client.params.ClientPNames;
 import org.apache.http.config.SocketConfig;
 import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.DefaultHttpClient;
 import org.apache.http.impl.client.HttpClientBuilder;
-import org.apache.http.impl.conn.PoolingClientConnectionManager;
 import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
-import org.apache.http.params.BasicHttpParams;
-import org.apache.http.params.CoreConnectionPNames;
-import org.apache.http.params.CoreProtocolPNames;
 import org.apache.stanbol.commons.indexedgraph.IndexedMGraph;
 import org.apache.stanbol.commons.namespaceprefix.NamespaceMappingUtils;
 import org.apache.stanbol.commons.namespaceprefix.NamespacePrefixService;
@@ -384,14 +376,19 @@ public abstract class MultiThreadedTestB
         int testNum;
         for(testNum = 0;testDataIterator.hasNext() && testNum < 
settings.getMaxRequests(); testNum++){
             String test = testDataIterator.next();
-            Request request = builder.buildPostRequest(getEndpoint())
-                    .withHeader("Accept",rdfFormat)
-                    .withContent(test);
-            tracker.register(request,test);
-            if(testNum%100 == 0){
-                log.info("  ... sent {} Requests ({} finished, {} pending, {} 
failed",
-                    new Object[]{testNum,tracker.getNumCompleted(),
-                                 
tracker.getNumPending(),tracker.getFailed().size()});
+            if(StringUtils.isNotBlank(test)){
+                Request request = builder.buildPostRequest(getEndpoint())
+                        .withHeader("Accept",rdfFormat)
+                        .withContent(test);
+                tracker.register(request, test);
+                if(testNum%100 == 0){
+                    log.info("  ... sent {} Requests ({} finished, {} pending, 
{} failed",
+                        new Object[]{testNum,tracker.getNumCompleted(),
+                                     
tracker.getNumPending(),tracker.getFailed().size()});
+                }
+            } else {
+                log.warn(" - TestDataIterator returned empty or NULL content 
(igonred)");
+                testNum--;
             }
         }
         log.info("> All {} requests sent!",testNum);
@@ -406,7 +403,7 @@ public abstract class MultiThreadedTestB
         tracker.printStatistics();
         log.warn("Content(s) of Faild tests:");
         int i=1;
-        for(Entry<RequestExecutor,String> failed 
:tracker.getFailed().entrySet()) {
+        for(Entry<RequestExecutor,String> failed : 
tracker.getFailed().entrySet()) {
             log.warn("Failed ({}):",i);
             log.warn("  > Request: {}"+failed.getKey().getRequest());
             log.warn("  > Response: {}"+failed.getKey().getResponse());
@@ -619,12 +616,12 @@ public abstract class MultiThreadedTestB
         protected ExcutionTracker(ExecutorService executorService){
             this(executorService,100);
         }
-        public ExcutionTracker(ExecutorService executorService,int 
maxRegistered) {
+        public ExcutionTracker(ExecutorService executorService, int 
maxRegistered) {
             this.executorService = executorService;
             this.maxRegistered = maxRegistered <= 0 ? Integer.MAX_VALUE : 
maxRegistered;
         }
         
-        public void register(Request request,String content){
+        public void register(Request request, String content){
             synchronized (registered) {
                 while(registered.size() >= maxRegistered){
                     try {
@@ -634,7 +631,7 @@ public abstract class MultiThreadedTestB
                     }
                 }
                 registered.add(request);
-                executorService.execute(new AsyncExecuter(content,request, 
this));
+                executorService.execute(new AsyncExecuter(content, request, 
this));
             }
         }
 
@@ -654,7 +651,7 @@ public abstract class MultiThreadedTestB
             }
         }
 
-        void failed(Request request, String content,RequestExecutor executor) {
+        void failed(Request request, String content, RequestExecutor executor) 
{
             synchronized (registered) {
                 failed.put(executor,content);
                 if(registered.remove(request)){
@@ -747,7 +744,6 @@ public abstract class MultiThreadedTestB
             Long rtt;
             try {
                 executor.execute(request).assertStatus(200);
-                content = null; //do not store content for successfull resutls
                 rtt = System.currentTimeMillis()-start;
             } catch (Throwable e) {
                 log.warn("Error while sending Request ",e);
@@ -758,17 +754,22 @@ public abstract class MultiThreadedTestB
             IndexedMGraph graph = new IndexedMGraph();
             try {
                 rdfParser.parse(graph,executor.getStream(), 
executor.getContentType().getMimeType());
+                Iterator<Triple> ciIt = graph.filter(null, 
Properties.ENHANCER_EXTRACTED_FROM, null);
+                if(!ciIt.hasNext()){
+                    throw new IllegalStateException("Enhancement Results do 
not caontain a single Enhancement");
+                }
+                Resource contentItemUri = ciIt.next().getObject();
+                if(!(contentItemUri instanceof UriRef)){
+                    throw new IllegalStateException("ContentItem URI is not an 
UriRef but an instance of "
+                            + contentItemUri.getClass().getSimpleName());
+                }
+                tracker.succeed(request, (UriRef) contentItemUri, graph, rtt, 
executor.getContent().length());
+                content = null; //do not store content for successful results
             } catch (Exception e) {
                 log.warn("Exception while parsing Enhancement Response",e);
                 tracker.failed(request, content, executor);
                 return;
             }
-            Iterator<Triple> ciIt = graph.filter(null, 
Properties.ENHANCER_EXTRACTED_FROM, null);
-            Assert.assertTrue("Enhancement Results do not caontain a single 
Enhancement",ciIt.hasNext());
-            Resource contentItemUri = ciIt.next().getObject();
-            Assert.assertTrue("ContentItem URI is not an UriRef but an 
instance of "
-                    + contentItemUri.getClass().getSimpleName(), 
contentItemUri instanceof UriRef);
-            tracker.succeed(request, (UriRef) contentItemUri, graph, rtt, 
executor.getContent().length());
         }
     }
 


Reply via email to