summaryrefslogtreecommitdiff
path: root/src/zope/component/tests/test_standalone.py
diff options
context:
space:
mode:
authorJason Madden <jamadden@gmail.com>2017-06-29 12:44:25 -0500
committerJason Madden <jamadden@gmail.com>2017-06-30 11:01:09 -0500
commit712bb8e078de20e01311cfe57d8dccfbbdcbe9b3 (patch)
tree4cb7d4e9cc901fe144d168b77eea235a08932787 /src/zope/component/tests/test_standalone.py
parent43d7351318eb373d1f4f500b70e4e461048c16f4 (diff)
downloadzope-component-issue29.tar.gz
100% coverageissue29
Add change note and badge to readme. Remove unused class and function. Omit standalonetests.py entirely from coverage. Another unused class. Incorporate feedback in test__api.py * Bring back _callFUT and make the queryAdapterInContext tests call it * Change raise NotImplentedError into specific fails_if_called() calls. Remove redundant argument now that all test in Test_adapts pass under all versions. Remove NotImplementedError from test_globalregistry.py Remove NotImplementedError from test_hookable.py Remove NotImplementedError from test_registry.py Remove NotImplementedError from test_security.py Remove NotImplementedError from test_zcml.py Remove NotImplementedError from test_factory.py Document ZCML feature and devmode. Really accept all arguments unless opted out.
Diffstat (limited to 'src/zope/component/tests/test_standalone.py')
-rw-r--r--src/zope/component/tests/test_standalone.py79
1 files changed, 35 insertions, 44 deletions
diff --git a/src/zope/component/tests/test_standalone.py b/src/zope/component/tests/test_standalone.py
index efd0d87..2892f87 100644
--- a/src/zope/component/tests/test_standalone.py
+++ b/src/zope/component/tests/test_standalone.py
@@ -15,50 +15,41 @@
"""
import unittest
-try:
- import zope.security
-except ImportError:
- _HAS_ZOPE_SECURITY = False
-else:
- _HAS_ZOPE_SECURITY = True
+from zope.component.tests import skipIfNoSecurity
- class StandaloneTests(unittest.TestCase):
- def testStandalone(self):
- # See: https://bugs.launchpad.net/zope3/+bug/98401
- import subprocess
- import sys
- import os
- import pickle
+@skipIfNoSecurity
+class StandaloneTests(unittest.TestCase):
+ def testStandalone(self):
+ # See: https://bugs.launchpad.net/zope3/+bug/98401
+ import subprocess
+ import sys
+ import os
+ import pickle
- executable = os.path.abspath(sys.executable)
- where = os.path.dirname(os.path.dirname(__file__))
- program = os.path.join(where, 'standalonetests.py')
- process = subprocess.Popen([executable, program],
- stdout=subprocess.PIPE,
- stderr=subprocess.STDOUT,
- stdin=subprocess.PIPE)
- try:
- pickle.dump(sys.path, process.stdin)
- process.stdin.close()
-
- try:
- rc = process.wait()
- except OSError as e:
- # MacIntel raises apparently unimportant EINTR?
- if e.errno != 4:
- raise # TODO verify sanity of a pass on EINTR :-/
- if rc != 0:
- output = process.stdout.read()
- if isinstance(output, bytes):
- output = output.decode()
- sys.stderr.write('#' * 80 + '\n')
- sys.stdout.write(output)
- sys.stderr.write('#' * 80 + '\n')
- self.fail('Output code: %d' % rc)
- finally:
- process.stdout.close()
+ executable = os.path.abspath(sys.executable)
+ where = os.path.dirname(os.path.dirname(__file__))
+ program = os.path.join(where, 'standalonetests.py')
+ process = subprocess.Popen([executable, program],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT,
+ stdin=subprocess.PIPE)
+ try:
+ pickle.dump(sys.path, process.stdin)
+ process.stdin.close()
-def test_suite():
- if _HAS_ZOPE_SECURITY:
- return unittest.makeSuite(StandaloneTests)
- return unittest.TestSuite()
+ try:
+ rc = process.wait()
+ except OSError as e: # pragma: no cover
+ # MacIntel raises apparently unimportant EINTR?
+ if e.errno != 4:
+ raise # TODO verify sanity of a pass on EINTR :-/
+ if rc != 0: # pragma: no cover
+ output = process.stdout.read()
+ if isinstance(output, bytes):
+ output = output.decode()
+ sys.stderr.write('#' * 80 + '\n')
+ sys.stdout.write(output)
+ sys.stderr.write('#' * 80 + '\n')
+ self.fail('Output code: %d' % rc)
+ finally:
+ process.stdout.close()