mirror of
https://github.com/explosion/spaCy.git
synced 2025-08-06 05:10:21 +03:00
Handle missing remote dirs in RemoteStorage.find
This commit is contained in:
parent
89895a0bd5
commit
8bed15b116
|
@ -119,13 +119,15 @@ class RemoteStorage:
|
||||||
recent matching file is preferred.
|
recent matching file is preferred.
|
||||||
"""
|
"""
|
||||||
name = self.encode_name(str(path))
|
name = self.encode_name(str(path))
|
||||||
|
urls = []
|
||||||
if command_hash is not None and content_hash is not None:
|
if command_hash is not None and content_hash is not None:
|
||||||
url = self.make_url(path, command_hash, content_hash)
|
url = self.url / name / command_hash / content_hash
|
||||||
urls = [url] if url.exists() else []
|
urls = [url] if url.exists() else []
|
||||||
elif command_hash is not None:
|
elif command_hash is not None:
|
||||||
|
if (self.url / name / command_hash).exists():
|
||||||
urls = list((self.url / name / command_hash).iterdir())
|
urls = list((self.url / name / command_hash).iterdir())
|
||||||
else:
|
else:
|
||||||
urls = []
|
if (self.url / name).exists():
|
||||||
for sub_dir in (self.url / name).iterdir():
|
for sub_dir in (self.url / name).iterdir():
|
||||||
urls.extend(sub_dir.iterdir())
|
urls.extend(sub_dir.iterdir())
|
||||||
if content_hash is not None:
|
if content_hash is not None:
|
||||||
|
|
|
@ -906,6 +906,15 @@ def test_local_remote_storage():
|
||||||
assert file_.read() == content
|
assert file_.read() == content
|
||||||
|
|
||||||
|
|
||||||
|
def test_local_remote_storage_pull_missing():
|
||||||
|
# pulling from a non-existent remote pulls nothing gracefully
|
||||||
|
with make_tempdir() as d:
|
||||||
|
filename = "a.txt"
|
||||||
|
remote = RemoteStorage(d / "root", str(d / "remote"))
|
||||||
|
assert remote.pull(filename, command_hash="aaaa") is None
|
||||||
|
assert remote.pull(filename) is None
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
"reqs,output",
|
"reqs,output",
|
||||||
[
|
[
|
||||||
|
|
Loading…
Reference in New Issue
Block a user