Former-commit-id:a02aeb236c
[formerly9f19e3f712
] [formerly06a8b51d6d
[formerly 64fa9254b946eae7e61bbc3f513b7c3696c4f54f]] Former-commit-id:06a8b51d6d
Former-commit-id:3360eb6c5f
58 lines
1.8 KiB
Python
Executable file
58 lines
1.8 KiB
Python
Executable file
import os
|
|
import sys
|
|
import unittest
|
|
from cStringIO import StringIO
|
|
from nose.core import TestProgram
|
|
from test_program import TestRunner
|
|
|
|
here = os.path.dirname(__file__)
|
|
support = os.path.join(here, 'support')
|
|
|
|
class TestNamespacePackages(unittest.TestCase):
|
|
|
|
def setUp(self):
|
|
self.cwd = os.getcwd()
|
|
self.orig_path = sys.path[:]
|
|
test_dir = os.path.join(support, 'namespace_pkg')
|
|
os.chdir(test_dir)
|
|
sys.path.append(os.path.join(test_dir, 'site-packages'))
|
|
|
|
def tearDown(self):
|
|
sys.path = self.orig_path
|
|
os.chdir(self.cwd)
|
|
|
|
def test_namespace_pkg(self):
|
|
"""Ensure namespace packages work/can import from each other"""
|
|
stream = StringIO()
|
|
runner = TestRunner(stream=stream)
|
|
runner.verbosity = 2
|
|
prog = TestProgram(argv=[''],
|
|
testRunner=runner,
|
|
exit=False)
|
|
res = runner.result
|
|
self.assertEqual(res.testsRun, 1,
|
|
"Expected to run 1 test, ran %s" % res.testsRun)
|
|
assert res.wasSuccessful()
|
|
assert not res.errors
|
|
assert not res.failures
|
|
|
|
def test_traverse_namespace(self):
|
|
"""Ensure the --traverse-namespace option tests the other
|
|
namespace package sibling also.
|
|
"""
|
|
stream = StringIO()
|
|
runner = TestRunner(stream=stream)
|
|
runner.verbosity = 2
|
|
prog = TestProgram(argv=['', '--traverse-namespace'],
|
|
testRunner=runner,
|
|
exit=False)
|
|
res = runner.result
|
|
self.assertEqual(res.testsRun, 2,
|
|
"Expected to run 2 tests, ran %s" % res.testsRun)
|
|
assert res.wasSuccessful()
|
|
assert not res.errors
|
|
assert not res.failures
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|