support/testing: add gst1-python test case

This test case runs a simple pipeline for 100 frames to ensure that
gst1-python works properly.

Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Adam Duskett
2020-03-15 13:10:33 -07:00
committed by Yann E. MORIN
parent ba0d78b907
commit 3f9bf62953
4 changed files with 52 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
#!/usr/bin/env python
"""A simple test that uses gst1-python to run a fake videotestsrc for 100 frames"""
import sys
import gi
import time
gi.require_version('Gst', '1.0')
from gi.repository import Gst, GLib
def main():
# Initializes Gstreamer
Gst.init(sys.argv)
pipeline = Gst.parse_launch("videotestsrc num-buffers=100 ! autovideosink")
bus = pipeline.get_bus()
bus.add_signal_watch()
pipeline.set_state(Gst.State.PLAYING)
loop = GLib.MainLoop()
bus.connect("message", on_message, loop)
loop.run()
pipeline.set_state(Gst.State.EOS)
exit(0)

View File

@@ -0,0 +1,29 @@
import os
from tests.package.test_python import TestPythonPackageBase
class TestGst1Python(TestPythonPackageBase):
__test__ = True
config = TestPythonPackageBase.config + \
"""
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TARGET_ROOTFS_CPIO=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_ARM_EABIHF=y
BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM=y
BR2_PACKAGE_GOBJECT_INTROSPECTION=y
BR2_PACKAGE_GSTREAMER1=y
BR2_PACKAGE_GST1_PYTHON=y
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_GOBJECT=y
"""
def login(self):
cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
self.emulator.boot(arch="armv7",
kernel="builtin",
options=["-initrd", cpio_file])
self.emulator.login()
sample_scripts = ["tests/package/sample_gst1_python.py"]