This commit is contained in:
2026-04-19 09:04:59 +08:00
218 changed files with 0 additions and 16882 deletions

View File

@@ -1,38 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/libhbalinux/libhbalinux-devel",
"machine num": 1,
"cases": [
{
"name": "test_libhbalinux-devel_function_init",
"desc": "Test the initialization of the library"
},
{
"name": "test_libhbalinux-devel_function_open",
"desc": "Test the open operation of the library"
},
{
"name": "test_libhbalinux-devel_function_pkg_install",
"desc": "Test the installation of the libhbalinux-devel package"
},
{
"name": "test_libhbalinux-devel_function_pkg_remove",
"desc": "Test the removal of the libhbalinux-devel package"
},
{
"name": "test_libhbalinux-devel_function_pkg_info",
"desc": "Test querying package information"
},
{
"name": "test_libhbalinux-devel_function_hba_api",
"desc": "Test basic HBA API functionality"
},
{
"name": "test_libhbalinux-devel_function_dev_list",
"desc": "Test listing available HBA devices"
},
{
"name": "test_libhbalinux-devel_function_dev_info",
"desc": "Test getting HBA device information"
}
]
}

View File

@@ -10,169 +10,13 @@
"name": "test_libvirt-daemon-driver-qemu_function_version",
"desc": "测试查询软件包版本信息"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_guest_xml",
"desc": "测试使用一个有效的GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s",
"desc": "测试使用-s参数加载一个密钥文件运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_guest_xml",
"desc": "测试使用-s参数加载一个密钥文件并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r",
"desc": "测试使用-r参数指定根目录运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_guest_xml",
"desc": "测试使用-r参数指定根目录并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_d",
"desc": "测试使用-d参数启用调试输出运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_d_guest_xml",
"desc": "测试使用-d参数启用调试输出并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_v",
"desc": "测试使用-v参数启用详细输出运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_v_guest_xml",
"desc": "测试使用-v参数启用详细输出并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r",
"desc": "测试同时使用-s和-r参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_guest_xml",
"desc": "测试同时使用-s和-r参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_d",
"desc": "测试同时使用-s和-d参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_d_guest_xml",
"desc": "测试同时使用-s和-d参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_v",
"desc": "测试同时使用-s和-v参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_v_guest_xml",
"desc": "测试同时使用-s和-v参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_d",
"desc": "测试同时使用-r和-d参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_d_guest_xml",
"desc": "测试同时使用-r和-d参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_v",
"desc": "测试同时使用-r和-v参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_v_guest_xml",
"desc": "测试同时使用-r和-v参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_d_v",
"desc": "测试同时使用-d和-v参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_d_v_guest_xml",
"desc": "测试同时使用-d和-v参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_d",
"desc": "测试同时使用-s、-r和-d参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_d_guest_xml",
"desc": "测试同时使用-s、-r和-d参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_v",
"desc": "测试同时使用-s、-r和-v参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_v_guest_xml",
"desc": "测试同时使用-s、-r和-v参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_d_v",
"desc": "测试同时使用-s、-d和-v参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_d_v_guest_xml",
"desc": "测试同时使用-s、-d和-v参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_d_v",
"desc": "测试同时使用-r、-d和-v参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_r_d_v_guest_xml",
"desc": "测试同时使用-r、-d和-v参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_d_v",
"desc": "测试同时使用-s、-r、-d和-v所有参数运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_virt-qemu-run_s_r_d_v_guest_xml",
"desc": "测试同时使用-s、-r、-d和-v所有参数并指定GUEST-XML-FILE运行virt-qemu-run命令"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_install",
"desc": "测试软件包安装"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_uninstall",
"desc": "测试软件包卸载"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_service_status",
"desc": "测试libvirtd服务状态"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_guest_define",
"desc": "测试定义虚拟机"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_guest_start",
"desc": "测试启动虚拟机"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_guest_stop",
"desc": "测试停止虚拟机"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_guest_destroy",
"desc": "测试销毁虚拟机"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_guest_undefine",
"desc": "测试取消定义虚拟机"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_list_guests",
"desc": "测试列出虚拟机列表"
},
{
"name": "test_libvirt-daemon-driver-qemu_function_network_status",
"desc": "测试默认网络状态"
}
]
}

View File

@@ -1,22 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/lksctp-tools/lksctp-tools-help",
"machine num": 1,
"cases": [
{
"name": "test_lksctp-tools-help_function_install",
"desc": "测试通过包管理器安装lksctp-tools-help软件包"
},
{
"name": "test_lksctp-tools-help_function_remove",
"desc": "测试通过包管理器卸载lksctp-tools-help软件包"
},
{
"name": "test_lksctp-tools-help_function_check_help",
"desc": "测试软件包安装后是否提供了帮助文档或手册页"
},
{
"name": "test_lksctp-tools-help_function_verify_content",
"desc": "验证帮助文档中是否包含lksctp-tools相关的关键信息"
}
]
}

View File

@@ -1,14 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/proguard/proguard-help",
"machine num": 1,
"cases": [
{
"name": "test_proguard-help_function_depend",
"desc": "Test basic dependency"
},
{
"name": "test_proguard-help_function_config",
"desc": "Test configuration parsing"
}
]
}

View File

@@ -10,10 +10,6 @@
"name": "test_soxr-devel_function_check_files",
"desc": "测试安装后关键的开发文件如头文件soxr.h和库文件libsoxr.so存在于标准系统路径中。"
},
{
"name": "test_soxr-devel_function_compile_link",
"desc": "测试使用soxr库进行简单的编译和链接验证开发环境可用性。"
},
{
"name": "test_soxr-devel_function_uninstall",
"desc": "测试使用包管理器成功卸载soxr-devel包并确认相关文件被移除。"

View File

@@ -10,14 +10,6 @@
{
"name": "test_texlive-arcs-doc_remove",
"desc": "测试texlive-arcs-doc软件包的卸载功能验证卸载过程是否正常完成"
},
{
"name": "test_texlive-arcs-doc_existence",
"desc": "测试texlive-arcs-doc软件包的文档文件是否存在验证核心文档已安装"
},
{
"name": "test_texlive-arcs-doc_info",
"desc": "测试texlive-arcs-doc软件包的包信息查询功能验证包信息可正确获取"
}
]
}

View File

@@ -12,125 +12,10 @@
"desc": "测试texlive-copyrightbox-doc软件包的卸载功能验证是否能够正确从系统中卸载",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_upgrade",
"desc": "测试texlive-copyrightbox-doc软件包的升级功能验证是否能够正确升级到新版本",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_downgrade",
"desc": "测试texlive-copyrightbox-doc软件包的降级功能验证是否能够正确降级到旧版本",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_rollback",
"desc": "测试texlive-copyrightbox-doc软件包的回滚功能验证是否能够正确回滚到上一个版本",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_reinstall",
"desc": "测试texlive-copyrightbox-doc软件包的重新安装功能验证是否能够正确重新安装到系统中",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_rollback_upgrade",
"desc": "测试texlive-copyrightbox-doc软件包的升级回滚功能验证是否能够正确从升级后的版本回滚到升级前的版本",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_downgrade_rollback",
"desc": "测试texlive-copyrightbox-doc软件包的降级回滚功能验证是否能够正确从降级后的版本回滚到降级前的版本",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_service_start",
"desc": "测试texlive-copyrightbox-doc软件包提供的服务的启动功能验证服务是否能够正常启动",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_service_stop",
"desc": "测试texlive-copyrightbox-doc软件包提供的服务的停止功能验证服务是否能够正常停止",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_service_restart",
"desc": "测试texlive-copyrightbox-doc软件包提供的服务的重启功能验证服务是否能够正常重启",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_service_status",
"desc": "测试texlive-copyrightbox-doc软件包提供的服务的状态查询功能验证服务状态是否能够正确查询",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_service_config",
"desc": "测试texlive-copyrightbox-doc软件包提供的服务的配置功能验证服务配置是否能够正确修改和生效",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_service_log",
"desc": "测试texlive-copyrightbox-doc软件包提供的服务的日志查看功能验证服务日志是否能够正确查看",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_dependency_check",
"desc": "测试texlive-copyrightbox-doc软件包的依赖检查功能验证安装时是否能够正确检测并满足所有依赖关系",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_dependency_install",
"desc": "测试texlive-copyrightbox-doc软件包的依赖安装功能验证是否能够正确安装所有依赖包",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_checksum",
"desc": "测试texlive-copyrightbox-doc软件包的校验和验证功能验证软件包完整性是否能够正确校验",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_dependency_uninstall",
"desc": "测试texlive-copyrightbox-doc软件包的依赖卸载功能验证卸载时是否能够正确移除所有依赖包",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_signature",
"desc": "测试texlive-copyrightbox-doc软件包的签名验证功能验证软件包签名是否能够正确校验",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_installation",
"desc": "测试texlive-copyrightbox-doc软件包的安装验证功能验证软件包是否成功安装并包含所有必要的文件",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_configuration",
"desc": "测试texlive-copyrightbox-doc软件包的配置验证功能验证软件包配置文件是否正确生成并生效",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_upgrade",
"desc": "测试texlive-copyrightbox-doc软件包的升级验证功能验证升级后软件包是否包含所有必要的文件且功能正常",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_downgrade",
"desc": "测试texlive-copyrightbox-doc软件包的降级验证功能验证降级后软件包是否包含所有必要的文件且功能正常",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_rollback",
"desc": "测试texlive-copyrightbox-doc软件包的回滚验证功能验证回滚后软件包是否包含所有必要的文件且功能正常",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_command_help",
"desc": "测试texlive-copyrightbox-doc软件包提供的命令的帮助功能验证命令是否能够正确显示帮助信息",
"machine num": 1
},
{
"name": "test_texlive-copyrightbox-doc_verify_command_usage",
"desc": "测试texlive-copyrightbox-doc软件包提供的命令的使用说明功能验证命令是否能够正确显示使用说明信息",
"machine num": 1
}
]
}

View File

@@ -1,26 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-lcg",
"machine num": 1,
"cases": [
{
"name": "test_texlive-lcg_function_install",
"desc": "Test installation of texlive-lcg package"
},
{
"name": "test_texlive-lcg_function_uninstall",
"desc": "Test removal of texlive-lcg package"
},
{
"name": "test_texlive-lcg_function_check",
"desc": "Check if texlive-lcg is installed"
},
{
"name": "test_texlive-lcg_function_basic_usage",
"desc": "Test basic lcg command usage"
},
{
"name": "test_texlive-lcg_function_help",
"desc": "Test help output of lcg command"
}
]
}

View File

@@ -9,18 +9,6 @@
{
"name": "test_texlive-ledmac-doc_function_remove",
"desc": "Test package removal"
},
{
"name": "test_texlive-ledmac-doc_function_doc_exists",
"desc": "Test documentation files existence"
},
{
"name": "test_texlive-ledmac-doc_function_manpage",
"desc": "Test manual page accessibility"
},
{
"name": "test_texlive-ledmac-doc_function_info_page",
"desc": "Test info page accessibility"
}
]
}

View File

@@ -10,14 +10,6 @@
{
"name": "test_texlive-metafont-beginners-doc_verify",
"desc": "验证软件包 texlive-metafont-beginners-doc 是否已正确安装到系统中。"
},
{
"name": "test_texlive-metafont-beginners-doc_content",
"desc": "检查软件包 texlive-metafont-beginners-doc 安装后其文档文件如PDF、info、man页是否存在于标准文档路径下。"
},
{
"name": "test_texlive-metafont-beginners-doc_remove",
"desc": "测试软件包 texlive-metafont-beginners-doc 的卸载功能,验证卸载过程是否干净彻底。"
}
]
}

View File

@@ -1,10 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/uwsgi/uwsgi-logger-file",
"machine num": 1,
"cases": [
{
"name": "test_uwsgi-logger-file_function_logging",
"desc": "Test basic logging functionality"
}
]
}

View File

@@ -1,101 +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-06
# @License : Mulan PSL v2
# @Desc : Test getting HBA device information
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 判断是否已安装libhbalinux-devel包
LOG_INFO "检查是否已安装libhbalinux-devel包"
rpm -q libhbalinux-devel > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libhbalinux-devel已安装标记为保持安装状态"
ALREADY_INSTALLED=1
else
LOG_INFO "libhbalinux-devel未安装标记为需要清理"
ALREADY_INSTALLED=0
fi
# 检查yum源中是否有libhbalinux-devel包
LOG_INFO "检查yum源中是否有libhbalinux-devel包"
dnf list available libhbalinux-devel > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中未找到libhbalinux-devel包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libhbalinux-devel包退出测试"
exit 255
fi
# 如果未安装则安装libhbalinux-devel包
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "安装libhbalinux-devel包"
dnf install -y libhbalinux-devel
CHECK_RESULT $? 0 0 "安装libhbalinux-devel包失败"
fi
# 测试获取HBA设备信息
LOG_INFO "测试获取HBA设备信息"
# 假设获取HBA设备信息的命令为hba_dev_info
command -v hba_dev_info > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "hba_dev_info命令不存在或不支持退出测试"
# 清理环境
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "清理环境卸载libhbalinux-devel包"
dnf remove -y libhbalinux-devel
fi
exit 255
fi
# 执行hba_dev_info命令
LOG_INFO "执行hba_dev_info命令"
hba_dev_info
CHECK_RESULT $? 0 0 "获取HBA设备信息失败"
# 测试带参数的hba_dev_info命令假设支持-l参数
LOG_INFO "测试带参数的hba_dev_info命令"
hba_dev_info -l
CHECK_RESULT $? 0 0 "带参数的hba_dev_info命令执行失败"
# 测试不支持的参数(假设不支持-x参数
LOG_INFO "测试不支持的参数"
hba_dev_info -x > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_INFO "不支持的参数处理正确"
else
LOG_ERROR "不支持的参数未正确处理,退出测试"
# 清理环境
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "清理环境卸载libhbalinux-devel包"
dnf remove -y libhbalinux-devel
fi
exit 255
fi
# 清理环境
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "清理环境卸载libhbalinux-devel包"
dnf remove -y libhbalinux-devel
CHECK_RESULT $? 0 0 "卸载libhbalinux-devel包失败"
else
LOG_INFO "保持libhbalinux-devel包安装状态"
fi
LOG_INFO "测试完成获取HBA设备信息测试通过"
}
main "$@"

View File

@@ -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 : 2026-03-06
# @License : Mulan PSL v2
# @Desc : Test listing available HBA devices
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试列出可用HBA设备"
LOG_INFO "步骤1检查libhbalinux-devel软件包是否已安装"
if rpm -q libhbalinux-devel > /dev/null 2>&1; then
LOG_INFO "libhbalinux-devel软件包已安装脚本结束时将保持安装状态"
INSTALLED_BEFORE=true
else
LOG_INFO "libhbalinux-devel软件包未安装"
INSTALLED_BEFORE=false
fi
LOG_INFO "步骤2检查yum源中是否有libhbalinux-devel软件包"
if ! dnf list available libhbalinux-devel > /dev/null 2>&1; then
LOG_ERROR "yum源中未找到libhbalinux-devel软件包"
exit 255
fi
if [ "$INSTALLED_BEFORE" = "false" ]; then
LOG_INFO "步骤3安装libhbalinux-devel软件包"
dnf install -y libhbalinux-devel
CHECK_RESULT $? 0 0 "安装libhbalinux-devel软件包失败"
fi
LOG_INFO "步骤4检查hbalist命令是否存在"
if ! command -v hbalist > /dev/null 2>&1; then
LOG_ERROR "hbalist命令不存在"
exit 255
fi
LOG_INFO "步骤5执行hbalist命令列出可用HBA设备"
hbalist
CHECK_RESULT $? 0 0 "执行hbalist命令失败"
LOG_INFO "步骤6检查hbalist命令是否支持-l参数"
if ! hbalist -h 2>&1 | grep -q "\-l"; then
LOG_ERROR "hbalist命令不支持-l参数"
exit 255
fi
LOG_INFO "步骤7执行hbalist -l命令列出可用HBA设备详细信息"
hbalist -l
CHECK_RESULT $? 0 0 "执行hbalist -l命令失败"
if [ "$INSTALLED_BEFORE" = "false" ]; then
LOG_INFO "步骤8卸载libhbalinux-devel软件包"
dnf remove -y libhbalinux-devel
CHECK_RESULT $? 0 0 "卸载libhbalinux-devel软件包失败"
fi
LOG_INFO "测试完成成功列出可用HBA设备"
}
main "$@"

View File

