From f45c872a8c93daf1146718f0f48166ce8816e41d Mon Sep 17 00:00:00 2001 From: hyades Date: Wed, 14 Aug 2013 02:03:42 +0530 Subject: [PATCH] test adding multiple input video streams --- python-api/tests/integrationtests/driver.py | 31 -------------- python-api/tests/integrationtests/test.py | 6 +-- .../tests/integrationtests/test_helpers.py | 41 +++++++++++++++++++ .../tests/integrationtests/test_server.py | 13 ++++-- 4 files changed, 54 insertions(+), 37 deletions(-) delete mode 100644 python-api/tests/integrationtests/driver.py create mode 100644 python-api/tests/integrationtests/test_helpers.py diff --git a/python-api/tests/integrationtests/driver.py b/python-api/tests/integrationtests/driver.py deleted file mode 100644 index 519d4a2..0000000 --- a/python-api/tests/integrationtests/driver.py +++ /dev/null @@ -1,31 +0,0 @@ -from test_server import TestServerStartStop -import os -import glob -import time - - -def test_server_start_stops(): - fails = [] - for i in range(5): - try: - TestServerStartStop(i) - time.sleep(3) - except OSError: - fails.append(i) - - print fails - -def remove_data_files(): - for f1 in glob.glob(os.getcwd()+'/*.data'): - os.remove(f1) - - - - -def main(): - test_server_start_stops() - remove_data_files - - -if __name__== "__main__": - main() \ No newline at end of file diff --git a/python-api/tests/integrationtests/test.py b/python-api/tests/integrationtests/test.py index 0ce952c..86b10d5 100755 --- a/python-api/tests/integrationtests/test.py +++ b/python-api/tests/integrationtests/test.py @@ -47,9 +47,9 @@ for mode in modes: print 'composite mode=', mode test_set_composite_mode(mode) - time.sleep(0.5) - - sources.terminate() + time.sleep(0.6) + output.terminate() + sources.terminate_video() s.terminate() finally: diff --git a/python-api/tests/integrationtests/test_helpers.py b/python-api/tests/integrationtests/test_helpers.py new file mode 100644 index 0000000..1232c65 --- /dev/null +++ b/python-api/tests/integrationtests/test_helpers.py @@ -0,0 +1,41 @@ +import sys +import os +sys.path.insert(0, os.path.abspath(os.path.join(__file__, "../../../"))) + +from gstswitch.server import Server +from gstswitch.helpers import * +import time + +from multiprocessing import Pool + +PATH = '/home/hyades/gst/stage/bin/' + + +class TestTestSourcesPreviews(object): + + NUM = 1 + + def new_video(self, x): + self.sources.new_test_video() + + def sourcepreview(self, num, video_port): + self.sources = TestSources(video_port) + p = Pool(num) + p.map(self.new_video, range(num)) + time.sleep(2) + self.sources.terminate_video() + + def test_sources(self): + video_port = 3000 + s = Server(PATH, video_port=video_port) + try: + s.run() + preview = PreviewSinks() + preview.run() + for i in range(self.NUM): + self.sourcepreview(i+10, video_port) + preview.terminate() + s.terminate() + finally: + if s.proc: + s.kill() \ No newline at end of file diff --git a/python-api/tests/integrationtests/test_server.py b/python-api/tests/integrationtests/test_server.py index 30ae971..c12d5c8 100644 --- a/python-api/tests/integrationtests/test_server.py +++ b/python-api/tests/integrationtests/test_server.py @@ -10,9 +10,12 @@ PATH = '/home/hyades/gst/stage/bin/' + class TestServerStartStop(object): - def __init__(self, num): + NUM = 5 + + def startstop(self): s = Server(path=PATH) try: s.run() @@ -24,6 +27,10 @@ def __init__(self, num): if s.proc: s.kill() assert s.proc is None - print "Test Failed" - + def test_start_stop(self): + for i in range(self.NUM): + self.startstop() + # remove all .data files generated + for f1 in glob.glob(os.getcwd()+'/*.data'): + os.remove(f1) \ No newline at end of file