Skip to content

Commit

Permalink
Merge branch 'main' into phenotype-classification-refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
daemontus authored Sep 19, 2024
2 parents ef1d418 + c6b66c2 commit 1d5b697
Showing 1 changed file with 19 additions and 1 deletion.
20 changes: 19 additions & 1 deletion tests/test_classification.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,24 @@ def test_attractor_classification():
mapping = Classification.classify_attractor_bifurcation(stg)
assert len(mapping) == 1 and mapping[Class(["disorder", "stability", "stability"])] == stg.mk_unit_colors()

def test_attractor_bifurcation_with_perturbations():
path = './tests/model-myeloid-witness.aeon'
model_unknown = BooleanNetwork.from_file(path)
model_unknown.set_update_function("GATA1", None)
model_unknown.set_update_function("CEBPa", None)
model_unknown.set_update_function("PU1", None)

pstg = AsynchronousPerturbationGraph(model_unknown)
stg = AsynchronousGraph(model_unknown)
mapping_pstg = Classification.classify_attractor_bifurcation(pstg)
mapping_stg = Classification.classify_attractor_bifurcation(stg)

assert len(mapping_stg) == len(mapping_pstg)

for (cls, colors) in mapping_stg.items():
assert pstg.transfer_from(colors, stg) == mapping_pstg[cls]
for (cls, colors) in mapping_pstg.items():
assert stg.transfer_from(colors, pstg) == mapping_stg[cls]

def test_property_classification():
path = "./tests/model-with-properties.aeon"
Expand Down Expand Up @@ -177,4 +195,4 @@ def test_phenotype_classification():
inner_cls: Class = eval(inner)
for phenotype in inner_cls.feature_list():
phenotype_class = phenotype_class.ensure(phenotype)
assert colors.is_subset(phenotype_mapping[phenotype_class])
assert colors.is_subset(phenotype_mapping[phenotype_class])

0 comments on commit 1d5b697

Please sign in to comment.