@@ -1,86 +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-06
# @License : Mulan PSL v2
# @Desc : Test basic HBA API functionality
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试基本HBA API功能
LOG_INFO "开始测试基本HBA API功能"
# 检查软件包是否存在
LOG_INFO "检查libhbalinux-devel软件包是否在yum源中"
if ! dnf list available libhbalinux-devel > /dev/null 2>&1; then
LOG_ERROR "libhbalinux-devel软件包不在yum源中"
exit 255
fi
# 检查当前是否已安装
LOG_INFO "检查libhbalinux-devel软件包是否已安装"
if rpm -q libhbalinux-devel > /dev/null 2>&1; then
LOG_INFO "libhbalinux-devel软件包已安装"
ALREADY_INSTALLED=true
else
LOG_INFO "libhbalinux-devel软件包未安装"
ALREADY_INSTALLED=false
fi
# 如果未安装,则安装软件包
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "安装libhbalinux-devel软件包"
dnf install -y libhbalinux-devel
CHECK_RESULT $? 0 0 "安装libhbalinux-devel软件包失败"
fi
# 测试基本HBA API功能
LOG_INFO "测试HBA API基本功能 - 列出HBA适配器"
if ! command -v hbainfo > /dev/null 2>&1; then
LOG_ERROR "hbainfo命令不存在或不支持"
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "卸载libhbalinux-devel软件包"
dnf remove -y libhbalinux-devel
fi
exit 255
fi
LOG_INFO "执行hbainfo命令"
hbainfo
CHECK_RESULT $? 0 0 "执行hbainfo命令失败"
LOG_INFO "测试HBA API基本功能 - 获取HBA适配器详细信息"
hbainfo -p
CHECK_RESULT $? 0 0 "获取HBA适配器详细信息失败"
# 如果需要测试多个服务器使用SSH_CMD
# LOG_INFO "在第二个节点上测试HBA API功能"
# SSH_CMD "hbainfo" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
# CHECK_RESULT $? 0 0 "在第二个节点上执行hbainfo失败"
# 清理环境
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "卸载libhbalinux-devel软件包"
dnf remove -y libhbalinux-devel
CHECK_RESULT $? 0 0 "卸载libhbalinux-devel软件包失败"
else
LOG_INFO "保持libhbalinux-devel软件包安装状态"
fi
LOG_INFO "测试基本HBA API功能完成"
}
main "$@"

View File

@@ -1,76 +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-11-28
# @License : Mulan PSL v2
# @Desc : Test the initialization of the library
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试库的初始化功能"
# 检查软件包是否已安装
LOG_INFO "检查 libhbalinux-devel 是否已安装"
if dnf list installed libhbalinux-devel &>/dev/null; then
LOG_INFO "libhbalinux-devel 已安装,脚本结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "libhbalinux-devel 未安装,将在测试后卸载"
INSTALLED=false
fi
# 检查 yum 源中是否存在 libhbalinux-devel
LOG_INFO "检查 yum 源中是否存在 libhbalinux-devel"
if ! dnf list available libhbalinux-devel &>/dev/null; then
LOG_ERROR "yum 源中未找到 libhbalinux-devel 软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装 libhbalinux-devel"
dnf install -y libhbalinux-devel
CHECK_RESULT $? 0 0 "libhbalinux-devel 安装失败"
fi
# 测试初始化功能
LOG_INFO "测试库的初始化功能"
init_output=$(hba_init_test_function)
CHECK_RESULT $? 0 0 "库初始化失败"
# 验证参数支持情况(假设 --help 是支持的参数)
LOG_INFO "验证初始化功能的参数支持情况"
if ! hba_init_test_function --help &>/dev/null; then
LOG_ERROR "初始化功能不支持 --help 参数"
exit 255
fi
# SSH_CMD示例假设需要在第二个节点执行命令
LOG_INFO "在第二个节点上验证初始化功能"
SSH_CMD "hba_init_test_function" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
CHECK_RESULT $? 0 0 "第二个节点上的库初始化失败"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载 libhbalinux-devel"
dnf remove -y libhbalinux-devel
CHECK_RESULT $? 0 0 "libhbalinux-devel卸载失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -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-03
# @License : Mulan PSL v2
# @Desc : Test the open operation of the library
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libhbalinux-devel软件包
LOG_INFO "检查是否已安装libhbalinux-devel软件包"
rpm -q libhbalinux-devel > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libhbalinux-devel已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "libhbalinux-devel未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在libhbalinux-devel软件包
LOG_INFO "检查yum源中是否存在libhbalinux-devel软件包"
dnf list available libhbalinux-devel > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libhbalinux-devel软件包"
exit 255
fi
# 安装libhbalinux-devel软件包如果未安装
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装libhbalinux-devel软件包"
dnf install -y libhbalinux-devel > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libhbalinux-devel失败"
fi
# 测试open操作
LOG_INFO "测试库的open操作"
test_command="hba_open" # 假设测试命令为hba_open
command -v $test_command > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "$test_command命令不存在或不支持"
exit 255
fi
$test_command > /dev/null 2>&1
CHECK_RESULT $? 0 0 "$test_command执行失败"
# SSH到第二个节点测试示例
LOG_INFO "在第二个节点上测试open操作"
SSH_CMD "$test_command" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER > /dev/null 2>&1
CHECK_RESULT $? 0 0 "在第二个节点上执行$test_command失败"
# 清理环境(如果之前未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libhbalinux-devel软件包"
dnf remove -y libhbalinux-devel > /dev/null 2>&1
CHECK_RESULT $?                                                                                                                                                                                                                                                                                               
}
main "$@"

View File

@@ -1,80 +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-06
# @License : Mulan PSL v2
# @Desc : Test querying package information
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试:查询软件包信息"
# 检查是否已安装libhbalinux-devel软件包
LOG_INFO "步骤1检查libhbalinux-devel软件包是否已安装"
if rpm -q libhbalinux-devel &>/dev/null; then
LOG_INFO "libhbalinux-devel软件包已安装测试结束后将保持安装状态"
already_installed=1
else
LOG_INFO "libhbalinux-devel软件包未安装将在测试过程中安装并最终卸载"
already_installed=0
fi
# 检查yum源中是否有libhbalinux-devel软件包
LOG_INFO "步骤2检查yum源中是否存在libhbalinux-devel软件包"
dnf list available libhbalinux-devel &>/dev/null
CHECK_RESULT $? 0 0 "yum源中未找到libhbalinux-devel软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在libhbalinux-devel软件包退出测试"
exit 255
fi
# 如果未安装,则安装软件包
if [ $already_installed -eq 0 ]; then
LOG_INFO "步骤3安装libhbalinux-devel软件包"
dnf install -y libhbalinux-devel
CHECK_RESULT $? 0 0 "安装libhbalinux-devel软件包失败"
fi
# 测试查询软件包信息功能
LOG_INFO "步骤4测试查询软件包信息功能"
# 假设测试命令为hba_pkg_info --version这里使用实际命令替换
# 检查命令是否存在
command -v hba_pkg_info &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "hba_pkg_info命令不存在或不支持退出测试"
exit 255
fi
# 执行查询软件包信息命令
hba_pkg_info --version
CHECK_RESULT $? 0 0 "查询软件包信息失败"
# 如果需要测试第二个服务器使用SSH_CMD示例
# LOG_INFO "步骤5在第二个服务器上执行查询命令"
# SSH_CMD "hba_pkg_info --version" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
# CHECK_RESULT $? 0 0 "在第二个服务器上查询软件包信息失败"
# 环境恢复:如果之前未安装,则卸载软件包
if [ $already_installed -eq 0 ]; then
LOG_INFO "步骤5卸载libhbalinux-devel软件包"
dnf remove -y libhbalinux-devel
CHECK_RESULT $? 0 0 "卸载libhbalinux-devel软件包失败"
fi
LOG_INFO "测试完成:查询软件包信息功能正常"
}
main "$@"

View File

@@ -1,73 +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-06
# @License : Mulan PSL v2
# @Desc : Test the installation of the libhbalinux-devel package
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "开始测试验证libhbalinux-devel软件包安装功能"
# 步骤1检查yum源中是否存在libhbalinux-devel软件包
LOG_INFO "步骤1检查yum源中是否存在libhbalinux-devel软件包"
if ! dnf list available libhbalinux-devel &>/dev/null; then
LOG_ERROR "yum源中未找到libhbalinux-devel软件包"
exit 255
fi
LOG_INFO "yum源中存在libhbalinux-devel软件包"
# 步骤2检查当前环境是否已安装libhbalinux-devel软件包
LOG_INFO "步骤2检查当前环境是否已安装libhbalinux-devel软件包"
if rpm -q libhbalinux-devel &>/dev/null; then
LOG_INFO "libhbalinux-devel软件包已安装脚本结束时将保持安装状态"
ALREADY_INSTALLED=1
else
LOG_INFO "libhbalinux-devel软件包未安装将在测试步骤中安装"
ALREADY_INSTALLED=0
fi
# 步骤3如果未安装则安装软件包
if [ ${ALREADY_INSTALLED} -eq 0 ]; then
LOG_INFO "步骤3安装libhbalinux-devel软件包"
dnf install -y libhbalinux-devel
CHECK_RESULT $? 0 0 "安装libhbalinux-devel软件包失败"
LOG_INFO "libhbalinux-devel软件包安装成功"
fi
# 步骤4验证软件包安装后功能示例检查头文件是否存在
LOG_INFO "步骤4验证libhbalinux-devel软件包安装后功能"
if [ -f /usr/include/hbalinux.h ]; then
LOG_INFO "找到libhbalinux-devel头文件/usr/include/hbalinux.h"
else
LOG_ERROR "未找到libhbalinux-devel头文件/usr/include/hbalinux.h"
exit 1
fi
# 步骤5如果脚本开始时未安装软件包则在测试结束后卸载
if [ ${ALREADY_INSTALLED} -eq 0 ]; then
LOG_INFO "步骤5卸载libhbalinux-devel软件包恢复环境"
dnf remove -y libhbalinux-devel
CHECK_RESULT $? 0 0 "卸载libhbalinux-devel软件包失败"
LOG_INFO "libhbalinux-devel软件包卸载成功环境已恢复"
fi
LOG_INFO "测试完成libhbalinux-devel软件包安装功能验证通过"
}
main "$@"

View File

@@ -1,86 +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-06
# @License : Mulan PSL v2
# @Desc : Test the removal of the libhbalinux-devel package
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试libhbalinux-devel软件包卸载功能
LOG_INFO "开始测试libhbalinux-devel软件包卸载功能"
# 定义软件包名称
PACKAGE_NAME="libhbalinux-devel"
# 步骤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
CHECK_RESULT $? 0 0 "检查软件包是否在yum源中失败"
# 步骤2检查当前是否已安装该软件包
LOG_INFO "步骤2检查当前是否已安装该软件包"
rpm -q $PACKAGE_NAME > /dev/null 2>&1
IS_INSTALLED=$?
# 步骤3如果未安装则安装软件包
if [ $IS_INSTALLED -ne 0 ]; then
LOG_INFO "步骤3安装软件包 $PACKAGE_NAME"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装软件包失败"
INSTALLED_BY_TEST=1
else
LOG_INFO "步骤3软件包已安装跳过安装步骤"
INSTALLED_BY_TEST=0
fi
# 步骤4验证软件包安装成功
LOG_INFO "步骤4验证软件包安装成功"
rpm -q $PACKAGE_NAME > /dev/null 2>&1
CHECK_RESULT $? 0 0 "软件包安装验证失败"
# 步骤5执行软件包卸载测试
LOG_INFO "步骤5执行软件包卸载测试"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "软件包卸载失败"
# 步骤6验证软件包已卸载
LOG_INFO "步骤6验证软件包已卸载"
rpm -q $PACKAGE_NAME > /dev/null 2>&1
CHECK_RESULT $? 1 0 "软件包卸载验证失败"
# 步骤7环境恢复
LOG_INFO "步骤7环境恢复"
if [ $INSTALLED_BY_TEST -eq 1 ]; then
LOG_INFO "测试过程中安装了软件包,无需重新安装"
else
LOG_INFO "重新安装原始软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "重新安装软件包失败"
# 验证重新安装成功
rpm -q $PACKAGE_NAME > /dev/null 2>&1
CHECK_RESULT $? 0 0 "重新安装验证失败"
fi
LOG_INFO "libhbalinux-devel软件包卸载功能测试完成"
}
main "$@"

View File

@@ -1,99 +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-12
# @License : Mulan PSL v2
# @Desc : 测试软件包安装
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试软件包安装
LOG_INFO "开始测试软件包安装功能"
# 定义软件包名称
PACKAGE_NAME="libvirt-daemon-driver-qemu"
# 检查环境是否已安装指定软件包
LOG_INFO "检查环境是否已安装 $PACKAGE_NAME"
if rpm -q $PACKAGE_NAME &>/dev/null; then
LOG_INFO "环境已安装 $PACKAGE_NAME,测试结束后将保持安装状态"
INSTALLED_BEFORE=true
else
LOG_INFO "环境未安装 $PACKAGE_NAME,将进行安装测试"
INSTALLED_BEFORE=false
fi
# 检查yum源中是否存在该软件包
LOG_INFO "检查yum源中是否存在 $PACKAGE_NAME"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在 $PACKAGE_NAME 软件包"
exit 255
fi
LOG_INFO "yum源中存在 $PACKAGE_NAME 软件包"
# 如果未安装,则进行安装测试
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "开始安装 $PACKAGE_NAME"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
LOG_INFO "成功安装 $PACKAGE_NAME"
# 验证安装是否成功
LOG_INFO "验证 $PACKAGE_NAME 是否安装成功"
rpm -q $PACKAGE_NAME
CHECK_RESULT $? 0 0 "验证 $PACKAGE_NAME 安装失败"
LOG_INFO "验证 $PACKAGE_NAME 安装成功"
fi
# 测试软件包基本功能
LOG_INFO "测试 $PACKAGE_NAME 相关命令"
# 这里可以根据实际软件包功能添加测试命令
# 例如检查libvirt服务状态
systemctl status libvirtd &>/dev/null
if [ $? -eq 0 ] || [ $? -eq 3 ]; then
LOG_INFO "libvirtd服务状态检查完成"
else
LOG_ERROR "检查libvirtd服务状态失败"
# 根据需求,这里不退出,继续执行环境恢复
fi
# 环境恢复
LOG_INFO "开始环境恢复"
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "卸载测试安装的 $PACKAGE_NAME"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
LOG_INFO "成功卸载 $PACKAGE_NAME"
# 验证卸载是否成功
LOG_INFO "验证 $PACKAGE_NAME 是否卸载成功"
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_ERROR "验证 $PACKAGE_NAME 卸载失败"
# 尝试再次卸载
dnf remove -y $PACKAGE_NAME
else
LOG_INFO "验证 $PACKAGE_NAME 卸载成功"
fi
else
LOG_INFO "环境恢复:保持 $PACKAGE_NAME 安装状态"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,86 +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-12
# @License : Mulan PSL v2
# @Desc : 测试软件包卸载
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 设置脚本执行选项
set -e
# 定义软件包名称
PACKAGE_NAME="libvirt-daemon-driver-qemu"
# 步骤1检查环境是否已安装目标软件包
LOG_INFO "步骤1检查环境是否已安装目标软件包"
if dnf list installed | grep -q "^${PACKAGE_NAME}\."; then
LOG_INFO "检测到系统已安装 ${PACKAGE_NAME},脚本结束时将保持安装状态"
ALREADY_INSTALLED=true
else
LOG_INFO "系统未安装 ${PACKAGE_NAME},将在测试过程中安装"
ALREADY_INSTALLED=false
fi
# 步骤2检查yum源中是否存在目标软件包
LOG_INFO "步骤2检查yum源中是否存在 ${PACKAGE_NAME} 软件包"
if ! dnf list available "${PACKAGE_NAME}" &>/dev/null; then
LOG_ERROR "yum源中未找到 ${PACKAGE_NAME} 软件包"
exit 255
fi
# 如果环境未安装,则安装软件包
if [ "${ALREADY_INSTALLED}" = "false" ]; then
LOG_INFO "步骤3安装 ${PACKAGE_NAME} 软件包"
dnf install -y "${PACKAGE_NAME}"
CHECK_RESULT $? 0 0 "安装 ${PACKAGE_NAME} 失败"
fi
# 步骤4验证软件包安装成功
LOG_INFO "步骤4验证 ${PACKAGE_NAME} 软件包安装成功"
dnf list installed "${PACKAGE_NAME}"
CHECK_RESULT $? 0 0 "验证 ${PACKAGE_NAME} 安装失败"
# 步骤5测试软件包卸载功能
LOG_INFO "步骤5测试卸载 ${PACKAGE_NAME} 软件包"
dnf remove -y "${PACKAGE_NAME}"
CHECK_RESULT $? 0 0 "卸载 ${PACKAGE_NAME} 失败"
# 步骤6验证软件包已卸载
LOG_INFO "步骤6验证 ${PACKAGE_NAME} 软件包已卸载"
if dnf list installed | grep -q "^${PACKAGE_NAME}\."; then
LOG_ERROR "验证失败:${PACKAGE_NAME} 软件包未被成功卸载"
exit 1
else
LOG_INFO "验证成功:${PACKAGE_NAME} 软件包已被成功卸载"
fi
# 步骤7环境恢复
LOG_INFO "步骤7环境恢复"
if [ "${ALREADY_INSTALLED}" = "true" ]; then
LOG_INFO "重新安装 ${PACKAGE_NAME} 以恢复原始环境"
dnf install -y "${PACKAGE_NAME}"
CHECK_RESULT $? 0 0 "重新安装 ${PACKAGE_NAME} 失败"
LOG_INFO "环境已恢复到原始安装状态"
else
LOG_INFO "原始环境未安装 ${PACKAGE_NAME},无需恢复"
fi
LOG_INFO "测试完成:${PACKAGE_NAME} 软件包卸载功能测试通过"
}
main "$@"

View File

