diff options
| author | Soren Hansen <soren@linux2go.dk> | 2011-07-22 22:41:29 +0200 |
|---|---|---|
| committer | Soren Hansen <soren@linux2go.dk> | 2011-07-22 22:41:29 +0200 |
| commit | c3cdcc1eb0c9fd37f49701d976c7ceae8df44caf (patch) | |
| tree | 09fb706f6c3294e553ac2d81b02a30ce7b0a0b21 /nova/tests | |
| parent | fa2cdbc5d4201ace6c1a6459bbd653b0b63b7667 (diff) | |
This is me being all cocky, thinking I'll make it use ipsets...
Diffstat (limited to 'nova/tests')
| -rw-r--r-- | nova/tests/test_iptables_network.py | 39 |
1 files changed, 37 insertions, 2 deletions
diff --git a/nova/tests/test_iptables_network.py b/nova/tests/test_iptables_network.py index 918034269..d0a8c052c 100644 --- a/nova/tests/test_iptables_network.py +++ b/nova/tests/test_iptables_network.py @@ -17,11 +17,46 @@ # under the License. """Unit Tests for network code.""" -import os - from nova import test from nova.network import linux_net +class IpSetTestCase(test.TestCase): + def test_add(self): + """Adding an address""" + ipset = linux_net.IpSet('somename') + + ipset.add_ip('1.2.3.4') + self.assertTrue('1.2.3.4' in ipset) + + + def test_add_remove(self): + """Adding and then removing an address""" + + self.verify_cmd_call_count = 0 + def verify_cmd(*args): + self.assertEquals(args, self.expected_cmd) + self.verify_cmd_call_count += 1 + + self.expected_cmd = ('ipset', '-A', 'run_tests.py-somename', '1.2.3.4') + ipset = linux_net.IpSet('somename',execute=verify_cmd) + ipset.add_ip('1.2.3.4') + self.assertTrue('1.2.3.4' in ipset) + + self.expected_cmd = ('ipset', '-D', 'run_tests.py-somename', '1.2.3.4') + ipset.remove_ip('1.2.3.4') + self.assertTrue('1.2.3.4' not in ipset) + self.assertEquals(self.verify_cmd_call_count, 2) + + + def test_two_adds_one_remove(self): + """Adding the same address twice works. Removing it once removes it entirely.""" + ipset = linux_net.IpSet('somename') + + ipset.add_ip('1.2.3.4') + ipset.add_ip('1.2.3.4') + ipset.remove_ip('1.2.3.4') + self.assertTrue('1.2.3.4' not in ipset) + class IptablesManagerTestCase(test.TestCase): sample_filter = ['#Generated by iptables-save on Fri Feb 18 15:17:05 2011', |
