1*5d94da7fSLaura Nao#!/bin/bash 2*5d94da7fSLaura Nao# SPDX-License-Identifier: GPL-2.0 3*5d94da7fSLaura Nao# 4*5d94da7fSLaura Nao# Copyright (c) 2023 Collabora Ltd 5*5d94da7fSLaura Nao# 6*5d94da7fSLaura Nao# This script tests whether the rust sample modules can 7*5d94da7fSLaura Nao# be added and removed correctly. 8*5d94da7fSLaura Nao# 9*5d94da7fSLaura NaoDIR="$(dirname "$(readlink -f "$0")")" 10*5d94da7fSLaura Nao 11*5d94da7fSLaura NaoKTAP_HELPERS="${DIR}/../kselftest/ktap_helpers.sh" 12*5d94da7fSLaura Naoif [ -e "$KTAP_HELPERS" ]; then 13*5d94da7fSLaura Nao source "$KTAP_HELPERS" 14*5d94da7fSLaura Naoelse 15*5d94da7fSLaura Nao echo "$KTAP_HELPERS file not found [SKIP]" 16*5d94da7fSLaura Nao exit 4 17*5d94da7fSLaura Naofi 18*5d94da7fSLaura Nao 19*5d94da7fSLaura Naorust_sample_modules=("rust_minimal" "rust_print") 20*5d94da7fSLaura Nao 21*5d94da7fSLaura Naoktap_print_header 22*5d94da7fSLaura Nao 23*5d94da7fSLaura Naofor sample in "${rust_sample_modules[@]}"; do 24*5d94da7fSLaura Nao if ! /sbin/modprobe -n -q "$sample"; then 25*5d94da7fSLaura Nao ktap_skip_all "module $sample is not found in /lib/modules/$(uname -r)" 26*5d94da7fSLaura Nao exit "$KSFT_SKIP" 27*5d94da7fSLaura Nao fi 28*5d94da7fSLaura Naodone 29*5d94da7fSLaura Nao 30*5d94da7fSLaura Naoktap_set_plan "${#rust_sample_modules[@]}" 31*5d94da7fSLaura Nao 32*5d94da7fSLaura Naofor sample in "${rust_sample_modules[@]}"; do 33*5d94da7fSLaura Nao if /sbin/modprobe -q "$sample"; then 34*5d94da7fSLaura Nao /sbin/modprobe -q -r "$sample" 35*5d94da7fSLaura Nao ktap_test_pass "$sample" 36*5d94da7fSLaura Nao else 37*5d94da7fSLaura Nao ktap_test_fail "$sample" 38*5d94da7fSLaura Nao fi 39*5d94da7fSLaura Naodone 40*5d94da7fSLaura Nao 41*5d94da7fSLaura Naoktap_finished 42