test_gnuradio.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import os
  2. import infra.basetest
  3. class TestGnuradio(infra.basetest.BRTest):
  4. # infra.basetest.BASIC_TOOLCHAIN_CONFIG cannot be used as it does
  5. # not include: BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
  6. # needed by gnuradio
  7. config = \
  8. """
  9. BR2_aarch64=y
  10. BR2_TOOLCHAIN_EXTERNAL=y
  11. BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
  12. BR2_LINUX_KERNEL=y
  13. BR2_LINUX_KERNEL_CUSTOM_VERSION=y
  14. BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.39"
  15. BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
  16. BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config"
  17. BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
  18. BR2_PACKAGE_GNURADIO=y
  19. BR2_PACKAGE_GNURADIO_BLOCKS=y
  20. BR2_PACKAGE_GNURADIO_PYTHON=y
  21. BR2_PACKAGE_PYTHON3=y
  22. BR2_ROOTFS_OVERLAY="{}"
  23. BR2_TARGET_ROOTFS_CPIO=y
  24. BR2_TARGET_ROOTFS_CPIO_GZIP=y
  25. # BR2_TARGET_ROOTFS_TAR is not set
  26. """.format(
  27. # overlay to add a gnuradio python test script
  28. infra.filepath("tests/package/test_gnuradio/rootfs-overlay"))
  29. def test_run(self):
  30. img = os.path.join(self.builddir, "images", "rootfs.cpio.gz")
  31. kern = os.path.join(self.builddir, "images", "Image")
  32. self.emulator.boot(arch="aarch64",
  33. kernel=kern,
  34. kernel_cmdline=["console=ttyAMA0"],
  35. options=["-M", "virt", "-cpu", "cortex-a57", "-m", "256M", "-initrd", img])
  36. self.emulator.login()
  37. self.assertRunOk("/root/test_gnuradio.py", timeout=30)