From 8f4075451461b51ba912ac655c9e341b2936cad5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Zaoral?= Date: Thu, 2 Feb 2023 13:51:06 +0100 Subject: [PATCH] tests: add a simple test for the Clang analyzer plugin Related: https://github.com/csutils/csmock/issues/93 --- .fmf/version | 1 + plans/example.fmf | 5 +++++ tests/example/main.fmf | 9 +++++++++ tests/example/test.sh | 25 +++++++++++++++++++++++++ 4 files changed, 40 insertions(+) create mode 100644 .fmf/version create mode 100644 plans/example.fmf create mode 100644 tests/example/main.fmf create mode 100755 tests/example/test.sh diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 00000000..d00491fd --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/example.fmf b/plans/example.fmf new file mode 100644 index 00000000..dcb78c2b --- /dev/null +++ b/plans/example.fmf @@ -0,0 +1,5 @@ +summary: Basic analysis tests +discover: + how: fmf +execute: + how: tmt diff --git a/tests/example/main.fmf b/tests/example/main.fmf new file mode 100644 index 00000000..cabeeb4d --- /dev/null +++ b/tests/example/main.fmf @@ -0,0 +1,9 @@ +summary: Test analysis using Clang analyzer +test: ./test.sh +framework: beakerlib +component: + - csmock +recommend: + - csmock + - csmock-plugin-clang +duration: 1h diff --git a/tests/example/test.sh b/tests/example/test.sh new file mode 100755 index 00000000..cfc1aa87 --- /dev/null +++ b/tests/example/test.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PACKAGES="csmock csmock-plugin-clang" + +rlJournalStart + rlPhaseStartSetup + rlRun "tmp=\$(mktemp -d)" 0 "Create tmp directory" + rlRun "pushd $tmp" + + rlRun "dnf -y update coreutils" 0-255 + rlRun "rlFetchSrcForInstalled coreutils" + rlRun "SRPM=\$(find . -name 'coreutils-*.src.rpm')" + rlPhaseEnd + + rlPhaseStartTest + rlRun "csmock -t clang '$SRPM'" 0 "Analyze $SRPM using Clang analyzer" + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $tmp" 0 "Remove tmp directory" + rlPhaseEnd +rlJournalEnd