示例#1
0
    def test_toplevels(self):
        timeline_container = common.create_timeline_container()
        timeline = timeline_container.timeline
        clip1, clip2, clip3, clip4 = self.add_clips_simple(timeline, 4)

        selection = Selection()

        selection.set_selection([clip1, clip2, clip3, clip4], SELECT)
        self.assertSetEqual(selection.toplevels, {clip1, clip2, clip3, clip4})

        group1 = GES.Container.group([clip1, clip2])
        group1.props.serialize = True
        self.assertSetEqual(selection.toplevels, {group1, clip3, clip4})

        group2 = GES.Container.group([group1, clip3])
        group2.props.serialize = True
        self.assertSetEqual(selection.toplevels, {group2, clip4})

        group1.props.serialize = True
        group1.props.serialize = False
        self.assertSetEqual(selection.toplevels, {group2, clip4})

        group1.props.serialize = False
        group2.props.serialize = False
        self.assertSetEqual(selection.toplevels, {clip1, clip2, clip3, clip4})

        group1.props.serialize = True
        group2.props.serialize = False
        self.assertSetEqual(selection.toplevels, {group1, clip3, clip4})
示例#2
0
 def test_bool_evaluation(self):
     clip1 = mock.MagicMock()
     selection = Selection()
     self.assertFalse(selection)
     selection.set_selection([clip1], SELECT)
     self.assertTrue(selection)
     selection.set_selection([clip1], SELECT_ADD)
     self.assertTrue(selection)
     selection.set_selection([clip1], UNSELECT)
     self.assertFalse(selection)
示例#3
0
    def test_can_group_ungroup(self):
        timeline_container = common.create_timeline_container()
        timeline = timeline_container.timeline
        clip1, clip2 = self.add_clips_simple(timeline, 2)

        selection = Selection()
        self.assertFalse(selection.can_group)
        self.assertFalse(selection.can_ungroup)

        selection.set_selection([clip1], SELECT)
        self.assertFalse(selection.can_group)
        self.assertTrue(selection.can_ungroup)

        selection.set_selection([clip2], SELECT_ADD)
        self.assertTrue(selection.can_group)
        self.assertFalse(selection.can_ungroup)

        selection.set_selection([], SELECT)
        self.assertFalse(selection.can_group)
        self.assertFalse(selection.can_ungroup)
示例#4
0
    def test_get_single_clip(self):
        selection = Selection()
        clip1 = common.create_test_clip(GES.UriClip)
        clip2 = common.create_test_clip(GES.TitleClip)

        # Selection empty.
        self.assertIsNone(selection.get_single_clip())
        self.assertIsNone(selection.get_single_clip(GES.UriClip))
        self.assertIsNone(selection.get_single_clip(GES.TitleClip))

        selection.set_selection([clip1], SELECT)
        self.assertEqual(selection.get_single_clip(), clip1)
        self.assertEqual(selection.get_single_clip(GES.UriClip), clip1)
        self.assertIsNone(selection.get_single_clip(GES.TitleClip))

        selection.set_selection([clip2], SELECT)
        self.assertEqual(selection.get_single_clip(), clip2)
        self.assertIsNone(selection.get_single_clip(GES.UriClip))
        self.assertEqual(selection.get_single_clip(GES.TitleClip), clip2)

        selection.set_selection([clip1, clip2], SELECT)
        self.assertIsNone(selection.get_single_clip())
        self.assertIsNone(selection.get_single_clip(GES.UriClip))
        self.assertIsNone(selection.get_single_clip(GES.TitleClip))