Browse Source

Fix fortune HTML parser validating on empty response

Alex Schneider 11 years ago
parent
commit
64e8f9e38f
2 changed files with 4 additions and 5 deletions
  1. 0 2
      toolset/benchmark/fortune_html_parser.py
  2. 4 3
      toolset/benchmark/framework_test.py

+ 0 - 2
toolset/benchmark/fortune_html_parser.py

@@ -115,7 +115,5 @@ class FortuneHTMLParser(HTMLParser):
     if not diff:
     if not diff:
       out.write("Fortune invalid. Diff following:\n")
       out.write("Fortune invalid. Diff following:\n")
       diff_str = ''.join(unified_diff(self.valid.split(' '), body.split(' '), fromfile='Valid', tofile='Response', n=5))
       diff_str = ''.join(unified_diff(self.valid.split(' '), body.split(' '), fromfile='Valid', tofile='Response', n=5))
-      #diff_str = re.sub(r'(?<![ +]) (?![ +])', '', diff_str)
-      diff_str = re.sub(r'  ', ' ', diff_str)
       out.write(diff_str)
       out.write(diff_str)
     return diff
     return diff

+ 4 - 3
toolset/benchmark/framework_test.py

@@ -378,7 +378,7 @@ class FrameworkTest:
       parser = FortuneHTMLParser()
       parser = FortuneHTMLParser()
       parser.feed(htmlString)
       parser.feed(htmlString)
 
 
-      return parser.isValidFortune(out)
+      return (parser.isValidFortune(out), )
     except:
     except:
       print "Got exception when trying to validate the fortune test: {exception} ".format(exception=traceback.format_exc())
       print "Got exception when trying to validate the fortune test: {exception} ".format(exception=traceback.format_exc())
     return (False, err_str)
     return (False, err_str)
@@ -653,13 +653,14 @@ class FrameworkTest:
       url = self.benchmarker.generate_url(self.fortune_url, self.port)
       url = self.benchmarker.generate_url(self.fortune_url, self.port)
       output = self.__curl_url(url, self.FORTUNE, out, err)
       output = self.__curl_url(url, self.FORTUNE, out, err)
       out.write("VALIDATING FORTUNE ... ")
       out.write("VALIDATING FORTUNE ... ")
-      if self.validateFortune(output, out, err):
+      ret_tuple = self.validateFortune(output, out, err)
+      if ret_tuple[0]:
         self.fortune_url_passed = True
         self.fortune_url_passed = True
         out.write("PASS\n\n")
         out.write("PASS\n\n")
         self.benchmarker.report_verify_results(self, self.FORTUNE, 'pass')
         self.benchmarker.report_verify_results(self, self.FORTUNE, 'pass')
       else:
       else:
         self.fortune_url_passed = False
         self.fortune_url_passed = False
-        out.write("\nFAIL\n\n")
+        out.write("\nFAIL " + ret_tuple[1] + "\n\n")
         self.benchmarker.report_verify_results(self, self.FORTUNE, 'fail')
         self.benchmarker.report_verify_results(self, self.FORTUNE, 'fail')
         result = False
         result = False
       out.flush()
       out.flush()