github.com/k8snetworkplumbingwg/sriov-network-operator@v1.2.1-0.20240408194816-2d2e5a45d453/test/scripts/enable-kargs_test.sh (about) 1 #!/bin/bash 2 3 4 SCRIPTPATH="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" 5 SUT_SCRIPT="${SCRIPTPATH}/../../bindata/scripts/enable-kargs.sh" 6 7 8 test_RpmOstree_Add_All_Arguments() { 9 echo "a b c=d eee=fff" > ${FAKE_HOST}/proc/cmdline 10 touch ${FAKE_HOST}/run/ostree-booted 11 12 output=`$SUT_SCRIPT X=Y W=Z` 13 assertEquals 0 $? 14 assertEquals "2" $output 15 16 assertContains "`cat ${FAKE_HOST}/rpm-ostree_calls`" "--append X=Y" 17 assertContains "`cat ${FAKE_HOST}/rpm-ostree_calls`" "--append W=Z" 18 } 19 20 21 test_RpmOstree_Add_Only_Missing_Arguments() { 22 echo "a b c=d eee=fff K=L" > ${FAKE_HOST}/proc/cmdline 23 touch ${FAKE_HOST}/run/ostree-booted 24 25 output=`$SUT_SCRIPT K=L X=Y` 26 assertEquals 0 $? 27 assertEquals "1" $output 28 29 assertContains "`cat ${FAKE_HOST}/rpm-ostree_calls`" "--append X=Y" 30 assertNotContains "`cat ${FAKE_HOST}/rpm-ostree_calls`" "--append K=L" 31 } 32 33 34 ###### Mock /host directory ###### 35 export FAKE_HOST="$(mktemp -d)" 36 trap 'rm -rf -- "$FAKE_HOST"' EXIT 37 38 setUp() { 39 mkdir -p ${FAKE_HOST}/{usr/bin,etc,proc,run} 40 cp $(which cat) ${FAKE_HOST}/usr/bin/ 41 cp $(which test) ${FAKE_HOST}/usr/bin/ 42 cp $(which sh) ${FAKE_HOST}/usr/bin/ 43 cp "$SCRIPTPATH/rpm-ostree_mock" ${FAKE_HOST}/usr/bin/rpm-ostree 44 } 45 46 # Mock chroot calls to the temporary test folder 47 export real_chroot=$(which chroot) 48 chroot() { 49 $real_chroot $FAKE_HOST ${@:2} 50 } 51 export -f chroot 52 53 54 source ${SCRIPTPATH}/shunit2