@@ -1,99 +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-12
# @License : Mulan PSL v2
# @Desc : 测试使用-d参数启用调试输出运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 判断是否已经安装libvirt-daemon-driver-qemu
LOG_INFO "检查libvirt-daemon-driver-qemu是否已安装"
rpm -q libvirt-daemon-driver-qemu > /dev/null 2>&1
installed_status=$?
# 记录初始安装状态
if [ $installed_status -eq 0 ]; then
LOG_INFO "libvirt-daemon-driver-qemu已安装"
already_installed=true
else
LOG_INFO "libvirt-daemon-driver-qemu未安装"
already_installed=false
fi
# 检查yum源中是否有该软件包
LOG_INFO "检查yum源中是否存在libvirt-daemon-driver-qemu软件包"
dnf list available libvirt-daemon-driver-qemu > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libvirt-daemon-driver-qemu软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$already_installed" = false ]; then
LOG_INFO "开始安装libvirt-daemon-driver-qemu"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu失败"
LOG_INFO "安装libvirt-daemon-driver-qemu成功"
fi
# 检查virt-qemu-run命令是否存在
LOG_INFO "检查virt-qemu-run命令是否存在"
which virt-qemu-run > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "virt-qemu-run命令不存在"
# 如果之前未安装,则需要卸载已安装的软件包
if [ "$already_installed" = false ]; then
LOG_INFO "清理环境卸载libvirt-daemon-driver-qemu"
dnf remove -y libvirt-daemon-driver-qemu
fi
exit 255
fi
# 检查virt-qemu-run命令是否支持-d参数
LOG_INFO "检查virt-qemu-run命令是否支持-d参数"
virt-qemu-run -h 2>&1 | grep -q "\-d"
if [ $? -ne 0 ]; then
LOG_ERROR "virt-qemu-run命令不支持-d参数"
# 如果之前未安装,则需要卸载已安装的软件包
if [ "$already_installed" = false ]; then
LOG_INFO "清理环境卸载libvirt-daemon-driver-qemu"
dnf remove -y libvirt-daemon-driver-qemu
fi
exit 255
fi
# 测试使用-d参数启用调试输出运行virt-qemu-run命令
LOG_INFO "测试使用-d参数启用调试输出运行virt-qemu-run命令"
virt-qemu-run -d --help > /dev/null 2>&1
CHECK_RESULT $? 0 0 "使用-d参数运行virt-qemu-run命令失败"
LOG_INFO "测试使用-d参数运行virt-qemu-run命令成功"
# 环境清理:如果测试前未安装,则卸载软件包
if [ "$already_installed" = false ]; then
LOG_INFO "清理环境卸载libvirt-daemon-driver-qemu"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu失败"
LOG_INFO "环境清理完成"
else
LOG_INFO "保持libvirt-daemon-driver-qemu安装状态"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,71 +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-12
# @License : Mulan PSL v2
# @Desc : 测试同时使用-d和-v参数运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试同时使用-d和-v参数运行virt-qemu-run命令"
# 检查环境是否已安装libvirt-daemon-driver-qemu包
LOG_INFO "检查libvirt-daemon-driver-qemu是否已安装"
if dnf list installed libvirt-daemon-driver-qemu &>/dev/null; then
LOG_INFO "libvirt-daemon-driver-qemu已安装测试结束后保持安装状态"
installed_before_test=true
else
LOG_INFO "libvirt-daemon-driver-qemu未安装将在测试前安装并在测试后卸载"
installed_before_test=false
fi
# 检查yum源中是否有libvirt-daemon-driver-qemu包
LOG_INFO "检查yum源中是否存在libvirt-daemon-driver-qemu包"
if ! dnf list available libvirt-daemon-driver-qemu &>/dev/null; then
LOG_ERROR "yum源中未找到libvirt-daemon-driver-qemu包"
exit 255
fi
# 如果未安装则安装软件包
if [ "$installed_before_test" = false ]; then
LOG_INFO "安装libvirt-daemon-driver-qemu包"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu失败"
fi
# 检查virt-qemu-run命令是否支持-d和-v参数
LOG_INFO "检查virt-qemu-run命令是否支持-d和-v参数"
virt-qemu-run --help | grep -q -- "-d"
CHECK_RESULT $? 0 0 "virt-qemu-run命令不支持-d参数"
virt-qemu-run --help | grep -q -- "-v"
CHECK_RESULT $? 0 0 "virt-qemu-run命令不支持-v参数"
# 测试同时使用-d和-v参数运行virt-qemu-run命令
LOG_INFO "执行virt-qemu-run -d -v命令"
virt-qemu-run -d -v
CHECK_RESULT $? 0 0 "virt-qemu-run -d -v命令执行失败"
# 清理环境:如果测试前未安装则卸载软件包
if [ "$installed_before_test" = false ]; then
LOG_INFO "卸载libvirt-daemon-driver-qemu包"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,93 +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-12
# @License : Mulan PSL v2
# @Desc : 测试使用-r参数指定根目录运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "开始测试:使用-r参数指定根目录运行virt-qemu-run命令"
# 检查环境是否已安装所需软件包
LOG_INFO "步骤1检查环境中是否已安装libvirt-daemon-driver-qemu软件包"
if dnf list installed libvirt-daemon-driver-qemu &>/dev/null; then
LOG_INFO "环境已安装libvirt-daemon-driver-qemu软件包测试结束后将保持安装状态"
ENV_INSTALLED=1
else
LOG_INFO "环境未安装libvirt-daemon-driver-qemu软件包将在测试步骤中安装"
ENV_INSTALLED=0
fi
# 检查yum源中是否有该软件包
LOG_INFO "步骤2检查yum源中是否存在libvirt-daemon-driver-qemu软件包"
if ! dnf list available libvirt-daemon-driver-qemu &>/dev/null; then
LOG_ERROR "yum源中未找到libvirt-daemon-driver-qemu软件包"
exit 255
fi
# 如果环境未安装,则安装软件包
if [ ${ENV_INSTALLED} -eq 0 ]; then
LOG_INFO "步骤3安装libvirt-daemon-driver-qemu软件包"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu软件包失败"
fi
# 检查virt-qemu-run命令是否存在
LOG_INFO "步骤4检查virt-qemu-run命令是否存在"
if ! command -v virt-qemu-run &>/dev/null; then
LOG_ERROR "virt-qemu-run命令不存在"
exit 255
fi
# 检查virt-qemu-run命令是否支持-r参数
LOG_INFO "步骤5检查virt-qemu-run命令是否支持-r参数"
if ! virt-qemu-run --help 2>&1 | grep -q "\-r"; then
LOG_ERROR "virt-qemu-run命令不支持-r参数"
exit 255
fi
# 测试使用-r参数指定根目录运行virt-qemu-run命令
LOG_INFO "步骤6执行virt-qemu-run命令使用-r参数指定根目录为/tmp/test_root"
virt-qemu-run -r /tmp/test_root --version
CHECK_RESULT $? 0 0 "使用-r参数运行virt-qemu-run命令失败"
LOG_INFO "步骤7验证命令执行结果"
if [ -d "/tmp/test_root" ]; then
LOG_INFO "根目录/tmp/test_root已成功创建"
else
LOG_ERROR "根目录/tmp/test_root未创建"
exit 1
fi
# 清理测试环境
LOG_INFO "步骤8清理测试环境"
rm -rf /tmp/test_root
CHECK_RESULT $? 0 0 "清理测试环境失败"
# 如果测试前未安装,则卸载软件包
if [ ${ENV_INSTALLED} -eq 0 ]; then
LOG_INFO "步骤9卸载libvirt-daemon-driver-qemu软件包"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu软件包失败"
fi
LOG_INFO "测试完成:使用-r参数指定根目录运行virt-qemu-run命令测试成功"
}
main "$@"

View File

@@ -1,82 +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-12
# @License : Mulan PSL v2
# @Desc : 测试同时使用-r和-d参数运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试同时使用-r和-d参数运行virt-qemu-run命令
LOG_INFO "1. 检查测试环境是否已安装libvirt-daemon-driver-qemu软件包"
rpm -q libvirt-daemon-driver-qemu
if [ $? -eq 0 ]; then
LOG_INFO "软件包已安装,测试结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "软件包未安装,测试结束后将卸载软件包"
INSTALLED=0
fi
LOG_INFO "2. 检查yum源中是否存在libvirt-daemon-driver-qemu软件包"
dnf list available libvirt-daemon-driver-qemu > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中不存在libvirt-daemon-driver-qemu软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在libvirt-daemon-driver-qemu软件包"
exit 255
fi
LOG_INFO "3. 检查virt-qemu-run命令是否存在"
which virt-qemu-run > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_INFO "virt-qemu-run命令不存在需要安装软件包"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "4. 安装libvirt-daemon-driver-qemu软件包"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu软件包失败"
fi
fi
LOG_INFO "5. 检查virt-qemu-run命令是否支持-r和-d参数"
virt-qemu-run --help | grep -E "\-r|\-d" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "virt-qemu-run命令不支持-r或-d参数"
if [ $? -ne 0 ]; then
LOG_ERROR "virt-qemu-run命令不支持-r或-d参数"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "清理环境:卸载已安装的软件包"
dnf remove -y libvirt-daemon-driver-qemu
fi
exit 255
fi
LOG_INFO "6. 测试同时使用-r和-d参数运行virt-qemu-run命令"
virt-qemu-run -r test -d test
CHECK_RESULT $? 0 0 "同时使用-r和-d参数运行virt-qemu-run命令失败"
LOG_INFO "7. 清理测试环境"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libvirt-daemon-driver-qemu软件包"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu软件包失败"
else
LOG_INFO "保持libvirt-daemon-driver-qemu软件包安装状态"
fi
LOG_INFO "8. 测试完成"
}
main "$@"

View File

@@ -1,69 +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-12
# @License : Mulan PSL v2
# @Desc : 测试使用-s参数加载一个密钥文件运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试使用-s参数加载一个密钥文件运行virt-qemu-run命令"
LOG_INFO "步骤1: 检查测试环境是否已安装libvirt-daemon-driver-qemu软件包"
if dnf list installed libvirt-daemon-driver-qemu &>/dev/null; then
LOG_INFO "libvirt-daemon-driver-qemu已安装测试完成后将保持安装状态"
INSTALLED_BEFORE=1
else
LOG_INFO "libvirt-daemon-driver-qemu未安装测试中将安装并最终卸载"
INSTALLED_BEFORE=0
fi
LOG_INFO "步骤2: 检查yum源中是否存在libvirt-daemon-driver-qemu软件包"
if ! dnf list available libvirt-daemon-driver-qemu &>/dev/null; then
LOG_ERROR "yum源中未找到libvirt-daemon-driver-qemu软件包"
exit 255
fi
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "步骤3: 安装libvirt-daemon-driver-qemu软件包"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu失败"
fi
LOG_INFO "步骤4: 检查virt-qemu-run命令是否支持-s参数"
virt-qemu-run --help 2>&1 | grep -q "\-s"
CHECK_RESULT $? 0 255 "virt-qemu-run命令不支持-s参数"
LOG_INFO "步骤5: 创建一个临时密钥文件用于测试"
TEST_KEY_FILE=$(mktemp)
echo "test_key_content" > $TEST_KEY_FILE
CHECK_RESULT $? 0 0 "创建临时密钥文件失败"
LOG_INFO "步骤6: 使用-s参数加载密钥文件运行virt-qemu-run命令"
virt-qemu-run -s $TEST_KEY_FILE
RUN_RESULT=$?
LOG_INFO "步骤7: 清理临时密钥文件"
rm -f $TEST_KEY_FILE
CHECK_RESULT $? 0 0 "删除临时密钥文件失败"
LOG_INFO "步骤8: 检查virt-qemu-run命令执行结果"
if [ $RUN_RESULT -ne 0 ]; then
LOG_ERROR "virt-qemu-run命令执行失败退出码: $RUN_RESULT"
exit $RUN_RESULT
fi
LOG_INFO "步骤9: 恢复测试环境"
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "卸载libvirt-daemon-driver-qemu软件包"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,120 +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-12
# @License : Mulan PSL v2
# @Desc : 测试同时使用-s和-d参数运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义颜色输出
LOG_INFO() {
echo -e "\033[32m[INFO]\033[0m $1"
}
LOG_ERROR() {
echo -e "\033[31m[ERROR]\033[0m $1"
}
# 检查软件包是否在yum源中
check_package_in_repo() {
local pkg=$1
dnf list available "$pkg" &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "软件包 $pkg 不在yum源中"
exit 255
fi
}
# 检查命令参数是否支持
check_command_param() {
local cmd=$1
local param=$2
# 这里假设通过--help检查参数实际可能需要根据命令调整
$cmd --help 2>&1 | grep -q "\s$param\s"
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $cmd 不支持参数 $param"
exit 255
fi
}
# 主测试函数
test_virt_qemu_run_s_d() {
LOG_INFO "开始测试同时使用-s和-d参数运行virt-qemu-run命令"
# 定义软件包名称
local pkg_name="libvirt-daemon-driver-qemu"
# 检查软件包是否在yum源中
LOG_INFO "检查软件包 $pkg_name 是否在yum源中"
check_package_in_repo "$pkg_name"
# 检查环境是否已安装
LOG_INFO "检查环境是否已安装 $pkg_name"
if rpm -q "$pkg_name" &> /dev/null; then
LOG_INFO "软件包 $pkg_name 已安装,测试后保持安装状态"
local already_installed=true
else
LOG_INFO "软件包 $pkg_name 未安装,将作为测试步骤安装"
local already_installed=false
fi
# 如果未安装,则安装软件包
if [ "$already_installed" = "false" ]; then
LOG_INFO "安装软件包 $pkg_name"
dnf install -y "$pkg_name"
CHECK_RESULT $? 0 0 "安装软件包 $pkg_name 失败"
fi
# 检查virt-qemu-run命令是否存在
LOG_INFO "检查virt-qemu-run命令是否存在"
which virt-qemu-run &> /dev/null
CHECK_RESULT $? 0 0 "virt-qemu-run命令不存在"
# 检查-s和-d参数是否支持
LOG_INFO "检查virt-qemu-run命令是否支持-s参数"
check_command_param "virt-qemu-run" "-s"
LOG_INFO "检查virt-qemu-run命令是否支持-d参数"
check_command_param "virt-qemu-run" "-d"
# 测试同时使用-s和-d参数运行virt-qemu-run命令
LOG_INFO "测试同时使用-s和-d参数运行virt-qemu-run命令"
# 注意:这里使用--help作为示例实际测试可能需要具体的参数值
virt-qemu-run --help 2>&1 | grep -q "\s-s\s.*\s-d\s"
CHECK_RESULT $? 0 0 "同时使用-s和-d参数运行virt-qemu-run命令失败"
LOG_INFO "测试同时使用-s和-d参数运行virt-qemu-run命令成功"
# 环境清理
LOG_INFO "开始环境清理"
if [ "$already_installed" = "false" ]; then
LOG_INFO "卸载测试安装的软件包 $pkg_name"
dnf remove -y "$pkg_name"
CHECK_RESULT $? 0 0 "卸载软件包 $pkg_name 失败"
else
LOG_INFO "保持软件包 $pkg_name 的安装状态"
fi
LOG_INFO "环境清理完成"
LOG_INFO "测试脚本执行完毕"
}
# 执行测试
test_virt_qemu_run_s_d
}
main "$@"

View File

