Skip to content

Commit

Permalink
Merge branch 'master' into devel
Browse files Browse the repository at this point in the history
  • Loading branch information
kjsanger committed Jun 29, 2023
2 parents 90175eb + a0b0639 commit 35687b8
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 13 deletions.
2 changes: 1 addition & 1 deletion src/npg_irods/metadata/lims.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ def make_sample_metadata(sample: Sample) -> list[AVU]:
AVUs
"""
av = [
[TrackedSample.ID, sample.sanger_sample_id],
[TrackedSample.ID, sample.id_sample_lims],
[TrackedSample.NAME, sample.name],
[TrackedSample.ACCESSION_NUMBER, sample.accession_number],
[TrackedSample.DONOR_ID, sample.donor_id],
Expand Down
14 changes: 11 additions & 3 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@
processors=[structlog.processors.JSONRenderer()],
)


tests_have_admin = pytest.mark.skipif(
not have_admin(), reason="tests do not have iRODS admin access"
)
Expand Down Expand Up @@ -228,11 +227,20 @@ def initialize_mlwh_ont_synthetic(session: Session):

num_samples = 200
for s in range(1, num_samples + 1):
sid = f"sample{s}"
lims_id = f"sample{s}"
name = f"sample {s}"
donor_id = (f"donor {s}",)
accession = f"ACC{s}"
supplier_name = f"supplier_sample {s}"
samples.append(
Sample(
id_lims="LIMS_01", id_sample_lims=sid, name=name, **default_timestamps
accession_number=accession,
donor_id=donor_id,
id_lims="LIMS_01",
id_sample_lims=lims_id,
name=name,
supplier_name=supplier_name,
**default_timestamps,
)
)
session.add_all(samples)
Expand Down
18 changes: 9 additions & 9 deletions tests/test_illumina.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ def test_updates_absent_metadata(
AVU(TrackedStudy.ID, "4000"),
AVU(TrackedStudy.NAME, "Study A"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_name1"),
]
Expand Down Expand Up @@ -67,7 +67,7 @@ def test_updates_present_metadata(
AVU(TrackedStudy.ID, "4000"),
AVU(TrackedStudy.NAME, "Study A"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_name1"),
]
Expand Down Expand Up @@ -104,7 +104,7 @@ def test_updates_changed_metadata(
AVU(TrackedStudy.ID, "4000"),
AVU(TrackedStudy.NAME, "Study A"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_name1"),
]
Expand Down Expand Up @@ -161,7 +161,7 @@ def test_updates_absent_metadata_mx(
AVU(TrackedStudy.ID, "4000"),
AVU(TrackedStudy.NAME, "Study A"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_name1"),
]
Expand Down Expand Up @@ -208,8 +208,8 @@ def test_updates_absent_metadata_mx_tag0(
AVU(TrackedStudy.NAME, "Study A"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.DONOR_ID, "donor2"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sanger_sample2"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.ID, "sample2"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.NAME, "sample 2"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_name1"),
Expand Down Expand Up @@ -242,8 +242,8 @@ def test_updates_control_metadata_mx_tag0(
AVU(TrackedStudy.NAME, "Control Study"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.DONOR_ID, "donor2"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sanger_sample2"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.ID, "sample2"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.NAME, "sample 2"),
AVU(TrackedSample.NAME, "Phi X"),
Expand Down Expand Up @@ -296,7 +296,7 @@ def test_updates_present_study_permissions(
AVU(TrackedStudy.ID, "4000"),
AVU(TrackedStudy.NAME, "Study A"),
AVU(TrackedSample.DONOR_ID, "donor1"),
AVU(TrackedSample.ID, "sanger_sample1"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_name1"),
]
Expand Down
16 changes: 16 additions & 0 deletions tests/test_ont.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,17 @@
#
# @author Keith James <kdj@sanger.ac.uk>


from partisan.irods import AC, AVU, Collection, DataObject, Permission, format_timestamp

from pytest import mark as m

from datetime import datetime
from npg_irods import ont
from conftest import LATEST, ont_tag_identifier, tests_have_admin, history_in_meta
from npg_irods.metadata.lims import TrackedSample, TrackedStudy
from npg_irods.metadata.common import SeqConcept

from npg_irods.ont import MetadataUpdate, annotate_results_collection


Expand All @@ -47,7 +50,11 @@ def test_add_new_sample_metadata(self, ont_synthetic_irods, ont_synthetic_mlwh):

coll = Collection(path)
for avu in [
AVU(TrackedSample.ACCESSION_NUMBER, "ACC1"),
AVU(TrackedSample.DONOR_ID, "donor 1"),
AVU(TrackedSample.ID, "sample1"),
AVU(TrackedSample.NAME, "sample 1"),
AVU(TrackedSample.SUPPLIER_NAME, "supplier_sample 1"),
AVU(TrackedStudy.ID, "2000"),
AVU(TrackedStudy.NAME, "Study Y"),
]:
Expand Down Expand Up @@ -109,7 +116,11 @@ def test_add_new_plex_sample_metadata(
bc_coll = Collection(path / subcoll / ont.barcode_name_from_id(tag_id))

for avu in [
AVU(TrackedSample.ACCESSION_NUMBER, f"ACC{tag_index}"),
AVU(TrackedSample.DONOR_ID, f"donor {tag_index}"),
AVU(TrackedSample.ID, f"sample{tag_index}"),
AVU(TrackedSample.NAME, f"sample {tag_index}"),
AVU(TrackedSample.SUPPLIER_NAME, f"supplier_sample {tag_index}"),
AVU(TrackedStudy.ID, "3000"),
AVU(TrackedStudy.NAME, "Study Z"),
]:
Expand Down Expand Up @@ -269,7 +280,9 @@ def test_updates_absent_metadata(self, ont_synthetic_irods, ont_synthetic_mlwh):
update = MetadataUpdate(
experiment_name="simple_experiment_001", instrument_slot=1
)

update.update_secondary_metadata(mlwh_session=ont_synthetic_mlwh)

assert AVU(TrackedSample.NAME, "sample 1") in coll.metadata()

@m.context("When correct metadata is already present")
Expand All @@ -283,7 +296,9 @@ def test_updates_present_metadata(self, ont_synthetic_irods, ont_synthetic_mlwh)
update = MetadataUpdate(
experiment_name="simple_experiment_001", instrument_slot=1
)

update.update_secondary_metadata(mlwh_session=ont_synthetic_mlwh)

assert AVU(TrackedSample.NAME, "sample 1") in coll.metadata()

@m.context("When incorrect metadata is present")
Expand All @@ -297,6 +312,7 @@ def test_updates_changed_metadata(self, ont_synthetic_irods, ont_synthetic_mlwh)
update = MetadataUpdate(
experiment_name="simple_experiment_001", instrument_slot=1
)

update.update_secondary_metadata(mlwh_session=ont_synthetic_mlwh)
assert AVU(TrackedSample.NAME, "sample 1") in coll.metadata()
assert AVU(TrackedSample.NAME, "sample 0") not in coll.metadata()
Expand Down

0 comments on commit 35687b8

Please sign in to comment.