- duts = [key for key in nodes if u"DUT" in key]
- t_dict[u"duts"] = duts
- t_dict[u"duts_count"] = len(duts)
- t_dict[u"int"] = u"pf"
-
- for idx in range(0, nic_pfs // 2):
- self.append_node(nodes[u"TG"])
- for dut in duts:
- self.append_node(nodes[dut], filter_list=filter_list)
- self.append_node(nodes[u"TG"])
- self.compute_path(always_same_link=False)
-
- n_idx = 0
- t_idx = 1
- d_idx = 0
+ if topo_has_dut:
+ duts = [key for key in nodes if u"DUT" in key]
+ t_dict[u"duts"] = duts
+ t_dict[u"duts_count"] = len(duts)
+ t_dict[u"int"] = u"pf"
+
+ for _ in range(0, nic_pfs // 2):
+ if topo_has_tg:
+ if topo_has_dut:
+ self.append_node(nodes[u"TG"])
+ else:
+ self.append_node(nodes[u"TG"], filter_list=filter_list)
+ if topo_has_dut:
+ for dut in duts:
+ self.append_node(nodes[dut], filter_list=filter_list)
+ if topo_has_tg:
+ if topo_has_dut:
+ self.append_node(nodes[u"TG"])
+ else:
+ self.append_node(nodes[u"TG"], filter_list=filter_list)
+ self.compute_path(always_same_link, topo_has_dut)
+
+ n_idx = 0 # node index
+ t_idx = 1 # TG interface index
+ d_idx = 0 # DUT interface index
+ prev_host = None