--- /dev/null
+#!/bin/bash
+
+REQUIREDPTESTS="busybox"
+
+# Check if ptest packages are installed
+command -v ptest-runner >/dev/null 2>&1
+if [ $? -ne 0 ] ; then
+ lava-test-case ptest-installed --result FAIL
+else
+ # Run ptests for specified packages
+ for unit in ${REQUIREDPTESTS}; do
+ UNIT_LOG=$(ptest-runner ${unit} 2> /dev/null)
+ if [ $? -eq 0 ] ; then
+ lava-test-set start ptest-$unit
+ # grep: Get only the ptests results, no log
+ # sed 1: replace spaces by hyphens
+ # sed 2: remove any special character
+ # sed 3: find status and test name, wrap it in a lava-test-case call
+ # sh: execute the lava-test-case commands
+ echo "$UNIT_LOG" | grep -e 'PASS' -e 'FAIL' | sed 's/ /-/g' | sed 's/[^a-z|A-Z|0-9|-]//g' | sed 's/\([^-]*\)-\(.*\)/lava-test-case \2 --result \1/' | sh
+ lava-test-set stop ptest-$unit
+ else
+ lava-test-case ptest-runner ${unit} --result fail
+ fi
+ done
+ lava-test-case ptest-runtime --measurement $SECONDS --units seconds --result PASS
+fi
+
+# Wait for LAVA to parse all the tests from stdout
+sleep 60
\ No newline at end of file
--- /dev/null
+metadata:
+ name: metadata-name-yocto-ptest
+ format: "Lava-Test-Shell Test Definition 1.0"
+ description: "Wrapper around the Yocto ptests for LAVA"
+run:
+ steps:
+ - ./common/scripts/ptest-lava-wrapper.sh