diff options
| author | Jelmer Vernooij <jelmer@samba.org> | 2008-01-24 22:18:27 +0100 | 
|---|---|---|
| committer | Jelmer Vernooij <jelmer@samba.org> | 2008-01-24 22:18:27 +0100 | 
| commit | d958f4b3912dc298037c112ad724b85a7a46ecdb (patch) | |
| tree | 66eef13ebc660211a2e7d3f37b34e04db1fb25a9 /source4/scripting/python | |
| parent | 859b847a68cf10526b9f356ebcb328e7334a8cb1 (diff) | |
| download | samba-d958f4b3912dc298037c112ad724b85a7a46ecdb.tar.gz samba-d958f4b3912dc298037c112ad724b85a7a46ecdb.tar.bz2 samba-d958f4b3912dc298037c112ad724b85a7a46ecdb.zip  | |
python: Add function to look for unsubsituted variables.
(This used to be commit e726ce5bc515ae8d10b472396e228cfd35737476)
Diffstat (limited to 'source4/scripting/python')
| -rw-r--r-- | source4/scripting/python/samba/__init__.py | 15 | ||||
| -rw-r--r-- | source4/scripting/python/samba/tests/__init__.py | 4 | 
2 files changed, 19 insertions, 0 deletions
diff --git a/source4/scripting/python/samba/__init__.py b/source4/scripting/python/samba/__init__.py index 483929661d..b5d7f2ebc7 100644 --- a/source4/scripting/python/samba/__init__.py +++ b/source4/scripting/python/samba/__init__.py @@ -192,6 +192,21 @@ def substitute_var(text, values):      return text +def check_all_substituted(text): +    """Make sure that all substitution variables in a string have been replaced. +    If not, raise an exception. +     +    :param text: The text to search for substitution variables +    """ +    if not "${" in text: +    	return +     +    var_start = text.find("${") +    var_end = text.find("}", var_start) +     +    raise Exception("Not all variables substituted: %s" % text[var_start:var_end]) + +  def valid_netbios_name(name):      """Check whether a name is valid as a NetBIOS name. """      # FIXME: There are probably more constraints here.  diff --git a/source4/scripting/python/samba/tests/__init__.py b/source4/scripting/python/samba/tests/__init__.py index ad8a2524b5..6fbf420339 100644 --- a/source4/scripting/python/samba/tests/__init__.py +++ b/source4/scripting/python/samba/tests/__init__.py @@ -67,6 +67,10 @@ class SubstituteVarTestCase(unittest.TestCase):      def test_unknown_var(self):          self.assertEquals("foo ${bla} gsff",                   samba.substitute_var("foo ${bla} gsff", {"bar": "bla"})) +                 +    def test_check_all_substituted(self): +    	check_all_substituted("nothing to see here") +    	self.assertRaises(Exception, check_all_substituted, "Not subsituted: ${FOOBAR}")  class LdbExtensionTests(TestCaseInTempDir):  | 
