diff --git a/suite2cases/apropos.json b/suite2cases/apropos.json index f5e4f9f118df9a2e718ccf6f15a925457bd4f50a..c29a1a74319b6c7c7fcdb179135d32130c938712 100644 --- a/suite2cases/apropos.json +++ b/suite2cases/apropos.json @@ -3,6 +3,9 @@ "cases": [ { "name": "oe_test_apropos" + }, + { + "name": "oe_test_apropos_01" } ] diff --git a/testcases/cli-test/apropos/oe_test_apropos_01.sh b/testcases/cli-test/apropos/oe_test_apropos_01.sh new file mode 100644 index 0000000000000000000000000000000000000000..a94fc2efa3d77f52a634afa9dc720bd550a6efe2 --- /dev/null +++ b/testcases/cli-test/apropos/oe_test_apropos_01.sh @@ -0,0 +1,52 @@ +#!/usr/bin/bash + +# Copyright (c) 2025. Huawei Technologies Co.,Ltd.ALL rights reserved. +# This program is licensed under Mulan PSL v2. +# You can use it according to the terms and conditions of the Mulan PSL v2. +# http://license.coscl.org.cn/MulanPSL2 +# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, +# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, +# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. +# See the Mulan PSL v2 for more details. + +# ############################################# +# @Author : yangxi +# @Contact : yangxi@uniontech.com +# @Date : 2025/10/13 +# @License : Mulan PSL v2 +# @Desc : test apropos +# ############################################ + +source "${OET_PATH}/libs/locallibs/common_lib.sh" + +function pre_test() { + LOG_INFO "Start environmental preparation." + DNF_INSTALL "man-db" + mandb > /dev/null 2>&1 + LOG_INFO "End of environmental preparation!" +} + +function run_test() { + LOG_INFO "Start to run apropos functionality test." + apropos ls | head -5 | grep -q "ls" + CHECK_RESULT $? 0 0 "Basic search for 'ls' failed" + apropos "ls" | grep -q "list" + CHECK_RESULT $? 0 0 "Search for 'ls' content failed" + apropos "printf" | grep -q "printf" + CHECK_RESULT $? 0 0 "Search for 'printf' failed" + apropos "file" | head -5 | wc -l | grep -q "[1-9]" + CHECK_RESULT $? 0 0 "Search for 'file' returned no results" + apropos --help 2>&1 | head -2 | grep -q -E "(usage|apropos)" + CHECK_RESULT $? 0 0 "Help option test failed" + apropos --version > /dev/null 2>&1 + CHECK_RESULT $? 0 0 "Apropos command is not available" + LOG_INFO "All apropos functionality tests passed successfully." +} + +function post_test() { + LOG_INFO "Start environment cleanup." + DNF_REMOVE "$@" + LOG_INFO "Finish environment cleanup!" +} + +main "$@"