From 8d57e53ffb4df3e336ef5a29594df1d0a9795b17 Mon Sep 17 00:00:00 2001 From: Anders Roxell Date: Wed, 20 Dec 2023 12:01:44 +0100 Subject: [PATCH] squad-download-attachments: save to a csv file Signed-off-by: Anders Roxell --- squad-download-attachments | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/squad-download-attachments b/squad-download-attachments index d3acd5f..c012973 100755 --- a/squad-download-attachments +++ b/squad-download-attachments @@ -6,10 +6,12 @@ # SPDX-License-Identifier: MIT import argparse +import csv import json import logging from os import chdir from pathlib import Path +import statistics import sys from squad_client.core.api import SquadApi from squad_client.core.models import ALL, Squad, TestRun, Environment @@ -109,6 +111,30 @@ def run(): with open(file_write, mode="w") as write_file: write_file.write(pjson) + with open(file_write.replace(".json", ".csv"), mode="w") as csv_file: + csv_writer = csv.writer(csv_file) + dict_json = json.loads(pjson) + if not dict_json["results"]: + continue + headers = ["median", "mean", "standard diviation", "name", "iteration", "name_iteration", "raw data..."] + csv_writer.writerow(headers) + for key in dict_json["results"]["_ResultData"]: + iterations = 0 + for k in dict_json["results"]["_ResultData"][key]: + csv_data = [] + float_arr = [] + for number in k["Values"]: + float_arr.append(float(number)) + csv_data.append(statistics.median(float_arr)) + csv_data.append(statistics.mean(float_arr)) + csv_data.append(statistics.stdev(float_arr)) + csv_data.append(key) + iterations = iterations + 1 + csv_data.append(f"iteration_{iterations}") + csv_data.append(f"{key}_iterattion_{iterations}") + csv_data.extend(k['Values']) + csv_writer.writerow(csv_data) + if __name__ == "__main__": sys.exit(run())