fixing the tests, so in the absence of iptools, no explosions. Also exporting the variable CIDR_support incase anywhere else needs to know about iptools or not

This commit is contained in:
Stef T 2012-09-06 19:18:42 +02:00
parent 098545a2cd
commit 9ad12d2259
2 changed files with 13 additions and 6 deletions

View File

@ -21,11 +21,14 @@ import copy
# is present in the system. Without iptools, you will lack CIDR support.
try:
from iptools import IpRangeList
CIDR_support = True
def return_ips(conf, conf_tag):
return IpRangeList(*[x.strip() for x in
conf.get(conf_tag, '').split(',') if x.strip()])
except:
except ImportError:
CIDR_support = False
def return_ips(conf, conf_tag):
return ([x.strip() for x in conf.get(conf_tag, '').split(',')
if x.strip()])

View File

@ -22,11 +22,15 @@ from slogging import access_processor
class TestAccessProcessor(unittest.TestCase):
def test_CIDR_works(self):
p = access_processor.AccessLogProcessor({'lb_private_ips':
'127.0.0.1,192.168/16,10/24'})
self.assertTrue('192.168.2.3' in p.lb_private_ips)
self.assertTrue('127.0.0.1' in p.lb_private_ips)
self.assertFalse('192.167.2.3' in p.lb_private_ips)
if access_processor.CIDR_support:
p = access_processor.AccessLogProcessor({'lb_private_ips':
'127.0.0.1,192.168/16,10/24'})
self.assertTrue('192.168.2.3' in p.lb_private_ips)
self.assertTrue('127.0.0.1' in p.lb_private_ips)
self.assertFalse('192.167.2.3' in p.lb_private_ips)
else:
from nose import SkipTest
return SkipTest("iptools for CIDR support not installed")
def test_log_line_parser_query_args(self):
p = access_processor.AccessLogProcessor({})