Skip to content

Commit ba708bd

Browse files
benjefferymergify-bot
authored andcommitted
Replace interval numbers with attr names
1 parent 40159b6 commit ba708bd

13 files changed

+135
-127
lines changed

python/tests/test_combinatorics.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1169,11 +1169,11 @@ def verify_tree_sequence_splits(self, ts):
11691169
resolved_ts = binary_tree.tree_sequence
11701170
assert resolved_ts.sequence_length == ts.sequence_length
11711171
assert resolved_ts.num_trees <= 3
1172-
if tree.interval[0] == 0:
1172+
if tree.interval.left == 0:
11731173
assert resolved_ts.num_trees == 2
11741174
null_tree = resolved_ts.last()
11751175
assert null_tree.num_roots == ts.num_samples
1176-
elif tree.interval[1] == ts.sequence_length:
1176+
elif tree.interval.right == ts.sequence_length:
11771177
assert resolved_ts.num_trees == 2
11781178
null_tree = resolved_ts.first()
11791179
assert null_tree.num_roots == ts.num_samples

python/tests/test_haplotype_matching.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -765,9 +765,9 @@ def traceback(self):
765765

766766
rr_index = len(self.recombination_required) - 1
767767
for site in reversed(self.ts.sites()):
768-
while tree.interval[0] > site.position:
768+
while tree.interval.left > site.position:
769769
tree.prev()
770-
assert tree.interval[0] <= site.position < tree.interval[1]
770+
assert tree.interval.left <= site.position < tree.interval.right
771771

772772
# Fill in the recombination tree
773773
j = rr_index

