Skip to content

Commit 126ac17

Browse files
authored
[REF] record neurovault ingestion (#688)
* record neurovault ingestion * style * ignore recording for spelling
1 parent f2e6d84 commit 126ac17

File tree

6 files changed

+1150
-5
lines changed

6 files changed

+1150
-5
lines changed

.codespellrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[codespell]
2-
skip = .git,*.pdf,*.svg,*.ts,*.tsx,package-lock.json,data-*vocabulary.txt,sample_*.csv,CHANGELOG.rst
2+
skip = .git,*.pdf,*.svg,*.ts,*.tsx,package-lock.json,data-*vocabulary.txt,sample_*.csv,CHANGELOG.rst,ingest_neurovault.yml
33
# regexes
44
ignore-regex = r"\(\?i\).*\\\\1
55
ignore-words-list = te,fwe,connexion,zoon,covert,rime

store/cassettes/ingest_neurovault.yml

Lines changed: 1136 additions & 0 deletions
Large diffs are not rendered by default.

store/neurostore/ingest/__init__.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
from neurostore.models.data import StudysetStudy, _check_type
3030

3131

32-
def ingest_neurovault(verbose=False, limit=20, overwrite=False):
32+
def ingest_neurovault(verbose=False, limit=20, overwrite=False, max_images=None):
3333
# Store existing studies for quick lookup
3434
all_studies = {s.doi: s for s in Study.query.filter_by(source="neurovault").all()}
3535

@@ -141,7 +141,9 @@ def add_collection(data):
141141
[
142142
add_collection(c)
143143
for c in data["results"]
144-
if c["DOI"] is not None and c["number_of_images"]
144+
if c["DOI"] is not None
145+
and c["number_of_images"] > 0
146+
and (max_images is None or c["number_of_images"] < max_images)
145147
],
146148
)
147149
)

store/neurostore/requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,6 @@ wrapt~=1.12
2828
openapi-spec-validator~=0.3
2929
scipy~=1.9
3030
pytest~=7.1
31+
vcrpy~=6.0
32+
pytest-recording~=0.13.1
3133
orjson~=3.8

store/neurostore/schemas/data.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,10 @@ class BaseDataSchema(BaseSchema):
167167
attribute="user_id", dump_only=True, metadata={"info_field": True}
168168
)
169169
username = fields.String(
170-
attribute="user.name", dump_only=True, metadata={"info_field": True}, default=None,
170+
attribute="user.name",
171+
dump_only=True,
172+
metadata={"info_field": True},
173+
default=None,
171174
)
172175

173176

store/neurostore/tests/conftest.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
)
2020
from auth0.v3.authentication import GetToken
2121
import shortuuid
22+
import vcr
2223

2324
import logging
2425

@@ -336,8 +337,9 @@ def ingest_neurosynth(session):
336337

337338

338339
@pytest.fixture(scope="function")
340+
@vcr.use_cassette("cassettes/ingest_neurovault.yml")
339341
def ingest_neurovault(session):
340-
return ingest.ingest_neurovault(limit=5)
342+
return ingest.ingest_neurovault(limit=5, max_images=50)
341343

342344

343345
@pytest.fixture(scope="function")

0 commit comments

Comments
 (0)