def validateTimingsForSubprocessCall( self, testName, subprocessArgs, meta, timeout = 600.0 ): resultCode, out, err = SubprocessRunner.callAndReturnResultAndOutput( subprocessArgs, timeout = timeout ) if resultCode != 0: meta.update({"failure": "subprocess call returned error"}) if PerformanceTestReporter.isCurrentlyTesting(): PerformanceTestReporter.recordTest( testName, None, meta ) assert resultCode == 0, err logging.info("Actual time was %s for %s", out[0], subprocessArgs) measuredTiming = float(out[0]) / self.baseTiming if PerformanceTestReporter.isCurrentlyTesting(): PerformanceTestReporter.recordTest( "fora_lang." + testName, float(out[0]), meta )
def test_knows_is_reporting(self): with SetEnv( PerformanceTestReporter.TEST_DATA_LOCATION_ENVIRONMENT_VARIABLE, None): self.assertFalse(PerformanceTestReporter.isCurrentlyTesting()) with SetEnv( PerformanceTestReporter.TEST_DATA_LOCATION_ENVIRONMENT_VARIABLE, "./testResults.json"): self.assertTrue(PerformanceTestReporter.isCurrentlyTesting())
def validateTimingsForSubprocessCall(self, testName, subprocessArgs, meta, timeout=600.0): resultCode, out, err = SubprocessRunner.callAndReturnResultAndOutput( subprocessArgs, timeout=timeout) if resultCode != 0: meta.update({"failure": "subprocess call returned error"}) if PerformanceTestReporter.isCurrentlyTesting(): PerformanceTestReporter.recordTest(testName, None, meta) assert resultCode == 0, err logging.info("Actual time was %s for %s", out[0], subprocessArgs) measuredTiming = float(out[0]) / self.baseTiming if PerformanceTestReporter.isCurrentlyTesting(): PerformanceTestReporter.recordTest("fora_lang." + testName, float(out[0]), meta)