diff options
Diffstat (limited to 'csit.infra.dash/app/cdash/trending/layout.py')
-rw-r--r-- | csit.infra.dash/app/cdash/trending/layout.py | 160 |
1 files changed, 76 insertions, 84 deletions
diff --git a/csit.infra.dash/app/cdash/trending/layout.py b/csit.infra.dash/app/cdash/trending/layout.py index d08f911036..66aa1d199a 100644 --- a/csit.infra.dash/app/cdash/trending/layout.py +++ b/csit.infra.dash/app/cdash/trending/layout.py @@ -142,39 +142,34 @@ class Layout: if tbs.get(dut, None) is None: tbs[dut] = dict() - if tbs[dut].get(infra, None) is None: - tbs[dut][infra] = dict() - if tbs[dut][infra].get(area, None) is None: - tbs[dut][infra][area] = dict() - if tbs[dut][infra][area].get(test, None) is None: - tbs[dut][infra][area][test] = dict() - tbs[dut][infra][area][test]["core"] = list() - tbs[dut][infra][area][test]["frame-size"] = list() - tbs[dut][infra][area][test]["test-type"] = list() - if core.upper() not in tbs[dut][infra][area][test]["core"]: - tbs[dut][infra][area][test]["core"].append(core.upper()) - if framesize.upper() not in \ - tbs[dut][infra][area][test]["frame-size"]: - tbs[dut][infra][area][test]["frame-size"].append( - framesize.upper() - ) + if tbs[dut].get(area, None) is None: + tbs[dut][area] = dict() + if tbs[dut][area].get(test, None) is None: + tbs[dut][area][test] = dict() + if tbs[dut][area][test].get(infra, None) is None: + tbs[dut][area][test][infra] = { + "core": list(), + "frame-size": list(), + "test-type": list() + } + tst_params = tbs[dut][area][test][infra] + if core.upper() not in tst_params["core"]: + tst_params["core"].append(core.upper()) + if framesize.upper() not in tst_params["frame-size"]: + tst_params["frame-size"].append(framesize.upper()) if row["test_type"] == "mrr": - if "MRR" not in tbs[dut][infra][area][test]["test-type"]: - tbs[dut][infra][area][test]["test-type"].append("MRR") + if "MRR" not in tst_params["test-type"]: + tst_params["test-type"].append("MRR") elif row["test_type"] == "ndrpdr": - if "NDR" not in tbs[dut][infra][area][test]["test-type"]: - tbs[dut][infra][area][test]["test-type"].extend( - ("NDR", "PDR") - ) + if "NDR" not in tst_params["test-type"]: + tst_params["test-type"].extend(("NDR", "PDR")) elif row["test_type"] == "hoststack": if row["tg_type"] in ("iperf", "vpp"): - if "BPS" not in tbs[dut][infra][area][test]["test-type"]: - tbs[dut][infra][area][test]["test-type"].append("BPS") + if "BPS" not in tst_params["test-type"]: + tst_params["test-type"].append("BPS") elif row["tg_type"] == "ab": - if "CPS" not in tbs[dut][infra][area][test]["test-type"]: - tbs[dut][infra][area][test]["test-type"].extend( - ("CPS", "RPS") - ) + if "CPS" not in tst_params["test-type"]: + tst_params["test-type"].extend(("CPS", "RPS")) self._spec_tbs = tbs # Read from files: @@ -373,11 +368,11 @@ class Layout: dbc.InputGroup( [ dbc.InputGroupText( - show_tooltip(self._tooltips, "help-infra", "Infra") + show_tooltip(self._tooltips, "help-area", "Area") ), dbc.Select( - id={"type": "ctrl-dd", "index": "phy"}, - placeholder="Select a Physical Test Bed Topology..." + id={"type": "ctrl-dd", "index": "area"}, + placeholder="Select an Area..." ) ], size="sm" @@ -388,11 +383,11 @@ class Layout: dbc.InputGroup( [ dbc.InputGroupText( - show_tooltip(self._tooltips, "help-area", "Area") + show_tooltip(self._tooltips, "help-test", "Test") ), dbc.Select( - id={"type": "ctrl-dd", "index": "area"}, - placeholder="Select an Area..." + id={"type": "ctrl-dd", "index": "test"}, + placeholder="Select a Test..." ) ], size="sm" @@ -403,11 +398,11 @@ class Layout: dbc.InputGroup( [ dbc.InputGroupText( - show_tooltip(self._tooltips, "help-test", "Test") + show_tooltip(self._tooltips, "help-infra", "Infra") ), dbc.Select( - id={"type": "ctrl-dd", "index": "test"}, - placeholder="Select a Test..." + id={"type": "ctrl-dd", "index": "phy"}, + placeholder="Select a Physical Test Bed Topology..." ) ], size="sm" @@ -1111,29 +1106,28 @@ class Layout: pass if store_sel: last_test = store_sel[-1] - test = self._spec_tbs[last_test["dut"]][last_test["phy"]]\ - [last_test["area"]][last_test["test"]] + test = self._spec_tbs[last_test["dut"]]\ + [last_test["area"]][last_test["test"]][last_test["phy"]] ctrl_panel.set({ "dd-dut-val": last_test["dut"], - "dd-phy-val": last_test["phy"], - "dd-phy-opt": generate_options( - self._spec_tbs[last_test["dut"]].keys() - ), - "dd-phy-dis": False, "dd-area-val": last_test["area"], "dd-area-opt": [ {"label": label(v), "value": v} for v in sorted( - self._spec_tbs[last_test["dut"]]\ - [last_test["phy"]].keys() - ) + self._spec_tbs[last_test["dut"]].keys()) ], "dd-area-dis": False, "dd-test-val": last_test["test"], "dd-test-opt": generate_options( - self._spec_tbs[last_test["dut"]][last_test["phy"]]\ + self._spec_tbs[last_test["dut"]]\ [last_test["area"]].keys() ), "dd-test-dis": False, + "dd-phy-val": last_test["phy"], + "dd-phy-opt": generate_options( + self._spec_tbs[last_test["dut"]][last_test["area"]]\ + [last_test["test"]].keys() + ), + "dd-phy-dis": False, "cl-core-opt": generate_options(test["core"]), "cl-core-val": [last_test["core"].upper(), ], "cl-core-all-val": list(), @@ -1166,24 +1160,24 @@ class Layout: elif trigger.type == "ctrl-dd": if trigger.idx == "dut": try: - options = generate_options( - self._spec_tbs[trigger.value].keys() - ) + dut = self._spec_tbs[trigger.value] + options = [{"label": label(v), "value": v} \ + for v in sorted(dut.keys())] disabled = False except KeyError: options = list() disabled = True ctrl_panel.set({ "dd-dut-val": trigger.value, - "dd-phy-val": str(), - "dd-phy-opt": options, - "dd-phy-dis": disabled, "dd-area-val": str(), - "dd-area-opt": list(), - "dd-area-dis": True, + "dd-area-opt": options, + "dd-area-dis": disabled, "dd-test-val": str(), "dd-test-opt": list(), "dd-test-dis": True, + "dd-phy-val": str(), + "dd-phy-opt": list(), + "dd-phy-dis": True, "cl-core-opt": list(), "cl-core-val": list(), "cl-core-all-val": list(), @@ -1198,24 +1192,23 @@ class Layout: "cl-tsttype-all-opt": C.CL_ALL_DISABLED, "btn-add-dis": True }) - elif trigger.idx == "phy": + if trigger.idx == "area": try: dut = ctrl_panel.get("dd-dut-val") - phy = self._spec_tbs[dut][trigger.value] - options = [{"label": label(v), "value": v} \ - for v in sorted(phy.keys())] + area = self._spec_tbs[dut][trigger.value] + options = generate_options(area.keys()) disabled = False except KeyError: options = list() disabled = True ctrl_panel.set({ - "dd-phy-val": trigger.value, - "dd-area-val": str(), - "dd-area-opt": options, - "dd-area-dis": disabled, + "dd-area-val": trigger.value, "dd-test-val": str(), - "dd-test-opt": list(), - "dd-test-dis": True, + "dd-test-opt": options, + "dd-test-dis": disabled, + "dd-phy-val": str(), + "dd-phy-opt": list(), + "dd-phy-dis": True, "cl-core-opt": list(), "cl-core-val": list(), "cl-core-all-val": list(), @@ -1229,22 +1222,22 @@ class Layout: "cl-tsttype-all-val": list(), "cl-tsttype-all-opt": C.CL_ALL_DISABLED, "btn-add-dis": True - }) - elif trigger.idx == "area": + }) + if trigger.idx == "test": try: dut = ctrl_panel.get("dd-dut-val") - phy = ctrl_panel.get("dd-phy-val") - area = self._spec_tbs[dut][phy][trigger.value] - options = generate_options(area.keys()) + area = ctrl_panel.get("dd-area-val") + test = self._spec_tbs[dut][area][trigger.value] + options = generate_options(test.keys()) disabled = False except KeyError: options = list() disabled = True ctrl_panel.set({ - "dd-area-val": trigger.value, - "dd-test-val": str(), - "dd-test-opt": options, - "dd-test-dis": disabled, + "dd-test-val": trigger.value, + "dd-phy-val": str(), + "dd-phy-opt": options, + "dd-phy-dis": disabled, "cl-core-opt": list(), "cl-core-val": list(), "cl-core-all-val": list(), @@ -1259,25 +1252,25 @@ class Layout: "cl-tsttype-all-opt": C.CL_ALL_DISABLED, "btn-add-dis": True }) - elif trigger.idx == "test": + if trigger.idx == "phy": dut = ctrl_panel.get("dd-dut-val") - phy = ctrl_panel.get("dd-phy-val") area = ctrl_panel.get("dd-area-val") - if all((dut, phy, area, trigger.value, )): - test = self._spec_tbs[dut][phy][area][trigger.value] + test = ctrl_panel.get("dd-test-val") + if all((dut, area, test, trigger.value, )): + phy = self._spec_tbs[dut][area][test][trigger.value] ctrl_panel.set({ - "dd-test-val": trigger.value, - "cl-core-opt": generate_options(test["core"]), + "dd-phy-val": trigger.value, + "cl-core-opt": generate_options(phy["core"]), "cl-core-val": list(), "cl-core-all-val": list(), "cl-core-all-opt": C.CL_ALL_ENABLED, "cl-frmsize-opt": \ - generate_options(test["frame-size"]), + generate_options(phy["frame-size"]), "cl-frmsize-val": list(), "cl-frmsize-all-val": list(), "cl-frmsize-all-opt": C.CL_ALL_ENABLED, "cl-tsttype-opt": \ - generate_options(test["test-type"]), + generate_options(phy["test-type"]), "cl-tsttype-val": list(), "cl-tsttype-all-val": list(), "cl-tsttype-all-opt": C.CL_ALL_ENABLED, @@ -1311,7 +1304,6 @@ class Layout: tm_ignore_host = list() store["trending-graphs"] = None store["telemetry-graphs"] = list() - # on_draw[0] = True on_draw = [True, True] if trigger.idx == "add-test": dut = ctrl_panel.get("dd-dut-val") |