Esempio n. 1
0
class Test3(U.TestCase):
    here = tu.absdir()
    bases = (here, tempfile.gettempdir())
    asubs = [os.path.join(b, "test_sub") for b in bases]
    home = get_env_var("HOME")
    if home:
        home_junk = os.path.join(home, "test_junk")

    def _rmsubs(self):
        import shutil
        for sub in self.asubs:
            if os.path.isdir(sub):
                shutil.rmtree(sub)

    def setUp(self):
        self._rmsubs()
        if self.home and not os.path.isdir(self.home_junk):
            os.mkdir(self.home_junk)

    def tearDown(self):
        self._rmsubs()
        if self.home and os.path.isdir(self.home_junk):
            os.rmdir(self.home_junk)

    def test3a_subdir(self):
        for sub in self.asubs:
            self.assertFalse(os.path.isdir(sub), "init: no dir %r" % sub)
            b, d = os.path.dirname(sub), os.path.basename(sub)
            md = tu.make_subdir(d, b)
            self.assertTrue(os.path.isdir(sub), "made dir %r" % sub)
            self.assertEqual(md, sub,
                             tu.msg(md, sub, "make_subdir returns path"))

            s2 = os.path.join(sub, "sub2")
            tu.make_subdir("sub2", sub)
            self.assertTrue(os.path.isdir(s2), "made dir %r" % s2)
            f = os.path.join(s2, "test_file")

            with open(f, "w") as fd:
                fd.write("testing..")
            self.assertTrue(os.path.isfile(f), "file %r exists" % f)
            tu.delete_tree(sub)
            self.assertFalse(os.path.isdir(sub),
                             "delete_tree removes subdir %r" % sub)

    def test3b_delete_tree_constraint(self):
        if self.home:
            err = None
            try:
                tu.delete_tree(self.home_junk)
            except tu.TestError as e:
                err = e.value
            self.assertFalse(
                err is None,
                "deltree on %r raises TestError" % (self.home_junk))
        else:
            self.fail("Skip deltree constraint test, no '$HOME' var")
Esempio n. 2
0
 def test2c_path_append_parent(self):
     here = tu.absdir();
     par = os.path.dirname(here)
     was_there = par in sys.path
     if was_there:
         while par in sys.path:
             sys.path.remove(par)
     np = len(sys.path)
     
     for p in (None, __file__):
         self.assertFalse(par in sys.path, "par not in initial path")
         if not p:
             g = tu.path_append_parent()
         else:
             g = tu.path_append_parent(p)
         self.assertEqual(g,par, tu.msg(g,par, "path_append_parent return"))
         self.assertTrue(par in sys.path, "actually appends")
         sys.path.remove(par)
         l= len(sys.path)
         self.assertEqual(l, np, tu.msg(l, np,"numpaths"))
     if was_there:
         # restore entry state (but no multiples needed!)
         sys.path.append(par)
Esempio n. 3
0
    def test2c_path_append_parent(self):
        here = tu.absdir()
        par = os.path.dirname(here)
        was_there = par in sys.path
        if was_there:
            while par in sys.path:
                sys.path.remove(par)
        np = len(sys.path)

        for p in (None, __file__):
            self.assertFalse(par in sys.path, "par not in initial path")
            if not p:
                g = tu.path_append_parent()
            else:
                g = tu.path_append_parent(p)
            self.assertEqual(g, par, tu.msg(g, par,
                                            "path_append_parent return"))
            self.assertTrue(par in sys.path, "actually appends")
            sys.path.remove(par)
            l = len(sys.path)
            self.assertEqual(l, np, tu.msg(l, np, "numpaths"))
        if was_there:
            # restore entry state (but no multiples needed!)
            sys.path.append(par)
Esempio n. 4
0
 def test2b_absdir(self):
     here = tu.absdir()
     g = tu.absdir(__file__)
     self.assertEqual(g, here, tu.msg(g, here, "absdir"))
Esempio n. 5
0
 def test2b_absdir(self):
     here = tu.absdir();
     g=tu.absdir(__file__)
     self.assertEqual(g, here, tu.msg(g, here, "absdir"))