Merge branch 'pkg' of http://10.30.190.190:54866/redrsoe2100/os-autotest into pkg
This commit is contained in:
@@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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": "测试默认网络状态"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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相关的关键信息"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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包,并确认相关文件被移除。"
|
||||
|
||||
@@ -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软件包的包信息查询功能,验证包信息可正确获取"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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 的卸载功能,验证卸载过程是否干净彻底。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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 "$@"
|
||||
@@ -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
Reference in New Issue
Block a user