示例#1
0
 def test_oldPython(self):
     """
     L{_checkRequirements} raises L{ImportError} when run on a version of
     Python that is too old.
     """
     sys.version_info = self.unsupportedPythonVersion
     with self.assertRaises(ImportError) as raised:
         _checkRequirements()
     self.assertEqual("Twisted requires Python %d.%d or later." % self.supportedPythonVersion, str(raised.exception))
示例#2
0
 def test_oldPythonPy3(self):
     """
     L{_checkRequirements} raises L{ImportError} when run on a version of
     Python that is too old.
     """
     sys.version_info = self.Py3unsupportedPythonVersion
     with self.assertRaises(ImportError) as raised:
         _checkRequirements()
     self.assertEqual(
         "Twisted on Python 3 requires Python %d.%d or later." %
         self.Py3supportedPythonVersion, str(raised.exception))
示例#3
0
 def test_oldZopeInterface(self):
     """
     L{_checkRequirements} raises L{ImportError} when the C{zope.interface}
     package installed is old enough that C{implementer_only} is not included
     (added in zope.interface 3.6).
     """
     with SetAsideModule("zope"):
         _install(_zope35)
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
         self.assertEqual("Twisted requires zope.interface 3.6.0 or later.", str(raised.exception))
示例#4
0
 def test_oldZopeInterface(self):
     """
     If the installed version of C{zope.interface} does not support the
     C{implementer} class decorator, L{_checkRequirements} raises
     L{ImportError} with a message explaining a newer version is
     required.
     """
     with SetAsideModule("zope"):
         _install(_zope38)
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
     self.assertEqual("Twisted requires zope.interface 4.0.0 or later.", str(raised.exception))
示例#5
0
 def test_setupNoCheckRequirements(self):
     """
     L{_checkRequirements} doesn't check for C{zope.interface} compliance
     when C{setuptools._TWISTED_NO_CHECK_REQUIREMENTS} is set.
     """
     with SetAsideModule("setuptools"):
         setuptools = ModuleType("setuptools")
         setuptools._TWISTED_NO_CHECK_REQUIREMENTS = True
         sys.modules["setuptools"] = setuptools
         with SetAsideModule("zope"):
             sys.modules["zope"] = None
             _checkRequirements()
示例#6
0
 def test_setupNoCheckRequirements(self):
     """
     L{_checkRequirements} doesn't check for C{zope.interface} compliance
     when C{setuptools._TWISTED_NO_CHECK_REQUIREMENTS} is set.
     """
     with SetAsideModule("setuptools"):
         setuptools = ModuleType("setuptools")
         setuptools._TWISTED_NO_CHECK_REQUIREMENTS = True
         sys.modules["setuptools"] = setuptools
         with SetAsideModule("zope"):
             sys.modules["zope"] = None
             _checkRequirements()
示例#7
0
 def test_oldZopeInterface(self):
     """
     If the installed version of C{zope.interface} does not support the
     C{implementer} class decorator, L{_checkRequirements} raises
     L{ImportError} with a message explaining a newer version is
     required.
     """
     with SetAsideModule("zope"):
         _install(_zope38)
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
     self.assertEqual("Twisted requires zope.interface 4.0.0 or later.",
                      str(raised.exception))
示例#8
0
 def test_oldZopeInterface(self):
     """
     L{_checkRequirements} raises L{ImportError} when the C{zope.interface}
     package installed is old enough that C{implementer_only} is not included
     (added in zope.interface 3.6).
     """
     with SetAsideModule("zope"):
         _install(_zope35)
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
         self.assertEqual(
             "Twisted requires zope.interface 3.6.0 or later.",
             str(raised.exception))
示例#9
0
 def test_missingZopeInterface(self):
     """
     L{_checkRequirements} raises L{ImportError} when the C{zope.interface}
     package is not installed.
     """
     with SetAsideModule("zope"):
         # Create a minimal module to represent the zope namespace package,
         # but don't give it an "interface" attribute.
         sys.modules["zope"] = ModuleType("zope")
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
         self.assertEqual(
             "Twisted requires zope.interface %d.%d.%d or later: no module "
             "named zope.interface." % self.supportedZopeInterfaceVersion,
             str(raised.exception))