python/tests/test_highlevel.py

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -135,8 +135,8 @@ def get_gap_examples():
135135
ts = insert_gap(ts, x, gap)
136136
found = False
137137
for t in ts.trees():
138-
if t.interval[0] == x:
139-
assert t.interval[1] == x + gap
138+
if t.interval.left == x:
139+
assert t.interval.right == x + gap
140140
assert len(t.parent_dict) == 0
141141
found = True
142142
assert found
@@ -638,7 +638,7 @@ def verify_edge_diffs(self, ts):
638638
edge_ids.append(edge.id)
639639
assert edge == ts.edge(edge.id)
640640
children[edge.parent].add(edge.child)
641-
while tree.interval[1] <= left:
641+
while tree.interval.right <= left:
642642
tree = next(trees)
643643
assert left >= tree.interval.left
644644
assert right <= tree.interval.right
@@ -729,7 +729,9 @@ def test_breakpoints(self):
729729
for ts in get_example_tree_sequences():
730730
breakpoints = ts.breakpoints(as_array=True)
731731
assert breakpoints.shape == (ts.num_trees + 1,)
732-
other = np.fromiter(iter([0] + [t.interval[1] for t in ts.trees()]), float)
732+
other = np.fromiter(
733+
iter([0] + [t.interval.right for t in ts.trees()]), float
734+
)
733735
assert np.array_equal(other, breakpoints)
734736
# in case downstream code has
735737
for j, x in enumerate(ts.breakpoints()):
@@ -2498,7 +2500,7 @@ def test_apis(self):
24982500
assert t1.get_num_mutations() == t1.num_mutations
24992501
assert t1.get_parent_dict() == t1.parent_dict
25002502
assert t1.get_total_branch_length() == t1.total_branch_length
2501-
assert t1.span == t1.interval[1] - t1.interval[0]
2503+
assert t1.span == t1.interval.right - t1.interval.left
25022504
# node properties
25032505
root = t1.get_root()
25042506
for node in t1.nodes():
@@ -2608,15 +2610,15 @@ def test_seek(self):
26082610
for j in range(L):
26092611
tree.seek(j)
26102612
index = tree.index
2611-
assert tree.interval[0] <= j < tree.interval[1]
2612-
tree.seek(tree.interval[0])
2613+
assert tree.interval.left <= j < tree.interval.right
2614+
tree.seek(tree.interval.left)
26132615
assert tree.index == index
2614-
if tree.interval[1] < L:
2615-
tree.seek(tree.interval[1])
2616+
if tree.interval.right < L:
2617+
tree.seek(tree.interval.right)
26162618
assert tree.index == index + 1
26172619
for j in reversed(range(L)):
26182620
tree.seek(j)
2619-
assert tree.interval[0] <= j < tree.interval[1]
2621+
assert tree.interval.left <= j < tree.interval.right
26202622
for bad_position in [-1, L, L + 1, -L]:
26212623
with pytest.raises(ValueError):
26222624
tree.seek(bad_position)
@@ -2628,9 +2630,9 @@ def test_interval(self):
26282630
assert breakpoints[0] == 0
26292631
assert breakpoints[-1] == ts.sequence_length
26302632
for i, tree in enumerate(ts.trees()):
2631-
assert tree.interval[0] == pytest.approx(breakpoints[i])
26322633
assert tree.interval.left == pytest.approx(breakpoints[i])
2633-
assert tree.interval[1] == pytest.approx(breakpoints[i + 1])
2634+
assert tree.interval.left == pytest.approx(breakpoints[i])
2635+
assert tree.interval.right == pytest.approx(breakpoints[i + 1])
26342636
assert tree.interval.right == pytest.approx(breakpoints[i + 1])
26352637
assert tree.interval.span == pytest.approx(
26362638
breakpoints[i + 1] - breakpoints[i]

python/tests/test_ibd.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ def get_ibd(
106106
prev_dict = t.get_parent_dict()
107107

108108
for interval in interval_list:
109-
if min_length == 0 or interval[1] - interval[0] > min_length:
109+
if min_length == 0 or interval.right - interval.left > min_length:
110110
orig_id = node_map.index(node_id)
111111
ibd_list.append(ibd.Segment(interval[0], interval[1], orig_id))
112112

python/tests/test_phylo_formats.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -283,8 +283,8 @@ def verify_nexus_topology(self, treeseq):
283283
assert len(split_name) == 2
284284
start = float(split_name[0][4:])
285285
end = float(split_name[1])
286-
self.assertAlmostEqual(tree.interval[0], start)
287-
self.assertAlmostEqual(tree.interval[1], end)
286+
self.assertAlmostEqual(tree.interval.left, start)
287+
self.assertAlmostEqual(tree.interval.right, end)
288288

289289
self.verify_tree(nexus_tree, tree)
290290

python/tests/test_stats.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ def naive_genealogical_nearest_neighbours(ts, focal, reference_sets):
356356
]
357357
for _ in range(ts.num_trees):
358358
trees = list(map(next, tree_iters))
359-
length = trees[0].interval[1] - trees[0].interval[0]
359+
length = trees[0].interval.right - trees[0].interval.left
360360
for j, u in enumerate(focal):
361361
focal_node_set = reference_set_map[u]
362362
# delta(u) = 1 if u exists in any of the reference sets; 0 otherwise
@@ -687,7 +687,7 @@ def exact_genealogical_nearest_neighbours(ts, focal, reference_sets):
687687
v = trees[0].parent(v)
688688
if v != tskit.NULL:
689689
# The length is only reported where the statistic is defined.
690-
L[trees[0].index] = trees[0].interval[1] - trees[0].interval[0]
690+
L[trees[0].index] = trees[0].interval.right - trees[0].interval.left
691691
for k, tree in enumerate(trees):
692692
# If the focal node is in the current set, we subtract its
693693
# contribution from the numerator
@@ -763,8 +763,8 @@ def verify(self, ts, reference_sets, focal=None):
763763

764764
G, lefts, rights = local_gnn(ts, focal, reference_sets)
765765
for tree in ts.trees():
766-
assert lefts[tree.index] == tree.interval[0]
767-
assert rights[tree.index] == tree.interval[1]
766+
assert lefts[tree.index] == tree.interval.left
767+
assert rights[tree.index] == tree.interval.right
768768

769769
for j, u in enumerate(focal):
770770
T, L = exact_genealogical_nearest_neighbours(ts, u, reference_sets)

python/tests/test_topology.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1036,14 +1036,14 @@ def ts_kc_distance(ts1, ts2, lambda_=0):
10361036
tree1_iter = ts1.trees(sample_lists=True)
10371037
tree1 = next(tree1_iter)
10381038
for tree2 in ts2.trees(sample_lists=True):
1039-
while tree1.interval[1] < tree2.interval[1]:
1040-
span = tree1.interval[1] - left
1039+
while tree1.interval.right < tree2.interval.right:
1040+
span = tree1.interval.right - left
10411041
total += tree1.kc_distance(tree2, lambda_) * span
10421042

1043-
left = tree1.interval[1]
1043+
left = tree1.interval.right
10441044
tree1 = next(tree1_iter)
1045-
span = tree2.interval[1] - left
1046-
left = tree2.interval[1]
1045+
span = tree2.interval.right - left
1046+
left = tree2.interval.right
10471047
total += tree1.kc_distance(tree2, lambda_) * span
10481048

10491049
return total / ts1.sequence_length
@@ -1167,7 +1167,7 @@ def check_kc_tree_sequence_inputs(ts1, ts2):
11671167
tree1_iter = ts1.trees(sample_lists=True)
11681168
tree1 = next(tree1_iter)
11691169
for tree2 in ts2.trees(sample_lists=True):
1170-
while tree1.interval[1] < tree2.interval[1]:
1170+
while tree1.interval.right < tree2.interval.right:
11711171
check_kc_tree_inputs(tree1, tree2)
11721172
tree1 = next(tree1_iter)
11731173
check_kc_tree_inputs(tree1, tree2)
@@ -2260,7 +2260,10 @@ def test_many_trees(self):
22602260
redundant_t = next(redundant_trees)
22612261
comparisons = 0
22622262
for t in ts.trees():
2263-
while redundant_t is not None and redundant_t.interval[1] <= t.interval[1]:
2263+
while (
2264+
redundant_t is not None
2265+
and redundant_t.interval.right <= t.interval.right
2266+
):
22642267
assert t.parent_dict == redundant_t.parent_dict
22652268
comparisons += 1
22662269
redundant_t = next(redundant_trees, None)
@@ -5018,8 +5021,8 @@ def verify_multiroot_internal_samples(self, ts, keep_unary=False):
50185021
trees2 = ts2.trees()
50195022
t2 = next(trees2)
50205023
for t1 in ts1.trees():
5021-
assert t2.interval[0] <= t1.interval[0]
5022-
assert t2.interval[1] >= t1.interval[1]
5024+
assert t2.interval.left <= t1.interval.left
5025+
assert t2.interval.right >= t1.interval.right
50235026
pairs = itertools.combinations(ts1.samples(), 2)
50245027
for pair in pairs:
50255028
mapped_pair = [node_map[u] for u in pair]
@@ -5029,7 +5032,7 @@ def verify_multiroot_internal_samples(self, ts, keep_unary=False):
50295032
assert mrca2 == tskit.NULL
50305033
else:
50315034
assert node_map[mrca1] == mrca2
5032-
if t2.interval[1] == t1.interval[1]:
5035+
if t2.interval.right == t1.interval.right:
50335036
t2 = next(trees2, None)
50345037

50355038
def test_single_tree(self):
@@ -6184,9 +6187,9 @@ def verify(self, ts, sample_nodes, ancestral_nodes):
61846187
):
61856188
# Loop through trees.
61866189
for tree in ts.trees():
6187-
if tree.interval[0] >= current_right:
6190+
if tree.interval.left >= current_right:
61886191
break
6189-
while tree.interval[1] <= current_left:
6192+
while tree.interval.right <= current_left:
61906193
tree.next()
61916194
# Check that the most recent ancestor of the descendants is the
61926195
# current_ancestor.
@@ -7796,7 +7799,7 @@ def verify_ltrim(self, source_ts, trimmed_ts):
77967799
assert source_tree.parent_dict == trimmed_tree.parent_dict
77977800
self.assertAlmostEqual(source_tree.span, trimmed_tree.span)
77987801
self.assertAlmostEqual(
7799-
source_tree.interval[0], trimmed_tree.interval[0] + deleted_span
7802+
source_tree.interval.left, trimmed_tree.interval.left + deleted_span
78007803
)
78017804
self.verify_sites(source_tree, trimmed_tree, deleted_span)
78027805

@@ -8063,7 +8066,7 @@ def ts_missing_middle(self):
80638066
def test_is_isolated(self):
80648067
ts, missing_from, missing_to = self.ts_missing_middle()
80658068
for tree in ts.trees():
8066-
if tree.interval[1] > missing_from and tree.interval[0] < missing_to:
8069+
if tree.interval.right > missing_from and tree.interval.left < missing_to:
80678070
assert tree.is_isolated(0)
80688071
assert not tree.is_isolated(1)
80698072
else:

0 commit comments

Comments
 (0)