diff options
Diffstat (limited to 'python/mozperftest/mozperftest/tests/test_single_json_transformer.py')
-rw-r--r-- | python/mozperftest/mozperftest/tests/test_single_json_transformer.py | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/python/mozperftest/mozperftest/tests/test_single_json_transformer.py b/python/mozperftest/mozperftest/tests/test_single_json_transformer.py new file mode 100644 index 0000000000..9509948760 --- /dev/null +++ b/python/mozperftest/mozperftest/tests/test_single_json_transformer.py @@ -0,0 +1,80 @@ +#!/usr/bin/env python +import mozunit + +from mozperftest.metrics.notebook.transformer import Transformer +from mozperftest.metrics.notebook.transforms.single_json import SingleJsonRetriever + + +def test_transform(data): + tfm = SingleJsonRetriever() + + expected_result = [ + { + "data": [ + {"value": 101, "xaxis": 1}, + {"value": 102, "xaxis": 1}, + {"value": 103, "xaxis": 1}, + ], + "subtest": "browserScripts.timings.firstPaint", + } + ] + + actual_result = tfm.transform(data["data_1"]) + + assert actual_result == expected_result + + +def test_merge(data): + tfm = SingleJsonRetriever() + sde = tfm.transform(data["data_1"]) + sde.extend(tfm.transform(data["data_2"])) + + expected_result = [ + { + "data": [ + {"value": 101, "xaxis": 1}, + {"value": 102, "xaxis": 1}, + {"value": 103, "xaxis": 1}, + {"value": 201, "xaxis": 2}, + {"value": 202, "xaxis": 2}, + {"value": 203, "xaxis": 2}, + ], + "subtest": "browserScripts.timings.firstPaint", + } + ] + + actual_result = tfm.merge(sde) + + assert actual_result == expected_result + + +def test_process(files): + files = files["resources"] + file_1 = files["file_1"] + file_2 = files["file_2"] + + tfm = Transformer([], SingleJsonRetriever()) + tfm.files = [file_1, file_2] + + expected_result = [ + { + "data": [ + {"value": 101, "xaxis": 1, "file": file_1}, + {"value": 102, "xaxis": 1, "file": file_1}, + {"value": 103, "xaxis": 1, "file": file_1}, + {"value": 201, "xaxis": 2, "file": file_2}, + {"value": 202, "xaxis": 2, "file": file_2}, + {"value": 203, "xaxis": 2, "file": file_2}, + ], + "subtest": "browserScripts.timings.firstPaint", + "name": "group_1", + } + ] + + actual_result = tfm.process("group_1") + + assert actual_result == expected_result + + +if __name__ == "__main__": + mozunit.main() |