def test_finds_bond_members_original_mac_addresses(self): testdata = dedent("""\ Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: fault-tolerance (active-backup) Primary Slave: None Currently Active Slave: ens11 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 200 Down Delay (ms): 0 Slave Interface: ens11 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 52:54:00:ea:1c:fc Slave queue ID: 0 Slave Interface: ens3 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 52:54:00:13:0e:6f Slave queue ID: 0 """) proc_net_bonding_bond0 = os.path.join(self.tmp_proc_net, "bonding", "bond0") with open(proc_net_bonding_bond0, mode="w") as f: f.write(testdata) interfaces = { "ens3": { "mac": "00:01:02:03:04:05" }, "ens11": { "mac": "01:02:03:04:05:06" }, } annotate_with_proc_net_bonding_original_macs( interfaces, proc_net=self.tmp_proc_net) self.assertEqual( { "ens3": { "mac": "52:54:00:13:0e:6f" }, "ens11": { "mac": "52:54:00:ea:1c:fc" }, }, interfaces, )
def test__ignores_missing_proc_net_bonding(self): os.rmdir(os.path.join(self.tmp_proc_net, "bonding")) interfaces = { "ens3": {"mac": "00:01:02:03:04:05"}, "ens11": {"mac": "01:02:03:04:05:06"}, } annotate_with_proc_net_bonding_original_macs( interfaces, proc_net=self.tmp_proc_net) self.assertEqual( { "ens3": {"mac": "00:01:02:03:04:05"}, "ens11": {"mac": "01:02:03:04:05:06"}, }, interfaces )