From c3a9d1eb15100f3b46bcb9f67303c5729f6fa4ff Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Sun, 12 Feb 2012 17:35:20 +0100 Subject: waf: Add initial unit test for samba_utils. --- buildtools/wafsamba/__init__.py | 0 buildtools/wafsamba/tests/__init__.py | 33 +++++++++++++++++++++++++++++++++ buildtools/wafsamba/tests/test_utils.py | 21 +++++++++++++++++++++ source4/selftest/tests.py | 1 + 4 files changed, 55 insertions(+) create mode 100644 buildtools/wafsamba/__init__.py create mode 100644 buildtools/wafsamba/tests/__init__.py create mode 100644 buildtools/wafsamba/tests/test_utils.py diff --git a/buildtools/wafsamba/__init__.py b/buildtools/wafsamba/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/buildtools/wafsamba/tests/__init__.py b/buildtools/wafsamba/tests/__init__.py new file mode 100644 index 0000000000..76788802ab --- /dev/null +++ b/buildtools/wafsamba/tests/__init__.py @@ -0,0 +1,33 @@ +# Copyright (C) 2012 Jelmer Vernooij + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +"""Tests for wafsamba.""" + +from unittest import ( + TestCase, + TestLoader, + ) + +def test_suite(): + names = [ + 'utils', + ] + module_names = ['wafsamba.tests.test_' + name for name in names] + loader = TestLoader() + result = loader.suiteClass() + suite = loader.loadTestsFromNames(module_names) + result.addTests(suite) + return result diff --git a/buildtools/wafsamba/tests/test_utils.py b/buildtools/wafsamba/tests/test_utils.py new file mode 100644 index 0000000000..96e4f98f2c --- /dev/null +++ b/buildtools/wafsamba/tests/test_utils.py @@ -0,0 +1,21 @@ +from wafsamba.tests import TestCase + +from wafsamba.samba_utils import TO_LIST + +class ToListTests(TestCase): + + def test_none(self): + self.assertEquals([], TO_LIST(None)) + + def test_already_list(self): + self.assertEquals(["foo", "bar", 1], TO_LIST(["foo", "bar", 1])) + + def test_default_delimiter(self): + self.assertEquals(["foo", "bar"], TO_LIST("foo bar")) + self.assertEquals(["foo", "bar"], TO_LIST(" foo bar ")) + self.assertEquals(["foo ", "bar"], TO_LIST(" \"foo \" bar ")) + + def test_delimiter(self): + self.assertEquals(["foo", "bar"], TO_LIST("foo,bar", ",")) + self.assertEquals([" foo", "bar "], TO_LIST(" foo,bar ", ",")) + self.assertEquals([" \" foo\"", " bar "], TO_LIST(" \" foo\", bar ", ",")) diff --git a/source4/selftest/tests.py b/source4/selftest/tests.py index ccc899bd1e..b1b7871585 100755 --- a/source4/selftest/tests.py +++ b/source4/selftest/tests.py @@ -442,6 +442,7 @@ planpythontestsuite("dc:local", "samba.tests.samba_tool.user") planpythontestsuite("none", "subunit") planpythontestsuite("dc:local", "samba.tests.dcerpc.rpcecho") +planpythontestsuite("none", "wafsamba.tests.test_utils", extra_path=[os.path.join(samba4srcdir, "..", "buildtools"), os.path.join(samba4srcdir, "..", "buildtools", "wafadmin")]) planoldpythontestsuite("dc:local", "samba.tests.dcerpc.registry", extra_args=['-U"$USERNAME%$PASSWORD"']) planoldpythontestsuite("dc", "samba.tests.dcerpc.dnsserver", extra_args=['-U"$USERNAME%$PASSWORD"']) plantestsuite("samba4.ldap.python(dc)", "dc", [python, os.path.join(samba4srcdir, "dsdb/tests/python/ldap.py"), '$SERVER', '-U"$USERNAME%$PASSWORD"', '--workgroup=$DOMAIN']) -- cgit