def get_scans_cache_class(cache_dir=scans_cache_dir): """ Return a new persistent cache class configured with a unique storage directory. """ # create a unique temp directory in cache_dir fileutils.create_dir(cache_dir) # ensure that the cache dir is alwasy unicode cache_dir = fileutils.get_temp_dir(unicode(cache_dir), prefix=unicode(timeutils.time2tstamp()) + u'-') sc = ScanFileCache(cache_dir) sc.setup() return partial(ScanFileCache, cache_dir)
def get_scans_cache_class(cache_dir=scans_cache_dir): """ Return a new persistent cache class configured with a unique storage directory. """ # create a unique temp directory in cache_dir fileutils.create_dir(cache_dir) prefix = timeutils.time2tstamp() + u'-' cache_dir = fileutils.get_temp_dir(cache_dir, prefix=prefix) if on_linux: cache_dir = path_to_bytes(cache_dir) sc = ScanFileCache(cache_dir) sc.setup() return partial(ScanFileCache, cache_dir)
def test_tstamp2time_format(self): import re ts = time2tstamp() pat = r'^20\d\d-[0-1][0-9]-[0-3]\dT[0-2]\d[0-6]\d[0-6]\d.\d\d\d\d\d\d$' assert re.match(pat, ts)
def test_time2tstamp_tstamp2time_is_idempotent(self): dt = datetime.utcnow() ts = time2tstamp(dt) dt_from_ts = tstamp2time(ts) assert dt == dt_from_ts
def test_time2tstamp_accepts_existing_datetimes(self): ts = time2tstamp() tf = self.get_temp_file(extension='ext', dir_name=ts, file_name=ts) fd = open(tf, 'w') fd.write('a') fd.close()
def test_time2tstamp_is_path_safe_and_file_is_writable(self): ts = time2tstamp() tf = self.get_temp_file(extension='ext', dir_name=ts, file_name=ts) fd = open(tf, 'w') fd.write('a') fd.close()
def test_tstamp2time_format(self): import re ts = time2tstamp() pat = '^20\d\d-[0-1][0-9]-[0-3]\dT[0-2]\d[0-6]\d[0-6]\d.\d\d\d\d\d\d$' assert re.match(pat, ts)