Changeset 247393 in webkit


Ignore:
Timestamp:
Jul 12, 2019 12:50:06 PM (5 years ago)
Author:
commit-queue@webkit.org
Message:

run-javascriptcore-tests won't report test results for testmasm, testair, testb3, testdfg and test api
https://bugs.webkit.org/show_bug.cgi?id=199489
<rdar://problem/47891081>

Patch by Zhifei Fang <zhifei_fang@apple.com> on 2019-07-12
Reviewed by Aakash Jain.

  • BuildSlaveSupport/build.webkit.org-config/steps.py:

(RunJavaScriptCoreTests.countFailures):

  • BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
  • Scripts/run-javascriptcore-tests:

(runTest):
(reportTestFailures):
(runJSCStressTests):

Location:
trunk/Tools
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps.py

    r245359 r247393  
    332332    def start(self):
    333333        platform = self.getProperty('platform')
     334        architecture = self.getProperty("architecture")
     335        # Currently run-javascriptcore-test doesn't support run those binaries remotely
     336        if architecture in ['mips', 'armv7', 'aarch64']:
     337            self.command += ['--no-testmasm', '--no-testair', '--no-testb3', '--no-testdfg', '--no-testapi']
    334338        # Linux bots have currently problems with JSC tests that try to use large amounts of memory.
    335339        # Check: https://bugs.webkit.org/show_bug.cgi?id=175140
     
    345349    def countFailures(self, cmd):
    346350        logText = cmd.logs['stdio'].getText()
     351        count = 0
    347352
    348353        match = re.search(r'^Results for JSC stress tests:\r?\n\s+(\d+) failure', logText, re.MULTILINE)
    349354        if match:
    350             return int(match.group(1))
     355            count += int(match.group(1))
     356
     357        match = re.search(r'Results for JSC test binaries:\r?\n\s+(\d+) failure', logText, re.MULTILINE)
     358        if match:
     359            count += int(match.group(1))
    351360
    352361        match = re.search(r'^Results for Mozilla tests:\r?\n\s+(\d+) regression', logText, re.MULTILINE)
    353362        if match:
    354             return int(match.group(1))
    355 
    356         return 0
     363            count += int(match.group(1))
     364
     365        return count
    357366
    358367
  • trunk/Tools/BuildSlaveSupport/build.webkit.org-config/steps_unittest.py

    r246059 r247393  
    123123    5 failures found.""")
    124124
     125    def test_jsc_stress_failures_with_binary_results_output(self):
     126        self.assertResults(FAILURE, ["8 JSC tests failed"], 1,  """Results for JSC stress tests:
     127    5 failures found.
     128Results for JSC test binaries:
     129    3 failures found.""")
     130
     131    def test_jsc_stress_failures_with_binary_result_output(self):
     132        self.assertResults(FAILURE, ["6 JSC tests failed"], 1,  """Results for JSC stress tests:
     133    5 failures found.
     134Results for JSC test binaries:
     135    1 failure found.""")
     136
    125137
    126138class RunTest262TestsTest(unittest.TestCase):
  • trunk/Tools/ChangeLog

    r247389 r247393  
     12019-07-12  Zhifei Fang  <zhifei_fang@apple.com>
     2
     3        run-javascriptcore-tests won't report test results for testmasm, testair, testb3, testdfg and test api
     4        https://bugs.webkit.org/show_bug.cgi?id=199489
     5        <rdar://problem/47891081>
     6
     7        Reviewed by Aakash Jain.
     8
     9        * BuildSlaveSupport/build.webkit.org-config/steps.py:
     10        (RunJavaScriptCoreTests.countFailures):
     11        * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
     12        * Scripts/run-javascriptcore-tests:
     13        (runTest):
     14        (reportTestFailures):
     15        (runJSCStressTests):
     16
    1172019-07-12  Aakash Jain  <aakash_jain@apple.com>
    218
  • trunk/Tools/Scripts/run-javascriptcore-tests

    r244915 r247393  
    9393my $failFast = 1;
    9494my %jsonData = ();
     95my @testResults = ();
     96my $isTestFailed = 0;
    9597my $remoteConfigFile;
    9698my $jsonFileName;
     
    399401    print "$testName completed with rc=$testResult ($exitStatus)\n\n";
    400402
     403    my $testStatus = ($exitStatus == 0)? JSON::PP::true: JSON::PP::false;
     404    if ($testResult) {
     405        $isTestFailed = 1;
     406        push @testResults, $testName;
     407    }
    401408    if (defined($jsonFileName)) {
    402         my $testStatus = ($exitStatus == 0)? JSON::PP::true: JSON::PP::false;
    403409        $jsonData{$jsonTestStatusName} = $testStatus;
    404410    }
    405411
    406412    if ($testResult && $failFast) {
     413        reportTestFailures();
    407414        writeJsonDataIfApplicable();
    408415        exit exitStatus($testResult);
    409416    }
     417}
     418
     419sub reportTestFailures {
     420  my $numJSCtestFailures = @testResults;
     421  if ($numJSCtestFailures) {
     422      print "\n** The following JSC test binaries failures have been introduced:\n";
     423      foreach my $testFailure (@testResults) {
     424          print "\t$testFailure\n";
     425      }
     426  }
     427  print "\n";
     428
     429  print "Results for JSC test binaries:\n";
     430  printThingsFound($numJSCtestFailures, "failure", "failures", "found");
     431  print "    OK.\n" if $numJSCtestFailures == 0;
     432
     433  print "\n";
    410434}
    411435
     
    421445
    422446runJSCStressTests();
     447reportTestFailures();
     448
     449if ($isTestFailed) {
     450  exit(1);
     451}
    423452
    424453sub runJSCStressTests
     
    574603
    575604    if ($numJSCStressFailures) {
     605        $isTestFailed = 1;
    576606        print "\n** The following JSC stress test failures have been introduced:\n";
    577607        foreach my $testFailure (@jscStressFailList) {
     
    592622
    593623    writeJsonDataIfApplicable();
    594     exit(1) if $numJSCStressFailures;
    595624}
    596625
Note: See TracChangeset for help on using the changeset viewer.