support/testing/tests/package/test_nodejs: test both host-nodejs-bin and host-nodejs-src

The TestNodeJSModule test triggers the build of host-nodejs to be able
to install third party modules. Now that host-nodejs has two
providers, it makes sense to test both cases, so we duplicate
TestNodeJSModule into TestNodeJsModuleHostBin (which tests the
host-nodejs-bin) and TestNodeJSModuleHostSrc (which tests the
host-nodejs-src).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
This commit is contained in:
Thomas Petazzoni 2022-09-25 22:40:29 +02:00 committed by Arnout Vandecappelle
parent 0fd6954fcb
commit 3a1b68955c

View File

@ -27,7 +27,7 @@ class TestNodeJSBasic(infra.basetest.BRTest):
self.assertRunOk("node sample_nodejs_basic.js")
class TestNodeJSModule(infra.basetest.BRTest):
class TestNodeJSModuleHostBin(infra.basetest.BRTest):
config = \
"""
BR2_arm=y
@ -36,6 +36,33 @@ class TestNodeJSModule(infra.basetest.BRTest):
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_NODEJS=y
BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL="lodash"
BR2_PACKAGE_HOST_NODEJS_BIN=y
BR2_TARGET_ROOTFS_CPIO=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_ROOTFS_POST_BUILD_SCRIPT="{}"
BR2_ROOTFS_POST_SCRIPT_ARGS="{}"
""".format(infra.filepath("tests/package/copy-sample-script-to-target.sh"),
infra.filepath("tests/package/sample_nodejs_module.js"))
def test_run(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()
self.assertRunOk("node sample_nodejs_module.js")
class TestNodeJSModuleHostSrc(infra.basetest.BRTest):
config = \
"""
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_NODEJS=y
BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL="lodash"
BR2_PACKAGE_HOST_NODEJS_SRC=y
BR2_TARGET_ROOTFS_CPIO=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_ROOTFS_POST_BUILD_SCRIPT="{}"