Skip to content

Commit

Permalink
test(bi): check bilateral data generation method
Browse files Browse the repository at this point in the history
Related: #65
  • Loading branch information
rmnldwg committed Dec 29, 2023
1 parent 5bdfc68 commit 770bc57
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions tests/binary_bilateral_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -280,3 +280,33 @@ def test_risk(self):
)
self.assertLessEqual(risk, 1.)
self.assertGreaterEqual(risk, 0.)


class DataGenerationTestCase(fixtures.BilateralModelMixin, unittest.TestCase):
"""Check the binary model's data generation method."""

def setUp(self):
super().setUp()
self.model.modalities = fixtures.MODALITIES
self.init_diag_time_dists(early="frozen", late="parametric")
self.model.assign_params(**self.create_random_params())

def test_generate_data(self):
"""Check bilateral data generation."""
dataset = self.model.draw_patients(
num=10000,
stage_dist=[0.5, 0.5],
rng=self.rng,
)

for mod in self.model.modalities.keys():
self.assertIn(mod, dataset)
for side in ["ipsi", "contra"]:
self.assertIn(side, dataset[mod])
for lnl in self.model.ipsi.graph.lnls.keys():
self.assertIn(lnl, dataset[mod][side])

self.assertAlmostEqual(
(dataset["tumor", "1", "t_stage"] == "early").mean(), 0.5,
delta=0.02
)

0 comments on commit 770bc57

Please sign in to comment.