@@ -1,73 +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-12
# @License : Mulan PSL v2
# @Desc : 测试同时使用-s和-r参数运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试:测试同时使用-s和-r参数运行virt-qemu-run命令"
# 检查软件包是否在yum源中
LOG_INFO "检查libvirt-daemon-driver-qemu软件包是否在yum源中"
dnf list available libvirt-daemon-driver-qemu &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "libvirt-daemon-driver-qemu软件包不在yum源中"
exit 255
fi
# 检查环境是否已安装
LOG_INFO "检查环境是否已安装libvirt-daemon-driver-qemu"
rpm -q libvirt-daemon-driver-qemu &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "环境已安装libvirt-daemon-driver-qemu脚本结束时将保持安装状态"
INSTALLED=1
else
LOG_INFO "环境未安装libvirt-daemon-driver-qemu将进行安装"
INSTALLED=0
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装libvirt-daemon-driver-qemu软件包"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu失败"
fi
# 检查virt-qemu-run命令是否支持-s和-r参数
LOG_INFO "检查virt-qemu-run命令是否支持-s和-r参数"
virt-qemu-run --help 2>&1 | grep -E "\-s|\-r" &>/dev/null
CHECK_RESULT $? 0 0 "virt-qemu-run命令不支持-s或-r参数"
# 测试同时使用-s和-r参数运行virt-qemu-run命令
LOG_INFO "测试同时使用-s和-r参数运行virt-qemu-run命令"
virt-qemu-run -s -r
CHECK_RESULT $? 0 0 "使用-s和-r参数运行virt-qemu-run命令失败"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libvirt-daemon-driver-qemu软件包"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu失败"
else
LOG_INFO "环境已安装libvirt-daemon-driver-qemu保持安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,113 +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-12
# @License : Mulan PSL v2
# @Desc : 测试使用-v参数启用详细输出运行virt-qemu-run命令
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义日志函数
LOG_INFO() {
echo "[INFO] $1"
}
LOG_ERROR() {
echo "[ERROR] $1"
}
# 定义检查结果函数
CHECK_RESULT() {
local actual=$1
local expected=$2
local exit_code=$3
local error_msg=$4
if [ $actual -eq $expected ]; then
LOG_INFO "检查通过: $error_msg"
else
LOG_ERROR "检查失败: $error_msg"
exit $exit_code
fi
}
# 定义SSH命令函数
SSH_CMD() {
local cmd=$1
local node_ip=$2
local node_password=$3
local node_user=$4
# 这里假设SSH_CMD函数已定义直接调用
# 实际使用时可能需要根据具体环境调整
sshpass -p $node_password ssh -o StrictHostKeyChecking=no $node_user@$node_ip "$cmd"
}
# 测试用例描述:测试使用-v参数启用详细输出运行virt-qemu-run命令
# 步骤1检查是否已安装libvirt-daemon-driver-qemu软件包
LOG_INFO "步骤1检查libvirt-daemon-driver-qemu软件包是否已安装"
if dnf list installed libvirt-daemon-driver-qemu &>/dev/null; then
LOG_INFO "libvirt-daemon-driver-qemu已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "libvirt-daemon-driver-qemu未安装将在测试步骤中安装"
INSTALLED=false
fi
# 步骤2检查yum源中是否有libvirt-daemon-driver-qemu软件包
LOG_INFO "步骤2检查yum源中是否有libvirt-daemon-driver-qemu软件包"
if dnf list available libvirt-daemon-driver-qemu &>/dev/null; then
LOG_INFO "yum源中存在libvirt-daemon-driver-qemu软件包"
else
LOG_ERROR "yum源中不存在libvirt-daemon-driver-qemu软件包"
exit 255
fi
# 步骤3如果未安装则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤3安装libvirt-daemon-driver-qemu软件包"
dnf install -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "安装libvirt-daemon-driver-qemu软件包失败"
fi
# 步骤4检查virt-qemu-run命令是否支持-v参数
LOG_INFO "步骤4检查virt-qemu-run命令是否支持-v参数"
if virt-qemu-run --help 2>&1 | grep -q "\-v"; then
LOG_INFO "virt-qemu-run命令支持-v参数"
else
LOG_ERROR "virt-qemu-run命令不支持-v参数"
exit 255
fi
# 步骤5使用-v参数运行virt-qemu-run命令
LOG_INFO "步骤5使用-v参数运行virt-qemu-run命令"
virt-qemu-run -v
CHECK_RESULT $? 0 0 "使用-v参数运行virt-qemu-run命令失败"
# 步骤6清理环境
LOG_INFO "步骤6清理环境"
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libvirt-daemon-driver-qemu软件包"
dnf remove -y libvirt-daemon-driver-qemu
CHECK_RESULT $? 0 0 "卸载libvirt-daemon-driver-qemu软件包失败"
else
LOG_INFO "保持libvirt-daemon-driver-qemu软件包安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,73 +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-24
# @License : Mulan PSL v2
# @Desc : 测试软件包安装后是否提供了帮助文档或手册页
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装lksctp-tools软件包
LOG_INFO "1. 检查lksctp-tools软件包是否已安装"
rpm -q lksctp-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "lksctp-tools软件包已安装脚本结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "lksctp-tools软件包未安装将在测试过程中安装"
INSTALLED=0
fi
# 检查yum源中是否有lksctp-tools软件包
LOG_INFO "2. 检查yum源中是否存在lksctp-tools软件包"
dnf list available lksctp-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到lksctp-tools软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "3. 安装lksctp-tools软件包"
dnf install -y lksctp-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装lksctp-tools软件包失败"
LOG_INFO "lksctp-tools软件包安装成功"
fi
# 测试帮助文档是否存在
LOG_INFO "4. 检查lksctp-tools是否提供了帮助文档"
rpm -ql lksctp-tools | grep -E "/usr/share/doc/|/usr/share/man/" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "lksctp-tools软件包未提供帮助文档或手册页"
# 测试手册页是否存在
LOG_INFO "5. 检查lksctp-tools是否提供了手册页"
man -w lksctp-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "lksctp-tools软件包未提供手册页"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "6. 清理环境卸载lksctp-tools软件包"
dnf remove -y lksctp-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载lksctp-tools软件包失败"
LOG_INFO "环境已恢复到初始状态"
else
LOG_INFO "6. 环境清理保持lksctp-tools软件包安装状态"
fi
LOG_INFO "测试完成lksctp-tools软件包提供了帮助文档和手册页"
}
main "$@"

View File

@@ -1,88 +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-24
# @License : Mulan PSL v2
# @Desc : 测试通过包管理器安装lksctp-tools-help软件包
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义日志函数(根据要求直接使用,但实际脚本中需要定义)
LOG_INFO() {
echo "[INFO] $*"
}
LOG_ERROR() {
echo "[ERROR] $*"
}
# 定义常量
PACKAGE_NAME="lksctp-tools-help"
TEST_COMMAND="sctp_test"
# 步骤1检查当前环境是否已安装指定软件包
LOG_INFO "步骤1检查当前环境是否已安装 ${PACKAGE_NAME} 软件包"
if rpm -q ${PACKAGE_NAME} &>/dev/null; then
LOG_INFO "${PACKAGE_NAME} 已安装,标记为保持安装状态"
INSTALLED_BEFORE="true"
else
LOG_INFO "${PACKAGE_NAME} 未安装,标记为需要清理"
INSTALLED_BEFORE="false"
fi
# 步骤2检查yum源中是否存在该软件包
LOG_INFO "步骤2检查yum源中是否存在 ${PACKAGE_NAME} 软件包"
if ! dnf list available ${PACKAGE_NAME} &>/dev/null; then
LOG_ERROR "yum源中不存在 ${PACKAGE_NAME} 软件包"
exit 255
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验证 ${PACKAGE_NAME} 软件包安装是否成功"
rpm -q ${PACKAGE_NAME}
CHECK_RESULT $? 0 0 "验证 ${PACKAGE_NAME} 安装失败"
# 步骤5测试软件包中的命令功能
LOG_INFO "步骤5测试 ${PACKAGE_NAME} 软件包中的命令功能"
if ! command -v ${TEST_COMMAND} &>/dev/null; then
LOG_ERROR "${TEST_COMMAND} 命令不存在或不支持"
exit 255
fi
# 测试命令基本功能(例如查看帮助信息)
${TEST_COMMAND} --help &>/dev/null
CHECK_RESULT $? 0 0 "测试 ${TEST_COMMAND} 命令失败"
# 步骤6清理环境如果之前未安装则卸载软件包
if [ "${INSTALLED_BEFORE}" = "false" ]; then
LOG_INFO "步骤6清理环境卸载 ${PACKAGE_NAME} 软件包"
dnf remove -y ${PACKAGE_NAME}
CHECK_RESULT $? 0 0 "卸载 ${PACKAGE_NAME} 失败"
LOG_INFO "环境已恢复到初始状态"
else
LOG_INFO "步骤6保持 ${PACKAGE_NAME} 软件包安装状态,无需清理"
fi
LOG_INFO "测试脚本执行完毕"
}
main "$@"

View File

@@ -1,82 +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-24
# @License : Mulan PSL v2
# @Desc : 测试通过包管理器卸载lksctp-tools-help软件包
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 初始化变量
PACKAGE_NAME="lksctp-tools-help"
LOG_INFO "开始测试: 测试通过包管理器卸载lksctp-tools-help软件包"
# 检查yum源中是否存在该软件包
LOG_INFO "步骤1: 检查yum源中是否存在 $PACKAGE_NAME 软件包"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在 $PACKAGE_NAME 软件包"
exit 255
fi
# 检查当前是否已安装
LOG_INFO "步骤2: 检查当前是否已安装 $PACKAGE_NAME"
INSTALLED=false
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "$PACKAGE_NAME 已安装"
INSTALLED=true
else
LOG_INFO "$PACKAGE_NAME 未安装,将进行安装测试"
fi
# 如果未安装,则安装软件包作为测试步骤
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤3: 安装 $PACKAGE_NAME 软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
fi
# 测试卸载功能
LOG_INFO "步骤4: 测试卸载 $PACKAGE_NAME 软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
# 验证卸载结果
LOG_INFO "步骤5: 验证 $PACKAGE_NAME 是否已卸载"
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_ERROR "$PACKAGE_NAME 卸载后仍然存在"
exit 1
else
LOG_INFO "$PACKAGE_NAME 已成功卸载"
fi
# 环境恢复
LOG_INFO "步骤6: 恢复测试环境"
if [ "$INSTALLED" = "true" ]; then
LOG_INFO "重新安装 $PACKAGE_NAME 以恢复原状"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "恢复安装 $PACKAGE_NAME 失败"
LOG_INFO "环境已恢复到测试前的安装状态"
else
LOG_INFO "环境已恢复到测试前的未安装状态"
fi
LOG_INFO "测试完成: 通过包管理器卸载lksctp-tools-help软件包测试成功"
}
main "$@"

View File

@@ -1,108 +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-24
# @License : Mulan PSL v2
# @Desc : 验证帮助文档中是否包含lksctp-tools相关的关键信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义颜色和日志函数
RED="\033[0;31m"
GREEN="\033[0;32m"
YELLOW="\033[0;33m"
NC="\033[0m"
LOG_INFO() {
echo -e "${GREEN}[INFO]${NC} $1"
}
LOG_ERROR() {
echo -e "${RED}[ERROR]${NC} $1"
}
# 定义软件包名称和命令
PACKAGE_NAME="lksctp-tools"
COMMAND="sctp_darn"
HELP_PARAM="-h"
# 步骤1检查软件包是否已在yum源中
LOG_INFO "步骤1检查yum源中是否存在${PACKAGE_NAME}软件包"
if ! dnf list available ${PACKAGE_NAME} &>/dev/null; then
LOG_ERROR "yum源中不存在${PACKAGE_NAME}软件包"
exit 255
fi
CHECK_RESULT $? 0 0 "yum源中不存在${PACKAGE_NAME}软件包"
# 步骤2检查软件包是否已安装
LOG_INFO "步骤2检查${PACKAGE_NAME}软件包是否已安装"
if rpm -q ${PACKAGE_NAME} &>/dev/null; then
LOG_INFO "${PACKAGE_NAME}软件包已安装"
INSTALLED="true"
else
LOG_INFO "${PACKAGE_NAME}软件包未安装"
INSTALLED="false"
fi
# 步骤3如果未安装则安装软件包
if [ "${INSTALLED}" = "false" ]; then
LOG_INFO "步骤3安装${PACKAGE_NAME}软件包"
dnf install -y ${PACKAGE_NAME} &>/dev/null
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
fi
# 步骤4检查命令是否存在
LOG_INFO "步骤4检查${COMMAND}命令是否存在"
if ! command -v ${COMMAND} &>/dev/null; then
LOG_ERROR "${COMMAND}命令不存在"
exit 255
fi
CHECK_RESULT $? 0 0 "${COMMAND}命令不存在"
# 步骤5检查帮助参数是否支持
LOG_INFO "步骤5检查${COMMAND}命令是否支持${HELP_PARAM}参数"
${COMMAND} ${HELP_PARAM} &>/dev/null
if [ $? -eq 255 ]; then
LOG_ERROR "${COMMAND}命令不支持${HELP_PARAM}参数"
exit 255
fi
CHECK_RESULT $? 0 0 "${COMMAND}命令不支持${HELP_PARAM}参数"
# 步骤6验证帮助文档中是否包含lksctp-tools相关的关键信息
LOG_INFO "步骤6验证帮助文档中是否包含lksctp-tools相关的关键信息"
HELP_OUTPUT=$(${COMMAND} ${HELP_PARAM} 2>&1)
EXPECTED_KEYWORDS=("SCTP" "association" "stream")
for keyword in "${EXPECTED_KEYWORDS[@]}"; do
if echo "${HELP_OUTPUT}" | grep -q -i "${keyword}"; then
LOG_INFO "帮助文档中包含关键词: ${keyword}"
else
LOG_ERROR "帮助文档中未包含关键词: ${keyword}"
CHECK_RESULT 1 0 0 "帮助文档中未包含关键词: ${keyword}"
fi
done
# 步骤7清理环境
LOG_INFO "步骤7清理环境"
if [ "${INSTALLED}" = "false" ]; then
LOG_INFO "卸载${PACKAGE_NAME}软件包"
dnf remove -y ${PACKAGE_NAME} &>/dev/null
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
else
LOG_INFO "保持${PACKAGE_NAME}软件包安装状态"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,68 +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-08
# @License : Mulan PSL v2
# @Desc : Test configuration parsing
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试脚本test_proguard-help_function_config
LOG_INFO "开始测试配置解析功能"
# 检查软件包是否已安装
LOG_INFO "检查软件包是否已安装"
if ! dnf list installed proguard &>/dev/null; then
LOG_INFO "软件包未安装,将进行安装"
# 检查yum源中是否有该软件包
if ! dnf list available proguard &>/dev/null; then
LOG_ERROR "yum源中未找到proguard软件包"
exit 255
fi
# 安装软件包
dnf install -y proguard
CHECK_RESULT $? 0 0 "安装proguard失败"
# 标记需要卸载
UNINSTALL_NEEDED=1
else
LOG_INFO "软件包已安装,无需重新安装"
UNINSTALL_NEEDED=0
fi
# 测试配置解析功能
LOG_INFO "测试配置解析功能"
proguard --help
CHECK_RESULT $? 0 0 "proguard --help命令执行失败"
# 检查参数支持情况
LOG_INFO "检查参数支持情况"
if ! proguard --help | grep -q "--config"; then
LOG_ERROR "proguard不支持--config参数"
exit 255
fi
# 清理环境
if [ "$UNINSTALL_NEEDED" -eq 1 ]; then
LOG_INFO "卸载软件包"
dnf remove -y proguard
CHECK_RESULT $? 0 0 "卸载proguard失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,93 +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-11-29
# @License : Mulan PSL v2
# @Desc : Test basic dependency
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查yum源中是否存在指定的软件包
check_package_existence() {
LOG_INFO "检查yum源中是否存在软件包: $1"
dnf list available "$1" &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "软件包 $1 不存在于yum源中"
exit 255
fi
}
# 检查命令参数是否支持
check_command_option() {
LOG_INFO "检查命令 $1 是否支持参数: $2"
if ! $1 --help 2>&1 | grep -q "$2"; then
LOG_ERROR "命令 $1 不支持参数: $2"
exit 255
fi
}
# 安装软件包
install_package() {
LOG_INFO "安装软件包: $1"
dnf install -y "$1"
CHECK_RESULT $? 0 0 "安装软件包 $1 失败"
}
# 卸载软件包
uninstall_package() {
LOG_INFO "卸载软件包: $1"
dnf remove -y "$1" &>/dev/null
CHECK_RESULT $? 0 0 "卸载软件包 $1 失败"
}
# Test basic dependency
LOG_INFO "开始测试基本依赖"
# 步骤1: 检查环境是否已安装指定软件包
LOG_INFO "步骤1: 检查环境是否已安装指定软件包"
check_package_existence "proguard"
# 步骤2: 如果未安装则安装,否则跳过安装步骤
if ! rpm -q proguard &>/dev/null; then
LOG_INFO "步骤2: 安装proguard软件包"
install_package "proguard"
else
LOG_INFO "步骤2: proguard已安装跳过安装步骤"
fi
# 步骤3: 测试proguard帮助命令
LOG_INFO "步骤3: 测试proguard帮助命令"
check_command_option "proguard" "--help"
LOG_INFO "执行proguard --help命令"
proguard --help &>/dev/null
CHECK_RESULT $? 0 0 "执行proguard --help失败"
# Step4: Clean up environment if installed by script
if ! rpm -q proguard &>/dev/null; then
LOG_INFO "Step4: Clean up environment by uninstalling proguard"
uninstall_package "proguard"
else
LOG_INFO “Step4无需清理环境proguard已预先存在”
fi
LOG_INFO “测试完成”
}
main "$@"

View File

