Skip to content

Commit 8582d44

Browse files
authored
Merge pull request #1011 from MridulS/dataverse
fix dataverse regression introduced in last release
2 parents cb4621f + 0885204 commit 8582d44

File tree

2 files changed

+22
-18
lines changed

2 files changed

+22
-18
lines changed

repo2docker/contentproviders/dataverse.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ def detect(self, doi, ref=None, extra_args=None):
7373
parsed_url._replace(path="/api/search", query=search_query)
7474
)
7575
self.log.debug("Querying Dataverse: " + search_url)
76-
data = self.urlopen(search_url).json()
76+
data = self.urlopen(search_url).json()["data"]
7777
if data["count_in_response"] != 1:
7878
self.log.debug(
7979
"Dataverse search query failed!\n - doi: {}\n - url: {}\n - resp: {}\n".format(
@@ -103,7 +103,7 @@ def fetch(self, spec, output_dir, yield_output=False):
103103
)
104104

105105
resp = self.urlopen(url, headers={"accept": "application/json"})
106-
record = resp.json()
106+
record = resp.json()["data"]
107107

108108
for fobj in deep_get(record, "latestVersion.files"):
109109
file_url = "{}/api/access/datafile/{}".format(

tests/unit/contentproviders/test_dataverse.py

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,10 @@ def doi_resolver(req, context):
6060
requests_mock.get(
6161
"https://dataverse.harvard.edu/api/search?q=entityId:3323458&type=file",
6262
json={
63-
"count_in_response": 1,
64-
"items": [{"dataset_persistent_id": "doi:10.7910/DVN/6ZXAGT"}],
63+
"data": {
64+
"count_in_response": 1,
65+
"items": [{"dataset_persistent_id": "doi:10.7910/DVN/6ZXAGT"}],
66+
}
6567
},
6668
)
6769

@@ -109,20 +111,22 @@ def dv_files(tmpdir):
109111

110112
def test_dataverse_fetch(dv_files, requests_mock):
111113
mock_response = {
112-
"latestVersion": {
113-
"files": [
114-
{"dataFile": {"id": 1}, "label": "some-file.txt"},
115-
{
116-
"dataFile": {"id": 2},
117-
"label": "some-other-file.txt",
118-
"directoryLabel": "directory",
119-
},
120-
{
121-
"dataFile": {"id": 3},
122-
"label": "the-other-file.txt",
123-
"directoryLabel": "directory/subdirectory",
124-
},
125-
]
114+
"data": {
115+
"latestVersion": {
116+
"files": [
117+
{"dataFile": {"id": 1}, "label": "some-file.txt"},
118+
{
119+
"dataFile": {"id": 2},
120+
"label": "some-other-file.txt",
121+
"directoryLabel": "directory",
122+
},
123+
{
124+
"dataFile": {"id": 3},
125+
"label": "the-other-file.txt",
126+
"directoryLabel": "directory/subdirectory",
127+
},
128+
]
129+
}
126130
}
127131
}
128132

0 commit comments

Comments
 (0)