+ trigger_id = callback_context.triggered[0]["prop_id"].split(".")[0]
+ if trigger_id == "ri-duts":
+ ttype_opts = self._generate_options(self._get_ttypes(dut))
+ ttype_val = ttype_opts[0]["value"]
+ cad_opts = self._generate_options(
+ self._get_cadences(dut, ttype_val))
+ cad_val = cad_opts[0]["value"]
+ tbed_opts = self._generate_options(
+ self._get_test_beds(dut, ttype_val, cad_val))
+ tbed_val = tbed_opts[0]["value"]
+ ctrl_panel.set({
+ "ri-duts-value": dut,
+ "ri-ttypes-options": ttype_opts,
+ "ri-ttypes-value": ttype_val,
+ "ri-cadences-options": cad_opts,
+ "ri-cadences-value": cad_val,
+ "dd-tbeds-options": tbed_opts,
+ "dd-tbeds-value": tbed_val
+ })
+ elif trigger_id == "ri-ttypes":
+ cad_opts = self._generate_options(
+ self._get_cadences(ctrl_panel.get("ri-duts-value"), ttype))
+ cad_val = cad_opts[0]["value"]
+ tbed_opts = self._generate_options(
+ self._get_test_beds(ctrl_panel.get("ri-duts-value"),
+ ttype, cad_val))
+ tbed_val = tbed_opts[0]["value"]
+ ctrl_panel.set({
+ "ri-ttypes-value": ttype,
+ "ri-cadences-options": cad_opts,
+ "ri-cadences-value": cad_val,
+ "dd-tbeds-options": tbed_opts,
+ "dd-tbeds-value": tbed_val
+ })
+ elif trigger_id == "ri-cadences":
+ tbed_opts = self._generate_options(
+ self._get_test_beds(ctrl_panel.get("ri-duts-value"),
+ ctrl_panel.get("ri-ttypes-value"), cadence))
+ tbed_val = tbed_opts[0]["value"]
+ ctrl_panel.set({
+ "ri-cadences-value": cadence,
+ "dd-tbeds-options": tbed_opts,
+ "dd-tbeds-value": tbed_val
+ })
+ elif trigger_id == "dd-tbeds":
+ ctrl_panel.set({
+ "dd-tbeds-value": tbed
+ })
+ elif trigger_id == "dpr-period":
+ pass
+
+ job = self._get_job(
+ ctrl_panel.get("ri-duts-value"),
+ ctrl_panel.get("ri-ttypes-value"),
+ ctrl_panel.get("ri-cadences-value"),
+ ctrl_panel.get("dd-tbeds-value")