[Zope-Checkins] CVS: Zope/lib/python/ZServer/tests -
test_config.py:1.4
Chris McDonough
chrism at zope.com
Thu Oct 2 17:31:29 EDT 2003
Thank you!
On Thu, 2003-10-02 at 16:38, Fred L. Drake, Jr. wrote:
> Update of /cvs-repository/Zope/lib/python/ZServer/tests
> In directory cvs.zope.org:/tmp/cvs-serv9936
>
> Modified Files:
> test_config.py
> Log Message:
> test proper behavior of the monitor server factory both with and
> without an emergency user (the original test was failing; now we're
> more thorough)
>
>
> === Zope/lib/python/ZServer/tests/test_config.py 1.3 => 1.4 ===
> --- Zope/lib/python/ZServer/tests/test_config.py:1.3 Mon Mar 24 17:32:40 2003
> +++ Zope/lib/python/ZServer/tests/test_config.py Thu Oct 2 16:38:29 2003
> @@ -26,7 +26,7 @@
> TEMPFILENAME = tempfile.mktemp()
>
>
> -class ZServerConfigurationTestCase(unittest.TestCase):
> +class BaseTest(unittest.TestCase):
> schema = None
>
> def get_schema(self):
> @@ -40,7 +40,7 @@
> </schema>
> """)
> schema = ZConfig.loadSchemaFile(sio)
> - ZServerConfigurationTestCase.schema = schema
> + BaseTest.schema = schema
> return self.schema
>
> def load_factory(self, text):
> @@ -49,6 +49,24 @@
> self.assertEqual(len(conf.servers), 1)
> return conf.servers[0]
>
> + def check_prepare(self, factory):
> + port = factory.port
> + o = object()
> + factory.prepare("127.0.0.1", o, "module",
> + {"key": "value"}, portbase=9300)
> + self.assert_(factory.dnsresolver is o)
> + self.assertEqual(factory.module, "module")
> + self.assertEqual(factory.cgienv.items(), [("key", "value")])
> + if port is None:
> + self.assert_(factory.host is None)
> + self.assert_(factory.port is None)
> + else:
> + self.assertEqual(factory.host, "127.0.0.1")
> + self.assertEqual(factory.port, 9300 + port)
> +
> +
> +class ZServerConfigurationTestCase(BaseTest):
> +
> def load_unix_domain_factory(self, text):
> fn = TEMPFILENAME
> f = open(fn, 'w')
> @@ -144,19 +162,6 @@
> self.check_prepare(factory)
> factory.create().close()
>
> - def test_monitor_factory(self):
> - factory = self.load_factory("""\
> - <monitor-server>
> - address 85
> - </monitor-server>
> - """)
> - self.assert_(isinstance(factory,
> - ZServer.datatypes.MonitorServerFactory))
> - self.assertEqual(factory.host, '')
> - self.assertEqual(factory.port, 85)
> - self.check_prepare(factory)
> - factory.create().close()
> -
> def test_icp_factory(self):
> factory = self.load_factory("""\
> <icp-server>
> @@ -170,24 +175,54 @@
> self.check_prepare(factory)
> factory.create().close()
>
> - def check_prepare(self, factory):
> - port = factory.port
> - o = object()
> - factory.prepare("127.0.0.1", o, "module",
> - {"key": "value"}, portbase=9300)
> - self.assert_(factory.dnsresolver is o)
> - self.assertEqual(factory.module, "module")
> - self.assertEqual(factory.cgienv.items(), [("key", "value")])
> - if port is None:
> - self.assert_(factory.host is None)
> - self.assert_(factory.port is None)
> - else:
> - self.assertEqual(factory.host, "127.0.0.1")
> - self.assertEqual(factory.port, 9300 + port)
> +
> +class MonitorServerConfigurationTestCase(BaseTest):
> +
> + def setUp(self):
> + from AccessControl import User
> + self.__emergency_user = User.emergency_user
> +
> + class FakeUser:
> + def _getPassword(self):
> + return "foo"
> +
> + def tearDown(self):
> + from AccessControl import User
> + User.emergency_user = self.__emergency_user
> +
> + def setUser(self, null):
> + from AccessControl import User
> + u = self.FakeUser()
> + if null:
> + u.__null_user__ = True
> + User.emergency_user = u
> +
> + def create(self):
> + factory = self.load_factory("""\
> + <monitor-server>
> + address 85
> + </monitor-server>
> + """)
> + self.assert_(isinstance(factory,
> + ZServer.datatypes.MonitorServerFactory))
> + self.assertEqual(factory.host, '')
> + self.assertEqual(factory.port, 85)
> + self.check_prepare(factory)
> + return factory.create()
> +
> + def test_monitor_factory_without_emergency_user(self):
> + self.setUser(True)
> + self.assert_(self.create() is None)
> +
> + def test_monitor_factory_with_emergency_user(self):
> + self.setUser(False)
> + self.create().close()
>
>
> def test_suite():
> - return unittest.makeSuite(ZServerConfigurationTestCase)
> + suite = unittest.makeSuite(ZServerConfigurationTestCase)
> + suite.addTest(unittest.makeSuite(MonitorServerConfigurationTestCase))
> + return suite
>
> if __name__ == "__main__":
> unittest.main(defaultTest="test_suite")
>
>
> _______________________________________________
> Zope-Checkins maillist - Zope-Checkins at zope.org
> http://mail.zope.org/mailman/listinfo/zope-checkins
--
Chris McDonough <chrism at zope.com>
Zope Corporation
More information about the Zope-Checkins
mailing list