Esempio n. 1
0
    def test_connecting_span_cyclic(self):
        s1 = Span(10, 20, 100, True)
        s2 = Span(80, 90, 100, True)
        s3 = s1.connecting_span(s2)
        assert s3.a == 20
        assert s3.b == 80

        s4 = s2.connecting_span(s1)
        assert s4.a == 90
        assert s4.b == 10
Esempio n. 2
0
 def test_self_connecting_span(self):
     """The connecting span with a cyclic span should be equivalent to its
     inverse span."""
     s1 = Span(50, 60, 100, True)
     s2 = s1.connecting_span(s1)
     assert s2.a == 60
     assert s2.b == 50
Esempio n. 3
0
 def test_connecting_span_over_origin(self):
     """The connecting span should span the origin."""
     s1 = Span(50, 60, 100, True)
     s2 = Span(5, 30, 100, True)
     s3 = s1.connecting_span(s2)
     assert s3.a == 60
     assert s3.b == 5
Esempio n. 4
0
 def test_connecting_span_consecutive_is_empty(self):
     """The connecting span between two consecutive spans is empty."""
     s1 = Span(10, 30, 100, True)
     s2 = Span(30, 50, 100, True)
     assert not s1.overlaps_with(s2)
     s3 = s1.connecting_span(s2)
     assert len(s3) == 0
Esempio n. 5
0
 def test_connecting_span_at_origin(self):
     s1 = Span(50, 60, 100, True)
     s2 = Span(0, 30, 100, True)
     s3 = s1.connecting_span(s2)
     assert s3.a == 60
     assert s3.b == 0
Esempio n. 6
0
 def test_connecting_span(self):
     s1 = Span(20, 50, 100, False)
     s2 = Span(60, 75, 100, False)
     s3 = s1.connecting_span(s2)
     assert s3.a == 50
     assert s3.b == 60
Esempio n. 7
0
 def test_connecting_span_linear_no_span(self):
     s1 = Span(10, 99, 100, False)
     s2 = Span(0, 10, 100, False)
     s3 = s1.connecting_span(s2)
     assert s3 is None
Esempio n. 8
0
 def test_connecting_span_with_overlap(self):
     """There is no connecting span with overlapping spans."""
     s1 = Span(10, 30, 100, True)
     s2 = Span(20, 50, 100, True)
     assert not s1.connecting_span(s2)