summaryrefslogtreecommitdiff
path: root/tests/unittests/test_version.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unittests/test_version.py')
-rw-r--r--tests/unittests/test_version.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/unittests/test_version.py b/tests/unittests/test_version.py
new file mode 100644
index 00000000..8ac8aea6
--- /dev/null
+++ b/tests/unittests/test_version.py
@@ -0,0 +1,32 @@
+# This file is part of cloud-init. See LICENSE file for license information.
+
+from unittest import mock
+
+from cloudinit import version
+from tests.unittests.helpers import CiTestCase
+
+
+class TestExportsFeatures(CiTestCase):
+ def test_has_network_config_v1(self):
+ self.assertIn("NETWORK_CONFIG_V1", version.FEATURES)
+
+ def test_has_network_config_v2(self):
+ self.assertIn("NETWORK_CONFIG_V2", version.FEATURES)
+
+
+class TestVersionString(CiTestCase):
+ @mock.patch(
+ "cloudinit.version._PACKAGED_VERSION", "17.2-3-gb05b9972-0ubuntu1"
+ )
+ def test_package_version_respected(self):
+ """If _PACKAGED_VERSION is filled in, then it should be returned."""
+ self.assertEqual("17.2-3-gb05b9972-0ubuntu1", version.version_string())
+
+ @mock.patch("cloudinit.version._PACKAGED_VERSION", "@@PACKAGED_VERSION@@")
+ @mock.patch("cloudinit.version.__VERSION__", "17.2")
+ def test_package_version_skipped(self):
+ """If _PACKAGED_VERSION is not modified, then return __VERSION__."""
+ self.assertEqual("17.2", version.version_string())
+
+
+# vi: ts=4 expandtab