support/testing: add bats runtime test
Tests the bats-core, bats-support, bats-assert, and bats-file packages. Signed-off-by: Brandon Maier <brandon.maier@collins.com> [yann.morin.1998@free.fr: fix comment of overlay] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
parent
a3d91b0a83
commit
5b016de048
33
support/testing/tests/package/test_bats.py
Normal file
33
support/testing/tests/package/test_bats.py
Normal file
@ -0,0 +1,33 @@
|
||||
import os
|
||||
|
||||
import infra.basetest
|
||||
|
||||
|
||||
class TestBats(infra.basetest.BRTest):
|
||||
config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \
|
||||
"""
|
||||
BR2_ENABLE_LOCALE_WHITELIST=""
|
||||
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
|
||||
BR2_PACKAGE_BASH=y
|
||||
BR2_PACKAGE_BATS_CORE=y
|
||||
BR2_PACKAGE_BATS_ASSERT=y
|
||||
BR2_PACKAGE_BATS_FILE=y
|
||||
BR2_ROOTFS_OVERLAY="{}"
|
||||
BR2_TARGET_ROOTFS_CPIO=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
""".format(
|
||||
# overlay to add a bats test suite
|
||||
infra.filepath("tests/package/test_bats/rootfs-overlay"))
|
||||
|
||||
def test_run(self):
|
||||
cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio")
|
||||
self.emulator.boot(arch="armv5",
|
||||
kernel="builtin",
|
||||
options=["-initrd", cpio_file])
|
||||
self.emulator.login()
|
||||
|
||||
self.assertRunOk("bats --version")
|
||||
|
||||
self.assertRunOk("bats /root/test-bats-core.bats", timeout=5)
|
||||
self.assertRunOk("bats /root/test-bats-assert.bats", timeout=5)
|
||||
self.assertRunOk("bats /root/test-bats-file.bats", timeout=5)
|
@ -0,0 +1,11 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
setup() {
|
||||
bats_load_library bats-support
|
||||
bats_load_library bats-assert
|
||||
}
|
||||
|
||||
@test "bats-assert assert_output" {
|
||||
run echo "Hello World"
|
||||
assert_output "Hello World"
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
@test "bats-core true" {
|
||||
true
|
||||
}
|
||||
|
||||
@test "bats-core run" {
|
||||
run echo "Hello World"
|
||||
[ "$status" -eq 0 ]
|
||||
[ "$output" = "Hello World" ]
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
setup() {
|
||||
bats_load_library bats-support
|
||||
bats_load_library bats-file
|
||||
}
|
||||
|
||||
@test "bats-file assert_exists" {
|
||||
assert_exists /root/test-bats-file.bats
|
||||
}
|
Loading…
Reference in New Issue
Block a user