• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1import unittest
2
3import os, shutil
4
5from modulegraph import modulegraph
6
7class DummyModule(object):
8    packagepath = None
9    def __init__(self, ppath):
10        self.packagepath = ppath
11
12class FindAllSubmodulesTestCase(unittest.TestCase):
13    def testNone(self):
14        mg = modulegraph.ModuleGraph()
15        # empty packagepath
16        m = DummyModule(None)
17        sub_ms = []
18        for sm in mg._find_all_submodules(m):
19            sub_ms.append(sm)
20        self.assertEqual(sub_ms, [])
21
22    def testSimple(self):
23        mg = modulegraph.ModuleGraph()
24        # a string does not break anything although it is split into its characters
25        # BUG: "/hi/there" will read "/"
26        m = DummyModule("xyz")
27        sub_ms = []
28        for sm in mg._find_all_submodules(m):
29            sub_ms.append(sm)
30        self.assertEqual(sub_ms, [])
31
32    def testSlashes(self):
33        # a string does not break anything although it is split into its characters
34        # BUG: "/xyz" will read "/" so this one already triggers missing itertools
35        mg = modulegraph.ModuleGraph()
36        m = DummyModule("/xyz")
37        sub_ms = []
38        for sm in mg._find_all_submodules(m):
39            sub_ms.append(sm)
40        self.assertEqual(sub_ms, [])
41
42if __name__ == '__main__':
43    unittest.main()
44