You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by fs...@apache.org on 2019/08/17 10:29:27 UTC

[jmeter] 03/04: Extract marking as failure into private methods

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 <fe...@internetallee.de>
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) {