This is an automated email from the ASF dual-hosted git repository.

fschumacher pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jmeter.git

commit 4d4aeb1bea839e448c40e47647b40a3754bb5ff9
Author: Felix Schumacher <[email protected]>
AuthorDate: Sat Aug 17 12:01:29 2019 +0200

    Extract marking as failure into private methods
    
    Shorten code in if/else branches and rename local variables.
    
    Part of #479 on github
---
 .../apache/jmeter/assertions/CompareAssertion.java | 78 ++++++++++++----------
 1 file changed, 44 insertions(+), 34 deletions(-)

diff --git 
a/src/components/src/main/java/org/apache/jmeter/assertions/CompareAssertion.java
 
b/src/components/src/main/java/org/apache/jmeter/assertions/CompareAssertion.java
index 2781779..6609901 100644
--- 
a/src/components/src/main/java/org/apache/jmeter/assertions/CompareAssertion.java
+++ 
b/src/components/src/main/java/org/apache/jmeter/assertions/CompareAssertion.java
@@ -71,34 +71,39 @@ public class CompareAssertion extends AbstractTestElement 
implements Assertion,
         long prevTime = -1;
         SampleResult prevResult = null;
         boolean success = true;
-        for (SampleResult sResult : responses) {
-            long currentTime = sResult.getTime();
+        for (SampleResult currentResult : responses) {
+            long currentTime = currentResult.getTime();
             if (prevTime != -1) {
                 success = Math.abs(prevTime - currentTime) <= compareTime;
-                prevResult = sResult;
+                prevResult = currentResult;
             }
             if (success) {
-                prevResult = sResult;
+                prevResult = currentResult;
                 prevTime = currentTime;
-            } else {
-                result.setFailure(true);
-                StringBuilder sb = new StringBuilder();
-                appendResultDetails(sb, prevResult);
-                
sb.append(JMeterUtils.getResString("comparison_response_time")).append(prevTime);
 //$NON-NLS-1$
-                result.addToBaseResult(sb.toString());
-                sb.setLength(0);
-                appendResultDetails(sb, sResult);
-                
sb.append(JMeterUtils.getResString("comparison_response_time")).append(currentTime);
 //$NON-NLS-1$
-                result.addToSecondaryResult(sb.toString());
-                result.setFailureMessage(
-                        JMeterUtils.getResString("comparison_differ_time") + 
//$NON-NLS-1$
-                                compareTime +
-                                JMeterUtils.getResString("comparison_unit")); 
//$NON-NLS-1$
-                break;
+                continue;
             }
+            markTimeFailure(result, prevResult, prevTime, currentResult, 
currentTime);
+            return;
         }
     }
 
+    private void markTimeFailure(CompareAssertionResult result, SampleResult 
prevResult, long prevTime,
+            SampleResult currentResult, long currentTime) {
+        result.setFailure(true);
+        StringBuilder sb = new StringBuilder();
+        appendResultDetails(sb, prevResult);
+        
sb.append(JMeterUtils.getResString("comparison_response_time")).append(prevTime);
 //$NON-NLS-1$
+        result.addToBaseResult(sb.toString());
+        sb.setLength(0);
+        appendResultDetails(sb, currentResult);
+        
sb.append(JMeterUtils.getResString("comparison_response_time")).append(currentTime);
 //$NON-NLS-1$
+        result.addToSecondaryResult(sb.toString());
+        result.setFailureMessage(
+                JMeterUtils.getResString("comparison_differ_time") + 
//$NON-NLS-1$
+                        compareTime +
+                        JMeterUtils.getResString("comparison_unit")); 
//$NON-NLS-1$
+    }
+
     private void compareContent(CompareAssertionResult result) {
         if (!compareContent) {
             return;
@@ -106,31 +111,36 @@ public class CompareAssertion extends AbstractTestElement 
implements Assertion,
         String prevContent = null;
         SampleResult prevResult = null;
         boolean success = true;
-        for (SampleResult sResult : responses) {
-            String currentContent = sResult.getResponseDataAsString();
+        for (SampleResult currentResult : responses) {
+            String currentContent = currentResult.getResponseDataAsString();
             currentContent = filterString(currentContent);
             if (prevContent != null) {
                 success = prevContent.equals(currentContent);
             }
             if (success) {
-                prevResult = sResult;
+                prevResult = currentResult;
                 prevContent = currentContent;
-            } else {
-                result.setFailure(true);
-                StringBuilder sb = new StringBuilder();
-                appendResultDetails(sb, prevResult);
-                sb.append(prevContent);
-                result.addToBaseResult(sb.toString());
-                sb.setLength(0);
-                appendResultDetails(sb, sResult);
-                sb.append(currentContent);
-                result.addToSecondaryResult(sb.toString());
-                
result.setFailureMessage(JMeterUtils.getResString("comparison_differ_content"));
 //$NON-NLS-1$
-                break;
+                continue;
             }
+            markContentFailure(result, prevContent, prevResult, currentResult, 
currentContent);
+            return;
         }
     }
 
+    private void markContentFailure(CompareAssertionResult result, String 
prevContent, SampleResult prevResult,
+            SampleResult currentResult, String currentContent) {
+        result.setFailure(true);
+        StringBuilder sb = new StringBuilder();
+        appendResultDetails(sb, prevResult);
+        sb.append(prevContent);
+        result.addToBaseResult(sb.toString());
+        sb.setLength(0);
+        appendResultDetails(sb, currentResult);
+        sb.append(currentContent);
+        result.addToSecondaryResult(sb.toString());
+        
result.setFailureMessage(JMeterUtils.getResString("comparison_differ_content"));
 //$NON-NLS-1$
+    }
+
     private void appendResultDetails(StringBuilder buf, SampleResult result) {
         final String samplerData = result.getSamplerData();
         if (samplerData != null) {

Reply via email to