Yaniv Bronhaim has uploaded a new change for review.

Change subject: Additional tool tests for exposed functions
......................................................................

Additional tool tests for exposed functions

Change-Id: Iae0f98a9218b38c94aa003fea832d6795e7f0f23
Signed-off-by: Yaniv Bronhaim <[email protected]>
---
M tests/toolTests.py
1 file changed, 91 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/40/31940/1

diff --git a/tests/toolTests.py b/tests/toolTests.py
index e034ad0..aac1e54 100644
--- a/tests/toolTests.py
+++ b/tests/toolTests.py
@@ -21,7 +21,10 @@
 from vdsm.tool.configurators import \
     ModuleConfigure, \
     NOT_CONFIGURED,\
-    NOT_SURE
+    NOT_SURE,\
+    CONFIGURED,\
+    InvalidConfig,\
+    InvalidRun
 from vdsm.tool.configurators.configfile import ConfigFile, ParserWrapper
 from vdsm.tool.configurators.libvirt import Libvirt
 from vdsm.tool import UsageError
@@ -50,6 +53,39 @@
 
     def getRequires(self):
         return self._dependencies
+
+    def getServices(self):
+        return []
+
+
+class FalseMockModuleConfigurator(MockModuleConfigurator):
+
+    def validate(self):
+        return False
+
+    def isconfigured(self):
+        return NOT_CONFIGURED
+
+    def configure(self):
+        raise InvalidRun('mock for invalid configure')
+
+    def removeConf(self):
+        raise Exception('mock invalid remove conf')
+
+
+class TrueMockModuleConfigurator(MockModuleConfigurator):
+
+    def validate(self):
+        return True
+
+    def isconfigured(self):
+        return CONFIGURED
+
+    def configure(self):
+        pass
+
+    def removeConf(self):
+        pass
 
 
 class ConfiguratorTests(TestCase):
@@ -159,6 +195,60 @@
             '--module=multipath'
         )
 
+    @monkeypatch.MonkeyPatch(
+        configurator,
+        '_getConfigurers',
+        lambda:  {
+            'a': FalseMockModuleConfigurator('a', set()),
+            'b': FalseMockModuleConfigurator('b', set()),
+        }
+    )
+    def testFailuresOnExposedFuncs(self):
+        self.assertRaises(
+            InvalidConfig,
+            configurator.validate_config,
+            'validate-config',
+        )
+        self.assertRaises(
+            InvalidRun,
+            configurator.isconfigured,
+            'is-configured',
+        )
+        # running configure with force flag to avoid validate check
+        self.assertRaises(
+            InvalidRun,
+            configurator.configure,
+            'configure',
+            '--force',
+        )
+        self.assertRaises(
+            InvalidRun,
+            configurator.remove_config,
+            'remove-config'
+        )
+
+    @monkeypatch.MonkeyPatch(
+        configurator,
+        '_getConfigurers',
+        lambda:  {
+            'a': TrueMockModuleConfigurator('a', set()),
+            'b': TrueMockModuleConfigurator('b', set()),
+        }
+    )
+    def testValidFlowOnExposedFuncs(self):
+        configurator.validate_config(
+            'validate-config',
+        )
+        configurator.isconfigured(
+            'is-configured',
+        )
+        configurator.configure(
+            'configure',
+        )
+        configurator.remove_config(
+            'remove-config',
+        )
+
 
 class LibvirtModuleConfigureTests(TestCase):
 


-- 
To view, visit http://gerrit.ovirt.org/31940
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iae0f98a9218b38c94aa003fea832d6795e7f0f23
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Yaniv Bronhaim <[email protected]>
_______________________________________________
vdsm-patches mailing list
[email protected]
https://lists.fedorahosted.org/mailman/listinfo/vdsm-patches

Reply via email to