@@ -1,136 +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-01
# @License : Mulan PSL v2
# @Desc : 测试使用soxr库进行简单的编译和链接验证开发环境可用性。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 设置环境变量
SCRIPT_DIR=$(cd $(dirname $0); pwd)
LOG_FILE="${SCRIPT_DIR}/test_soxr.log"
# 初始化日志文件
> ${LOG_FILE}
# 定义函数:检查软件包是否存在
check_package_exist() {
local package_name=$1
dnf list installed ${package_name} &> /dev/null
if [ $? -eq 0 ]; then
LOG_INFO "软件包 ${package_name} 已安装。"
return 0
fi
dnf list available ${package_name} &> /dev/null
if [ $? -eq 0 ]; then
LOG_INFO "软件包 ${package_name} 在yum源中存在。"
return 0
else
LOG_ERROR "软件包 ${package_name} 在yum源中不存在。"
return 1
fi
}
# 定义函数:安装软件包
install_package() {
local package_name=$1
LOG_INFO "正在安装软件包 ${package_name}..."
dnf install -y ${package_name} &>> ${LOG_FILE}
CHECK_RESULT $? 0 0 "安装软件包 ${package_name} 失败"
}
# 定义函数:卸载软件包
uninstall_package() {
local package_name=$1
LOG_INFO "正在卸载软件包 ${package_name}..."
dnf remove -y ${package_name} &>> ${LOG_FILE}
CHECK_RESULT $? 0 0 "卸载软件包 ${package_name} 失败"
}
# 定义函数:清理临时文件
cleanup_temp_files() {
LOG_INFO "清理临时文件..."
rm -f test_soxr.c test_soxr_app &>> ${LOG_FILE}
}
# 主测试流程
LOG_INFO "开始测试 soxr-devel 功能编译链接"
# 检查是否已安装 soxr-devel
check_package_exist "soxr-devel"
if [ $? -eq 0 ]; then
LOG_INFO "检测到 soxr-devel 已安装,测试结束后将保持安装状态。"
INSTALLED_BEFORE_TEST=true
else
LOG_INFO "检测到 soxr-devel 未安装,将在测试中安装,并在测试结束后卸载。"
INSTALLED_BEFORE_TEST=false
fi
# 检查 yum 源中是否存在 soxr-devel
LOG_INFO "检查 yum 源中是否存在 soxr-devel 软件包..."
check_package_exist "soxr-devel"
if [ $? -ne 0 ]; then
LOG_ERROR "yum 源中不存在 soxr-devel 软件包,退出测试。"
exit 255
fi
# 如果未安装,则安装 soxr-devel
if [ "${INSTALLED_BEFORE_TEST}" = "false" ]; then
install_package "soxr-devel"
fi
# 创建测试 C 源文件
LOG_INFO "创建测试 C 源文件 test_soxr.c..."
cat > test_soxr.c << "EOF"
#include <soxr.h>
#include <stdio.h>
int main() {
soxr_error_t error;
soxr_t soxr = soxr_create(44100, 48000, 1, &error, NULL, NULL, NULL);
if (soxr == NULL) {
printf("soxr_create failed: %s\n", error);
return 1;
}
printf("soxr_create success\n");
soxr_delete(soxr);
return 0;
}
EOF
CHECK_RESULT $? 0 0 "创建测试 C 源文件失败"
# 编译测试程序
LOG_INFO "编译测试程序 test_soxr_app..."
gcc test_soxr.c -o test_soxr_app -lsoxr &>> ${LOG_FILE}
CHECK_RESULT $? 0 0 "编译测试程序失败"
# 运行测试程序
LOG_INFO "运行测试程序 test_soxr_app..."
./test_soxr_app &>> ${LOG_FILE}
CHECK_RESULT $? 0 0 "运行测试程序失败"
# 清理临时文件
cleanup_temp_files
# 如果测试前未安装 soxr-devel则在测试后卸载
if [ "${INSTALLED_BEFORE_TEST}" = "false" ]; then
uninstall_package "soxr-devel"
fi
LOG_INFO "测试 soxr-devel 功能编译链接完成。"
}
main "$@"

View File

@@ -1,128 +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-04-04
# @License : Mulan PSL v2
# @Desc : 测试texlive-arcs-doc软件包的文档文件是否存在验证核心文档已安装
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义变量
PACKAGE_NAME="texlive-arcs-doc"
LOG_FILE="/tmp/test_texlive-arcs-doc.log"
# 清理日志文件
> $LOG_FILE
# 步骤1检查yum源中是否存在指定软件包
LOG_INFO "步骤1检查yum源中是否存在$PACKAGE_NAME软件包"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在$PACKAGE_NAME软件包"
exit 255
fi
LOG_INFO "yum源中存在$PACKAGE_NAME软件包"
# 步骤2检查软件包是否已安装
LOG_INFO "步骤2检查$PACKAGE_NAME软件包是否已安装"
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "$PACKAGE_NAME软件包已安装"
ALREADY_INSTALLED=1
else
LOG_INFO "$PACKAGE_NAME软件包未安装"
ALREADY_INSTALLED=0
fi
# 步骤3如果未安装则安装软件包
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "步骤3安装$PACKAGE_NAME软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME软件包失败"
LOG_INFO "成功安装$PACKAGE_NAME软件包"
fi
# 步骤4检查软件包文档文件是否存在
LOG_INFO "步骤4检查$PACKAGE_NAME软件包的文档文件是否存在"
# 获取软件包安装的文件列表
rpm -ql $PACKAGE_NAME > /tmp/package_files.txt 2>/dev/null
CHECK_RESULT $? 0 0 "获取$PACKAGE_NAME软件包文件列表失败"
# 检查是否存在文档文件(通常位于/usr/share/doc目录下
DOC_FILES=$(grep -E "/usr/share/doc/.*\.(pdf|html|txt|md|tex)$" /tmp/package_files.txt | head -5)
if [ -z "$DOC_FILES" ]; then
LOG_ERROR "未找到$PACKAGE_NAME软件包的文档文件"
# 如果软件包是本次测试安装的,需要卸载
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "清理环境:卸载$PACKAGE_NAME软件包"
dnf remove -y $PACKAGE_NAME
fi
rm -f /tmp/package_files.txt
exit 1
fi
LOG_INFO "找到$PACKAGE_NAME软件包的文档文件"
echo "$DOC_FILES" | while read file; do
LOG_INFO " - $file"
# 检查文件是否存在
if [ -f "$file" ]; then
LOG_INFO " 文件存在,大小: $(stat -c%s "$file") 字节"
else
LOG_ERROR " 文件不存在"
# 如果软件包是本次测试安装的,需要卸载
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "清理环境:卸载$PACKAGE_NAME软件包"
dnf remove -y $PACKAGE_NAME
fi
rm -f /tmp/package_files.txt
exit 1
fi
done
# 步骤5验证至少一个核心文档文件存在
LOG_INFO "步骤5验证至少一个核心文档文件存在"
# 检查是否存在README或相关说明文档
CORE_DOCS=$(grep -E "(README|INSTALL|CHANGES|LICENSE|MANUAL)" /tmp/package_files.txt | head -3)
if [ -n "$CORE_DOCS" ]; then
LOG_INFO "找到核心文档文件:"
echo "$CORE_DOCS" | while read doc; do
LOG_INFO " - $doc"
done
CHECK_RESULT 0 0 0 "核心文档验证失败"
else
LOG_INFO "未找到标准命名的核心文档,但已确认文档文件存在"
CHECK_RESULT 0 0 0 "文档文件存在性验证失败"
fi
# 步骤6清理测试环境
LOG_INFO "步骤6清理测试环境"
rm -f /tmp/package_files.txt
# 如果软件包是本次测试安装的,需要卸载
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "卸载$PACKAGE_NAME软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME软件包失败"
LOG_INFO "成功卸载$PACKAGE_NAME软件包"
else
LOG_INFO "$PACKAGE_NAME软件包在测试前已安装,保持安装状态"
fi
LOG_INFO "测试完成:$PACKAGE_NAME软件包的文档文件存在性验证成功"
}
main "$@"

View File

@@ -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-04-04
# @License : Mulan PSL v2
# @Desc : 测试texlive-arcs-doc软件包的包信息查询功能验证包信息可正确获取
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
pkg_name="texlive-arcs-doc"
LOG_INFO "开始测试texlive-arcs-doc软件包的包信息查询功能"
LOG_INFO "步骤1检查yum源中是否存在${pkg_name}软件包"
dnf list available ${pkg_name} &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到软件包: ${pkg_name}"
exit 255
fi
LOG_INFO "步骤2检查当前环境是否已安装${pkg_name}软件包"
rpm -q ${pkg_name} &>/dev/null
pkg_installed=$?
if [ ${pkg_installed} -eq 0 ]; then
LOG_INFO "检测到${pkg_name}已安装,测试后保持安装状态"
need_cleanup=0
else
LOG_INFO "检测到${pkg_name}未安装,将在测试过程中安装"
need_cleanup=1
fi
if [ ${need_cleanup} -eq 1 ]; then
LOG_INFO "步骤3安装${pkg_name}软件包"
dnf install -y ${pkg_name}
CHECK_RESULT $? 0 0 "安装${pkg_name}软件包失败"
fi
LOG_INFO "步骤4测试rpm -qi命令查询包信息"
rpm -qi ${pkg_name}
CHECK_RESULT $? 0 0 "执行rpm -qi ${pkg_name}命令失败"
LOG_INFO "步骤5测试rpm -ql命令查询包文件列表"
rpm -ql ${pkg_name} &>/dev/null
CHECK_RESULT $? 0 0 "执行rpm -ql ${pkg_name}命令失败"
LOG_INFO "步骤6验证查询到的包信息包含关键字段"
rpm -qi ${pkg_name} | grep -q "Name.*${pkg_name}"
CHECK_RESULT $? 0 0 "查询的包信息中未找到Name字段"
rpm -qi ${pkg_name} | grep -q "Version"
CHECK_RESULT $? 0 0 "查询的包信息中未找到Version字段"
rpm -qi ${pkg_name} | grep -q "Release"
CHECK_RESULT $? 0 0 "查询的包信息中未找到Release字段"
LOG_INFO "步骤7测试不存在的参数预期失败"
rpm -qi --nonexistent-option ${pkg_name} 2>/dev/null
if [ $? -ne 255 ] && [ $? -ne 1 ]; then
LOG_ERROR "不存在的参数未被正确拒绝"
exit 255
fi
LOG_INFO "步骤8清理测试环境"
if [ ${need_cleanup} -eq 1 ]; then
dnf remove -y ${pkg_name}
CHECK_RESULT $? 0 0 "卸载${pkg_name}软件包失败"
LOG_INFO "已卸载测试安装的${pkg_name}软件包"
else
LOG_INFO "${pkg_name}为预装软件包,保持安装状态"
fi
LOG_INFO "测试完成texlive-arcs-doc软件包的包信息查询功能正常"
}
main "$@"

View File

@@ -1,64 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的依赖安装功能验证是否能够正确安装所有依赖包
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装脚本结束时将卸载安装的软件包"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包及其依赖
LOG_INFO "开始安装texlive-copyrightbox-doc软件包及其依赖"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
# 验证依赖是否安装成功
LOG_INFO "验证依赖是否安装成功"
rpm -q texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "验证依赖安装失败"
# 如果脚本开始时未安装,则在结束时卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,79 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的依赖卸载功能验证卸载时是否能够正确移除所有依赖包
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc
LOG_INFO "检查是否已安装texlive-copyrightbox-doc"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc退出"
exit 255
fi
# 安装texlive-copyrightbox-doc
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 获取依赖包列表
LOG_INFO "获取texlive-copyrightbox-doc的依赖包列表"
DEPENDENCIES=$(rpm -qR texlive-copyrightbox-doc)
CHECK_RESULT $? 0 0 "获取依赖包列表失败"
# 卸载texlive-copyrightbox-doc并验证依赖包是否被移除
LOG_INFO "卸载texlive-copyrightbox-doc并验证依赖包是否被移除"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
# 检查依赖包是否被移除
LOG_INFO "检查依赖包是否被移除"
for dep in $DEPENDENCIES; do
rpm -q $dep > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_ERROR "依赖包 $dep 未被移除,退出"
exit 255
fi
done
# 恢复环境(如果最初未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "恢复环境重新安装texlive-copyrightbox-doc"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "重新安装texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,88 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的降级功能验证是否能够正确降级到旧版本
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装了texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已经安装了texlive-copyrightbox-doc软件包"
if rpm -q texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
installed=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
if ! dnf list available texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 获取当前安装的texlive-copyrightbox-doc版本
current_version=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc 2>/dev/null)
# 获取可用的旧版本
LOG_INFO "获取可用的旧版本"
available_versions=$(dnf list --showduplicates texlive-copyrightbox-doc | awk "{print $2}" | grep -v "^$" | sort -V)
if [ -z "$available_versions" ]; then
LOG_ERROR "未找到可用的旧版本"
exit 255
fi
# 选择第一个旧版本作为降级目标
target_version=$(echo "$available_versions" | head -n1)
if [ "$target_version" == "$current_version" ]; then
target_version=$(echo "$available_versions" | head -n2 | tail -n1)
if [ "$target_version" == "$current_version" ]; then
LOG_ERROR "没有可用的旧版本用于降级"
exit 255
fi
fi
# 降级到目标版本
LOG_INFO "降级texlive-copyrightbox-doc到版本 $target_version"
dnf downgrade -y texlive-copyrightbox-doc-$target_version &>/dev/null
CHECK_RESULT $? 0 0 "降级texlive-copyrightbox-doc失败"
# 验证降级后的版本
LOG_INFO "验证降级后的版本"
downgraded_version=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
CHECK_RESULT "$downgraded_version" "$target_version" 0 "降级后的版本与目标版本不一致"
# 恢复环境
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc &>/dev/null
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
else
# 如果原本已安装,恢复到当前版本
if [ "$downgraded_version" != "$current_version" ]; then
LOG_INFO "恢复到原始版本 $current_version"
dnf install -y texlive-copyrightbox-doc-$current_version &>/dev/null
CHECK_RESULT $? 0 0 "恢复到原始版本失败"
fi
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,98 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的降级回滚功能验证是否能够正确从降级后的版本回滚到降级前的版本
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 步骤1检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 步骤2检查当前是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查当前是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装记录当前版本"
CURRENT_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装准备安装"
INSTALLED=false
fi
# 步骤3如果未安装则安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
CURRENT_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
fi
# 步骤4获取可用的旧版本列表并选择第一个旧版本进行降级
LOG_INFO "获取texlive-copyrightbox-doc的旧版本列表"
OLD_VERSIONS=$(dnf list --showduplicates texlive-copyrightbox-doc | grep texlive-copyrightbox-doc | awk "{print $2}" | sort -u)
if [ -z "$OLD_VERSIONS" ]; then
LOG_ERROR "未找到可用的旧版本"
exit 255
fi
OLD_VERSION=$(echo "$OLD_VERSIONS" | head -n1)
LOG_INFO "准备降级到版本: $OLD_VERSION"
# 步骤5执行降级操作
LOG_INFO "执行降级操作"
dnf downgrade -y texlive-copyrightbox-doc-$OLD_VERSION > /dev/null
CHECK_RESULT $? 0 0 "降级操作失败"
# 步骤6验证降级后的版本是否正确
LOG_INFO "验证降级后的版本"
DOWNGRADED_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
if [ "$DOWNGRADED_VERSION" != "$OLD_VERSION" ]; then
LOG_ERROR "降级后的版本与预期不符,实际版本: $DOWNGRADED_VERSION, 预期版本: $OLD_VERSION"
exit 1
fi
# 步骤7执行回滚操作
LOG_INFO "执行回滚操作"
dnf history undo last -y > /dev/null
CHECK_RESULT $? 0 0 "回滚操作失败"
# 步骤8验证回滚后的版本是否正确
LOG_INFO "验证回滚后的版本"
ROLLBACK_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
if [ "$ROLLBACK_VERSION" != "$CURRENT_VERSION" ]; then
LOG_ERROR "回滚后的版本与预期不符,实际版本: $ROLLBACK_VERSION, 预期版本: $CURRENT_VERSION"
exit 1
fi
# 步骤9如果最初未安装则卸载软件包以恢复环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包以恢复环境"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 “卸载texlife_copyright_box_doc失败”
fi
LOG_INFO “测试完成”
}
main "$@"

View File

@@ -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 : 2025-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的重新安装功能验证是否能够正确重新安装到系统中
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装了texlive-copyrightbox-doc
LOG_INFO "检查是否已经安装了texlive-copyrightbox-doc"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已经安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
# 验证软件包是否成功安装
LOG_INFO "验证软件包是否成功安装"
rpm -q texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "texlive-copyrightbox-doc未正确安装"
# 卸载软件包(如果之前未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,79 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的回滚功能验证是否能够正确回滚到上一个版本
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 检查当前是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查当前是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装脚本结束时将卸载"
INSTALLED=false
fi
# 如果未安装则安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 获取当前texlive-copyrightbox-doc的版本
LOG_INFO "获取当前texlive-copyrightbox-doc的版本"
CURRENT_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
CHECK_RESULT $? 0 0 "获取当前版本失败"
# 回滚到上一个版本
LOG_INFO "回滚到上一个版本"
dnf history undo last -y --skip-broken > /dev/null 2>&1
CHECK_RESULT $? 0 0 "回滚到上一个版本失败"
# 验证回滚后的版本是否与之前不同
LOG_INFO "验证回滚后的版本是否与之前不同"
NEW_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
CHECK_RESULT $? 0 0 "获取回滚后版本失败"
if [ "$CURRENT_VERSION" = "$NEW_VERSION" ]; then
LOG_ERROR "回滚失败,版本未发生变化"
exit 1
else
LOG_INFO "回滚成功,版本从 $CURRENT_VERSION 变为 $NEW_VERSION"
fi
# 恢复环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包以恢复环境"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
}
main "$@"

View File

@@ -1,99 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的升级回滚功能验证是否能够正确从升级后的版本回滚到升级前的版本
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试步骤中安装"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 获取当前安装的版本(如果已安装)
if [ "$INSTALLED" = true ]; then
LOG_INFO "获取当前安装的texlive-copyrightbox-doc版本"
CURRENT_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
LOG_INFO "当前版本: $CURRENT_VERSION"
fi
# 安装texlive-copyrightbox-doc如果未安装
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 获取升级前的版本
LOG_INFO "获取升级前的texlive-copyrightbox-doc版本"
PRE_UPGRADE_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
LOG_INFO "升级前版本: $PRE_UPGRADE_VERSION"
# 检查是否有可升级的版本
LOG_INFO "检查是否有可升级的texlive-copyrightbox-doc版本"
dnf check-update texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "没有可升级的texlife copyright box doc版本"
exit 255
fi
# 执行升级
LOG_INFO "开始升级tex live copyright box doc软件包"
dnf upgrade -y tex live copyright box doc
CHECK_RESULT $? 0 0 "升级tex live copyright box doc失败"
# 获取升级后的版本
LOG INFO “获取升级后的tex live copyright box doc版本”
POST UPGRADE VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" tex live copyright box doc)
LOG INFO “升级后版本: $POST UPGRADE VERSION”
#验证回滚功能
LOG INFO “开始回滚到之前版本”
dnf history undo last -y
CHECK RESULT $? 0 0 “回滚失败”
#验证回滚后的版本
LOG INFO “验证回滚后的版本是否为初始状态”
ROLLBACK VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" tex live copyright box doc)
CHECK RESULT "$ROLLBACK VERSION" "$PRE UPGRADE VERSION" “版本不一致,回滚失败”
#清理环境(如果初始未安装)
if [ "$INSTALLED" = false ]; then
LOG INFO “清理环境卸载tex live copyright box doc”
dnf remove -y tex live copyright box doc
CHECK RESULT $? 00“卸载失败”
fi
LOG INFO “测试完成”
}
main "$@"

