2
2
import numpy as np
3
3
4
4
5
- def setup_ts ():
5
+ def setup_ts_without_schema ():
6
6
ts = tskit .TreeSequence .load ("with_json_metadata.trees" )
7
+ return ts
8
+
9
+
10
+ def setup_ts_with_schema ():
11
+ ts = setup_ts_without_schema ()
7
12
tables = ts .tables
8
13
tables .individuals .metadata_schema = tskit .metadata .MetadataSchema (
9
14
{
@@ -30,17 +35,37 @@ def test_individual_metadata():
30
35
# NOTE: the assertions here rely on knowing
31
36
# what examples/json_metadata.rs put into the
32
37
# metadata!
33
- ts = setup_ts ()
38
+ ts = setup_ts_with_schema ()
34
39
md = ts .individual (0 ).metadata
35
40
assert md ["name" ] == "Jerome"
36
41
assert md ["phenotypes" ] == [0 , 1 , 2 , 0 ]
37
42
38
43
44
+ def test_individual_metadata_without_schema ():
45
+ # NOTE: the assertions here rely on knowing
46
+ # what examples/json_metadata.rs put into the
47
+ # metadata!
48
+ ts = setup_ts_without_schema ()
49
+ md = eval (ts .individual (0 ).metadata )
50
+ assert md ["name" ] == "Jerome"
51
+ assert md ["phenotypes" ] == [0 , 1 , 2 , 0 ]
52
+
53
+
39
54
def test_mutation_metadata ():
40
55
# NOTE: the assertions here rely on knowing
41
56
# what examples/json_metadata.rs put into the
42
57
# metadata!
43
- ts = setup_ts ()
58
+ ts = setup_ts_with_schema ()
44
59
md = ts .mutation (0 ).metadata
45
60
assert np .isclose (md ["effect_size" ], - 1e-3 )
46
61
assert np .isclose (md ["dominance" ], 0.1 )
62
+
63
+
64
+ def test_mutation_metadata_without_schema ():
65
+ # NOTE: the assertions here rely on knowing
66
+ # what examples/json_metadata.rs put into the
67
+ # metadata!
68
+ ts = setup_ts_without_schema ()
69
+ md = eval (ts .mutation (0 ).metadata )
70
+ assert np .isclose (md ["effect_size" ], - 1e-3 )
71
+ assert np .isclose (md ["dominance" ], 0.1 )
0 commit comments