Exemple #1
0
    def test_hooks_call_history_retrival(self, return_value=True):
        i = Hook()
        i.load('/foo/bar.yml')
        import_module_mock = patch('facio.hooks.Hook.import_module')
        mock_import = import_module_mock.start()
        mocked_modules = self._module_factory(10)
        for path, module in mocked_modules:
            mock_import.return_value = module
            i.run_module(path)
        import_module_mock.stop()

        self.assertFalse(i.has_run('not.in.facked.modules'))
        self.assertEqual(i.has_run('foo.bar.baz2'), mocked_modules[1][1].run())
Exemple #2
0
    def test_store_hooks_states(self, return_value=True):
        i = Hook()
        i.load('/foo/bar.yml')
        import_module_mock = patch('facio.hooks.Hook.import_module')
        mock_import = import_module_mock.start()
        mocked_modules = self._module_factory(3)

        for path, module in mocked_modules:
            mock_import.return_value = module
            i.run_module(path)

            self.assertTrue(module.run.called)
            self.assertEqual(i.calls[-1:][0].get(path),
                             module.run.return_value)

        mock_import = import_module_mock.stop()

        self.assertEquals(len(i.calls), 3)
Exemple #3
0
    def test_module_exception_caught(self, mockload):
        import_module_mock = patch('facio.hooks.Hook.import_module')
        mock = import_module_mock.start()
        module = MagicMock()
        module.foo.side_effect = KeyError('Failed lookup')
        mock.return_value = module

        def fake_run():
            module.foo()

        module.run = fake_run
        i = Hook()
        i.load('/foo/bar.yml')
        i.run_module('foo.bar.baz')
        mock = import_module_mock.stop()
        self.assertTrue(module.foo.called)
        self.mocked_facio_hooks_Hook_warning.assert_called_with(
            'Exeption caught in module: \'Failed lookup\' line: 117')
Exemple #4
0
 def test_run_module_failure(self, mockload):
     i = Hook()
     i.load('/foo/bar.yml')
     import_module_mock = patch('facio.hooks.Hook.import_module')
     mock = import_module_mock.start()
     module = MagicMock()
     module.run.side_effect = AttributeError
     mock.return_value = module
     rtn = i.run_module('foo.bar.baz')
     mock = import_module_mock.stop()
     self.assertTrue(module.run.called)
     self.assertFalse(rtn)
Exemple #5
0
 def test_run_module_success(self, mockload):
     i = Hook()
     i.load('/foo/bar.yml')
     import_module_mock = patch('facio.hooks.Hook.import_module')
     mock = import_module_mock.start()
     module = MagicMock()
     module.run.return_value = True
     mock.return_value = module
     rtn = i.run_module('foo.bar.baz')
     mock = import_module_mock.stop()
     self.assertTrue(module.run.called)
     self.assertTrue(rtn)