Пример #1
0
    def test_to_praat_overlapping_intervals(self):
        int1 = Interval(0.25, 0.35, 'a')
        int2 = Interval(0.3, 0.4, 'a')
        tier = IntervalTier('abc', 0.25, 1, [int1, int2])

        with assert_raises(ValueError):
            tier.to_praat()
Пример #2
0
    def test_to_praat_overlapping_intervals(self):
        int1 = Interval(0.25, 0.35, 'a')
        int2 = Interval(0.3, 0.4, 'a')
        tier = IntervalTier('abc', 0.25, 1, [int1, int2])

        with assert_raises(ValueError):
            tier.to_praat()
Пример #3
0
    def test_to_dict(self):
        interval = Interval(0.35, 0.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        assert_equal(tier.to_dict(), {'xmin': 0.25,
                                      'xmax': 1,
                                      'name': 'abc',
                                      'class': 'IntervalTier',
                                      'intervals': [{'xmin': 0.35,
                                                     'xmax': 0.5,
                                                     'text': 'a'}]})
Пример #4
0
    def test_insert(self):
        int1 = Interval(0, 0.5, 'a')
        int2 = Interval(0.75, 1, 'c')
        tier = IntervalTier('abc', 0, 1, [int1, int2])

        tier.insert(0.5, 0.75, 'b')

        assert_is(tier[0], int1)
        assert_is(tier[2], int2)

        assert_equal(tier[1].xmin, 0.5)
        assert_equal(tier[1].xmax, 0.75)
        assert_equal(tier[1].text, 'b')
Пример #5
0
    def test_insert(self):
        int1 = Interval(0, 0.5, 'a')
        int2 = Interval(0.75, 1, 'c')
        tier = IntervalTier('abc', 0, 1, [int1, int2])

        tier.insert(0.5, 0.75, 'b')

        assert_is(tier[0], int1)
        assert_is(tier[2], int2)

        assert_equal(tier[1].xmin, 0.5)
        assert_equal(tier[1].xmax, 0.75)
        assert_equal(tier[1].text, 'b')
Пример #6
0
    def test_to_praat(self):
        interval = Interval(0.35, 0.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        expected = ('"IntervalTier" named "abc" \n'
                    'From 0.25 to 1 seconds with 3 intervals\n'
                    '                    0.25                    0.35    '
                    '"" \n'
                    '                    0.35                     0.5    '
                    '"a" \n'
                    '                     0.5                       1    '
                    '"" ')

        assert_equal(tier.to_praat(), expected)
Пример #7
0
    def test_to_praat(self):
        interval = Interval(0.35, 0.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        expected = ('"IntervalTier" named "abc" \n'
                    'From 0.25 to 1 seconds with 3 intervals\n'
                    '                    0.25                    0.35    '
                    '"" \n'
                    '                    0.35                     0.5    '
                    '"a" \n'
                    '                     0.5                       1    '
                    '"" ')

        assert_equal(tier.to_praat(), expected)
Пример #8
0
    def test_to_dict(self):
        interval = Interval(0.35, 0.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        assert_equal(
            tier.to_dict(), {
                'xmin': 0.25,
                'xmax': 1,
                'name': 'abc',
                'class': 'IntervalTier',
                'intervals': [{
                    'xmin': 0.35,
                    'xmax': 0.5,
                    'text': 'a'
                }]
            })
Пример #9
0
    def test_str(self):
        int1 = Interval(0, 0.5, 'a')
        int2 = Interval(0.75, 1, 'c')
        tier = IntervalTier('abc', 0, 1, [int1, int2])

        assert_equal(
            str(tier), '<IntervalTier "abc" from 0 to 1 seconds '
            'with 2 intervals>')
Пример #10
0
    def test_repr(self):
        int1 = Interval(0, 0.5, 'a')
        int2 = Interval(0.75, 1, 'c')
        tier = IntervalTier('abc', 0, 1, [int1, int2])

        assert_equal(
            repr(tier), "IntervalTier('abc', 0, 1, "
            "[Interval(0, 0.5, 'a'), "
            "Interval(0.75, 1, 'c')])")
Пример #11
0
    def test_where(self):
        int1 = Interval(0, 0.5, 'a')
        int2 = Interval(0.5, 0.6, 'b')
        int3 = Interval(0.75, 1, 'c')
        tier = IntervalTier('abc', 0, 1, [int1, int2, int3])

        assert_is(tier.where(0), int1)
        assert_is(tier.where(0.25), int1)

        assert_is(tier.where(0.5), int2)
        assert_is(tier.where(0.55), int2)

        assert_is_none(tier.where(0.6))
        assert_is_none(tier.where(0.65))

        assert_is(tier.where(0.75), int3)
        assert_is(tier.where(0.8), int3)

        assert_is_none(tier.where(1))
Пример #12
0
    def test_from_reader(self, IntervalMock):
        IntervalMock.from_reader.return_value = 'an interval'

        stream = iter(['abc', 0, 1, 2])

        tier = IntervalTier.from_reader(stream)

        assert_equal(tier.name, 'abc')
        assert_equal(tier.xmin, 0)
        assert_equal(tier.xmax, 1)
        assert_equal(tier._items, ['an interval', 'an interval'])
Пример #13
0
    def test_from_reader(self, IntervalMock):
        IntervalMock.from_reader.return_value = 'an interval'

        stream = iter(['abc', 0, 1, 2])

        tier = IntervalTier.from_reader(stream)

        assert_equal(tier.name, 'abc')
        assert_equal(tier.xmin, 0)
        assert_equal(tier.xmax, 1)
        assert_equal(tier._items, ['an interval', 'an interval'])
Пример #14
0
    def test_where_out_of_bounds(self):
        interval = Interval(0.35, 0.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        assert_is_none(tier.where(0.1))
        assert_is_none(tier.where(1.5))
Пример #15
0
    def test_where_out_of_bounds(self):
        interval = Interval(0.35, 0.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        assert_is_none(tier.where(0.1))
        assert_is_none(tier.where(1.5))
Пример #16
0
    def test_where(self):
        int1 = Interval(0, 0.5, 'a')
        int2 = Interval(0.5, 0.6, 'b')
        int3 = Interval(0.75, 1, 'c')
        tier = IntervalTier('abc', 0, 1, [int1, int2, int3])

        assert_is(tier.where(0), int1)
        assert_is(tier.where(0.25), int1)

        assert_is(tier.where(0.5), int2)
        assert_is(tier.where(0.55), int2)

        assert_is_none(tier.where(0.6))
        assert_is_none(tier.where(0.65))

        assert_is(tier.where(0.75), int3)
        assert_is(tier.where(0.8), int3)

        assert_is_none(tier.where(1))
Пример #17
0
    def test_to_praat_late_interval(self):
        interval = Interval(0.25, 1.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        with assert_raises(ValueError):
            tier.to_praat()
Пример #18
0
    def test_to_praat_late_interval(self):
        interval = Interval(0.25, 1.5, 'a')
        tier = IntervalTier('abc', 0.25, 1, [interval])

        with assert_raises(ValueError):
            tier.to_praat()