summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormakkalot <makkalot@gmail.com>2008-06-21 10:41:13 +0300
committermakkalot <makkalot@gmail.com>2008-06-21 10:41:13 +0300
commit9563511c6d4dbda5a9e2ec053f0765bcc21f5e6f (patch)
tree88c840bb771f58479c9f892489b062cb51d58dcc
parentc4492f0de8c185da45898865b5c8ca566f01f34f (diff)
downloadfunc-9563511c6d4dbda5a9e2ec053f0765bcc21f5e6f.tar.gz
func-9563511c6d4dbda5a9e2ec053f0765bcc21f5e6f.tar.xz
func-9563511c6d4dbda5a9e2ec053f0765bcc21f5e6f.zip
adding tests for custom list minion validator
-rw-r--r--funcweb/funcweb/tests/test_widget_validation.py33
1 files changed, 32 insertions, 1 deletions
diff --git a/funcweb/funcweb/tests/test_widget_validation.py b/funcweb/funcweb/tests/test_widget_validation.py
index fa7fdb5..94a3d1e 100644
--- a/funcweb/funcweb/tests/test_widget_validation.py
+++ b/funcweb/funcweb/tests/test_widget_validation.py
@@ -1,7 +1,7 @@
import unittest
import turbogears
from turbogears import testutil
-from funcweb.widget_validation import WidgetSchemaFactory,MinionIntValidator,MinionFloatValidator
+from funcweb.widget_validation import WidgetSchemaFactory,MinionIntValidator,MinionFloatValidator,MinionListValidator
from turbogears import validators
class TestWidgetValidator(unittest.TestCase):
@@ -129,6 +129,21 @@ class TestWidgetValidator(unittest.TestCase):
assert mv.to_python(14.0)==14.0
self.assertRaises(validators.Invalid,mv.to_python,'some_string')
+ def test_minion_list_validator(self):
+
+ #test default
+ mv = MinionListValidator()
+ assert mv.to_python(['fedora','debian','others']) == ['fedora','debian','others']
+ del mv
+
+ #test with regex
+ mv = MinionListValidator(regex_string='^[A-Z]+$',not_empty=True)
+ assert mv.to_python(['FEDORA','MACOSX']) == ['FEDORA','MACOSX']
+ self.assertRaises(validators.Invalid,mv.to_python,[])
+ self.assertRaises(validators.Invalid,mv.to_python,['hey_error'])
+
+
+ print "Happy testing !"
def get_string_params(self):
return {
@@ -198,6 +213,22 @@ class TestWidgetValidator(unittest.TestCase):
'min':5.0
},
}
+
+ def get_list_params(self):
+ return {
+ 'list_default':{
+ 'type':'list',
+ 'default':'cooler',
+ 'description':'default list'
+ },
+ 'list_regex':{
+ 'type':'list',
+ 'default':'hey',
+ 'optional':False,
+ 'description':'default regex list',
+ 'validator':'^[A-Z]$'
+ },
+ }