def testDiff(self): configA = Config(self.tempdir) configA.setNetwork(NETWORK, NETWORK_ATTRIBUTES) configA.setBonding(BONDING, BONDING_ATTRIBUTES) configB = Config(self.tempdir) configB.setNetwork(NETWORK, NETWORK_ATTRIBUTES) configB.setBonding(BONDING, BONDING_ATTRIBUTES) diff = configA.diffFrom(configB) self.assertEqual(diff.networks, {}) self.assertEqual(diff.bonds, {}) EVIL_NETWORK = 'jarjar' EVIL_BONDING_ATTRIBUTES = {'options': 'mode=3', 'nics': ['eth3']} configB.setNetwork(EVIL_NETWORK, NETWORK_ATTRIBUTES) configB.setBonding(BONDING, EVIL_BONDING_ATTRIBUTES) diff = configA.diffFrom(configB) self.assertEqual(diff.networks[EVIL_NETWORK], {'remove': True}) self.assertEqual(diff.bonds[BONDING], BONDING_ATTRIBUTES) configB.removeNetwork(NETWORK) diff = configA.diffFrom(configB) self.assertIn(NETWORK, diff.networks)
def testSetAndRemoveNetwork(self): persistence = Config(self.tempdir) persistence.setNetwork(NETWORK, NETWORK_ATTRIBUTES) self.assertEqual(persistence.networks[NETWORK], NETWORK_ATTRIBUTES) persistence.removeNetwork(NETWORK) self.assertTrue(persistence.networks.get(NETWORK) is None)