From b4903fc1846935ee10bd7697fdbbbb965fb3db7c Mon Sep 17 00:00:00 2001 From: Alfredo Deza Date: Wed, 31 Jul 2013 12:15:55 -0400 Subject: [PATCH] add tests for the new regex validator Signed-off-by: Alfredo Deza --- .../tests/unit/util/test_arg_validators.py | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 ceph_deploy/tests/unit/util/test_arg_validators.py diff --git a/ceph_deploy/tests/unit/util/test_arg_validators.py b/ceph_deploy/tests/unit/util/test_arg_validators.py new file mode 100644 index 0000000..d502a52 --- /dev/null +++ b/ceph_deploy/tests/unit/util/test_arg_validators.py @@ -0,0 +1,30 @@ +from argparse import ArgumentError +from pytest import raises + +from ceph_deploy.util import arg_validators + + +class TestRegexMatch(object): + + def test_match_raises(self): + validator = arg_validators.RegexMatch(r'\d+') + with raises(ArgumentError): + validator('1') + + def test_match_passes(self): + validator = arg_validators.RegexMatch(r'\d+') + assert validator('foo') == 'foo' + + def test_default_error_message(self): + validator = arg_validators.RegexMatch(r'\d+') + with raises(ArgumentError) as error: + validator('1') + message = error.value.message + assert message == 'must match pattern \d+' + + def test_custom_error_message(self): + validator = arg_validators.RegexMatch(r'\d+', 'wat') + with raises(ArgumentError) as error: + validator('1') + message = error.value.message + assert message == 'wat' -- 2.47.3