Browse Source

mkdir dirs as needed, make sure randpkg doesn't exist..

main
John-Mark Gurney 4 years ago
parent
commit
a24fd63ae1
1 changed files with 13 additions and 7 deletions
  1. +13
    -7
      casimport/__init__.py

+ 13
- 7
casimport/__init__.py View File

@@ -144,6 +144,7 @@ class FileDirCAS(object):

def __init__(self, path):
self._path = pathlib.Path(path)
self._path.mkdir(exist_ok=True)
self._hashes = {}

def refresh_dir(self):
@@ -343,10 +344,10 @@ class CASFinder(MetaPathFinder, Loader):

def defaultinit(casf):
basedir = pathlib.Path.home() / '.casimport'
basedir.mkdir(exist_ok=True)

conffile = basedir / 'casimport.conf'
if not conffile.exists():
basedir.mkdir(exist_ok=True)
import casimport
with importlib.resources.path(casimport,
'default.conf') as defconf:
@@ -434,6 +435,12 @@ class Test(unittest.TestCase):
shutil.rmtree(self.basetempdir)
self.tempdir = None

def test_filedircas(self):
cachedir = self.tempdir / 'cache'
fd = FileDirCAS(cachedir)

self.assertTrue(cachedir.exists())

def test_filedircas_limit_refresh(self):
# XXX - only refresh when the dir has changed, and each
# file has changed
@@ -529,7 +536,8 @@ class Test(unittest.TestCase):
# setup the cache
temphome = self.tempdir / 'home'
temphome.mkdir()
cachedir = temphome / '.casimport_cache'
cachedir = temphome / '.casimport' / 'cache'
cachedir.mkdir(parents=True)

# add the test module's path
fixdir = str(self.fixtures)
@@ -540,11 +548,7 @@ class Test(unittest.TestCase):
with CASFinder() as f, \
tempattrset(sys.modules[__name__],
'load_mod_aliases', f.load_mod_aliases):
defaultinit(f)

# XXX - fix this so this is properly
# used. It's using other methods to
# work currently
f.register(FileDirCAS(cachedir))

# and that hello.py is in the cache
shutil.copy(self.fixtures / 'hello.py',
@@ -588,6 +592,8 @@ class Test(unittest.TestCase):

f.register(fakeipfsloader)

self.assertNotIn('randpkg', sys.modules)

# that the import is successful
import randpkg



Loading…
Cancel
Save