示例#10
0
 def test_missingZopeInterface(self):
     """
     L{_checkRequirements} raises L{ImportError} when the C{zope.interface}
     package is not installed.
     """
     with SetAsideModule("zope"):
         # Create a minimal module to represent the zope namespace package,
         # but don't give it an "interface" attribute.
         sys.modules["zope"] = ModuleType("zope")
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
         self.assertEqual(
             "Twisted requires zope.interface %d.%d.%d or later: no module "
             "named zope.interface." % self.supportedZopeInterfaceVersion,
             str(raised.exception))
 def test_newPython(self):
     """
     L{_checkRequirements} returns L{None} when run on a version of Python
     that is sufficiently new.
     """
     sys.version_info = self.supportedPythonVersion
     self.assertIsNone(_checkRequirements())
示例#12
0
 def test_missingZopeNamespace(self):
     """
     L{_checkRequirements} raises L{ImportError} when the C{zope} namespace
     package is not installed.
     """
     with SetAsideModule("zope"):
         # After an import for a module fails, it gets a None value in
         # sys.modules as a cache of that negative result.  Future import
         # attempts see it and fail fast without checking the system again.
         sys.modules["zope"] = None
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
         self.assertEqual(
             "Twisted requires zope.interface %d.%d.%d or later: no module "
             "named zope.interface." % self.supportedZopeInterfaceVersion,
             str(raised.exception))
示例#13
0
 def test_newPythonPy3(self):
     """
     L{_checkRequirements} returns C{None} when run on a version of Python
     that is sufficiently new.
     """
     sys.version_info = self.Py3supportedPythonVersion
     self.assertEqual(None, _checkRequirements())
示例#14
0
 def test_newPythonPy3(self):
     """
     L{_checkRequirements} returns L{None} when run on a version of Python
     that is sufficiently new.
     """
     sys.version_info = self.Py3supportedPythonVersion
     self.assertIsNone(_checkRequirements())
示例#15
0
 def test_newPython(self):
     """
     L{_checkRequirements} returns C{None} when run on a version of Python
     that is sufficiently new.
     """
     sys.version_info = self.supportedPythonVersion
     self.assertEqual(None, _checkRequirements())
示例#16
0
 def test_missingZopeNamespace(self):
     """
     L{_checkRequirements} raises L{ImportError} when the C{zope} namespace
     package is not installed.
     """
     with SetAsideModule("zope"):
         # After an import for a module fails, it gets a None value in
         # sys.modules as a cache of that negative result.  Future import
         # attempts see it and fail fast without checking the system again.
         sys.modules["zope"] = None
         with self.assertRaises(ImportError) as raised:
             _checkRequirements()
         self.assertEqual(
             "Twisted requires zope.interface %d.%d.%d or later: no module "
             "named zope.interface." % self.supportedZopeInterfaceVersion,
             str(raised.exception))
示例#17
0
 def test_newZopeInterface(self):
     """
     L{_checkRequirements} returns C{None} when C{zope.interface} is
     installed and new enough.
     """
     with SetAsideModule("zope"):
         _install(_zope36)
         self.assertEqual(None, _checkRequirements())
示例#18
0
 def test_newZopeInterface(self):
     """
     L{_checkRequirements} returns C{None} when C{zope.interface} is
     installed and new enough.
     """
     with SetAsideModule("zope"):
         _install(_zope36)
         self.assertEqual(None, _checkRequirements())
示例#19
0
 def test_newZopeInterface(self):
     """
     If the installed version of C{zope.interface} does support the
     C{implementer} class decorator, L{_checkRequirements} returns
     C{None}.
     """
     with SetAsideModule("zope"):
         _install(_zope40)
         self.assertEqual(None, _checkRequirements())
示例#20
0
 def test_newZopeInterface(self):
     """
     If the installed version of C{zope.interface} does support the
     C{implementer} class decorator, L{_checkRequirements} returns
     C{None}.
     """
     with SetAsideModule("zope"):
         _install(_zope40)
         self.assertEqual(None, _checkRequirements())