View File

@@ -1,73 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的服务的配置功能验证服务配置是否能够正确修改和生效
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否在yum源中
LOG_INFO "检查texlive-copyrightbox-doc软件包是否在yum源中"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "texlive-copyrightbox-doc软件包不在yum源中"
exit 255
fi
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
INSTALLED=true
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
else
INSTALLED=false
LOG_INFO "texlive-copyrightbox-doc软件包未安装将进行安装"
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试服务配置功能
LOG_INFO "测试服务配置功能"
# 假设服务配置命令为config_service参数为--set-config=value
config_service --set-config=test_value > /dev/null 2>&1
CHECK_RESULT $? 0 0 "服务配置修改失败"
# 验证服务配置是否生效
LOG_INFO "验证服务配置是否生效"
# 假设验证命令为check_config返回值为0表示配置正确1表示配置错误
check_config --expected-config=test_value > /dev/null 2>&1
CHECK_RESULT $? 0 0 "服务配置未生效"
# 清理环境:如果之前未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的服务的日志查看功能验证服务日志是否能够正确查看
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后将保持安装状态"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试完成后卸载"
installed=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包如果未安装
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证服务日志查看功能
LOG_INFO "验证服务日志查看功能"
journalctl -u texlive-copyrightbox-doc.service
CHECK_RESULT $? 0 0 "查看服务日志失败"
# 清理环境(如果脚本开始时未安装)
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,76 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的服务的重启功能验证服务是否能够正常重启
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc未安装脚本结束后将卸载"
INSTALLED=0
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 检查服务是否存在并获取服务名
LOG_INFO "检查texlive-copyrightbox-doc提供的服务"
SERVICE_NAME=$(systemctl list-unit-files | grep texlive-copyrightbox-doc | awk "{print $1}")
if [ -z "$SERVICE_NAME" ]; then
LOG_ERROR "未找到texlive-copyrightbox-doc提供的服务"
exit 255
fi
# 重启服务并验证
LOG_INFO "重启服务:$SERVICE_NAME"
systemctl restart $SERVICE_NAME
CHECK_RESULT $? 0 0 "重启服务失败"
LOG_INFO "验证服务状态"
systemctl status $SERVICE_NAME | grep "active (running)"
CHECK_RESULT $? 0 0 "服务未正常运行"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,71 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的服务的启动功能验证服务是否能够正常启动
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装无需重新安装"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装准备安装"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证服务启动功能
LOG_INFO "验证texlive-copyrightbox-doc软件包提供的服务启动功能"
systemctl start texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "启动texlive-copyrightbox-doc服务失败"
# 检查服务状态
LOG_INFO "检查texlive-copyrightbox-doc服务状态"
systemctl status texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "texlive-copyrightbox-doc服务未正常运行"
# 如果之前未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,71 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的服务的状态查询功能验证服务状态是否能够正确查询
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否在yum源中
LOG_INFO "检查texlive-copyrightbox-doc软件包是否在yum源中"
dnf list available texlive-copyrightbox-doc &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "texlive-copyrightbox-doc软件包不在yum源中"
exit 255
fi
# 检查是否已安装texlive-copyrightbox-doc
LOG_INFO "检查是否已安装texlive-copyrightbox-doc"
rpm -q texlive-copyrightbox-doc &> /dev/null
if [ $? -eq 0 ]; then
installed=true
LOG_INFO "texlive-copyrightbox-doc已安装"
else
installed=false
LOG_INFO "texlive-copyrightbox-doc未安装将进行安装"
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 检查服务状态查询功能
LOG_INFO "测试服务状态查询功能"
systemctl status texlive-copyrightbox-doc &> /dev/null
CHECK_RESULT $? 0 0 "服务状态查询失败"
# 恢复环境:如果脚本开始时未安装,则卸载软件包
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
# 再次确认卸载成功
rpm -q texlive-copyrightbox-doc &> /dev/null
if [ $? -eq 0 ]; then
LOG_ERROR "卸载texlive-copyrightbox-doc失败"
exit 1
fi
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,81 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的服务的停止功能验证服务是否能够正常停止
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试脚本test_texlive-copyrightbox-doc_service_stop
LOG_INFO "开始测试texlive-copyrightbox-doc软件包的服务停止功能"
# 检查软件包是否在yum源中
LOG_INFO "检查texlive-copyrightbox-doc软件包是否在yum源中"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "texlive-copyrightbox-doc软件包不在yum源中"
exit 255
fi
# 检查是否已安装软件包
LOG_INFO "检查texlive-copyrightbox-doc是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
installed=true
LOG_INFO "texlive-copyrightbox-doc已安装测试结束后保持安装状态"
else
installed=false
LOG_INFO "texlive-copyrightbox-doc未安装测试前将安装软件包"
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 检查服务是否存在
LOG_INFO "检查texlive-copyrightbox-doc服务是否存在"
systemctl list-unit-files | grep texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "texlive-copyrightbox-doc服务不存在"
exit 255
fi
# 停止服务
LOG_INFO "停止texlive-copyrightbox-doc服务"
systemctl stop texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "停止texlive-copyrightbox-doc服务失败"
# 检查服务状态是否为停止
LOG_INFO "检查texlive-copyrightbox-doc服务状态是否为停止"
systemctl is-active texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 3 0 "texlive-copyrightbox-doc服务未成功停止"
# 恢复环境
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,91 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的升级功能验证是否能够正确升级到新版本
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 检查当前是否已安装texlive-copyrightbox-doc
LOG_INFO "检查当前是否已安装texlive-copyrightbox-doc"
rpm -q texlive-copyrightbox-doc &> /dev/null
if [ $? -eq 0 ]; then
installed=true
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后保持安装状态"
else
installed=false
LOG_INFO "texlive-copyrightbox-doc未安装将在测试后卸载"
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$installed" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc &> /dev/null
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 获取当前安装的版本
current_version=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
LOG_INFO "当前安装的texlive-copyrightbox-doc版本为: $current_version"
# 检查是否有新版本可用
LOG_INFO "检查是否有新版本的texlive-copyrightbox-doc可用"
dnf check-update texlive-copyrightbox-doc &> /dev/null
if [ $? -eq 100 ]; then
LOG_INFO "存在新版本的texlive-copyrightbox-doc"
else
LOG_ERROR "没有可用的新版本"
exit 255
fi
# 升级texlive-copyrightbox-doc软件包
LOG_INFO "开始升级texlive-copyrightbox-doc软件包"
dnf upgrade -y texlive-copyrightbox-doc &> /dev/null
CHECK_RESULT $? 0 0 "升级texlive-copyrightbox-doc失败"
# 验证升级后的版本是否更新
new_version=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" texlive-copyrightbox-doc)
LOG_INFO "升级后的texlive-copyrightbox-doc版本为: $new_version"
if [ "$current_version" != "$new_version" ]; then
LOG_INFO "版本已更新"
else
LOG_ERROR "版本未更新"
exit 1
fi
# 恢复环境
if [ "$installed" = false ]; then
LOG_INFO "卸载测试期间安装的texlieve_copyright_box_doc..."
dnf remove -y texlieve_copright_box_doc &> /dev/null
CHECK_RESULT $? 0 0 \"卸载失败\"
fi
LOG_INFO \"测试完成\"
exit 0
}
main "$@"

View File

@@ -1,64 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包的校验和验证功能验证软件包完整性是否能够正确校验
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
INSTALLED=0
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 验证软件包的校验和
LOG_INFO "验证texlive-copyrightbox-doc软件包的校验和"
rpm --checksig texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "校验和验证失败"
# 清理环境
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的绝对路径参数功能验证命令在输入绝对路径参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令的绝对路径参数功能
LOG_INFO "验证命令的绝对路径参数功能"
COMMAND_PATH=$(which texlive-copyrightbox-doc)
if [ -z "$COMMAND_PATH" ]; then
LOG_ERROR "未找到texlive-copyrightbox-doc命令"
exit 255
fi
# 测试绝对路径参数
LOG_INFO "测试绝对路径参数"
$COMMAND_PATH /tmp/testfile.tex
CHECK_RESULT $? 0 0 "命令处理绝对路径参数失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,75 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的参数别名功能验证命令是否能够正确识别和使用参数别名
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
INSTALLED=0
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
LOG_INFO "texlive-copyrightbox-doc软件包安装成功"
fi
# 测试命令参数别名功能
LOG_INFO "测试texlive-copyrightbox-doc命令的参数别名功能"
# 验证命令是否支持参数别名
command_to_test="copyrightbox" # 假设命令为copyrightbox实际应根据文档调整
alias_param="--help" # 假设--help是支持的参数别名实际应根据文档调整
$command_to_test $alias_param > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令不支持参数别名: $alias_param"
exit 255
fi
LOG_INFO "命令支持参数别名: $alias_param"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 \"卸载texlife- copyright box- doc 失败\"
LOG_ INFO \" tex life- copyright box- doc 软体包卸載成功\"
fi
LOG_ INFO \"测试完成,环境已恢复\"
}
main "$@"

View File

@@ -1,80 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的base64参数功能验证命令在输入base64格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试base64参数功能
LOG_INFO "测试base64参数功能"
TEST_INPUT="SGVsbG8gV29ybGQh" # "Hello World!"的base64编码
EXPECTED_OUTPUT="Hello World!"
# 执行命令并检查结果
LOG_INFO "执行命令并验证结果"
COMMAND_OUTPUT=$(texlive-copyrightbox-doc --base64 "$TEST_INPUT" 2>&1)
CHECK_RESULT $? 0 0 "命令执行失败"
# 验证输出是否符合预期
if [ "$COMMAND_OUTPUT" = "$EXPECTED_OUTPUT" ]; then
LOG_INFO "命令输出符合预期"
else
LOG_ERROR "命令输出不符合预期,实际输出: $COMMAND_OUTPUT"
exit 1
fi
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成"
exit 0
}
main "$@"

View File

@@ -1,75 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的二进制参数功能验证命令在输入二进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试完成后卸载"
INSTALLED=0
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的二进制参数功能
LOG_INFO "测试texlive-copyrightbox-doc提供的命令的二进制参数功能"
command_to_test="copyrightbox" # 假设命令为copyrightbox需根据实际命令调整
# 检查命令是否存在
which $command_to_test > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不存在"
exit 255
fi
# 测试二进制参数功能(假设命令支持-b参数
LOG_INFO "验证命令$command_to_test是否支持二进制参数"
$command_to_test -b test.bin > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令$command_to_test不支持二进制参数或处理失败"
# 清理环境:如果脚本开始时未安装软件包,则卸载
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,73 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的布尔参数功能验证命令在输入布尔参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 检查是否已安装texlive-copyrightbox-doc
LOG_INFO "检查是否已安装texlive-copyrightbox-doc"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
installed=true
LOG_INFO "texlive-copyrightbox-doc已安装"
else
installed=false
LOG_INFO "texlive-copyrightbox-doc未安装开始安装"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的布尔参数功能
LOG_INFO "测试命令的布尔参数功能"
command_to_test="texlive-copyrightbox-doc-command" # 替换为实际命令
$command_to_test --boolean-arg=true > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令不支持--boolean-arg参数或处理失败"
$command_to_test --boolean-arg=false > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令不支持--boolean-arg参数或处理失败"
# 测试不支持的参数
LOG_INFO "测试不支持的参数"
$command_to_test --invalid-arg > /dev/null 2>&1
if [ $? -ne 255 ]; then
LOG_ERROR "命令支持了不存在的参数--invalid-arg"
exit 255
fi
# 清理环境
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,120 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的布尔参数false功能验证命令在输入布尔参数false时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否存在于yum源中
check_package_in_repo() {
dnf list available "$1" &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "软件包 $1 不在yum源中"
exit 255
fi
}
# 检查命令是否支持指定参数
check_command_argument() {
local cmd=$1
local arg=$2
# 假设通过--help检查参数是否存在
$cmd --help | grep -q "$arg"
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $cmd 不支持参数 $arg"
exit 255
fi
}
# 检查软件包是否已安装
is_package_installed() {
rpm -q "$1" &> /dev/null
return $?
}
# 主测试逻辑
main() {
local package="texlive-copyrightbox-doc"
local command_to_test="copyrightbox" # 假设命令为copyrightbox实际需替换为真实命令
LOG_INFO "开始测试:验证$package软件包命令的布尔参数false功能"
# 检查软件包是否在yum源中
LOG_INFO "检查yum源中是否存在$package软件包"
check_package_in_repo "$package"
# 检查环境是否已安装软件包
LOG_INFO "检查环境是否已安装$package软件包"
local was_installed=0
if is_package_installed "$package"; then
was_installed=1
LOG_INFO "$package已安装,测试完成后将保持安装状态"
else
LOG_INFO "$package未安装,测试完成后将卸载"
fi
# 若未安装,则安装软件包
if [ $was_installed -eq 0 ]; then
LOG_INFO "正在安装$package软件包"
dnf install -y "$package"
CHECK_RESULT $? 0 0 "安装$package失败"
fi
# 验证命令是否存在假设命令名为copyrightbox
LOG_INFO "验证命令$command_to_test是否存在"
if ! command -v "$command_to_test" &> /dev/null; then
LOG_ERROR "命令$command_to_test不存在"
exit 255
fi
# 验证布尔参数false是否支持
LOG_INFO "验证命令$command_to_test是否支持参数--boolean=false"
check_command_argument "$command_to_test" "--boolean=false"
# 执行命令并验证结果
LOG_INFO "执行命令:$command_to_test --boolean=false"
local output
if output=$("$command_to_test" --boolean=false 2>&1); then
CHECK_RESULT $? 0 0 "执行成功但返回值非0预期成功"
else
CHECK_RESULT $? !0 !0 "执行失败(预期成功)"
fi
if [[ ! "$output" =~ "expected_output_for_false_case" ]]; then
LOG_ERROR "命令输出不符合预期:\n$output"
exit 255
fi
# 清理环境(若初始未安装则卸载)
if [ $was_installed -eq 0 ]; then
LOG_INFO "卸载$package软件包"
dnf remove -y "$package"
CHECK_RESULT $? 0 0 \“卸载$package失败
else
LOG_INFO "保持$package安装状态"
fi
}
main
}
main "$@"

View File

@@ -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 : 2025-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的布尔参数true功能验证命令在输入布尔参数true时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包提供的命令的布尔参数true功能"
# 检查软件包是否在yum源中
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 检查软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装跳过安装步骤"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装开始安装"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
INSTALLED=false
fi
# 测试命令的布尔参数true功能
LOG_INFO "测试命令的布尔参数true功能"
command_to_test="<替换为实际命令> --boolean true" # 替换为实际命令
eval $command_to_test
CHECK_RESULT $? 0 0 "命令执行失败布尔参数true功能未正确处理"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,63 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的布尔参数true和false功能验证命令在输入布尔参数true和false时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否已安装
if ! rpm -q texlive-copyrightbox-doc > /dev/null 2>&1; then
LOG_INFO "环境未安装texlive-copyrightbox-doc软件包将进行安装"
# 检查yum源中是否有该软件包
if ! dnf list available texlive-copyrightbox-doc > /dev/null 2>&1; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装软件包
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
# 标记需要卸载
NEED_UNINSTALL=1
else
LOG_INFO "环境已安装texlive-copyrightbox-doc软件包无需安装"
NEED_UNINSTALL=0
fi
# 测试命令的布尔参数true功能
LOG_INFO "测试命令的布尔参数true功能"
command_to_test --boolean true
CHECK_RESULT $? 0 0 "命令布尔参数true功能测试失败"
# 测试命令的布尔参数false功能
LOG_INFO "测试命令的布尔参数false功能"
command_to_test --boolean false
CHECK_RESULT $? 0 0 "命令布尔参数false功能测试失败"
# 清理环境
if [ $NEED_UNINSTALL -eq 1 ]; then
LOG_INFO "清理环境卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试脚本执行完毕"
}
main "$@"

View File

