update testcase for testsuite jzlib-help
This commit is contained in:
@@ -1,43 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/jzlib/jzlib-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_jzlib-help_install",
|
||||
"desc": "测试jzlib-help软件包的安装功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_install",
|
||||
"desc": "Test installation of jzlib-help"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_usage",
|
||||
"desc": "Test basic usage of jzlib-help"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_config",
|
||||
"desc": "Test configuration of jzlib-help"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_uninstall",
|
||||
"desc": "Test uninstallation of jzlib-help"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_check_installed",
|
||||
"desc": "Verify if jzlib-help is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_show_help",
|
||||
"desc": "Test displaying help information"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_basic_operation",
|
||||
"desc": "Test basic command operations"
|
||||
},
|
||||
{
|
||||
"name": "test_jzlib-help_function_version_check",
|
||||
"desc": "Test checking package version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,102 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic command operations
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试基础命令操作
|
||||
|
||||
LOG_INFO "1. 检查测试环境是否已安装jzlib软件包"
|
||||
rpm -q jzlib > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jzlib软件包已安装,标记为已安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jzlib软件包未安装,标记为未安装状态"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "2. 检查yum源中是否存在jzlib软件包"
|
||||
dnf list available jzlib > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jzlib软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "3. 安装jzlib软件包"
|
||||
dnf install -y jzlib > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jzlib软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "4. 测试jzlib帮助命令"
|
||||
jzlib --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "jzlib帮助命令执行失败"
|
||||
|
||||
LOG_INFO "5. 测试jzlib版本命令"
|
||||
jzlib --version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "jzlib版本命令执行失败"
|
||||
|
||||
LOG_INFO "6. 测试不支持的参数"
|
||||
jzlib --invalid-param > /dev/null 2>&1
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "不支持参数检查失败"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "7. 测试基本压缩操作"
|
||||
echo "test data for compression" > test_input.txt
|
||||
jzlib test_input.txt test_output.jz > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "压缩操作失败"
|
||||
|
||||
LOG_INFO "8. 测试解压操作"
|
||||
jzlib -d test_output.jz test_decompressed.txt > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "解压操作失败"
|
||||
|
||||
LOG_INFO "9. 验证压缩解压结果一致性"
|
||||
cmp test_input.txt test_decompressed.txt
|
||||
CHECK_RESULT $? 0 0 "压缩解压结果不一致"
|
||||
|
||||
LOG_INFO "10. 清理测试文件"
|
||||
rm -f test_input.txt test_output.jz test_decompressed.txt
|
||||
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "11. 卸载jzlib软件包"
|
||||
dnf remove -y jzlib > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jzlib软件包失败"
|
||||
else
|
||||
LOG_INFO "11. 保持jzlib软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "12. 验证环境已恢复"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
rpm -q jzlib > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "环境恢复失败,jzlib软件包未被正确卸载"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
rpm -q jzlib > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "环境恢复失败,jzlib软件包丢失"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,84 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify if jzlib-help is installed
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 验证 jzlib-help 是否已安装
|
||||
|
||||
# 定义变量
|
||||
PACKAGE_NAME="jzlib-help"
|
||||
|
||||
# 步骤1: 检查软件包是否在yum源中
|
||||
LOG_INFO "步骤1: 检查软件包是否在yum源中"
|
||||
dnf list available $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2: 检查当前环境是否已安装软件包
|
||||
LOG_INFO "步骤2: 检查当前环境是否已安装软件包"
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 验证软件包是否安装成功
|
||||
LOG_INFO "步骤4: 验证软件包是否安装成功"
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "验证软件包 $PACKAGE_NAME 安装失败"
|
||||
|
||||
# 步骤5: 验证软件包功能是否正常
|
||||
LOG_INFO "步骤5: 验证软件包功能是否正常"
|
||||
# 假设软件包提供了某个命令,这里以"jzlib-help"为例
|
||||
if command -v jzlib-help > /dev/null 2>&1; then
|
||||
jzlib-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行 jzlib-help --help 失败"
|
||||
else
|
||||
# 如果软件包没有提供命令,则检查是否安装了相关文件
|
||||
rpm -ql $PACKAGE_NAME | head -5 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "软件包 $PACKAGE_NAME 未提供有效文件"
|
||||
fi
|
||||
|
||||
# 步骤6: 清理环境
|
||||
LOG_INFO "步骤6: 清理环境"
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "卸载之前安装的软件包 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
else
|
||||
LOG_INFO "保持软件包 $PACKAGE_NAME 的安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,74 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-13
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test configuration of jzlib-help
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试脚本开始
|
||||
LOG_INFO "开始测试 jzlib-help 功能配置"
|
||||
|
||||
# 检查是否已安装 jzlib-help
|
||||
LOG_INFO "检查 jzlib-help 是否已安装"
|
||||
if dnf list installed jzlib-help &>/dev/null; then
|
||||
LOG_INFO "jzlib-help 已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jzlib-help 未安装,将在测试后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否有 jzlib-help
|
||||
LOG_INFO "检查 yum 源中是否有 jzlib-help"
|
||||
if ! dnf list available jzlib-help &>/dev/null; then
|
||||
LOG_ERROR "yum 源中未找到 jzlib-help,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装 jzlib-help
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装 jzlib-help"
|
||||
dnf install -y jzlib-help
|
||||
CHECK_RESULT $? 0 0 "安装 jzlib-help 失败"
|
||||
fi
|
||||
|
||||
# 测试 jzlib-help 的功能配置
|
||||
LOG_INFO "测试 jzlib-help --help 命令"
|
||||
jzlib-help --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "jzlib-help --help 命令执行失败"
|
||||
|
||||
LOG_INFO "测试 jzlib-help 的无效参数"
|
||||
jzlib-help --invalid-param &>/dev/null
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "无效参数未按预期退出码退出"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 环境恢复:如果之前未安装,则卸载 jzlib-help
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载 jzlib-help"
|
||||
dnf remove -y jzlib-help
|
||||
CHECK_RESULT $? 0 0 "卸载 jzlib-help 失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "jzlib-help 功能配置测试完成"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,66 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-13
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test installation of jzlib-help
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test installation of jzlib-help"
|
||||
|
||||
# 检查是否已安装jzlib-help
|
||||
LOG_INFO "检查jzlib-help是否已安装"
|
||||
if dnf list installed jzlib-help &>/dev/null; then
|
||||
LOG_INFO "jzlib-help已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jzlib-help未安装,脚本结束时将卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jzlib-help
|
||||
LOG_INFO "检查yum源中是否有jzlib-help"
|
||||
if ! dnf list available jzlib-help &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jzlib-help"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jzlib-help(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jzlib-help"
|
||||
dnf install -y jzlib-help
|
||||
CHECK_RESULT $? 0 0 "安装jzlib-help失败"
|
||||
fi
|
||||
|
||||
# 测试jzlib-help命令
|
||||
LOG_INFO "测试jzlib-help命令"
|
||||
if ! jzlib-help --help &>/dev/null; then
|
||||
LOG_ERROR "jzlib-help命令不支持或参数错误"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境(如果脚本开始时未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jzlib-help"
|
||||
dnf remove -y jzlib-help
|
||||
CHECK_RESULT $? 0 0 "卸载jzlib-help失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test installation of jzlib-help"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,62 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test displaying help information
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:显示帮助信息"
|
||||
LOG_INFO "步骤1:检查环境中是否已安装jzlib-help软件包"
|
||||
if dnf list installed jzlib-help &>/dev/null; then
|
||||
LOG_INFO "jzlib-help已安装,测试结束后保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "jzlib-help未安装,将在测试过程中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
LOG_INFO "步骤2:检查yum源中是否存在jzlib-help软件包"
|
||||
if ! dnf list available jzlib-help &>/dev/null; then
|
||||
LOG_ERROR "yum源中不存在jzlib-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3:安装jzlib-help软件包"
|
||||
dnf install -y jzlib-help
|
||||
CHECK_RESULT $? 0 0 "安装jzlib-help失败"
|
||||
fi
|
||||
LOG_INFO "步骤4:执行jzlib-help命令显示帮助信息"
|
||||
jzlib-help --help
|
||||
CHECK_RESULT $? 0 0 "执行jzlib-help --help失败"
|
||||
LOG_INFO "步骤5:测试jzlib-help命令不支持无效参数"
|
||||
jzlib-help --invalid-option 2>/dev/null
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "jzlib-help命令未正确处理无效参数"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤6:清理环境"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载jzlib-help软件包"
|
||||
dnf remove -y jzlib-help
|
||||
CHECK_RESULT $? 0 0 "卸载jzlib-help失败"
|
||||
else
|
||||
LOG_INFO "保持jzlib-help软件包安装状态"
|
||||
fi
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,94 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test uninstallation of jzlib-help
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 设置环境变量和常量
|
||||
PACKAGE_NAME="jzlib-help"
|
||||
LOG_INFO "开始测试卸载功能:$PACKAGE_NAME"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "检查yum源中是否存在软件包 $PACKAGE_NAME"
|
||||
dnf list available $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装
|
||||
LOG_INFO "检查 $PACKAGE_NAME 是否已安装"
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
installed=$?
|
||||
|
||||
# 记录初始状态
|
||||
if [ $installed -eq 0 ]; then
|
||||
LOG_INFO "$PACKAGE_NAME 已安装,测试后将保持安装状态"
|
||||
initial_state="installed"
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME 未安装,测试前将先安装"
|
||||
initial_state="not_installed"
|
||||
fi
|
||||
|
||||
# 如果未安装,则先安装
|
||||
if [ $initial_state = "not_installed" ]; then
|
||||
LOG_INFO "安装 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 测试卸载功能
|
||||
LOG_INFO "测试卸载 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
|
||||
|
||||
# 验证卸载是否成功
|
||||
LOG_INFO "验证 $PACKAGE_NAME 是否已卸载"
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "$PACKAGE_NAME 卸载后仍然存在"
|
||||
CHECK_RESULT 1 0 0 "卸载验证失败"
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME 卸载成功"
|
||||
fi
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "恢复测试环境"
|
||||
if [ $initial_state = "installed" ]; then
|
||||
LOG_INFO "重新安装 $PACKAGE_NAME 到初始状态"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "恢复安装 $PACKAGE_NAME 失败"
|
||||
else
|
||||
LOG_INFO "初始状态未安装,无需恢复"
|
||||
fi
|
||||
|
||||
# 最终验证
|
||||
LOG_INFO "验证环境已恢复"
|
||||
if [ $initial_state = "installed" ]; then
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "环境恢复验证失败"
|
||||
else
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
CHECK_RESULT $? 1 0 "环境恢复验证失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:$PACKAGE_NAME 卸载功能测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,74 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-13
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic usage of jzlib-help
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查jzlib-help软件包是否已安装
|
||||
LOG_INFO "检查jzlib-help软件包是否已安装"
|
||||
rpm -q jzlib-help > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jzlib-help软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jzlib-help软件包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jzlib-help软件包
|
||||
LOG_INFO "检查yum源中是否存在jzlib-help软件包"
|
||||
dnf list available jzlib-help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jzlib-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jzlib-help软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装jzlib-help软件包"
|
||||
dnf install -y jzlib-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jzlib-help软件包失败"
|
||||
fi
|
||||
|
||||
# 测试jzlib-help基本用法
|
||||
LOG_INFO "测试jzlib-help基本用法"
|
||||
jzlib-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "jzlib-help --help命令执行失败"
|
||||
|
||||
# 检查不支持的参数(示例)
|
||||
LOG_INFO "检查jzlib-help是否支持不存在的参数--invalid-option"
|
||||
jzlib-help --invalid-option > /dev/null 2>&1
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "jzlib-help不支持参数--invalid-option,但未返回退出码255"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境(如果脚本开始时未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载jzlib-help软件包"
|
||||
dnf remove -y jzlib-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jzlib-help软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,89 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test checking package version
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:检查软件包版本
|
||||
LOG_INFO "开始测试:检查软件包版本"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="jzlib-help-function"
|
||||
|
||||
# 步骤1:检查yum源中是否存在指定软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否存在软件包 ${PACKAGE_NAME}"
|
||||
dnf list available ${PACKAGE_NAME} &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 ${PACKAGE_NAME} 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查是否已安装软件包
|
||||
LOG_INFO "步骤2:检查是否已安装软件包 ${PACKAGE_NAME}"
|
||||
rpm -q ${PACKAGE_NAME} &>/dev/null
|
||||
INSTALLED=$?
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 已安装,保持安装状态"
|
||||
NEED_CLEANUP=0
|
||||
else
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 未安装,将在测试中安装"
|
||||
NEED_CLEANUP=1
|
||||
fi
|
||||
|
||||
# 步骤3:安装软件包(如果未安装)
|
||||
if [ ${NEED_CLEANUP} -eq 1 ]; then
|
||||
LOG_INFO "步骤3:安装软件包 ${PACKAGE_NAME}"
|
||||
dnf install -y ${PACKAGE_NAME} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "安装软件包 ${PACKAGE_NAME} 失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查软件包版本
|
||||
LOG_INFO "步骤4:检查软件包 ${PACKAGE_NAME} 版本"
|
||||
rpm -q ${PACKAGE_NAME} --queryformat "%{VERSION}-%{RELEASE}\n"
|
||||
CHECK_RESULT $? 0 0 "获取软件包版本失败"
|
||||
|
||||
# 步骤5:检查软件包是否支持--version参数
|
||||
LOG_INFO "步骤5:检查软件包命令是否支持版本参数"
|
||||
# 假设软件包的主要命令是 jzlib-help(根据实际软件包调整)
|
||||
COMMAND_NAME="jzlib-help"
|
||||
if command -v ${COMMAND_NAME} &>/dev/null; then
|
||||
${COMMAND_NAME} --version &>/dev/null
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_ERROR "命令 ${COMMAND_NAME} 不支持 --version 参数"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "命令 ${COMMAND_NAME} 支持版本参数"
|
||||
else
|
||||
LOG_INFO "未找到命令 ${COMMAND_NAME},跳过版本参数检查"
|
||||
fi
|
||||
|
||||
# 步骤6:清理环境(如果测试前未安装)
|
||||
if [ ${NEED_CLEANUP} -eq 1 ]; then
|
||||
LOG_INFO "步骤6:卸载测试安装的软件包 ${PACKAGE_NAME}"
|
||||
dnf remove -y ${PACKAGE_NAME} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 ${PACKAGE_NAME} 失败"
|
||||
LOG_INFO "环境已恢复到测试前状态"
|
||||
else
|
||||
LOG_INFO "步骤6:保持软件包安装状态,无需清理"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:检查软件包版本"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,66 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .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 : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-06-15
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jzlib-help软件包的安装功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查jzlib-help软件包是否已安装
|
||||
LOG_INFO "检查jzlib-help软件包是否已安装"
|
||||
rpm -q jzlib-help > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jzlib-help软件包已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jzlib-help软件包未安装,将在测试完成后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jzlib-help软件包
|
||||
LOG_INFO "检查yum源中是否有jzlib-help软件包"
|
||||
dnf list available jzlib-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到jzlib-help软件包"
|
||||
|
||||
# 安装jzlib-help软件包
|
||||
LOG_INFO "开始安装jzlib-help软件包"
|
||||
dnf install -y jzlib-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jzlib-help软件包失败"
|
||||
|
||||
# 验证jzlib-help软件包是否成功安装
|
||||
LOG_INFO "验证jzlib-help软件包是否成功安装"
|
||||
rpm -q jzlib-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "jzlib-help软件包未成功安装"
|
||||
|
||||
# 测试jzlib-help命令功能
|
||||
LOG_INFO "测试jzlib-help命令功能"
|
||||
jzlib-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "jzlib-help命令参数不支持或不存在"
|
||||
|
||||
# 清理环境:如果初始未安装,则卸载jzlib-help软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载jzlib-help软件包"
|
||||
dnf remove -y jzlib-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jzlib-help软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user