OLD | NEW |
| (Empty) |
1 """ | |
2 Test for import machinery | |
3 """ | |
4 import unittest | |
5 import sys | |
6 import textwrap | |
7 import subprocess | |
8 import os | |
9 from modulegraph import modulegraph | |
10 | |
11 class TestModuleGraphImport (unittest.TestCase): | |
12 if not hasattr(unittest.TestCase, 'assertIsInstance'): | |
13 def assertIsInstance(self, value, types): | |
14 if not isinstance(value, types): | |
15 self.fail("%r is not an instance of %r"%(value, types)) | |
16 | |
17 def test_compat(self): | |
18 root = os.path.join( | |
19 os.path.dirname(os.path.abspath(__file__)), | |
20 'testpkg-compatmodule') | |
21 mf = modulegraph.ModuleGraph(path=[ root ] + sys.path) | |
22 mf.import_hook('pkg.api') | |
23 | |
24 node = mf.findNode('pkg') | |
25 self.assertIsInstance(node, modulegraph.Package) | |
26 | |
27 node = mf.findNode('pkg.api') | |
28 self.assertIsInstance(node, modulegraph.SourceModule) | |
29 | |
30 if sys.version_info[0] == 2: | |
31 node = mf.findNode('pkg.api2') | |
32 self.assertIsInstance(node, modulegraph.SourceModule) | |
33 | |
34 node = mf.findNode('pkg.api3') | |
35 self.assertIsInstance(node, modulegraph.InvalidSourceModule) | |
36 | |
37 node = mf.findNode('http.client') | |
38 self.assertIs(node, None) | |
39 | |
40 node = mf.findNode('urllib2') | |
41 self.assertIsInstance(node, modulegraph.SourceModule) | |
42 | |
43 else: | |
44 node = mf.findNode('pkg.api2') | |
45 self.assertIsInstance(node, modulegraph.InvalidSourceModule) | |
46 | |
47 node = mf.findNode('pkg.api3') | |
48 self.assertIsInstance(node, modulegraph.SourceModule) | |
49 | |
50 node = mf.findNode('http.client') | |
51 self.assertIsInstance(node, modulegraph.SourceModule) | |
52 | |
53 node = mf.findNode('urllib2') | |
54 self.assertIs(node, None) | |
55 | |
56 | |
57 | |
58 | |
59 if __name__ == "__main__": | |
60 unittest.main() | |
OLD | NEW |