[pitivi: 15/65] tests: Fully pep8 compliant
- From: Thibault Saunier <tsaunier src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pitivi: 15/65] tests: Fully pep8 compliant
- Date: Mon, 4 Jul 2011 01:20:29 +0000 (UTC)
commit 8cb36618106d865073d268d3aeaf1f21d89e2967
Author: Thibault Saunier <thibault saunier collabora com>
Date: Wed Jun 22 01:21:49 2011 -0400
tests: Fully pep8 compliant
docs/makeChangelog.py | 1 +
tests/common.py | 15 ++-
tests/runtests.py | 9 +-
tests/test_action.py | 5 +-
tests/test_alpha_passthrough.py | 12 ++-
tests/test_basic.py | 1 +
tests/test_binary_search.py | 1 +
tests/test_cache.py | 1 +
tests/test_common.py | 1 +
tests/test_discoverer.py | 10 ++
tests/test_encode.py | 4 +-
tests/test_etree_formatter.py | 12 ++-
tests/test_factories_base.py | 5 +
tests/test_factories_file.py | 23 +++--
tests/test_factories_operation.py | 1 +
tests/test_gap.py | 1 +
tests/test_integration.py | 188 +++++++++++++++++++-----------------
tests/test_pipeline.py | 4 +
tests/test_pipeline_action.py | 3 +-
tests/test_projectmanager.py | 8 +-
tests/test_seeker.py | 2 +
tests/test_signallable.py | 58 ++++++------
tests/test_sourcelist.py | 1 +
tests/test_still_image.py | 8 +-
tests/test_stream.py | 2 +
tests/test_timeline.py | 58 +++++++-----
tests/test_timeline_factory.py | 7 +-
tests/test_timeline_undo.py | 9 ++
tests/test_track.py | 10 +-
tests/test_transitions.py | 17 +--
tests/test_undo.py | 9 ++
tests/test_utils.py | 1 +
tests/testcomplex.py | 12 ++-
33 files changed, 297 insertions(+), 202 deletions(-)
---
diff --git a/docs/makeChangelog.py b/docs/makeChangelog.py
index cd6acf7..c736f35 100755
--- a/docs/makeChangelog.py
+++ b/docs/makeChangelog.py
@@ -8,6 +8,7 @@ import subprocess
# Arguments : same as for git log
+
def process_commit(lines, files):
# DATE NAME
# BLANK LINE
diff --git a/tests/common.py b/tests/common.py
index 1d68ce1..8ea84fb 100644
--- a/tests/common.py
+++ b/tests/common.py
@@ -14,6 +14,7 @@ from pitivi.pipeline import Pipeline
detect_leaks = os.environ.get("PITIVI_TEST_DETECT_LEAKS", "1") not in ("0", "")
+
class TestCase(unittest.TestCase):
_tracked_types = (gst.MiniObject, gst.Element, gst.Pad, gst.Caps,
ObjectFactory, Pipeline)
@@ -81,6 +82,7 @@ class TestCase(unittest.TestCase):
self._result = result
unittest.TestCase.run(self, result)
+
# Some fake factories
class FakeSourceFactory(SourceFactory):
def __init__(self, factoryname="fakesrc", *args, **kwargs):
@@ -93,17 +95,19 @@ class FakeSourceFactory(SourceFactory):
def _releaseBin(self, bin):
pass
+
class FakeSinkFactory(SinkFactory):
def __init__(self, factoryname="fakesink", *args, **kwargs):
SinkFactory.__init__(self, *args, **kwargs)
- self.__factoryname=factoryname
+ self.__factoryname = factoryname
def _makeBin(self, output_stream=None):
return gst.element_factory_make(self.__factoryname)
+
class FakeGnlFactory(SourceFactory):
- def __init__(self, duration=10*gst.SECOND, media_duration=10*gst.SECOND,
+ def __init__(self, duration=10 * gst.SECOND, media_duration=10 * gst.SECOND,
*args, **kwargs):
self.__duration = duration
self.__media_duration = media_duration
@@ -114,13 +118,14 @@ class FakeGnlFactory(SourceFactory):
gnl = gst.element_factory_make("gnlsource")
vs = gst.element_factory_make("videotestsrc")
gnl.add(vs)
- gnl.props.duration=self.__duration
- gnl.props.media_duration=self.__media_duration
+ gnl.props.duration = self.__duration
+ gnl.props.media_duration = self.__media_duration
return gnl
def _releaseBin(self, bin):
pass
+
class SignalMonitor(object):
def __init__(self, obj, *signals):
self.signals = signals
@@ -152,6 +157,7 @@ class SignalMonitor(object):
field = self._getSignalCollectName(name)
setattr(self, field, getattr(self, field, []) + [args[:-1]])
+
class StubFactory(SourceFactory):
def __init__(self):
SourceFactory.__init__(self, "stub://")
@@ -163,6 +169,7 @@ class StubFactory(SourceFactory):
def _releaseBin(self, bin):
pass
+
class FakeEffectFactory(EffectFactory):
def __init__(self):
EffectFactory.__init__(self, 'identity', "identity")
diff --git a/tests/runtests.py b/tests/runtests.py
index 5482f1b..7132efb 100644
--- a/tests/runtests.py
+++ b/tests/runtests.py
@@ -4,10 +4,11 @@ import sys
import unittest
import tests
-SKIP_FILES = ['common', 'runtests'] #They are not testsuites
+SKIP_FILES = ['common', 'runtests'] # They are not testsuites
#Those files need sample files, and therefore shoud not be tested
#when running distcheck
-INTEGRATION_FILES=['test_still_image', 'test_integration']
+INTEGRATION_FILES = ['test_still_image', 'test_integration']
+
def gettestnames(which):
if os.getenv("TEST_INTEGRATION"):
@@ -28,7 +29,7 @@ def gettestnames(which):
suite = unittest.TestSuite()
loader = unittest.TestLoader()
-TEST_CASE=os.getenv("TESTCASE")
+TEST_CASE = os.getenv("TESTCASE")
if TEST_CASE:
suite.addTest(loader.loadTestsFromName(TEST_CASE))
@@ -40,7 +41,7 @@ else:
descriptions = 1
verbosity = 1
-if os.environ.has_key('VERBOSE'):
+if 'VERBOSE' in os.environ:
descriptions = 2
verbosity = 2
from pitivi.log import log
diff --git a/tests/test_action.py b/tests/test_action.py
index f5fefea..fff65cd 100644
--- a/tests/test_action.py
+++ b/tests/test_action.py
@@ -31,10 +31,12 @@ from pitivi.factories.base import ObjectFactory, SourceFactory
from pitivi.encode import RenderSinkFactory, RenderFactory
from pitivi.settings import StreamEncodeSettings, RenderSettings
+
class BinSourceFactory(SourceFactory):
def _makeBin(self, output_stream=None):
return gst.element_factory_make('bin')
+
class TestAction(common.TestCase):
def testBasic(self):
@@ -121,7 +123,6 @@ class TestAction(common.TestCase):
a.removeLink(src, sink)
self.assertEquals(a._links, [])
-
def test_isActive(self):
""" Test isActive() """
ac = Action()
@@ -181,6 +182,7 @@ class TestAction(common.TestCase):
p.release()
+
class TestRenderAction(common.TestCase):
def setUp(self):
@@ -226,7 +228,6 @@ class TestRenderAction(common.TestCase):
a.unsetPipeline()
p.release()
-
def testSimpleStreams(self):
"""Test a RenderSettings with exact stream settings"""
# let's force the video to some unusual size
diff --git a/tests/test_alpha_passthrough.py b/tests/test_alpha_passthrough.py
index 5d0b334..610c7e4 100644
--- a/tests/test_alpha_passthrough.py
+++ b/tests/test_alpha_passthrough.py
@@ -34,11 +34,13 @@ from pitivi.timeline.track import Track, SourceTrackObject, Interpolator
from pitivi.elements.mixer import SmartVideomixerBinPropertyHelper
from pitivi.utils import infinity
+
def set_one_keyframe(track_object, value):
interpolator = track_object.getInterpolator("alpha")
kf = list(interpolator.getKeyframes())[0]
interpolator.setKeyframeValue(kf, value)
+
def set_all_keyframes(track_object, value):
interpolator = track_object.getInterpolator("alpha")
if interpolator is not None:
@@ -49,21 +51,25 @@ def set_all_keyframes(track_object, value):
val = value
interpolator.setKeyframeValue(kf, val)
+
def yuv(fourcc):
caps = gst.Caps("video/x-raw-yuv,format=(fourcc)%s" % fourcc)
return VideoStream(caps)
+
def rgb():
caps = gst.Caps("video/x-raw-rgb,bpp=(int)24,depth=(int)24,"
"endianness=(int)4321,red_mask=(int)16711680,"
"green_mask=(int)65280,blue_mask=(int)255")
return VideoStream(caps)
+
def make_track_object(stream):
factory = VideoTestSourceFactory()
factory.duration = 15 * gst.SECOND
return SourceTrackObject(factory, stream)
+
class TestAlpha(TestCase):
def setUp(self):
# create a pipeline
@@ -89,8 +95,10 @@ class TestAlpha(TestCase):
# make a fakesink for the pipeline and connect it as necessary with a callback
composition = self.track1.composition
fakesink = gst.element_factory_make('fakesink')
+
def bin_pad_added_cb(composition, pad):
pad.link(fakesink.get_pad('sink'))
+
composition.connect("pad-added", bin_pad_added_cb)
# add the composition and fakesink to the pipeline and set state to paused to preroll
@@ -118,14 +126,14 @@ class TestAlpha(TestCase):
# capsfilter
for input in self.svmbin.inputs.values():
capsfilter = input[2]
- self.failUnless(capsfilter.props.caps[0].has_key("format"))
+ self.failUnless(capsfilter.props.caps[0].has_field("format"))
def failUnlessAlphaIsNotSet(self):
# check that each SmartVideomixerBin input has alpha _not_ set on its
# capsfilter
for input in self.svmbin.inputs.values():
capsfilter = input[2]
- self.failIf(capsfilter.props.caps[0].has_key("format"))
+ self.failIf(capsfilter.props.caps[0].has_field("format"))
def testKeyframesOnDifferentObjects(self):
# no alpha < 1.0 keyframes
diff --git a/tests/test_basic.py b/tests/test_basic.py
index e23c9a4..af7906a 100644
--- a/tests/test_basic.py
+++ b/tests/test_basic.py
@@ -3,6 +3,7 @@ import pitivi
from common import TestCase
from pitivi.application import Pitivi
+
class BasicTest(TestCase):
"""
Basic test to create the proper creation of the Pitivi object
diff --git a/tests/test_binary_search.py b/tests/test_binary_search.py
index 8e348ac..bf78870 100644
--- a/tests/test_binary_search.py
+++ b/tests/test_binary_search.py
@@ -4,6 +4,7 @@ from pitivi.application import Pitivi
from pitivi.utils import binary_search
from common import TestCase
+
class BasicTest(TestCase):
"""
Basic test to create the proper creation of the Pitivi object
diff --git a/tests/test_cache.py b/tests/test_cache.py
index 76d0e4b..f0e7fdc 100644
--- a/tests/test_cache.py
+++ b/tests/test_cache.py
@@ -3,6 +3,7 @@ import pitivi
from common import TestCase
from pitivi.thumbnailcache import ThumbnailCache
+
class CacheTest(TestCase):
"""
Basic test to create the proper creation of the Pitivi object
diff --git a/tests/test_common.py b/tests/test_common.py
index 49fda52..7ed1808 100644
--- a/tests/test_common.py
+++ b/tests/test_common.py
@@ -23,6 +23,7 @@ import common
from unittest import main
from pitivi.ui import common as ui_common
+
class TestColors(common.TestCase):
def test_pack_color_32(self):
diff --git a/tests/test_discoverer.py b/tests/test_discoverer.py
index df7efe5..f639fd4 100644
--- a/tests/test_discoverer.py
+++ b/tests/test_discoverer.py
@@ -28,6 +28,7 @@ from common import TestCase
from pitivi.discoverer import Discoverer
from pitivi.factories.file import FileSourceFactory, PictureFileSourceFactory
+
class AddUrisStubDiscoverer(Discoverer):
analysis_scheduled = 0
current_uri = "bar"
@@ -39,6 +40,7 @@ class AddUrisStubDiscoverer(Discoverer):
self.analysis_scheduled -= 1
return Discoverer._finishAnalysis(self, reason)
+
class TestAnalysisQueue(TestCase):
def testAddUri(self):
discoverer = AddUrisStubDiscoverer()
@@ -72,6 +74,7 @@ class TestAnalysisQueue(TestCase):
self.failIf(discoverer.working)
self.failUnlessEqual(discoverer.analysis_scheduled, 0)
+
class Discoverer1(Discoverer):
use_decodebin2 = True
timeout_scheduled = False
@@ -116,6 +119,7 @@ class Discoverer1(Discoverer):
Discoverer._newPadCb(self, pad)
self.new_pad_cb += 1
+
class TestAnalysis(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -132,6 +136,7 @@ class TestAnalysis(TestCase):
Check that discoverer errors out if it can't create a source element.
"""
bag = {'error': None}
+
def no_media_file_cb(disc, uri, error, error_detail):
bag['error'] = error
@@ -145,6 +150,7 @@ class TestAnalysis(TestCase):
Check for errors setting the state of the pipeline to PAUSED.
"""
bag = {'error': None}
+
def no_media_file_cb(disc, uri, error, error_detail):
bag['error'] = error
@@ -160,6 +166,7 @@ class TestAnalysis(TestCase):
Check that a timeout is set when analyzing a file.
"""
bag = {'error': None}
+
def discovery_error_cb(disc, uri, error, error_detail):
bag['error'] = error
@@ -240,6 +247,7 @@ class TestAnalysis(TestCase):
def testBusEos(self):
bag = {'called': False}
+
def finish_analysis(reason):
bag['called'] = True
@@ -249,6 +257,7 @@ class TestAnalysis(TestCase):
def testBusElement(self):
bag = {'called': False}
+
def finish_analysis(reason):
bag['called'] = True
@@ -340,6 +349,7 @@ class TestAnalysis(TestCase):
self.failUnlessEqual(len(self.discoverer.current_streams), 2)
self.failUnlessEqual(self.discoverer.new_video_pad_cb, 1)
+
class TestStateChange(TestCase):
def setUp(self):
TestCase.setUp(self)
diff --git a/tests/test_encode.py b/tests/test_encode.py
index 3653634..bbe3524 100644
--- a/tests/test_encode.py
+++ b/tests/test_encode.py
@@ -26,6 +26,7 @@ from pitivi.stream import VideoStream
from pitivi.encode import EncoderFactory, RenderFactory
from pitivi.settings import StreamEncodeSettings, RenderSettings
+
class TestEncoderFactory(TestCase):
def testSimple(self):
@@ -72,7 +73,7 @@ class TestEncoderFactory(TestCase):
def testEncoderSettings(self):
encsettings = {
- "bitrate":40000,
+ "bitrate": 40000,
}
set = StreamEncodeSettings(encoder="theoraenc",
encodersettings=encsettings)
@@ -83,6 +84,7 @@ class TestEncoderFactory(TestCase):
for k, v in encsettings.iteritems():
self.assertEquals(encoder.get_property(k), v)
+
class TestRenderFactory(TestCase):
def setUp(self):
diff --git a/tests/test_etree_formatter.py b/tests/test_etree_formatter.py
index b07b48f..68a6fb0 100644
--- a/tests/test_etree_formatter.py
+++ b/tests/test_etree_formatter.py
@@ -38,12 +38,15 @@ from pitivi.project import Project
from pitivi.utils import get_controllable_properties
from pitivi.effects import EffectsHandler
+
class FakeElementTreeFormatter(ElementTreeFormatter):
pass
+
def ts(time):
return "(gint64)%s" % time
+
class TestSerialization(TestCase):
def setUp(self):
self.formatter = FakeElementTreeFormatter(EffectsHandler())
@@ -69,6 +72,7 @@ class TestSerialization(TestCase):
for key, value in values_dict.iteritems():
self.assertEqual(value, deserialized_values_dict[key])
+
class TestFormatterSave(TestCase):
def setUp(self):
self.formatter = FakeElementTreeFormatter(EffectsHandler())
@@ -182,7 +186,6 @@ class TestFormatterSave(TestCase):
self.formatter._saveSource(source1)
self.formatter._saveStream(video_stream)
-
track_source = SourceTrackObject(source1, video_stream,
start=10 * gst.SECOND, duration=20 * gst.SECOND,
in_point=5 * gst.SECOND, media_duration=15 * gst.SECOND,
@@ -490,7 +493,8 @@ class TestFormatterLoad(TestCase):
self.failUnlessEqual(factory.default_duration, 5 * gst.SECOND)
def testLoadFactoryRef(self):
- class Tag(object): pass
+ class Tag(object):
+ pass
tag = Tag()
self.formatter._context.factories["1"] = tag
element = Element("factory-ref", id="1")
@@ -610,8 +614,7 @@ class TestFormatterLoad(TestCase):
self.failUnlessEqual(interpolator.end.time, 15 * gst.SECOND)
self.failUnlessEqual(
round(interpolator.end.value, 6),
- round((15.0 / 6) - (7.0/3), 6))
-
+ round((15.0 / 6) - (7.0 / 3), 6))
def testLoadTrackObjectRef(self):
class Tag(object):
@@ -708,7 +711,6 @@ class TestFormatterLoad(TestCase):
self.formatter._context.factories["2"] = source1
self.formatter._context.track_objects["1"] = SourceTrackObject(source1, video_stream)
-
# point gun at foot; pull trigger
self.formatter._loadTimeline(timeline_element)
self.failUnlessEqual(len(self.formatter.project.timeline.tracks), 1)
diff --git a/tests/test_factories_base.py b/tests/test_factories_base.py
index e447089..fb5a247 100644
--- a/tests/test_factories_base.py
+++ b/tests/test_factories_base.py
@@ -28,6 +28,7 @@ from pitivi.stream import AudioStream, VideoStream
from common import SignalMonitor, TestCase
+
class TestObjectFactory(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -69,6 +70,7 @@ class TestObjectFactory(TestCase):
self.failUnlessEqual(self.factory.default_duration, 10 * gst.SECOND)
self.failUnlessEqual(self.factory.duration, 60 * gst.SECOND)
+
class StubSourceFactory(SourceFactory):
def _makeBin(self, output_stream=None):
return gst.Bin()
@@ -76,6 +78,7 @@ class StubSourceFactory(SourceFactory):
def _releaseBin(self, bin):
pass
+
class TestSourceFactory(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -122,6 +125,7 @@ class TestSourceFactory(TestCase):
self.failUnlessEqual(self.factory.current_bins, 0)
self.failUnlessEqual(self.monitor.bin_released_count, 2)
+
class TestLiveSourceFactory(TestCase):
def testDefaultDuration(self):
# pass an explicit default_duration
@@ -134,6 +138,7 @@ class TestLiveSourceFactory(TestCase):
self.failUnlessEqual(factory.duration, gst.CLOCK_TIME_NONE)
self.failUnlessEqual(factory.default_duration, 5 * gst.SECOND)
+
class TestRandomAccessSourceFactory(TestCase):
def testOffsetAndLength(self):
# no offset and length
diff --git a/tests/test_factories_file.py b/tests/test_factories_file.py
index 78a242d..7d50f1c 100644
--- a/tests/test_factories_file.py
+++ b/tests/test_factories_file.py
@@ -13,6 +13,7 @@
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
@@ -26,6 +27,7 @@ from common import TestCase
from pitivi.factories.file import FileSourceFactory, PictureFileSourceFactory
from pitivi.stream import AudioStream, VideoStream
+
class StubSingleDecodeBin(gst.Bin):
def __init__(self, uri, caps, stream):
self.uri = uri
@@ -33,9 +35,11 @@ class StubSingleDecodeBin(gst.Bin):
self.stream = stream
gst.Bin.__init__(self)
+
class StubFileSourceFactory(FileSourceFactory):
singleDecodeBinClass = StubSingleDecodeBin
+
class TestFileSourceFactory(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -100,10 +104,10 @@ class TestFileSourceFactory(TestCase):
width_checked = False
height_checked = False
for structure in scale_caps1:
- if structure.has_key("width"):
+ if structure.has_field("width"):
self.failUnlessEqual(structure["width"], 320)
width_checked = True
- if structure.has_key("height"):
+ if structure.has_field("height"):
self.failUnlessEqual(structure["height"], 240)
height_checked = True
self.failUnlessEqual(width_checked, True)
@@ -119,16 +123,15 @@ class TestFileSourceFactory(TestCase):
width_checked = False
height_checked = False
for structure in scale_caps1:
- if structure.has_key("width"):
+ if structure.has_field("width"):
self.failUnlessEqual(structure["width"], 320)
width_checked = True
- if structure.has_key("height"):
+ if structure.has_field("height"):
self.failUnlessEqual(structure["height"], 240)
height_checked = True
self.failUnlessEqual(width_checked, True)
self.failUnlessEqual(height_checked, True)
-
self.factory.setFilterCaps(caps2)
# check caps2 set on bin1
@@ -136,10 +139,10 @@ class TestFileSourceFactory(TestCase):
width_checked = False
height_checked = False
for structure in scale_caps2:
- if structure.has_key("width"):
+ if structure.has_field("width"):
self.failUnlessEqual(structure["width"], 640)
width_checked = True
- if structure.has_key("height"):
+ if structure.has_field("height"):
self.failUnlessEqual(structure["height"], 480)
height_checked = True
self.failUnlessEqual(width_checked, True)
@@ -150,10 +153,10 @@ class TestFileSourceFactory(TestCase):
width_checked = False
height_checked = False
for structure in scale_caps2:
- if structure.has_key("width"):
+ if structure.has_field("width"):
self.failUnlessEqual(structure["width"], 640)
width_checked = True
- if structure.has_key("height"):
+ if structure.has_field("height"):
self.failUnlessEqual(structure["height"], 480)
height_checked = True
self.failUnlessEqual(width_checked, True)
@@ -162,9 +165,11 @@ class TestFileSourceFactory(TestCase):
self.factory.releaseBin(bin1)
self.factory.releaseBin(bin2)
+
class StubPictureFileSourceFactory(PictureFileSourceFactory):
singleDecodeBinClass = StubSingleDecodeBin
+
class TestPictureFileSourceFactory(TestCase):
def setUp(self):
TestCase.setUp(self)
diff --git a/tests/test_factories_operation.py b/tests/test_factories_operation.py
index 39c1631..89c40c7 100644
--- a/tests/test_factories_operation.py
+++ b/tests/test_factories_operation.py
@@ -31,6 +31,7 @@ from common import TestCase
from pitivi.factories.operation import EffectFactory
from pitivi.stream import VideoStream
+
class TestEffectFactory(TestCase):
def setUp(self):
TestCase.setUp(self)
diff --git a/tests/test_gap.py b/tests/test_gap.py
index 45919aa..c618000 100644
--- a/tests/test_gap.py
+++ b/tests/test_gap.py
@@ -32,6 +32,7 @@ from pitivi.timeline.timeline import Timeline, TimelineObject
from pitivi.timeline.gap import Gap, SmallestGapsFinder, invalid_gap
from pitivi.utils import infinity
+
class TestGap(TestCase):
def setUp(self):
self.factory = StubFactory()
diff --git a/tests/test_integration.py b/tests/test_integration.py
index 9718cb7..63e9f78 100644
--- a/tests/test_integration.py
+++ b/tests/test_integration.py
@@ -40,6 +40,7 @@ test1 = base_uri + "test1.ogg"
test2 = base_uri + "test2.ogg"
test3 = base_uri + "test3.ogg"
+
class WatchDog(object):
"""A simple watchdog timer to aid developing integration tests. If
@@ -73,6 +74,7 @@ class WatchDog(object):
def keepAlive(self):
self.will_quit = False
+
class TestWatchdog(TestCase):
def testWatchdog(self):
@@ -112,6 +114,7 @@ class TestWatchdog(TestCase):
self.timeout_called = True
return False
+
class Configuration(object):
def __init__(self, *sources):
@@ -193,6 +196,7 @@ class Configuration(object):
def __iter__(self):
return (source for source in self.sources if len(source) > 2)
+
class InstanceRunner(Signallable):
no_ui = not(os.getenv("ENABLE_UI"))
@@ -203,8 +207,8 @@ class InstanceRunner(Signallable):
pass
__signals__ = {
- "sources-loaded" : [],
- "timeline-configured" : [],
+ "sources-loaded": [],
+ "timeline-configured": [],
}
def __init__(self, instance):
@@ -313,12 +317,13 @@ class InstanceRunner(Signallable):
gobject.idle_add(self.instance.shutdown)
self.project._dirty = False
+
class Brush(Signallable):
"""Scrubs your timelines until they're squeaky clean."""
__signals__ = {
- "scrub-step" : ["time", "priority"],
- "scrub-done" : [],
+ "scrub-step": ["time", "priority"],
+ "scrub-done": [],
}
def __init__(self, runner, delay=100, maxtime=7200, maxpriority=10):
@@ -357,6 +362,7 @@ class Brush(Signallable):
self.emit("scrub-done")
return False
+
class Base(TestCase):
"""
Creates and runs an InteractivePitivi object, then starts the mainloop.
@@ -402,6 +408,7 @@ class Base(TestCase):
raise Exception("Instance was not unset")
TestCase.tearDown(self)
+
class TestBasic(Base):
def testWatchdog(self):
@@ -431,8 +438,8 @@ class TestBasic(Base):
self.runner.loadConfiguration(config)
self.runner.run()
- self.assertFalse(hasattr(self.runner,test1))
- self.assertFalse(hasattr(self.runner,test2))
+ self.assertFalse(hasattr(self.runner, test1))
+ self.assertFalse(hasattr(self.runner, test2))
self.failUnlessEqual(self.runner.factories, set((test1, test2)))
self.failUnlessEqual(self.runner.errors, set((test3,)))
@@ -443,16 +450,16 @@ class TestBasic(Base):
"object1",
test1,
{
- "start" : 0,
- "duration" : gst.SECOND,
- "media-start" : gst.SECOND,
+ "start": 0,
+ "duration": gst.SECOND,
+ "media-start": gst.SECOND,
})
config.addSource(
"object2",
test2,
{
- "start" : gst.SECOND,
- "duration" : gst.SECOND,
+ "start": gst.SECOND,
+ "duration": gst.SECOND,
})
def timelineConfigured(runner):
@@ -474,32 +481,32 @@ class TestBasic(Base):
"object1",
test1,
{
- "start" : 0,
- "duration" : gst.SECOND,
- "media-start" : gst.SECOND,
- "priority" : 0
+ "start": 0,
+ "duration": gst.SECOND,
+ "media-start": gst.SECOND,
+ "priority": 0
})
initial.addSource(
"object2",
test2,
{
- "start" : gst.SECOND,
- "duration" : gst.SECOND,
- "priority" : 1,
+ "start": gst.SECOND,
+ "duration": gst.SECOND,
+ "priority": 1,
})
final = Configuration()
final.addSource(
"object1",
test1,
{
- "start" : 10 * gst.SECOND,
+ "start": 10 * gst.SECOND,
})
final.addSource(
"object2",
test2,
{
- "start" : 11 * gst.SECOND,
- "priority" : 2,
+ "start": 11 * gst.SECOND,
+ "priority": 2,
})
def timelineConfigured(runner):
@@ -528,22 +535,22 @@ class TestBasic(Base):
initial = Configuration()
initial.addSource('clip1', test1, {
- "duration" : gst.SECOND,
- "start" : gst.SECOND,
- "priority" : 2})
+ "duration": gst.SECOND,
+ "start": gst.SECOND,
+ "priority": 2})
initial.addSource('clip2', test1, {
- "duration" : gst.SECOND,
- "start" : 2 * gst.SECOND,
- "priority" : 5})
+ "duration": gst.SECOND,
+ "start": 2 * gst.SECOND,
+ "priority": 5})
final = Configuration()
final.addSource('clip1', test1, {
- "duration" : gst.SECOND,
- "start" : 11 * gst.SECOND,
- "priority" : 0})
+ "duration": gst.SECOND,
+ "start": 11 * gst.SECOND,
+ "priority": 0})
final.addSource('clip2', test1, {
- "duration" : gst.SECOND,
- "start" : 12 * gst.SECOND,
- "priority" : 3})
+ "duration": gst.SECOND,
+ "start": 12 * gst.SECOND,
+ "priority": 3})
def timelineConfigured(runner):
initial.matches(self.runner)
@@ -567,38 +574,39 @@ class TestBasic(Base):
initial = Configuration()
initial.addSource('clip1', test1,
{
- "start" : gst.SECOND,
- "duration" : gst.SECOND,
+ "start": gst.SECOND,
+ "duration": gst.SECOND,
})
initial.addSource('clip2', test1,
{
- "start" : 2 * gst.SECOND,
- "duration" : gst.SECOND,
+ "start": 2 * gst.SECOND,
+ "duration": gst.SECOND,
})
initial.addSource('clip3', test1,
{
- "start" : 5 * gst.SECOND,
- "duration" : 10 * gst.SECOND,
+ "start": 5 * gst.SECOND,
+ "duration": 10 * gst.SECOND,
})
final = Configuration()
final.addSource('clip1', test1,
{
- "start" : 6 * gst.SECOND,
+ "start": 6 * gst.SECOND,
"duration": gst.SECOND,
})
final.addSource('clip2', test1,
{
- "start" : 7 * gst.SECOND,
- "duration" : gst.SECOND,
+ "start": 7 * gst.SECOND,
+ "duration": gst.SECOND,
})
final.addSource('clip3', test1,
{
- "start" : 10 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
+ "start": 10 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
})
self.runner.loadConfiguration(initial)
+
def timelineConfigured(runner):
context = TrimStartContext(self.runner.timeline,
self.runner.video1.clip3, set())
@@ -616,6 +624,7 @@ class TestBasic(Base):
from pitivi.pipeline import PipelineError
+
class TestSeeking(Base):
count = 0
@@ -625,12 +634,11 @@ class TestSeeking(Base):
config = Configuration()
for i in xrange(0, 10):
config.addSource("clip%d" % i, test1, {
- "start" : i * gst.SECOND,
- "duration" : gst.SECOND,
- "priority" : i % 2,
+ "start": i * gst.SECOND,
+ "duration": gst.SECOND,
+ "priority": i % 2,
})
-
def _startSeeking(self, interval, steps=10):
self.count = 0
self.steps = steps
@@ -675,6 +683,7 @@ class TestSeeking(Base):
self.runner.run()
+
class TestRippleExtensive(Base):
"""Test suite for ripple editing minutia and corner-cases"""
@@ -690,8 +699,8 @@ class TestRippleExtensive(Base):
self.finals = []
for i in xrange(0, 10):
self.initial.addSource('clip%d' % i, test1,
- { 'start' : gst.SECOND * i, 'duration' : gst.SECOND,
- 'priority' : i % 2 })
+ {'start': gst.SECOND * i, 'duration': gst.SECOND,
+ 'priority': i % 2})
# we're going to repeat the same operation using each clip as the
# focus of the editing context. We create one final
# configuration for the expected result of each scenario.
@@ -699,14 +708,14 @@ class TestRippleExtensive(Base):
for j in xrange(0, 10):
if j < i:
final.addSource('clip%d' % j, test1,
- { 'start' : gst.SECOND * j,
- 'duration' : gst.SECOND,
- 'priority' : j % 2})
+ {'start': gst.SECOND * j,
+ 'duration': gst.SECOND,
+ 'priority': j % 2})
else:
final.addSource('clip%d' % j, test1,
- { 'start' : gst.SECOND * (j + 10),
- 'duration' : gst.SECOND,
- 'priority' : (j % 2) + 1})
+ {'start': gst.SECOND * (j + 10),
+ 'duration': gst.SECOND,
+ 'priority': (j % 2) + 1})
self.finals.append(final)
Base.__init__(self, unknown)
@@ -773,6 +782,7 @@ class TestRippleExtensive(Base):
self.scrub_func = rippleMoveComplexRandomScrubFunc
self.runner.run()
+
class TestTransitions(Base):
def testSimple(self):
@@ -781,25 +791,25 @@ class TestTransitions(Base):
"object1",
test1,
{
- "start" : 0,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 0,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
initial.addSource(
"object2",
test1,
{
- "start" : 5 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 5 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
initial.addSource(
"object3",
test1,
{
- "start" : 10 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 10 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
moves = [
@@ -856,30 +866,30 @@ class TestTransitions(Base):
"object1",
test1,
{
- "start" : 0,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 0,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
initial.addSource(
"object2",
test1,
{
- "start" : 5 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 5 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
initial.addSource(
"object3",
test1,
{
- "start" : 10 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 10 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
moves = [
("object1", 9 * gst.SECOND, 0),
- ("object3", 1* gst.SECOND, 0),
+ ("object3", 1 * gst.SECOND, 0),
]
def timelineConfigured(runner):
@@ -916,52 +926,52 @@ class TestTransitions(Base):
"object1",
test1,
{
- "start" : 0,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 0,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
initial.addSource(
"object2",
test1,
{
- "start" : 5 * gst.SECOND,
- "duration" : 3 * gst.SECOND,
- "priority" : 0,
+ "start": 5 * gst.SECOND,
+ "duration": 3 * gst.SECOND,
+ "priority": 0,
})
initial.addSource(
"object3",
test1,
{
- "start" : 8 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
- "priority" : 0,
+ "start": 8 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
+ "priority": 0,
})
phase2 = initial.clone()
phase2.updateSource(
"object2",
props={
- "start" : 4 * gst.SECOND,
+ "start": 4 * gst.SECOND,
})
phase3 = phase2.clone()
phase3.updateSource(
"object3",
props={
- "duration" : 1 * gst.SECOND
+ "duration": 1 * gst.SECOND
})
phase4 = initial.clone()
phase4.updateSource(
"object2",
props={
- "start" : 3 * gst.SECOND,
+ "start": 3 * gst.SECOND,
})
phase4.updateSource(
"object3",
props={
- "start" : 5 * gst.SECOND,
- "duration" : 5 * gst.SECOND,
+ "start": 5 * gst.SECOND,
+ "duration": 5 * gst.SECOND,
})
moves = [
diff --git a/tests/test_pipeline.py b/tests/test_pipeline.py
index d564585..54cd9e0 100644
--- a/tests/test_pipeline.py
+++ b/tests/test_pipeline.py
@@ -29,12 +29,15 @@ from pitivi.stream import AudioStream, VideoStream
from common import TestCase, SignalMonitor, FakeSinkFactory, FakeEffectFactory
from pitivi.factories.test import VideoTestSourceFactory
+
class BogusAction(Action):
pass
+
class WeirdAction(Action):
pass
+
class TestPipeline(TestCase):
def setUp(self):
@@ -139,6 +142,7 @@ class TestPipeline(TestCase):
loop = gobject.MainLoop()
bag = {"last_state": None}
+
def state_changed_cb(pipeline, state, bag, loop):
bag["last_state"] = state
loop.quit()
diff --git a/tests/test_pipeline_action.py b/tests/test_pipeline_action.py
index 1d1748c..f6c80a1 100644
--- a/tests/test_pipeline_action.py
+++ b/tests/test_pipeline_action.py
@@ -33,6 +33,7 @@ from common import TestCase
import common
import gst
+
class DynamicAction(Action):
def getDynamicLinks(self, producer, stream):
links = Action.getDynamicLinks(self, producer, stream)
@@ -42,6 +43,7 @@ class DynamicAction(Action):
gst.debug("Returning link")
return links
+
class TestPipelineAction(TestCase):
def setUp(self):
@@ -148,7 +150,6 @@ class TestPipelineAction(TestCase):
self.assertEquals(len(list(p._pipeline.elements())), 0)
p.release()
-
def testDynamicLink(self):
a = DynamicAction()
p = Pipeline()
diff --git a/tests/test_projectmanager.py b/tests/test_projectmanager.py
index cafdadd..cd03bba 100644
--- a/tests/test_projectmanager.py
+++ b/tests/test_projectmanager.py
@@ -29,6 +29,7 @@ import gst
from pitivi.utils import uri_is_reachable
import time
+
class MockProject(object):
settings = None
format = None
@@ -44,6 +45,7 @@ class MockProject(object):
def disconnect_by_function(self, ignored):
pass
+
class ProjectManagerListener(object):
def __init__(self, manager):
self.manager = manager
@@ -99,6 +101,7 @@ class TestProjectManager(TestCase):
project instance.
"""
state = {"tried-close": False}
+
def close():
state["tried-close"] = True
return False
@@ -188,7 +191,6 @@ class TestProjectManager(TestCase):
formatter, signalUri, unused_factory = args
self.failUnlessEqual(signalUri, "file:///icantpossiblyexist")
-
def testLoadProjectLoaded(self):
class EmptyFormatter(Formatter):
def _validateUri(self, uri):
@@ -292,10 +294,9 @@ class TestProjectManager(TestCase):
project = args[0]
self.failUnless(project is self.manager.current)
-
def testSaveProject(self):
uri = "file://" + os.path.abspath("testproject.xptv")
- uri2 ="file://" + os.path.abspath("testproject2.xptv")
+ uri2 = "file://" + os.path.abspath("testproject2.xptv")
path = gst.uri_get_location(uri)
path2 = gst.uri_get_location(uri2)
@@ -345,7 +346,6 @@ class TestProjectManager(TestCase):
except OSError:
pass
-
def testBackupProject(self):
uri = "file://" + os.path.abspath("testproject.xptv")
diff --git a/tests/test_seeker.py b/tests/test_seeker.py
index 2196406..8fa76da 100644
--- a/tests/test_seeker.py
+++ b/tests/test_seeker.py
@@ -23,6 +23,7 @@ from unittest import TestCase
from pitivi.utils import Seeker
import gst
+
class StubSeeker(Seeker):
seek_id = 0
@@ -33,6 +34,7 @@ class StubSeeker(Seeker):
return seek_id
+
class TestSeeker(TestCase):
def setUp(self):
self.seek_count = 0
diff --git a/tests/test_signallable.py b/tests/test_signallable.py
index bed3957..39e29cf 100644
--- a/tests/test_signallable.py
+++ b/tests/test_signallable.py
@@ -1,11 +1,12 @@
import unittest
from pitivi.signalinterface import Signallable
+
class myobject(Signallable):
__signals__ = {
- "signal-oneargs" : ["firstarg"],
- "signal-noargs" : []
+ "signal-oneargs": ["firstarg"],
+ "signal-noargs": []
}
def emit_signal_one_args(self, firstarg):
@@ -14,18 +15,21 @@ class myobject(Signallable):
def emit_signal_no_args(self):
self.emit("signal-noargs")
+
class mysubobject(myobject):
__signals__ = {
- "subobject-noargs" : None
+ "subobject-noargs": None
}
def emit_sub_signal_no_args(self):
self.emit("subobject-noargs")
+
def function_cb(testcase):
testcase.fail("this should not be reached")
+
class TestSignalisation(unittest.TestCase):
"""
Test the proper behaviour of pitivi.signalinterface.Signallable
@@ -61,7 +65,7 @@ class TestSignalisation(unittest.TestCase):
# default callbacks to be used
def _cb_oneargs(self, signaller, firstarg=None, *args, **kwargs):
- self.s_oneargs_triggered +=1
+ self.s_oneargs_triggered += 1
self.signal_oneargs_signaller = signaller
self.signal_oneargs_firstarg = firstarg
self.signal_oneargs_args = args
@@ -79,7 +83,6 @@ class TestSignalisation(unittest.TestCase):
self.signal_subnoargs_args = args
self.signal_subnoargs_kwargs = kwargs
-
def test01_get_signals(self):
self.assertEquals(self.object.get_signals(),
myobject.__signals__)
@@ -156,15 +159,14 @@ class TestSignalisation(unittest.TestCase):
self.object.emit("signal-oneargs", 42)
-
def test04_emit01(self):
- # signal : no arguments
- # connect : no arguments
+ # signal: no arguments
+ # connect: no arguments
noargsid = self.object.connect("signal-noargs",
self._cb_noargs)
self.assert_(noargsid)
self.object.emit_signal_no_args()
- self.assertEquals(self.s_noargs_triggered,1)
+ self.assertEquals(self.s_noargs_triggered, 1)
self.assertEquals(self.signal_noargs_args, ())
self.assertEquals(self.signal_noargs_signaller, self.object)
self.assertEquals(self.signal_noargs_kwargs, {})
@@ -178,22 +180,22 @@ class TestSignalisation(unittest.TestCase):
self.assertEquals(self.s_noargs_triggered, 0)
def test04_emit02(self):
- # signal : no arguments
- # connect : extra arguments
+ # signal: no arguments
+ # connect: extra arguments
noargsid = self.object.connect("signal-noargs",
self._cb_noargs,
- 1,2,3,
+ 1, 2, 3,
myvalue=42)
self.assert_(noargsid)
self.object.emit_signal_no_args()
self.assertEquals(self.s_noargs_triggered, 1)
- self.assertEquals(self.signal_noargs_args, (1,2,3))
+ self.assertEquals(self.signal_noargs_args, (1, 2, 3))
self.assertEquals(self.signal_noargs_signaller, self.object)
- self.assertEquals(self.signal_noargs_kwargs, {"myvalue":42})
+ self.assertEquals(self.signal_noargs_kwargs, {"myvalue": 42})
def test04_emit03(self):
- # signal : named argument
- # connect : no arguments
+ # signal: named argument
+ # connect: no arguments
oneargsigid = self.object.connect("signal-oneargs",
self._cb_oneargs)
self.assert_(oneargsigid)
@@ -205,43 +207,43 @@ class TestSignalisation(unittest.TestCase):
self.assertEquals(self.signal_oneargs_kwargs, {})
def test04_emit04(self):
- # signal : named argument
- # connect : extra arguments
+ # signal: named argument
+ # connect: extra arguments
oneargsigid = self.object.connect("signal-oneargs",
self._cb_oneargs,
- 1,2,3, myvalue=42)
+ 1, 2, 3, myvalue=42)
self.assert_(oneargsigid)
self.object.emit_signal_one_args(firstarg="yep")
self.assertEquals(self.s_oneargs_triggered, 1)
self.assertEquals(self.signal_oneargs_firstarg, "yep")
self.assertEquals(self.signal_oneargs_signaller, self.object)
- self.assertEquals(self.signal_oneargs_args, (1,2,3))
- self.assertEquals(self.signal_oneargs_kwargs, {"myvalue":42})
+ self.assertEquals(self.signal_oneargs_args, (1, 2, 3))
+ self.assertEquals(self.signal_oneargs_kwargs, {"myvalue": 42})
def test05_subclass_emit01(self):
# making sure a subclass can emit the parent classes
# signal
noargsid = self.subobject.connect("signal-noargs",
self._cb_noargs,
- 1,2,3,
+ 1, 2, 3,
myvalue=42)
self.assert_(noargsid)
self.subobject.emit_signal_no_args()
self.assertEquals(self.s_noargs_triggered, 1)
self.assertEquals(self.signal_noargs_signaller, self.subobject)
- self.assertEquals(self.signal_noargs_args, (1,2,3))
- self.assertEquals(self.signal_noargs_kwargs, {"myvalue":42})
+ self.assertEquals(self.signal_noargs_args, (1, 2, 3))
+ self.assertEquals(self.signal_noargs_kwargs, {"myvalue": 42})
def test06_multiple_emissions(self):
# connect two handlers to one signal
noargsid1 = self.object.connect("signal-noargs",
self._cb_noargs,
- 1,2,3,
+ 1, 2, 3,
myvalue=42)
self.assert_(noargsid1)
noargsid2 = self.object.connect("signal-noargs",
self._cb_noargs,
- 1,2,3,
+ 1, 2, 3,
myvalue=42)
self.assert_(noargsid2)
@@ -249,8 +251,8 @@ class TestSignalisation(unittest.TestCase):
self.object.emit_signal_no_args()
# ...which should have called all the handlers
self.assertEquals(self.s_noargs_triggered, 2)
- self.assertEquals(self.signal_noargs_args, (1,2,3))
- self.assertEquals(self.signal_noargs_kwargs, {"myvalue":42})
+ self.assertEquals(self.signal_noargs_args, (1, 2, 3))
+ self.assertEquals(self.signal_noargs_kwargs, {"myvalue": 42})
self.object.disconnect(noargsid1)
self.object.disconnect(noargsid2)
diff --git a/tests/test_sourcelist.py b/tests/test_sourcelist.py
index 079679e..00286c2 100644
--- a/tests/test_sourcelist.py
+++ b/tests/test_sourcelist.py
@@ -24,6 +24,7 @@ from pitivi.sourcelist import SourceList, SourceListError
from pitivi.discoverer import Discoverer
from pitivi.factories.file import FileSourceFactory
+
class FakeDiscoverer(Discoverer):
def _scheduleAnalysis(self):
pass
diff --git a/tests/test_still_image.py b/tests/test_still_image.py
index 329c5aa..18cced9 100644
--- a/tests/test_still_image.py
+++ b/tests/test_still_image.py
@@ -39,8 +39,10 @@ from pitivi.stream import VideoStream
from pitivi.factories.test import VideoTestSourceFactory
from pitivi.pipeline import Pipeline, PipelineError
+
class TestStillImage(TestCase):
clip_duration = 3 * gst.SECOND
+
def setUp(self):
self.mainloop = gobject.MainLoop()
@@ -123,37 +125,31 @@ class TestStillImage(TestCase):
self.startRender()
self.cleanUp()
-
# use two images with the same resolution and concatenate them
self.configureStreams(range(2), [0, self.clip_duration])
self.startRender()
self.cleanUp()
-
# concatenate images with different resolutions
self.configureStreams(range(3), [0, self.clip_duration, 2 * self.clip_duration])
self.startRender()
self.cleanUp()
-
# mix images with different resolutions by overlapping
self.configureStreams(range(3), [0, self.clip_duration // 2, self.clip_duration])
self.startRender()
self.cleanUp()
-
# mix images and videos with the same resolution
self.configureStreams([0, 1, 3], [0, self.clip_duration, 2 * self.clip_duration])
self.startRender()
self.cleanUp()
-
# mix images and videos with different resolutions
self.configureStreams(range(4), [0, self.clip_duration, 2 * self.clip_duration, 3 * self.clip_duration])
self.startRender()
self.cleanUp()
-
# mix images and videos with different resolutions by overlapping
self.configureStreams(range(4), [0, self.clip_duration // 2, self.clip_duration, (3 * self.clip_duration) // 2])
self.startRender()
diff --git a/tests/test_stream.py b/tests/test_stream.py
index 772dbb9..49615e4 100644
--- a/tests/test_stream.py
+++ b/tests/test_stream.py
@@ -28,6 +28,7 @@ from pitivi.stream import AudioStream, VideoStream, match_stream, \
STREAM_MATCH_SAME_TYPE
import gst
+
class TestMultimediaStream(object):
"""
Base mixin for stream tests.
@@ -96,6 +97,7 @@ class TestAudioStream(TestMultimediaStream, TestCase):
stream = AudioStream(self.non_raw_caps)
self.checkProperties(stream, expected)
+
class TestVideoStream(TestMultimediaStream, TestCase):
streamClass = VideoStream
unfixed_caps = gst.Caps('video/x-raw-rgb, width=320, height=240, '
diff --git a/tests/test_timeline.py b/tests/test_timeline.py
index 2a4e0ce..56429af 100644
--- a/tests/test_timeline.py
+++ b/tests/test_timeline.py
@@ -34,11 +34,13 @@ from pitivi.factories.test import AudioTestSourceFactory
from common import SignalMonitor, TestCase, StubFactory
+
class TimelineSignalMonitor(SignalMonitor):
def __init__(self, track_object):
SignalMonitor.__init__(self, track_object, 'start-changed',
'duration-changed', 'in-point-changed', 'media-duration-changed')
+
class TestTimelineObjectAddRemoveTrackObjects(TestCase):
def testAddRemoveTrackObjects(self):
source_factory = StubFactory()
@@ -73,6 +75,7 @@ class TestTimelineObjectAddRemoveTrackObjects(TestCase):
timeline_object1.removeTrackObject(track_object2)
+
class TestTimelineObjectProperties(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -263,6 +266,7 @@ class TestTimelineObjectProperties(TestCase):
self.failUnlessEqual(monitor.start_changed_count, 0)
self.failUnlessEqual(monitor.duration_changed_count, 1)
+
class TestTimelineAddRemoveTracks(TestCase):
def testAddRemoveTracks(self):
stream = AudioStream(gst.Caps('audio/x-raw-int'))
@@ -281,6 +285,7 @@ class TestTimelineAddRemoveTracks(TestCase):
timeline.removeTrack(track2)
+
class TestTimelineAddRemoveTimelineObjects(TestCase):
def testAddRemoveTimelineObjects(self):
source_factory = StubFactory()
@@ -342,6 +347,7 @@ class TestTimelineAddRemoveTimelineObjects(TestCase):
timeline.removeFactory(source_factory)
self.failUnlessEqual(len(timeline.timeline_objects), 0)
+
class TestTimelineAddRemoveEffectsTracks(TestCase):
def testAddRemoveEffectTracks(self):
stream = VideoStream(gst.Caps("video/x-raw-rgb"))
@@ -378,7 +384,6 @@ class TestTimelineAddRemoveEffectsTracks(TestCase):
self.failUnlessRaises(TimelineError,
timeline_object1.removeTrackObject, track_effect2)
-
track.removeTrackObject(track_effect1)
track.removeTrackObject(track_effect2)
timeline.removeTimelineObject(timeline_object1)
@@ -410,6 +415,7 @@ class TestTimelineAddRemoveEffectsTracks(TestCase):
self.failUnlessEqual(len(track.track_objects), 0)
self.failUnlessEqual(len(timeline.timeline_objects), 0)
+
class TestTimeline(TestCase):
def setUp(self):
self.source_factory = StubFactory()
@@ -600,7 +606,7 @@ class TestTimeline(TestCase):
# test split no clips
self.timeline.split(noclips)
- for i, clip in enumerate([clip1,clip2,clip3,clip4]):
+ for i, clip in enumerate([clip1, clip2, clip3, clip4]):
self.failUnlessEqual(clip.start, 2 * gst.SECOND)
self.failUnlessEqual(clip.duration,
(5 - i) * gst.SECOND)
@@ -609,14 +615,14 @@ class TestTimeline(TestCase):
self.timeline.split(oneclip)
self.failUnlessEqual(clip1.start, 2 * gst.SECOND)
self.failUnlessEqual(clip1.duration, oneclip - 2 * gst.SECOND)
- for i, clip in enumerate([clip2,clip3,clip4]):
+ for i, clip in enumerate([clip2, clip3, clip4]):
self.failUnlessEqual(clip.start, 2 * gst.SECOND)
self.failUnlessEqual(clip.duration,
(5 - (i + 1)) * gst.SECOND)
# test split three clips
self.timeline.split(threeclips)
- for i, clip in enumerate([clip1,clip2,clip3]):
+ for i, clip in enumerate([clip1, clip2, clip3]):
self.failUnlessEqual(clip.start, 2 * gst.SECOND)
self.failUnlessEqual(clip.start + clip.duration, threeclips)
self.failUnlessEqual(clip4.start, 2 * gst.SECOND)
@@ -625,7 +631,7 @@ class TestTimeline(TestCase):
# test split three clips, one selected
self.timeline.selection.selected = set((clip4,))
self.timeline.split(fourclipsoneselected)
- for i, clip in enumerate([clip1,clip2,clip3]):
+ for i, clip in enumerate([clip1, clip2, clip3]):
self.failUnlessEqual(clip.start, 2 * gst.SECOND)
self.failUnlessEqual(clip.start + clip.duration, threeclips)
self.failUnlessEqual(clip4.start, 2 * gst.SECOND)
@@ -804,6 +810,7 @@ class TestTimeline(TestCase):
result = timeline.getNextKeyframe(time2)
self.failUnlessEqual(result, 10.5 * gst.SECOND)
+
class TestLink(TestCase):
def test(self):
@@ -979,6 +986,7 @@ class TestLink(TestCase):
self.failUnlessEqual(timeline_object2.start, 0)
self.failUnlessEqual(timeline_object3.start, 8 * gst.SECOND)
+
class TestTimelineEdges(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -1098,6 +1106,7 @@ class TestTimelineEdges(TestCase):
track_object2.release()
del source_factory
+
class TestTimelineAddFactory(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -1196,6 +1205,7 @@ class TestTimelineAddFactory(TestCase):
self.failUnlessEqual(len(self.video_track1.track_objects), 0)
self.failUnlessEqual(len(self.video_track2.track_objects), 0)
+
class TestContexts(TestCase):
def setUp(self):
@@ -1236,7 +1246,7 @@ class TestContexts(TestCase):
# [focus] [t2 ] [t3 ]
context.editTo(gst.SECOND * 10, 0)
self.failUnlessEqual(self.track_object1.start, gst.SECOND * 10)
- self.failUnlessEqual(self.track_object1.duration, gst.SECOND * 5)
+ self.failUnlessEqual(self.track_object1.duration, gst.SECOND * 5)
self.failUnlessEqual(self.track_object1.in_point, 0)
self.failUnlessEqual(self.track_object2.start, gst.SECOND * 15)
self.failUnlessEqual(self.track_object3.start, gst.SECOND * 25)
@@ -1246,7 +1256,7 @@ class TestContexts(TestCase):
context.setMode(context.RIPPLE)
context.editTo(gst.SECOND * 20, 0)
self.failUnlessEqual(self.track_object1.start, gst.SECOND * 20)
- self.failUnlessEqual(self.track_object1.duration, gst.SECOND * 5)
+ self.failUnlessEqual(self.track_object1.duration, gst.SECOND * 5)
self.failUnlessEqual(self.track_object1.in_point, 0)
self.failUnlessEqual(self.track_object2.start, gst.SECOND * 35)
self.failUnlessEqual(self.track_object3.start, gst.SECOND * 45)
@@ -1256,7 +1266,7 @@ class TestContexts(TestCase):
# [focus]
context.setMode(context.DEFAULT)
self.failUnlessEqual(self.track_object1.start, gst.SECOND * 20)
- self.failUnlessEqual(self.track_object1.duration, gst.SECOND * 5)
+ self.failUnlessEqual(self.track_object1.duration, gst.SECOND * 5)
self.failUnlessEqual(self.track_object1.in_point, 0)
self.failUnlessEqual(self.track_object2.start, gst.SECOND * 15)
self.failUnlessEqual(self.track_object3.start, gst.SECOND * 25)
@@ -1284,11 +1294,11 @@ class TestContexts(TestCase):
context.editTo(gst.SECOND * 1, 0)
context.finish()
self.failUnlessEqual(self.track_object1.start, 1 * gst.SECOND)
- self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object2.start, 11 * gst.SECOND)
- self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object3.start, 1 * gst.SECOND)
- self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
# move to
# track1: [focus][t2]
@@ -1298,11 +1308,11 @@ class TestContexts(TestCase):
context.editTo(gst.SECOND * 10, 0)
context.finish()
self.failUnlessEqual(self.track_object1.start, 1 * gst.SECOND)
- self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object2.start, 11 * gst.SECOND)
- self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object3.start, 10 * gst.SECOND)
- self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
def testMoveContextOverlapTransition(self):
# start
@@ -1325,11 +1335,11 @@ class TestContexts(TestCase):
context.editTo(gst.SECOND * 5, 1)
context.finish()
self.failUnlessEqual(self.track_object1.start, 0 * gst.SECOND)
- self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object2.start, 5 * gst.SECOND)
- self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object3.start, 0 * gst.SECOND)
- self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
def testMoveContextFocusNotEarliest(self):
# [t2 ][focus] [t3 ]
@@ -1653,11 +1663,11 @@ class TestContexts(TestCase):
context.editTo(gst.SECOND * 5, 0)
context.finish()
self.failUnlessEqual(self.track_object1.start, 5 * gst.SECOND)
- self.failUnlessEqual(self.track_object1.duration, 25 * gst.SECOND)
+ self.failUnlessEqual(self.track_object1.duration, 25 * gst.SECOND)
self.failUnlessEqual(self.track_object2.start, 30 * gst.SECOND)
- self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object2.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object3.start, 1 * gst.SECOND)
- self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
def testTrimEndContext(self):
self.track_object1.start = 1 * gst.SECOND
@@ -1725,11 +1735,11 @@ class TestContexts(TestCase):
context.editTo(gst.SECOND * 30, 0)
context.finish()
self.failUnlessEqual(self.track_object1.start, 1 * gst.SECOND)
- self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object1.duration, 10 * gst.SECOND)
self.failUnlessEqual(self.track_object2.start, 10 * gst.SECOND)
- self.failUnlessEqual(self.track_object2.duration, 20 * gst.SECOND)
+ self.failUnlessEqual(self.track_object2.duration, 20 * gst.SECOND)
self.failUnlessEqual(self.track_object3.start, 25 * gst.SECOND)
- self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
+ self.failUnlessEqual(self.track_object3.duration, 10 * gst.SECOND)
def testTrimStartRipple(self):
# [t2] [t3] [t1]
@@ -1746,7 +1756,7 @@ class TestContexts(TestCase):
# set maximum duration on focus
self.track_object1.factory.duration = 10 * gst.SECOND
- self.failUnlessEqual(self.track_object1.start,20 * gst.SECOND)
+ self.failUnlessEqual(self.track_object1.start, 20 * gst.SECOND)
self.failUnlessEqual(self.track_object1.in_point, 5 * gst.SECOND)
self.failUnlessEqual(self.track_object1.duration, 5 * gst.SECOND)
diff --git a/tests/test_timeline_factory.py b/tests/test_timeline_factory.py
index d111e58..925b38a 100644
--- a/tests/test_timeline_factory.py
+++ b/tests/test_timeline_factory.py
@@ -31,6 +31,7 @@ from pitivi.timeline.timeline import Timeline
from pitivi.timeline.track import Track, SourceTrackObject
from pitivi.stream import AudioStream, VideoStream
+
class TestTimelineSourceFactory(TestCase):
def testEmpty(self):
timeline = Timeline()
@@ -108,9 +109,11 @@ class TestTimelineSourceFactory(TestCase):
factory.clean()
+
class MainLoopTestCaseMeta(type):
def __new__(cls, name, bases, dic):
- import sys, inspect
+ import sys
+ import inspect
def wrapTest(method):
def wrapper(self):
@@ -152,6 +155,7 @@ class MainLoopTestCaseMeta(type):
return cls
+
class MainLoopTestCase(TestCase):
__metaclass__ = MainLoopTestCaseMeta
@@ -159,6 +163,7 @@ class MainLoopTestCase(TestCase):
self.loop = gobject.MainLoop()
TestCase.__init__(self, methodName)
+
class TestTimelineSourceFactoryPipeline(MainLoopTestCase):
def testVideoOnly(self):
video_factory1 = VideoTestSourceFactory(3)
diff --git a/tests/test_timeline_undo.py b/tests/test_timeline_undo.py
index 0f8be4c..5c900ab 100644
--- a/tests/test_timeline_undo.py
+++ b/tests/test_timeline_undo.py
@@ -36,6 +36,7 @@ from pitivi.timeline.timeline_undo import TimelineLogObserver, \
TrackEffectRemoved
from pitivi.undo import UndoableActionLog
+
class TestTimelineLogObserver(TimelineLogObserver):
def _connectToTimeline(self, timeline):
TimelineLogObserver._connectToTimeline(self, timeline)
@@ -53,12 +54,15 @@ class TestTimelineLogObserver(TimelineLogObserver):
TimelineLogObserver._disconnectFromTimelineObject(self, timeline_object)
timeline_object.connected = False
+
def new_stream():
return VideoStream(gst.Caps("video/x-raw-rgb"))
+
def new_source_factory():
return VideoTestSourceFactory()
+
class TestTimelineLogObserverConnections(TestCase):
def setUp(self):
self.action_log = UndoableActionLog()
@@ -90,6 +94,7 @@ class TestTimelineLogObserverConnections(TestCase):
self.failIf(timeline.connected)
self.failIf(timeline_object1.connected)
+
class TestTimelineUndo(TestCase):
def setUp(self):
self.stream = new_stream()
@@ -115,6 +120,7 @@ class TestTimelineUndo(TestCase):
def testAddTimelineObject(self):
stacks = []
+
def commitCb(action_log, stack, nested):
stacks.append(stack)
self.action_log.connect("commit", commitCb)
@@ -141,6 +147,7 @@ class TestTimelineUndo(TestCase):
def testRemoveTimelineObject(self):
stacks = []
+
def commitCb(action_log, stack, nested):
stacks.append(stack)
self.action_log.connect("commit", commitCb)
@@ -169,6 +176,7 @@ class TestTimelineUndo(TestCase):
def testAddEffectToTimelineObject(self):
stacks = []
pipeline = Pipeline()
+
def commitCb(action_log, stack, nested):
stacks.append(stack)
self.action_log.connect("commit", commitCb)
@@ -216,6 +224,7 @@ class TestTimelineUndo(TestCase):
def testTimelineObjectPropertyChange(self):
stacks = []
+
def commitCb(action_log, stack, nested):
stacks.append(stack)
self.action_log.connect("commit", commitCb)
diff --git a/tests/test_track.py b/tests/test_track.py
index bcce770..796ea9f 100644
--- a/tests/test_track.py
+++ b/tests/test_track.py
@@ -27,12 +27,14 @@ from pitivi.stream import AudioStream, VideoStream
from common import SignalMonitor, StubFactory
from pitivi.factories.test import AudioTestSourceFactory
+
class TrackSignalMonitor(SignalMonitor):
def __init__(self, track_object):
SignalMonitor.__init__(self, track_object, 'start-changed',
'duration-changed', 'in-point-changed', 'out-point-changed',
'media-duration-changed', 'priority-changed')
+
class TestTrackObject(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -121,7 +123,6 @@ class TestTrackObject(TestCase):
self.failUnlessEqual(gnl_object.props.priority, gnl_priority)
self.failUnlessEqual(self.monitor.priority_changed_count, 2)
-
def testChangePropertiesFromGnlObject(self):
obj = self.track_object
gnl_object = obj.gnl_object
@@ -167,7 +168,6 @@ class TestTrackObject(TestCase):
self.failUnlessEqual(gnl_object.props.priority, gnl_priority)
self.failUnlessEqual(self.monitor.priority_changed_count, 2)
-
def testTrimStart(self):
obj = self.track_object
@@ -255,7 +255,6 @@ class TestTrackObject(TestCase):
self.failUnlessEqual(monitor.in_point_changed_count, 1)
self.failUnlessEqual(monitor.duration_changed_count, 1)
-
def testSplitObject(self):
DURATION = 10 * gst.SECOND
@@ -269,7 +268,6 @@ class TestTrackObject(TestCase):
obj.start = 3 * gst.SECOND
obj.duration = DURATION
-
# create a zig-zag volume curve
interpolator = obj.getInterpolator("volume")
expected = dict(((t * gst.SECOND, (t % 2, gst.INTERPOLATE_LINEAR))
@@ -341,7 +339,6 @@ class TestTrackObject(TestCase):
obj.start = 3 * gst.SECOND
obj.duration = DURATION
-
# create a three keyframes at: 3, 6 and 9 seconds
interpolator = obj.getInterpolator("volume")
keyframes = dict(((t * gst.SECOND, (t % 2, gst.INTERPOLATE_LINEAR))
@@ -361,11 +358,12 @@ class TestTrackObject(TestCase):
obj2 = obj.splitObject(8 * gst.SECOND)
- keyframes = getKeyframes(obj)
+ keyframes = getKeyframes(obj)
keyframes2 = getKeyframes(obj2)
self.failUnlessEqual(keyframes, expected)
self.failUnlessEqual(keyframes2, expected2)
+
class TestTrack(TestCase):
def setUp(self):
TestCase.setUp(self)
diff --git a/tests/test_transitions.py b/tests/test_transitions.py
index 727a6ef..fb27faf 100644
--- a/tests/test_transitions.py
+++ b/tests/test_transitions.py
@@ -29,6 +29,7 @@ from pitivi.factories.test import AudioTestSourceFactory
from pitivi.timeline.track import TrackError, \
Transition, AudioTransition, VideoTransition
+
class TestTransitions(TestCase):
def setUp(self):
TestCase.setUp(self)
@@ -83,12 +84,12 @@ class TestTransitions(TestCase):
track1.addTransition(tr)
def transitionAddedCb(track, transition):
- values =(names[transition.a], names[transition.b])
+ values = (names[transition.a], names[transition.b])
result.append(values)
transition_objects[values] = transition
def transitionRemovedCb(track, transition):
- values =(names[transition.a], names[transition.b])
+ values = (names[transition.a], names[transition.b])
result.remove(values)
track1.connect("transition-added", transitionAddedCb)
@@ -163,8 +164,6 @@ class TestTransitions(TestCase):
self.failUnlessEqual(at.b_operation.props.start, 10 * gst.SECOND)
self.failUnlessEqual(at.b_operation.props.duration, 5 * gst.SECOND)
-
-
# make A longer
objs["a"].duration = 11 * gst.SECOND
self.failUnlessEqual(vt.start, 10 * gst.SECOND)
@@ -179,8 +178,6 @@ class TestTransitions(TestCase):
self.failUnlessEqual(at.b_operation.props.start, 10 * gst.SECOND)
self.failUnlessEqual(at.b_operation.props.duration, 6 * gst.SECOND)
-
-
# move B earlier
objs["b"].start = 9 * gst.SECOND
self.failUnlessEqual(vt.start, 9 * gst.SECOND)
@@ -232,7 +229,6 @@ class TestTransitions(TestCase):
self.failUnlessEqual(at.a_operation.props.priority, 9)
self.failUnlessEqual(at.b_operation.props.priority, 11)
-
# check controller for odd - even stagger
vt.a.updatePosition(1)
vt.b.updatePosition(2)
@@ -404,7 +400,7 @@ class TestTransitions(TestCase):
removed = set()
def transitionAddedCb(track, transition):
- pair =(names[transition.a], names[transition.b])
+ pair = (names[transition.a], names[transition.b])
result.append(pair)
added.add(pair)
@@ -528,7 +524,6 @@ class TestTransitions(TestCase):
self.failUnlessEqual(track1.valid_arrangement,
True)
-
def testUpdatesAfterEnablingUpdates(self):
factory = self.factory
stream = self.stream
@@ -556,7 +551,7 @@ class TestTransitions(TestCase):
removed = set()
def transitionAddedCb(track, transition):
- pair =(names[transition.a], names[transition.b])
+ pair = (names[transition.a], names[transition.b])
result.append(pair)
added.add(pair)
@@ -684,7 +679,7 @@ class TestTransitions(TestCase):
# check that intiial configuration matches
- expected = ["abcdefghijkl", [0, 1, 2, 3, 4, 5, 6, 7, 0, 8, 9,0]]
+ expected = ["abcdefghijkl", [0, 1, 2, 3, 4, 5, 6, 7, 0, 8, 9, 0]]
verify_result(expected)
# remove a clip, which removes its associated transition
diff --git a/tests/test_undo.py b/tests/test_undo.py
index 12d53f4..4dd1f75 100644
--- a/tests/test_undo.py
+++ b/tests/test_undo.py
@@ -24,6 +24,7 @@ from unittest import TestCase
from pitivi.undo import UndoError, UndoWrongStateError, UndoableAction, \
UndoableActionStack, UndoableActionLog
+
class DummyUndoableAction(UndoableAction):
done_ = True
@@ -35,12 +36,14 @@ class DummyUndoableAction(UndoableAction):
self.done_ = False
self._undone()
+
class TestUndoableAction(TestCase):
def testSimpleSignals(self):
"""
Test signal emission from _done() and _undone().
"""
state = {"done": False}
+
def doneCb(action, val):
state["done"] = val
@@ -61,6 +64,7 @@ class TestUndoableActionStack(TestCase):
Undo an empty stack.
"""
state = {"done": True}
+
def doneCb(action, value):
state["done"] = value
@@ -79,10 +83,12 @@ class TestUndoableActionStack(TestCase):
Test an undo() do() sequence.
"""
state = {"done": True, "actions": 2}
+
def doneCb(action, value):
state["done"] = value
state["done"] = 2
+
class Action(UndoableAction):
def do(self):
state["actions"] += 1
@@ -113,10 +119,12 @@ class TestUndoableActionStack(TestCase):
Undo a stack containing a failing action.
"""
state = {"done": True}
+
def doneCb(action, value):
state["done"] = value
state["actions"] = 2
+
class Action(UndoableAction):
def undo(self):
state["actions"] -= 1
@@ -381,6 +389,7 @@ class TestUndoableActionLog(TestCase):
Test that actions are undone and redone in the correct order.
"""
call_sequence = []
+
class Action(UndoableAction):
def __init__(self, n):
self.n = n
diff --git a/tests/test_utils.py b/tests/test_utils.py
index 1aedd18..e07aa05 100644
--- a/tests/test_utils.py
+++ b/tests/test_utils.py
@@ -31,6 +31,7 @@ second = gst.SECOND
minute = second * 60
hour = minute * 60
+
class TestBeautifyLength(TestCase):
def testBeautifySeconds(self):
self.failUnlessEqual(beautify_length(second), "1 second")
diff --git a/tests/testcomplex.py b/tests/testcomplex.py
index b1dcfb1..d9396b5 100644
--- a/tests/testcomplex.py
+++ b/tests/testcomplex.py
@@ -25,13 +25,14 @@ SOURCES = (
("source3", 10 * gst.SECOND),
)
+
class TestComposition(gobject.GObject):
__gtype_name__ = "TestComposition"
__gsignals__ = {
- "source-added" : (gobject.SIGNAL_RUN_LAST,
+ "source-added": (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_PYOBJECT, )),
- "source-removed" : (gobject.SIGNAL_RUN_LAST,
+ "source-removed": (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_PYOBJECT, )),
}
@@ -46,23 +47,24 @@ class TestComposition(gobject.GObject):
def removeSource(self, source):
self.emit("source-removed", source)
+
class TestTimelineObject(gobject.GObject):
__gtype_name__ = "TestObject"
__gsignals__ = {
- "start-duration-changed" : (gobject.SIGNAL_RUN_LAST,
+ "start-duration-changed": (gobject.SIGNAL_RUN_LAST,
gobject.TYPE_NONE,
(gobject.TYPE_PYOBJECT, gobject.TYPE_PYOBJECT, )),
}
class Factory:
- name=None
+ name = None
def __init__(self, name, start, duration):
gobject.GObject.__init__(self)
self.start = start
self.duration = duration
self.factory = self.Factory()
- self.factory.name=name
+ self.factory.name = name
def setStartDurationTime(self, start=-1, duration=-1):
if start != -1:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]