Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 19 additions & 15 deletions civicpy/exports/civic_gks_record.py
Original file line number Diff line number Diff line change
Expand Up @@ -404,22 +404,26 @@ def get_extensions(molecular_profile: MolecularProfile) -> list[Extension]:

if isinstance(variant.coordinates, Coordinate):
coords = variant.coordinates
extensions.append(
Extension(
name="CIViC representative coordinate",
value={
"chromosome": coords.chromosome,
"start": coords.start,
"stop": coords.stop,
"reference_bases": coords.reference_bases,
"variant_bases": coords.variant_bases,
"ensembl_version": coords.ensembl_version,
"representative_transcript": coords.representative_transcript,
"reference_build": coords.reference_build,
"type": coords.type,
},
ext_value = {
"chromosome": coords.chromosome,
"start": coords.start,
"stop": coords.stop,
"reference_bases": coords.reference_bases,
"variant_bases": coords.variant_bases,
"ensembl_version": coords.ensembl_version,
"representative_transcript": coords.representative_transcript,
"reference_build": coords.reference_build,
"type": coords.type,
}

if all(v is not None for v in ext_value.values()):
extensions.append(
Extension(
name="CIViC representative coordinate",
value=ext_value,
)
)
)

return extensions


Expand Down
14 changes: 14 additions & 0 deletions civicpy/tests/test_exports.py
Original file line number Diff line number Diff line change
Expand Up @@ -715,6 +715,20 @@ def test_na_clinvar_mapping(self, v600e_mp):
for m in mappings
)

def test_no_representative_coordiantes(self):
"""Test that empty representative coordinates do not get an extension"""
gks_mp = CivicGksMolecularProfile(civic.get_molecular_profile_by_id(2261))
assert gks_mp.extensions
rep_coord_ext = next(
(
ext
for ext in gks_mp.extensions
if ext.name == "CIViC representative coordinate"
),
None,
)
assert rep_coord_ext is None


class TestCivicGksTherapyGroup(object):
"""Test that CivicGksTherapyGroup works as expected"""
Expand Down
Loading