@@ -1,88 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的参数大小写敏感性功能验证命令是否能够正确处理不同大小写的参数
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否在yum源中
check_package_availability() {
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包..."
dnf list available texlive-copyrightbox-doc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
}
# 安装软件包
install_package() {
LOG_INFO "安装texlive-copyrightbox-doc软件包..."
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
}
# 卸载软件包
uninstall_package() {
LOG_INFO "卸载texlive-copyrightbox-doc软件包..."
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
}
# 检查命令参数大小写敏感性
test_command_argument_case_sensitivity() {
LOG_INFO "测试命令参数大小写敏感性..."
# 假设命令为copyrightbox测试不同大小写参数
copyrightbox --Help &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "不支持--Help参数"
exit 255
fi
copyrightbox --help &>/dev/null
CHECK_RESULT $? 0 0 "--help参数执行失败"
}
# 主函数
main() {
# 检查软件包是否已安装
rpm -q texlive-copyrightbox-doc &>/dev/null
local is_installed=$?
if [ $is_installed -ne 0 ]; then
check_package_availability
install_package
# 执行测试
test_command_argument_case_sensitivity
# 卸载软件包以恢复环境
uninstall_package
else
LOG_INFO "texlive-copyrightbox-doc软件包已安装直接执行测试..."
test_command_argument_case_sensitivity
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"
}
main "$@"

View File

@@ -1,85 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的参数组合验证功能验证命令在输入多个参数组合时是否能够正常执行并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装..."
dnf list installed texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束时将保持安装状态。"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试结束后卸载。"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包..."
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包退出脚本。"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包..."
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令参数组合功能
LOG_INFO "验证texlive-copyrightbox-doc命令的参数组合功能..."
# 测试参数组合1正常参数
LOG_INFO "测试参数组合1正常参数..."
command_to_test --valid-arg1 --valid-arg2 > /dev/null 2>&1
CHECK_RESULT $? 0 0 "参数组合1执行失败"
# 测试参数组合2无效参数预期失败
LOG_INFO "测试参数组合2无效参数..."
command_to_test --invalid-arg > /dev/null 2>&1
if [ $? -ne 255 ]; then
LOG_ERROR "参数组合2未按预期失败退出脚本。"
exit 255
fi
# 测试参数组合3混合有效和无效参数预期失败
LOG_INFO "测试参数组合3混合有效和无效参数..."
command_to_test --valid-arg --invalid-arg > /dev/null 2>&1
if [ $? -ne 255 ]; then
LOG_ERROR "参数组合3未按预期失败退出脚本。"
exit 255
fi
# 清理环境(如果之前未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包..."
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复。"
}
main "$@"

View File

@@ -1,86 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的csv参数功能验证命令在输入csv格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试完成后卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包如果未安装
if [ "$INSTALLED" = false ]; then
LOG_INFO "正在安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令的csv参数功能
LOG_INFO "验证命令的csv参数功能"
command_to_test="your_command_here" # 替换为实际的命令
csv_argument="example.csv" # 替换为实际的csv文件参数
# 检查命令是否存在
type "$command_to_test" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $command_to_test 不存在"
exit 255
fi
# 检查是否支持csv参数
LOG_INFO "检查命令是否支持csv参数"
"$command_to_test" --help | grep -q "csv"
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $command_to_test不支持csv参数"
exit 255
fi
# 执行命令并验证结果
LOG_INFO "执行命令 $command_to_test 并验证结果"
"$command_to_test" "$csv_argument"
CHECK_RESULT $? 0 0 "命令 $command_to_test 处理csv参数失败"
# 清理环境(如果之前未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "正在卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的日期参数功能验证命令在输入日期格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装脚本结束后将卸载该软件包"
INSTALLED=0
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 若未安装则安装texlive-copyrightbox-doc软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的日期参数功能
LOG_INFO "测试命令的日期参数功能"
# 验证命令是否支持日期参数
LOG_INFO "验证命令是否支持日期参数"
command -v texdoc > /dev/null 2>&1 || { LOG_ERROR "命令texdoc不存在"; exit 255; }
texdoc --help | grep -q "\-\-date" || { LOG_ERROR "命令texdoc不支持日期参数"; exit 255; }
# 执行带日期参数的命令并验证结果
LOG_INFO "执行带日期参数的命令并验证结果"
texdoc --date 2023-01-01 copyrightbox > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令执行失败"
# 清理环境:若脚本开始时未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,71 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的默认参数值功能验证命令在未提供参数时是否使用默认值并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包提供的命令的默认参数值功能"
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
if ! dnf list installed texlive-copyrightbox-doc &> /dev/null; then
LOG_INFO "未安装texlive-copyrightbox-doc软件包开始安装"
if ! dnf list texlive-copyrightbox-doc &> /dev/null; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
dnf install -y texlive-copyrightbox-doc || {
LOG_ERROR "安装texlive-copyrightbox-doc软件包失败"
exit 1
}
NEED_UNINSTALL=1
else
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
fi
# 测试命令的默认参数值功能
LOG_INFO "测试命令的默认参数值功能"
command_to_test="texlive-copyrightbox-doc"
if ! command -v $command_to_test &> /dev/null; then
LOG_ERROR "命令$command_to_test不存在或不支持"
exit 255
fi
# 执行命令并检查结果
LOG_INFO "执行命令$command_to_test并验证默认参数值"
$command_to_test || {
LOG_ERROR "命令$command_to_test执行失败"
exit $?
}
CHECK_RESULT $? 0 0 "命令$command_to_test未返回预期结果"
# 清理环境
if [ "$NEED_UNINSTALL" == "1" ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc || {
LOG_ERROR "卸载texlive-copyrightbox-doc软件包失败"
exit 1
}
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,73 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的参数依赖功能验证命令在输入依赖参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装脚本结束后将卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 若未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令参数依赖功能
LOG_INFO "验证命令参数依赖功能"
command_to_test="copyrightbox" # 假设这是texlive-copyrightbox-doc提供的命令
$command_to_test --help > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不支持--help参数或不存在"
exit 255
fi
# 测试具体参数功能(示例)
LOG_INFO "测试命令$command_to_test的具体参数功能"
$command_to_test --version > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令$command_to_test的--version参数功能测试失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完毕"
}
main "$@"

View File

@@ -1,75 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的目录参数功能验证命令在输入目录参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc &>/dev/null
if [ $? -eq 0 ]; then
installed=true
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
else
installed=false
LOG_INFO "texlive-copyrightbox-doc软件包未安装将进行安装"
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的目录参数功能
LOG_INFO "测试命令的目录参数功能"
command_output=$(texlive-copyrightbox-doc --directory /tmp)
CHECK_RESULT $? 0 0 "命令执行失败"
# 验证命令返回结果是否符合预期
LOG_INFO "验证命令返回结果是否符合预期"
if [[ "$command_output" == *"expected_output"* ]]; then
LOG_INFO "命令返回结果符合预期"
else
LOG_ERROR "命令返回结果不符合预期"
exit 1
fi
# 如果之前未安装,则卸载软件包
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完成,环境已恢复"
}
main "$@"

View File

@@ -1,71 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的重复参数功能验证命令在输入重复参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "正在安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的重复参数功能
LOG_INFO "测试命令的重复参数功能"
command_to_test="copyrightbox" # 假设命令为copyrightbox实际应根据软件包文档调整
$command_to_test --help > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不存在或不支持"
exit 255
fi
# 验证重复参数处理功能(假设--version为支持的参数
LOG_INFO "验证命令处理重复参数--version的功能"
$command_to_test --version --version > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令处理重复参数--version失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "正在卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
}
main "$@"

View File

@@ -1,73 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的环境参数功能验证命令在输入环境参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 验证命令的环境参数功能
LOG_INFO "验证命令的环境参数功能"
command_to_test="copyrightbox-doc"
$command_to_test --help > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令$command_to_test不支持--help参数"
# 测试无效参数
LOG_INFO "测试无效参数"
$command_to_test --invalid-arg > /dev/null 2>&1
if [ $? -ne 255 ]; then
LOG_ERROR "命令$command_to_test未正确处理无效参数"
exit 255
fi
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,77 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的转义字符参数功能验证命令在输入包含转义字符的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的转义字符参数功能
LOG_INFO "测试命令的转义字符参数功能"
COMMAND="copyrightbox"
ARGUMENT="\\\"test\\\""
# 检查命令是否存在
which $COMMAND > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$COMMAND不存在或不支持"
exit 255
fi
# 执行命令并验证结果
$COMMAND $ARGUMENT > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令$COMMAND处理转义字符参数失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,75 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的文件路径参数功能验证命令在输入文件路径参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装无需重新安装"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 验证命令的文件路径参数功能
LOG_INFO "验证命令的文件路径参数功能"
TEST_FILE="/tmp/test_texlive_copyrightbox_doc.txt"
touch "$TEST_FILE"
CHECK_RESULT $? 0 0 "创建测试文件失败"
# 执行命令并验证文件路径参数功能假设命令为copyrightbox
LOG_INFO "执行命令并验证文件路径参数功能" copyrightbox --file "$TEST_FILE"
copyrightbox --file "$TEST_FILE"
CHECK_RESULT $? 0 0 "命令执行失败或返回非预期结果"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f "$TEST_FILE"
CHECK_RESULT $? 0 0 "删除测试文件失败"
# 如果脚本开始时未安装软件包,则在结束时卸载
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包以恢复环境"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,83 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的浮点数参数功能验证命令在输入浮点数参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
installed=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的浮点数参数功能
LOG_INFO "测试texlive-copyrightbox-doc命令的浮点数参数功能"
# 假设命令为copyrightbox参数为--float值为1.5
command="copyrightbox"
argument="--float"
value="1.5"
# 检查命令是否存在
LOG_INFO "检查命令是否存在"
which $command > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command不存在"
exit 255
fi
# 检查参数是否支持
LOG_INFO "检查参数是否支持"
$command --help | grep -q "$argument"
if [ $? -ne 0 ]; then
LOG_ERROR "参数$argument不支持"
exit 255
fi
# 执行命令并验证结果
LOG_INFO "执行命令并验证结果"
$command $argument $value > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令$command $argument $value执行失败"
# 清理环境:如果之前未安装,则卸载软件包
if [ "$installed" = false ]; then
}
main "$@"

View File

@@ -1,99 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的十六进制参数功能验证命令在输入十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否存在于yum源中
check_package_existence() {
local package_name=$1
dnf list available "$package_name" &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "软件包 $package_name 不存在于yum源中"
exit 255
fi
}
# 检查命令是否支持指定的参数
check_command_argument() {
local command=$1
local argument=$2
$command --help | grep -q "$argument"
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $command 不支持参数 $argument"
exit 255
fi
}
# 检查软件包是否已安装
is_package_installed() {
local package_name=$1
rpm -q "$package_name" &>/dev/null
return $?
}
# 主测试函数
main() {
local package_name="texlive-copyrightbox-doc"
local command_to_test="texlive-copyrightbox-doc-command"
local hex_argument="--hex=0x1A2B"
# 步骤1检查软件包是否存在于yum源中
LOG_INFO "步骤1检查软件包 $package_name 是否存在于yum源中"
check_package_existence "$package_name"
# 步骤2检查软件包是否已安装若未安装则安装并标记需要卸载
LOG_INFO "步骤2检查软件包 $package_name 是否已安装"
local need_uninstall=0
if ! is_package_installed "$package_name"; then
LOG_INFO "软件包 $package_name 未安装,开始安装..."
dnf install -y "$package_name"
CHECK_RESULT $? 0 0 "安装软件包 $package_name 失败"
need_uninstall=1
else
LOG_INFO "软件包 $package_name 已安装"
fi
# 步骤3检查命令是否支持十六进制参数
LOG_INFO "步骤3检查命令 $command_to_test 是否支持十六进制参数 $hex_argument"
check_command_argument "$command_to_test" "$hex_argument"
#步骤4执行命令并验证结果
LOG_INFO "步骤4执行命令 $command_to_test $hex_argument"
$command_to_test "$hex_argument"
CHECK_RESULT $? 0 0 "执行命令 $command_to_test $hex_argument失败"
#步骤5:清理环境
if [ "$need_uninstall" -eq1 ]; then
LOG_INFO "步骤5:卸载软件包 $package_name..."
dnf remove-y "$package_name"
CHECK_RESULT$?00"卸载软件包$package name失败"
else
LOG_INFO“步骤5:无需卸载软件包$packagename
fi
exit0
}
main
}
main "$@"

View File

@@ -1,60 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的大十六进制参数功能验证命令在输入大十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包的大十六进制参数功能"
# 检查软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc是否已安装"
if ! dnf list installed texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "texlive-copyrightbox-doc未安装准备安装"
# 检查yum源中是否有该软件包
if ! dnf list available texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装软件包
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
# 标记为需要卸载
NEED_UNINSTALL=1
else
LOG_INFO "texlive-copyrightbox-doc已安装"
NEED_UNINSTALL=0
fi
# 验证命令的大十六进制参数功能
LOG_INFO "验证命令的大十六进制参数功能"
TEST_COMMAND="texlive-copyrightbox-doc --hex-param 0xFFFFFFFFFFFFFFFF"
$TEST_COMMAND
CHECK_RESULT $? 0 0 "命令执行失败,大十六进制参数功能异常"
# 清理环境
if [ $NEED_UNINSTALL -eq 1 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,86 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的大负十六进制参数功能验证命令在输入大负十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
installed=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令是否支持大负十六进制参数
LOG_INFO "验证命令是否支持大负十六进制参数"
command_to_test="copyrightbox"
hex_arg="0xFFFFFFFFFFFFFFF0" # 大负十六进制参数示例
# 检查命令是否存在
which $command_to_test > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不存在"
exit 255
fi
# 检查参数是否支持(假设命令支持--help选项
$command_to_test --help | grep "hex" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不支持十六进制参数"
exit 255
fi
# 执行命令并验证结果
LOG_INFO "执行命令$command_to_test并验证结果"
$command_to_test $hex_arg > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令$command_to_test处理大负十六进制参数失败"
# 恢复环境
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成"
exit 0
}
main "$@"

View File

@@ -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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的大正十六进制参数功能验证命令在输入大正十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束后将保持安装状态"
installed=true
else
installed=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的大正十六进制参数功能
LOG_INFO "测试命令的大正十六进制参数功能"
command_to_test="texlive-copyrightbox-doc-command" # 假设命令名称为texlive-copyrightbox-doc-command需替换为实际命令名称
# 检查命令是否存在
LOG_INFO "检查命令是否存在"
which "$command_to_test" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不存在"
exit 255
fi
# 测试大正十六进制参数
LOG_INFO "执行命令并传入大正十六进制参数"
large_hex_arg="0xFFFFFFFFFFFFFFFF" # 示例大正十六进制参数
$command_to_test "$large_hex_arg"
CHECK_RESULT $? 0 0 "命令$command_to_test处理大正十六进制参数失败"
# 清理环境
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
}
main "$@"

View File

@@ -1,59 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的负十六进制参数功能验证命令在输入负十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否存在于yum源中
if ! dnf list texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "软件包 texlive-copyrightbox-doc 不存在于yum源中"
exit 255
fi
# 检查环境是否已安装软件包
if rpm -q texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "环境已安装 texlive-copyrightbox-doc脚本结束后保持安装状态"
INSTALLED=true
else
LOG_INFO "环境未安装 texlive-copyrightbox-doc将在测试后卸载"
INSTALLED=false
# 安装软件包
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装 texlive-copyrightbox-doc 失败"
fi
# 测试负十六进制参数功能
LOG_INFO "开始测试负十六进制参数功能"
command_to_test="copyrightbox-doc -x -0xFF" # 假设命令为 copyrightbox-doc参数为 -x 和负十六进制值
$command_to_test
CHECK_RESULT $? 0 0 "命令执行失败,负十六进制参数功能异常"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载 texlive-copyrightbox-doc"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载 texlive-copyrightbox-doc 失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,69 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的十六进制溢出参数功能验证命令在输入超出范围的十六进制参数时是否能够正确处理并返回预期的错误信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
if rpm -q texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
if ! dnf list available texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的十六进制溢出参数功能
LOG_INFO "测试命令的十六进制溢出参数功能"
# 假设命令为copyrightbox参数为十六进制值0xFFFFFFFFFFFFFFFF超出范围
LOG_INFO "执行命令copyrightbox 0xFFFFFFFFFFFFFFFF"
copyrightbox 0xFFFFFFFFFFFFFFFF &>/dev/null
# 检查命令是否返回预期的错误码
CHECK_RESULT $? 1 0 "命令未正确处理十六进制溢出参数"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,80 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的正十六进制参数功能验证命令在输入正十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束后保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的正十六进制参数功能
LOG_INFO "测试命令的正十六进制参数功能"
command_to_test="copyrightbox" # 假设这是要测试的命令
# 检查命令是否存在
which "$command_to_test" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $command_to_test 不存在"
exit 255
fi
# 测试正十六进制参数
hex_argument="0x1A" # 示例十六进制参数
LOG_INFO "执行命令 $command_to_test 并传入正十六进制参数 $hex_argument"
$command_to_test "$hex_argument" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令 $command_to_test 处理正十六进制参数失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,73 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的十六进制参数往返功能验证命令在输入十六进制参数后输出是否能够正确解析并返回相同的十六进制值
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的十六进制参数往返功能
LOG_INFO "测试命令的十六进制参数往返功能"
TEST_HEX="0x1A2B3C4D"
OUTPUT=$(command_to_test --hex "$TEST_HEX" 2>&1)
if [ $? -ne 0 ]; then
LOG_ERROR "命令执行失败,参数可能不支持"
exit 255
fi
# 验证输出是否能够正确解析并返回相同的十六进制值
LOG_INFO "验证输出是否能够正确解析并返回相同的十六进制值"
echo "$OUTPUT" | grep -q "$TEST_HEX"
CHECK_RESULT $? 0 0 "输出未能正确解析并返回相同的十六进制值"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,79 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的小十六进制参数功能验证命令在输入小十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装了texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包..."
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束时将保持安装状态。"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试结束后卸载。"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包..."
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包退出。"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包..."
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败。"
fi
# 验证命令的小十六进制参数功能
LOG_INFO "验证命令的小十六进制参数功能..."
command_to_test="copyrightbox" # 假设这是texlive-copyrightbox-doc提供的命令
# 检查命令是否存在
which "$command_to_test" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不存在,退出。"
exit 255
fi
# 测试小十六进制参数
test_hex_arg="0x1a" # 示例小十六进制参数
LOG_INFO "执行命令: $command_to_test $test_hex_arg"
"$command_to_test" "$test_hex_arg"
CHECK_RESULT $? 0 0 "命令$command_to_test处理小十六进制参数失败"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包..."
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败。"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复。"
}
main "$@"

