def test_performance_log_parsing(): """ Validate that we can parse a generic performance artifact """ sd = SampleData() for logfile in [ 'mozilla-inbound-android-api-11-debug-bm91-build1-build1317.txt.gz', 'try_ubuntu64_hw_test-chromez-bm103-tests1-linux-build1429.txt.gz' ]: file_path = sd.get_log_path(logfile) file_url = 'file://{}'.format(file_path) builder = BuildbotPerformanceDataArtifactBuilder(url=file_url) lpc = ArtifactBuilderCollection(file_url, builders=[builder]) lpc.parse() act = lpc.artifacts[builder.name] validate(act['performance_data'], PERFHERDER_SCHEMA)
def test_performance_log_parsing(): """ Validate that we can parse a generic performance artifact """ # first two have only one artifact, second has two artifacts for (logfile, num_perf_artifacts) in [ ('mozilla-inbound-android-api-11-debug-bm91-build1-build1317.txt.gz', 1), ('try_ubuntu64_hw_test-chromez-bm103-tests1-linux-build1429.txt.gz', 1), ('mozilla-inbound-linux64-bm72-build1-build225.txt.gz', 2)]: url = add_log_response(logfile) builder = BuildbotPerformanceDataArtifactBuilder(url=url) lpc = ArtifactBuilderCollection(url, builders=[builder]) lpc.parse() act = lpc.artifacts[builder.name] assert len(act['performance_data']) == num_perf_artifacts for perfherder_artifact in act['performance_data']: validate(perfherder_artifact, PERFHERDER_SCHEMA)
def test_performance_log_parsing(): """ Make sure all performance data log examples validate with the datazilla json schema. """ sd = SampleData() files = sd.get_performance_logs() tda = TalosDataAdapter() for file_url in files: builder = BuildbotPerformanceDataArtifactBuilder(url=file_url) lpc = ArtifactBuilderCollection(file_url, builders=[builder]) lpc.parse() act = lpc.artifacts[builder.name] # Validate the data returned has the required datazilla # json schema validate(act['talos_data'][0], tda.datazilla_schema)