Changeset 17327 for main/waeup.kofa/trunk/src/waeup/kofa/tests
- Timestamp:
- 31 Jan 2023, 16:15:54 (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/waeup.kofa/trunk/src/waeup/kofa/tests/test_startup.py
r12110 r17327 1 1 # Tests for local startup functions. 2 import mock 2 3 import os 3 4 import shutil 5 import sys 4 6 import tempfile 5 7 import unittest 8 # from zdaemon.zdctl import 9 import zdaemon.zdctl 6 10 from zope.app.wsgi import WSGIPublisherApplication 7 from waeup.kofa.startup import env_app_factory, env_debug_app_factory 11 # from zdaemon.tests.testzdctl import run as run_zdctl 12 from waeup.kofa.startup import ( 13 env_app_factory, env_debug_app_factory, zdaemon_controller, 14 ) 15 try: 16 from StringIO import StringIO # py2 17 except ImportError: 18 from io import StringIO # py3 19 20 8 21 9 22 ZOPE_CONF_TEMPL = ''' … … 21 34 ''' 22 35 36 37 ZDAEMON_CONF_TEMPL = ''' 38 <runner> 39 program echo "zdaemon started" 40 </runner> 41 ''' 42 43 23 44 class StartUpTests(unittest.TestCase): 24 45 … … 29 50 self.zope_conf = os.path.join(self.workdir, 'zope.conf') 30 51 open(self.zope_conf, 'wb').write(ZOPE_CONF_TEMPL % self.site_zcml) 52 self.zdaemon_conf = os.path.join(self.workdir, 'zdaemon.conf') 53 open(self.zdaemon_conf, 'wb').write(ZDAEMON_CONF_TEMPL) 31 54 return 32 55 … … 75 98 self.assertEqual(os.environ.get('TEST_FOO', None), 'value1') 76 99 return 100 101 @mock.patch("sys.stdout", new_callable=StringIO) 102 def test_zdaemon_has_debug_help(self, mock_out): 103 # We provide a `debug` help text for `kofactl` 104 with mock.patch.object(sys, "argv", ["kofactl", "help", "debug"]): 105 with self.assertRaises(SystemExit): 106 zdaemon_controller(zdaemon_conf=self.zdaemon_conf) 107 self.assertTrue("providing a debugger" in mock_out.getvalue()) 108 109 @mock.patch("waeup.kofa.startup.interactive_debug_prompt") 110 def test_zdaemon_can_start_debug(self, mock_prompt): 111 # We can actually run the debugger... 112 with mock.patch.object(sys, "argv", ["kofactl", "debug"]): 113 with self.assertRaises(SystemExit): 114 zdaemon_controller(zdaemon_conf=self.zdaemon_conf) 115 self.assertTrue(mock_prompt.called)
Note: See TracChangeset for help on using the changeset viewer.