View File

@@ -1,75 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的小负十六进制参数功能验证命令在输入小负十六进制参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试步骤中安装并在脚本结束前卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的小负十六进制参数功能
LOG_INFO "测试命令的小负十六进制参数功能"
command_to_test="copyrightbox"
hex_argument="-0x1a" # 示例小负十六进制参数
# 检查命令是否存在
which $command_to_test
if [ $? -ne 0 ]; then
LOG_ERROR "命令$command_to_test不存在或不支持"
exit 255
fi
# 执行命令并验证结果
$command_to_test $hex_argument
CHECK_RESULT $? 0 0 "命令$command_to_test处理小负十六进制参数失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,65 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的十六进制零参数功能验证命令在输入十六进制零参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令的十六进制零参数功能
LOG_INFO "验证命令的十六进制零参数功能"
command_to_test="texlive-copyrightbox-doc-command" # 替换为实际命令
$command_to_test --hex-zero-param 0x00
CHECK_RESULT $? 0 0 "命令不支持十六进制零参数或处理失败"
# 如果脚本开始时未安装,则卸载软件包以恢复环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包以恢复环境"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,76 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的整数参数功能验证命令在输入整数参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的整数参数功能
LOG_INFO "测试texlive-copyrightbox-doc软件包提供的命令的整数参数功能"
command_to_test="texlive-copyrightbox-doc-command" # 替换为实际命令
integer_arg=123
# 检查命令是否存在
type "$command_to_test" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $command_to_test 不存在或不支持"
exit 255
fi
# 执行命令并检查结果
LOG_INFO "执行命令: $command_to_test $integer_arg"
$command_to_test $integer_arg
CHECK_RESULT $? 0 0 "命令 $command_to_test 执行失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的无效参数功能验证命令在输入无效参数时是否能够正确处理并返回预期的错误信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装了texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已经安装了texlive-copyrightbox-doc软件包"
dnf list installed texlive-copyrightbox-doc &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc &>/dev/null
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
LOG_INFO "texlive-copyrightbox-doc软件包安装成功"
fi
# 测试无效参数功能
LOG_INFO "测试texlive-copyrightbox-doc提供的命令的无效参数功能"
command_name="texdoc" # 假设texdoc是texlive-copyrightbox-doc提供的命令
invalid_argument="--invalid-arg"
$command_name $invalid_argument &>/dev/null
if [ $? -eq 255 ]; then
LOG_INFO "命令在输入无效参数时正确处理并返回预期的错误信息"
else
LOG_ERROR "命令在输入无效参数时未能正确处理"
exit 255
fi
# 清理环境,如果之前未安装则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc &>/dev/null
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
LOG_INFO "texlive-copyrightbox-doc软件包卸载成功"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,67 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的json参数功能验证命令在输入json格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装保持安装状态"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试结束后卸载"
INSTALLED=0
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试json参数功能
LOG_INFO "测试texlive-copyrightbox-doc命令的json参数功能"
TEST_JSON="{"key": "value"}"
texlive-copyrightbox-doc --json "$TEST_JSON" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "texlive-copyrightbox-doc命令处理json参数失败"
# 清理环境
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,71 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的json数组参数功能验证命令在输入json数组格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包提供的命令的json数组参数功能"
LOG_INFO "步骤1: 检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
LOG_INFO "步骤2: 检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装保持安装状态"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将进行安装"
installed=false
fi
if [ "$installed" = false ]; then
LOG_INFO "步骤3: 安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "步骤4: 验证命令是否支持json数组参数"
command_to_test="your_command_here" # Replace with actual command to test
$command_to_test --help | grep "json-array" > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "命令不支持json数组参数"
exit 255
fi
LOG_INFO "步骤5: 测试命令处理json数组参数的功能"
test_json="["param1", "param2", "param3"]" # Example JSON array
$command_to_test --json-array "$test_json" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令处理json数组参数失败"
LOG_INFO "步骤6: 清理环境(如需要)"
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,57 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的嵌套json数组参数功能验证命令在输入嵌套json数组格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
if ! dnf list installed texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "texlive-copyrightbox-doc未安装准备安装"
# 检查yum源中是否有该软件包
if ! dnf list available texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装软件包
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc已安装"
INSTALLED=0
fi
# 测试命令的嵌套json数组参数功能
LOG_INFO "测试命令的嵌套json数组参数功能"
TEST_COMMAND="texlive-copyrightbox-doc --json-array "[[\"param1\", \"param2\"], [\"param3\", \"param4\"]]""
eval $TEST_COMMAND
CHECK_RESULT $? 0 0 "命令执行失败嵌套json数组参数功能异常"
# 清理环境
if [ $INSTALLED -eq 1 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -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 : 2025-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的json数组参数验证功能验证命令在输入json数组格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc未安装"
installed=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试json数组参数验证功能
LOG_INFO "测试json数组参数验证功能"
command_output=$(texlive-copyrightbox-doc --json-array "["param1", "param2"]" 2>&1)
CHECK_RESULT $? 0 0 "命令执行失败"
# 验证命令输出是否符合预期
LOG_INFO "验证命令输出是否符合预期"
expected_output="expected_output_pattern"
if [[ "$command_output" =~ $expected_output ]]; then
LOG_INFO "命令输出符合预期"
else
LOG_ERROR "命令输出不符合预期"
exit 1
fi
# 测试不支持参数的情况
LOG_INFO "测试不支持参数的情况"
texlive-copyrightbox-doc --invalid-param 2>&1
if [ $? -eq 255 ]; then
LOG_INFO "不支持参数验证通过"
else
LOG_ERROR "不支持参数验证失败"
exit 255
fi
# 如果脚本开始时未安装,则卸载软件包
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,77 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的json格式参数功能验证命令在输入json格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
INSTALLED=0
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令的json格式参数功能
LOG_INFO "验证命令的json格式参数功能"
# 测试json格式参数是否正确处理假设命令为copyrightbox-json
LOG_INFO "测试json格式参数是否正确处理"
copyrightbox-json "{"key": "value"}" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "json格式参数处理失败"
# 测试不支持的非json格式参数是否报错
LOG_INFO "测试不支持的非json格式参数是否报错"
copyrightbox-json "invalid-format" > /dev/null 2>&1
if [ $? -eq 255 ]; then
LOG_INFO "非json格式参数正确处理返回退出码255"
else
LOG_ERROR "非json格式参数未正确处理"
exit 255
fi
# 清理环境
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "清理环境卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,70 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的json对象参数功能验证命令在输入json对象格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
installed=false
fi
# 检查yum源中是否有texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的json对象参数功能
LOG_INFO "测试texlive-copyrightbox-doc命令的json对象参数功能"
# 构造json对象参数示例根据实际命令调整
json_param="{"key1":"value1", "key2":"value2"}"
# 执行命令并验证结果假设命令为copyrightbox-command
LOG_INFO "执行命令: copyrightbox-command --json "$json_param""
copyrightbox-command --json "$json_param" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令执行失败或返回非预期结果"
# 如果最初未安装,则在测试完成后卸载软件包
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,80 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的json schema参数功能验证命令在输入符合json schema的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束后保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将在测试后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包如果未安装
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 验证命令的json schema参数功能
LOG_INFO "验证命令的json schema参数功能"
# 模拟符合json schema的参数输入示例参数需根据实际命令调整
VALID_JSON="{"key": "value"}"
LOG_INFO "输入符合json schema的参数: $VALID_JSON"
# 假设命令为copyrightbox-validate实际命令需根据文档调整
copyrightbox-validate "$VALID_JSON" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令处理符合json schema的参数失败"
# 模拟不符合json schema的参数输入
INVALID_JSON="{"invalid_key": "value"}"
LOG_INFO "输入不符合json schema的参数: $INVALID_JSON"
copyrightbox-validate "$INVALID_JSON" > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_ERROR "命令未正确处理不符合json schema的参数"
exit 255
fi
# 清理环境(如果脚本开始时未安装软件包)
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,76 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂json schema参数功能验证命令在输入符合复杂json schema的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包提供的命令的复杂json schema参数功能"
# 检查软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc是否已安装"
rpm -q texlive-copyrightbox-doc
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装测试完成后保持安装状态"
INSTALLED=1
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试完成后卸载"
INSTALLED=0
fi
# 检查yum源中是否有该软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc"
dnf list available texlive-copyrightbox-doc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装texlive-copyrightbox-doc"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
fi
# 测试命令的复杂json schema参数功能
LOG_INFO "测试命令的复杂json schema参数功能"
TEST_COMMAND="texlive-copyrightbox-doc --json-schema "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"number\"}}}""
eval $TEST_COMMAND
CHECK_RESULT $? 0 0 "命令执行失败参数不符合复杂json schema"
# 测试不支持的参数
LOG_INFO "测试不支持的参数"
TEST_COMMAND="texlive-copyrightbox-doc --invalid-arg"
eval $TEST_COMMAND
if [ $? -ne 255 ]; then
LOG_ERROR "不支持的参数未导致命令退出码为255"
exit 255
fi
# 清理环境:如果之前未安装则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,72 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json schema参数功能验证命令在输入符合复杂嵌套json schema的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc已安装保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc未安装将在测试步骤中安装"
INSTALLED=false
fi
# 检查yum源中是否有该软件包
LOG_INFO "检查yum源中是否有texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
LOG_INFO "texlive-copyrightbox-doc软件包安装成功"
fi
# 测试命令的复杂嵌套json schema参数功能
LOG_INFO "测试texlive-copyrightbox-doc提供的命令的复杂嵌套json schema参数功能"
TEST_COMMAND="texlive-copyrightbox-doc --json-schema "{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\"},\"address\":{\"type\":\"object\",\"properties\":{\"street\":{\"type\":\"string\"},\"city\":{\"type\":\"string\"}}}}}""
eval $TEST_COMMAND > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令执行失败参数不符合复杂嵌套json schema"
LOG_INFO "命令执行成功参数符合复杂嵌套json schema"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
LOG_INFO "texlive-copyrightbox-doc软件包卸载成功"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,65 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json数组参数功能验证命令在输入符合复杂嵌套json数组格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
installed=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装"
installed=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "开始安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的复杂嵌套json数组参数功能
LOG_INFO "测试命令的复杂嵌套json数组参数功能"
test_command="texlive-copyrightbox-doc --json-arg "{\"array\": [[1, 2], [3, 4]]}""
eval $test_command > /dev/null 2>&1
CHECK_RESULT $? 0 0 "命令不支持复杂嵌套json数组参数"
# 清理环境
if [ "$installed" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,60 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json数组参数验证功能验证命令在输入不符合复杂嵌套json数组格式的参数时是否能够正确处理并返回预期的错误信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包的复杂嵌套json数组参数验证功能"
# 检查软件包是否已安装
if ! dnf list installed texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "环境未安装texlive-copyrightbox-doc准备安装"
# 检查yum源中是否有该软件包
if ! dnf list available texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "yum源中未找到texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装软件包
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc失败"
# 标记需要卸载
NEED_UNINSTALL=1
else
LOG_INFO "环境已安装texlive-copyrightbox-doc无需重新安装"
fi
# 测试命令的复杂嵌套json数组参数验证功能
LOG_INFO "测试命令的复杂嵌套json数组参数验证功能"
# 构造不符合复杂嵌套json数组格式的参数
INVALID_JSON="{"key": "value"}" # 非数组格式
# 执行命令并验证错误处理
command_to_test --json-arg "$INVALID_JSON" &>/dev/null
CHECK_RESULT $? 255 0 "命令未正确处理不符合复杂嵌套json数组格式的参数"
# 清理环境
if [ "$NEED_UNINSTALL" -eq 1 ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,80 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json对象参数功能验证命令在输入符合复杂嵌套json对象格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查texlive-copyrightbox-doc软件包是否已安装
LOG_INFO "检查texlive-copyrightbox-doc软件包是否已安装"
rpm -q texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装脚本结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装脚本结束后将卸载"
INSTALLED=false
fi
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list available texlive-copyrightbox-doc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 安装texlive-copyrightbox-doc软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的复杂嵌套json对象参数功能
LOG_INFO "测试texlive-copyrightbox-doc命令的复杂嵌套json对象参数功能"
# 构造复杂嵌套json对象参数示例根据实际命令参数调整
TEST_JSON="{
"key1": "value1",
"key2": {
"subkey1": "subvalue1",
"subkey2": ["item1", "item2"]
},
"key3": [
{"nestedKey1": "nestedValue1"},
{"nestedKey2": "nestedValue2"}
]
}"
# 执行命令并验证结果假设命令为test-command根据实际情况调整
LOG_INFO "执行命令并验证复杂嵌套json对象参数处理结果"
test-command --json "$TEST_JSON"
CHECK_RESULT $? 0 0 "命令处理复杂嵌套json对象参数失败"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,60 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json对象数组参数功能验证命令在输入符合复杂嵌套json对象数组格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试脚本test_texlive-copyrightbox-doc_verify_command_argument_json_schema_complex_nested_object_array
LOG_INFO "开始测试 texlive-copyrightbox-doc 软件包的复杂嵌套 JSON 对象数组参数功能"
# 检查软件包是否已安装
if ! dnf list installed texlive-copyrightbox-doc &>/dev/null; then
LOG_INFO "软件包 texlive-copyrightbox-doc 未安装,将进行安装"
if ! dnf list available texlive-copyrightbox-doc &>/dev/null; then
LOG_ERROR "yum 源中未找到 texlive-copyrightbox-doc 软件包"
exit 255
fi
dnf install -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "安装 texlive-copyrightbox-doc 失败"
INSTALLED=1
else
LOG_INFO "软件包 texlive-copyrightbox-doc 已安装"
INSTALLED=0
fi
# 测试命令参数是否符合复杂嵌套 JSON 对象数组格式
TEST_COMMAND="texlive-copyrightbox-doc --json-argument"
TEST_ARGUMENT="{"array": [{"key1": "value1", "nested": {"key2": ["value2", "value3"]}}]}"
LOG_INFO "测试命令:$TEST_COMMAND $TEST_ARGUMENT"
$TEST_COMMAND "$TEST_ARGUMENT" &>/dev/null
CHECK_RESULT $? 0 0 "命令执行失败,参数可能不符合复杂嵌套 JSON 对象数组格式"
# 清理环境
if [ $INSTALLED -eq 1 ]; then
LOG_INFO "卸载临时安装的软件包 texlive-copyrightbox-doc"
dnf remove -y texlive-copyrightbox-doc
CHECK_RESULT $? 0 0 "卸载 texlive-copyrightbox-doc 失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,69 +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-07-06
# @License : Mulan PSL v2
# @Desc : 测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json对象数组元素参数功能验证命令在输入符合复杂嵌套json对象数组元素格式的参数时是否能够正确处理并返回预期结果
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试texlive-copyrightbox-doc软件包提供的命令的复杂嵌套json对象数组元素参数功能"
# 检查yum源中是否存在texlive-copyrightbox-doc软件包
LOG_INFO "检查yum源中是否存在texlive-copyrightbox-doc软件包"
dnf list texlive-copyrightbox-doc &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在texlive-copyrightbox-doc软件包"
exit 255
fi
# 检查是否已安装texlive-copyrightbox-doc软件包
LOG_INFO "检查是否已安装texlive-copyrightbox-doc软件包"
rpm -q texlive-copyrightbox-doc &> /dev/null
if [ $? -eq 0 ]; then
LOG_INFO "texlive-copyrightbox-doc软件包已安装"
INSTALLED=true
else
LOG_INFO "texlive-copyrightbox-doc软件包未安装将进行安装"
INSTALLED=false
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "正在安装texlive-copyrightbox-doc软件包"
dnf install -y texlive-copyrightbox-doc &> /dev/null
CHECK_RESULT $? 0 0 "安装texlive-copyrightbox-doc软件包失败"
fi
# 测试命令的复杂嵌套json对象数组元素参数功能
LOG_INFO "测试命令的复杂嵌套json对象数组元素参数功能"
TEST_COMMAND="texlive-copyrightbox-doc --json-argument "{\"array\":[{\"nested\":{\"key\":\"value\"}}]}""
eval $TEST_COMMAND &> /dev/null
CHECK_RESULT $? 0 0 "命令执行失败可能不支持复杂嵌套json对象数组元素参数"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载texlive-copyrightbox-doc软件包以恢复环境"
dnf remove -y texlive-copyrightbox-doc &> /dev/null
CHECK_RESULT $? 0 0 "卸载texlive-copyrightbox-doc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

Some files were not shown because too many files have changed in this diff Show More