Source code

Revision control

Copy as Markdown

Other Tools

#!/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()