[Debian-live-changes] r2447 - dists/trunk/live-magic/tests
lamby-guest at alioth.debian.org
lamby-guest at alioth.debian.org
Tue Jul 10 16:02:47 UTC 2007
Author: lamby-guest
Date: 2007-07-10 16:02:47 +0000 (Tue, 10 Jul 2007)
New Revision: 2447
Modified:
dists/trunk/live-magic/tests/test_key_var_config_file.py
Log:
Merge some tests, add boolean handing tests
Modified: dists/trunk/live-magic/tests/test_key_var_config_file.py
===================================================================
--- dists/trunk/live-magic/tests/test_key_var_config_file.py 2007-07-10 15:22:42 UTC (rev 2446)
+++ dists/trunk/live-magic/tests/test_key_var_config_file.py 2007-07-10 16:02:47 UTC (rev 2447)
@@ -16,6 +16,7 @@
'LH_SPAM': 'string',
'LH_MORESPAM': 'string',
'LH_SPAMLIST' : 'list',
+ 'LH_SPAMBOOL' : 'boolean',
}
self.keyvar = model.KeyVarConfigFile(self.filename, spec)
@@ -23,6 +24,12 @@
if filename is None: filename = self.filename
return open(filename, 'r').readlines()
+ def f_w(self, contents, filename=None):
+ if filename is None: filename = self.filename
+ f = open(filename, 'w+')
+ f.write(contents)
+ f.close()
+
def testSetAndGetOption(self):
self.keyvar.LH_SPAM = "eggs"
assert self.keyvar.LH_SPAM == "eggs"
@@ -104,9 +111,7 @@
for input, expected in tests.iteritems():
# Write escaped string
- f = open(self.filename, 'w+')
- f.write('LH_SPAM="%s"' % input)
- f.close()
+ self.f_w('LH_SPAM="%s"' % input)
# Reload configuration and check against expected value
self.keyvar.load()
@@ -128,9 +133,7 @@
r"LH_SPAM='eggs' ",
]
for a in accept:
- f = open(self.filename, 'w+')
- f.write(a)
- f.close()
+ self.f_w(a)
# Reload configuration and check against expected value
self.keyvar.load()
@@ -153,54 +156,63 @@
r'LH_SPAM=spam eggs',
]
for r in reject:
- f = open(self.filename, 'w+')
- f.write(r)
- f.close()
+ self.f_w(r)
# Reload configuration and check against expected value
self.keyvar.load()
self.assert_(not hasattr(self.keyvar, 'LH_SPAM'), "Should have rejected '%s'" % r)
- def testListTypeSingle(self):
- self.keyvar.LH_SPAMLIST = ['eggs']
- self.keyvar.save()
- assert 'LH_SPAMLIST="eggs"\n' in self.f_c()
+ def testSaveList(self):
+ expected = [
+ (['eggs'], "eggs"),
+ (['one', 'two', 'three'], "one two three"),
+ ([' one ', ' two ', ' three '], "one two three"),
+ ([], ""),
+ (None, ""),
+ ]
- def testListTypeEmpty(self):
- self.keyvar.LH_SPAMLIST = []
- self.keyvar.save()
- assert 'LH_SPAMLIST=""\n' in self.f_c()
+ for k, v in expected:
+ self.keyvar.LH_SPAMLIST = k
+ self.keyvar.save()
+ assert 'LH_SPAMLIST="%s"\n' % v in self.f_c()
- def testListTypeMultiple(self):
- self.keyvar.LH_SPAMLIST = ['one', 'two', 'three']
- self.keyvar.save()
- assert 'LH_SPAMLIST="one two three"\n' in self.f_c()
+ def testLoadList(self):
+ expected = {
+ "" : [],
+ "foo bar baz" : ['foo', 'bar', 'baz'],
+ "foo bar-2 baz" : ['foo', 'bar-2', 'baz'],
+ }
- def testListTypeMultipleSpaces(self):
- self.keyvar.LH_SPAMLIST = [' one ', ' two ', ' three ']
- self.keyvar.save()
- assert 'LH_SPAMLIST="one two three"\n' in self.f_c()
+ for k, v in expected.iteritems():
+ self.f_w('LH_SPAMLIST="%s"' % k)
+ self.keyvar.load()
+ assert self.keyvar.LH_SPAMLIST == v
- def testListTypeLoadSingle(self):
- f = open(self.filename, 'w+')
- f.write('LH_SPAMLIST="eggs"')
- f.close()
- self.keyvar.load()
- assert self.keyvar.LH_SPAMLIST == ['eggs']
+ def testSaveBool(self):
+ expected = {
+ None : "",
+ False : "disabled",
+ True : "enabled",
+ }
- def testListTypeLoadEmpty(self):
- f = open(self.filename, 'w+')
- f.write('LH_SPAMLIST=""')
- f.close()
- self.keyvar.load()
- assert len(self.keyvar.LH_SPAMLIST) == 0
+ for k, v in expected.iteritems():
+ self.keyvar.LH_SPAMBOOL = k
+ self.keyvar.save()
+ assert 'LH_SPAMBOOL="%s"\n' % v in self.f_c()
- def testListTypeLoadMultiple(self):
- f = open(self.filename, 'w+')
- f.write('LH_SPAMLIST="foo bar baz"')
- f.close()
- self.keyvar.load()
- assert self.keyvar.LH_SPAMLIST == ['foo', 'bar', 'baz']
+ def testBooleanTypeLoad(self):
+ expected = {
+ 'enabled' : True,
+ 'disabled' : False,
+ 'yes' : True,
+ 'no' : False,
+ '' : None,
+ }
+ for k, v in expected.iteritems():
+ self.f_w('LH_SPAMBOOL="%s"' % k)
+ self.keyvar.load()
+ assert self.keyvar.LH_SPAMBOOL == v
+
if __name__ == "__main__":
unittest.main()
More information about the Debian-live-changes
mailing list