예제 #1
0
 def test_prepare_cache_dir_broken(self, tmpdir):
     # we fail loudly if we cannot create a cache dir
     cm = CacheManager(str(tmpdir))
     tmpdir.join("not-a-dir.txt").write("foo")     # broken dir
     cm.cache_dir = str(tmpdir / "not-a-dir.txt")
     with pytest.raises(IOError):
         cm._prepare_cache_dir()
예제 #2
0
    def test_prepare_cache_dir(self):
        new_cache_dir = os.path.join(self.workdir, 'newcache')
        broken_cache_dir = os.path.join(self.workdir, 'broken')
        open(broken_cache_dir, 'wb').write('broken')
        cm = CacheManager(self.workdir)

        cm.cache_dir = None
        self.assertEqual(cm.prepareCacheDir(), None)

        cm.cache_dir = new_cache_dir
        cm.prepareCacheDir()
        self.assertTrue(os.path.isdir(new_cache_dir))

        cm.cache_dir = broken_cache_dir
        self.assertRaises(IOError, cm.prepareCacheDir)
        return
예제 #3
0
 def test_prepare_cache_dir(self, tmpdir):
     # _prepare_cache_dir creates a cache dir normally
     cm = CacheManager(str(tmpdir.join("cache")))
     new_dir = tmpdir.join("new_dir")
     cm.cache_dir = str(new_dir)
     cm._prepare_cache_dir()
     assert new_dir.isdir() is True
예제 #4
0
 def test_prepare_cache_dir_broken(self, tmpdir):
     # we fail loudly if we cannot create a cache dir
     cm = CacheManager(str(tmpdir))
     tmpdir.join("not-a-dir.txt").write("foo")  # broken dir
     cm.cache_dir = str(tmpdir / "not-a-dir.txt")
     with pytest.raises(IOError):
         cm._prepare_cache_dir()
예제 #5
0
 def test_prepare_cache_dir(self, tmpdir):
     # _prepare_cache_dir creates a cache dir normally
     cm = CacheManager(str(tmpdir.join("cache")))
     new_dir = tmpdir.join("new_dir")
     cm.cache_dir = str(new_dir)
     cm._prepare_cache_dir()
     assert new_dir.isdir() is True
예제 #6
0
 def test_prepare_cache_dir_none(self, tmpdir):
     # we can create a cache manager without any cache dir
     cm = CacheManager(str(tmpdir))
     cm.cache_dir = None
     cm._prepare_cache_dir()
     assert cm.cache_dir is None
예제 #7
0
 def test_prepare_cache_dir_none(self, tmpdir):
     # we can create a cache manager without any cache dir
     cm = CacheManager(str(tmpdir))
     cm.cache_dir = None
     cm._prepare_cache_dir()
     assert cm.cache_dir is None