Merge branch 'pkg' of http://10.30.190.190:54866/redrsoe2100/os-autotest into pkg
This commit is contained in:
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/NetworkManager/NetworkManager-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_NetworkManager-help_function_install_package",
|
||||
"desc": "测试NetworkManager-help软件包是否可以通过包管理器成功安装。"
|
||||
},
|
||||
{
|
||||
"name": "test_NetworkManager-help_function_verify_installed",
|
||||
"desc": "验证NetworkManager-help软件包在系统中是否已正确安装,并检查其版本信息。"
|
||||
},
|
||||
{
|
||||
"name": "test_NetworkManager-help_function_verify_version",
|
||||
"desc": "验证已安装的NetworkManager-help软件包的版本信息是否正确。"
|
||||
},
|
||||
{
|
||||
"name": "test_NetworkManager-help_function_install",
|
||||
"desc": "测试通过包管理器(如yum/dnf)安装NetworkManager-help软件包的功能是否正常。"
|
||||
},
|
||||
{
|
||||
"name": "test_NetworkManager-help_function_help_content",
|
||||
"desc": "检查NetworkManager-help提供的帮助文档内容是否可正常访问,例如使用man命令查看NetworkManager手册页。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/adobe-mappings-pdf/adobe-mappings-pdf-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_adobe-mappings-pdf-help_function_install",
|
||||
"desc": "测试软件包 adobe-mappings-pdf-help 能否正常安装。"
|
||||
},
|
||||
{
|
||||
"name": "test_adobe-mappings-pdf-help_function_verify_installed",
|
||||
"desc": "测试软件包 adobe-mappings-pdf-help 是否已正确安装并存在于系统中。"
|
||||
},
|
||||
{
|
||||
"name": "test_adobe-mappings-pdf-help_function_uninstall",
|
||||
"desc": "测试软件包 adobe-mappings-pdf-help 能否被正常卸载。"
|
||||
},
|
||||
{
|
||||
"name": "test_adobe-mappings-pdf-help_function_list_files",
|
||||
"desc": "测试软件包 adobe-mappings-pdf-help 安装后是否包含预期的文件。"
|
||||
},
|
||||
{
|
||||
"name": "test_adobe-mappings-pdf-help_function_check_version",
|
||||
"desc": "测试软件包 adobe-mappings-pdf-help 的版本信息是否正确。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/bullet/bullet-devel",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_bullet-devel_install",
|
||||
"desc": "测试 bullet-devel 软件包的安装功能,验证安装过程是否正常完成。",
|
||||
"machine num": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/jboss-logmanager/jboss-logmanager-javadoc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_jboss-logmanager-javadoc_function_install",
|
||||
"desc": "Test installation of jboss-logmanager-javadoc package"
|
||||
},
|
||||
{
|
||||
"name": "test_jboss-logmanager-javadoc_function_docs",
|
||||
"desc": "Test documentation availability"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/jsch-agent-proxy/jsch-agent-proxy-pageant",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_jsch-agent-proxy-pageant_install",
|
||||
"desc": "测试软件包的安装功能,验证是否能够正确安装到系统中",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jsch-agent-proxy-pageant_function_connect",
|
||||
"desc": "测试软件包的连接功能,验证是否能够正确建立连接"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/libXfixes/libXfixes",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_libXfixes_function_installation_check",
|
||||
"desc": "检查libXfixes软件包是否已正确安装在系统上。"
|
||||
},
|
||||
{
|
||||
"name": "test_libXfixes_function_version_query",
|
||||
"desc": "查询并验证libXfixes库的版本信息。"
|
||||
},
|
||||
{
|
||||
"name": "test_libXfixes_function_headers_exist",
|
||||
"desc": "确认libXfixes开发头文件(如X11/extensions/Xfixes.h)存在于标准路径。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/libappindicator/libappindicator-docs",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_libappindicator-docs_function_install",
|
||||
"desc": "Test the installation of libappindicator-docs package"
|
||||
},
|
||||
{
|
||||
"name": "test_libappindicator-docs_function_verify",
|
||||
"desc": "Verify the basic functionality of libappindicator-docs"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/libnfs/libnfs",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_libnfs_install_package",
|
||||
"desc": "测试libnfs软件包的安装功能,验证安装过程是否正常完成。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_uninstall_package",
|
||||
"desc": "测试libnfs软件包的卸载功能,验证卸载过程是否正常完成。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_upgrade_package",
|
||||
"desc": "测试libnfs软件包的升级功能,验证升级过程是否正常完成。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_rollback_package",
|
||||
"desc": "测试libnfs软件包的回滚功能,验证回滚过程是否正常完成。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_service_log",
|
||||
"desc": "测试libnfs服务的日志查看功能,验证服务日志是否能够正常查看。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_function_permission",
|
||||
"desc": "测试libnfs的权限功能,验证权限设置是否生效。"
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_function_network",
|
||||
"desc": "测试libnfs的网络功能,验证网络连接是否稳定。"
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_function_install",
|
||||
"desc": "测试libnfs软件包的安装功能,验证安装过程是否正常完成。"
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs_function_check_version",
|
||||
"desc": "测试libnfs软件包的版本检查功能,验证版本信息是否正确。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/lodash/nodejs-lodash-trunc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_install",
|
||||
"desc": "测试软件包 nodejs-lodash-trunc 能够通过包管理器成功安装"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_require",
|
||||
"desc": "测试软件包 nodejs-lodash-trunc 能够在 Node.js 环境中被正确引入"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_basic",
|
||||
"desc": "测试 lodash.truncate 函数的基本字符串截断功能"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_length",
|
||||
"desc": "测试指定 length 参数时的字符串截断功能"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_omission",
|
||||
"desc": "测试指定 omission 参数时的字符串截断功能"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_separator",
|
||||
"desc": "测试指定 separator 参数时的字符串截断功能"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-trunc_function_uninstall",
|
||||
"desc": "测试软件包 nodejs-lodash-trunc 能够通过包管理器成功卸载"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/lodash/nodejs-lodash-unescape",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_nodejs-lodash-unescape_function_install",
|
||||
"desc": "测试通过包管理器安装软件包 nodejs-lodash-unescape 的功能是否正常"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-unescape_function_uninstall",
|
||||
"desc": "测试通过包管理器卸载软件包 nodejs-lodash-unescape 的功能是否正常"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-unescape_function_check_installed",
|
||||
"desc": "测试检查 nodejs-lodash-unescape 软件包是否已正确安装的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-unescape_function_unescape_html",
|
||||
"desc": "测试 unescape 函数解码 HTML 实体字符的核心功能"
|
||||
},
|
||||
{
|
||||
"name": "test_nodejs-lodash-unescape_function_import_module",
|
||||
"desc": "测试在 Node.js 代码中能否成功导入 lodash.unescape 模块"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -34,25 +34,9 @@
|
||||
"name": "test_lz4-help_function_uninstall",
|
||||
"desc": "测试卸载lz4-help软件包的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lz4-help_function_version",
|
||||
"desc": "测试lz4-help版本查询功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lz4-help_function_stdout_decompress",
|
||||
"desc": "测试lz4-help标准输出解压功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lz4-help_function_benchmark",
|
||||
"desc": "测试lz4-help基准测试功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lz4-help_function_help",
|
||||
"desc": "测试lz4-help帮助信息功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lz4-help_function_list_formats",
|
||||
"desc": "测试lz4-help列出支持格式"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/lzma-java/lzma-java-javadoc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_lzma-java-javadoc_install",
|
||||
"desc": "测试lzma-java-javadoc软件包的安装功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_lzma-java-javadoc_function_decompress",
|
||||
"desc": "测试lzma-java-javadoc软件包的解压功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lzma-java-javadoc_function_install_check",
|
||||
"desc": "检查lzma-java-javadoc软件包是否已正确安装"
|
||||
},
|
||||
{
|
||||
"name": "test_lzma-java-javadoc_function_uninstall",
|
||||
"desc": "测试lzma-java-javadoc软件包的卸载功能"
|
||||
},
|
||||
{
|
||||
"name": "test_lzma-java-javadoc_function_verify_doc",
|
||||
"desc": "验证安装的javadoc文档内容完整性"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -6,18 +6,6 @@
|
||||
"name": "test_openjfx-devel_function_init",
|
||||
"desc": "Test initialization of openjfx-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_openjfx-devel_function_ui",
|
||||
"desc": "Test UI components rendering"
|
||||
},
|
||||
{
|
||||
"name": "test_openjfx-devel_function_event",
|
||||
"desc": "Test event handling functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_openjfx-devel_function_media",
|
||||
"desc": "Test media playback support"
|
||||
},
|
||||
{
|
||||
"name": "test_openjfx-devel_function_web",
|
||||
"desc": "Test web view rendering"
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/pcp/pcp-libs-devel",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_pcp-libs-devel_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_pcp-libs-devel_function_remove",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_pcp-libs-devel_function_version",
|
||||
"desc": "Test package version query"
|
||||
},
|
||||
{
|
||||
"name": "test_pcp-libs-devel_function_headers",
|
||||
"desc": "Test presence of header files"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/potrace/potrace-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_potrace-help_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_potrace-help_function_uninstall",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_potrace-help_function_version",
|
||||
"desc": "Test version info display"
|
||||
},
|
||||
{
|
||||
"name": "test_potrace-help_function_basic_usage",
|
||||
"desc": "Test basic command usage"
|
||||
},
|
||||
{
|
||||
"name": "test_potrace-help_function_help_output",
|
||||
"desc": "Test help info output"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/python-sphinxtesters/python-sphinxtesters-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_python-sphinxtesters-help_function_basic",
|
||||
"desc": "Test basic functionality of python-sphinxtesters-help"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/qt6-qtscxml/qt6-qtscxml",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_qt6-qtscxml_function_package_install",
|
||||
"desc": "测试qt6-qtscxml软件包是否能被正确安装"
|
||||
},
|
||||
{
|
||||
"name": "test_qt6-qtscxml_function_package_remove",
|
||||
"desc": "测试qt6-qtscxml软件包是否能被正确卸载"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/sane-backends/sane-backends-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_sane-backends-help_function_install",
|
||||
"desc": "Test the installation of sane-backends-help package"
|
||||
},
|
||||
{
|
||||
"name": "test_sane-backends-help_function_verify_install",
|
||||
"desc": "Verify sane-backends-help is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_sane-backends-help_function_query_files",
|
||||
"desc": "Query files provided by the package"
|
||||
},
|
||||
{
|
||||
"name": "test_sane-backends-help_function_check_content",
|
||||
"desc": "Check help content availability"
|
||||
},
|
||||
{
|
||||
"name": "test_sane-backends-help_function_upgrade",
|
||||
"desc": "Test package upgrade"
|
||||
},
|
||||
{
|
||||
"name": "test_sane-backends-help_function_remove",
|
||||
"desc": "Test package removal"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-e/texlive-compactbib",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-compactbib_function_bibtex",
|
||||
"desc": "Test bibtex functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-compactbib_function_install",
|
||||
"desc": "Test installation of texlive-compactbib package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-compactbib_function_uninstall",
|
||||
"desc": "Test uninstallation of texlive-compactbib package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-compactbib_function_check_installed",
|
||||
"desc": "Test if texlive-compactbib is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-compactbib_function_basic_usage",
|
||||
"desc": "Test basic usage with compact bibliography style"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-e/texlive-context-gnuplot-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-context-gnuplot-doc_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-context-gnuplot-doc_function_check",
|
||||
"desc": "Test package existence check"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-context-gnuplot-doc_function_uninstall",
|
||||
"desc": "Test package uninstallation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-context-gnuplot-doc_function_doc_access",
|
||||
"desc": "Test documentation file access"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -15,10 +15,6 @@
|
||||
"name": "test_texlive-contour_function_remove",
|
||||
"desc": "测试 texlive-contour 软件包的卸载功能,验证其能否被完全卸载且不残留核心文件。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-contour_function_usage",
|
||||
"desc": "测试 texlive-contour 软件包的基本使用功能,验证其 LaTeX 宏包能否在简单文档中正确加载并生成轮廓文字效果。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-contour_function_version",
|
||||
"desc": "测试 texlive-contour 软件包的版本查询功能,验证系统能正确识别并报告已安装的软件包版本。"
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-h/texlive-ethiop",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-ethiop_function_font",
|
||||
"desc": "Test font rendering in ethiopic script"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-l/texlive-hyphen-spanish-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-hyphen-spanish-doc_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hyphen-spanish-doc_function_remove",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hyphen-spanish-doc_function_check_version",
|
||||
"desc": "Test package version check"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hyphen-spanish-doc_function_check_files",
|
||||
"desc": "Test documentation files existence"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-l/texlive-hyphen-ukrainian",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-hyphen-ukrainian_function_hyphenation",
|
||||
"desc": "Test Ukrainian hyphenation rules"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-layaureo",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-layaureo_function_install",
|
||||
"desc": "Test installation of texlive-layaureo package"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-libertinus-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-libertinus-doc_function_install",
|
||||
"desc": "Test installation of texlive-libertinus-doc"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-listofsymbols-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-listofsymbols-doc_install",
|
||||
"desc": "测试 texlive-listofsymbols-doc 软件包的安装功能,确保能够正确安装到系统中。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-listofsymbols-doc_uninstall",
|
||||
"desc": "测试 texlive-listofsymbols-doc 软件包的卸载功能,确保能够正确从系统中卸载。",
|
||||
"machine num": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-p/texlive-newtxtt",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-newtxtt_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-newtxtt_function_remove",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-newtxtt_function_font_usage",
|
||||
"desc": "Test font availability in LaTeX"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-newtxtt_function_font_list",
|
||||
"desc": "Test font files existence"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-newtxtt_function_doc_access",
|
||||
"desc": "Test documentation accessibility"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-q/texlive-ordinalpt-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-ordinalpt-doc_function_install",
|
||||
"desc": "测试 texlive-ordinalpt-doc 软件包的安装功能是否正常。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-ordinalpt-doc_function_check_installed",
|
||||
"desc": "测试检查 texlive-ordinalpt-doc 软件包是否已正确安装。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-ordinalpt-doc_function_uninstall",
|
||||
"desc": "测试 texlive-ordinalpt-doc 软件包的卸载功能是否正常。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-ordinalpt-doc_function_doc_existence",
|
||||
"desc": "测试 texlive-ordinalpt-doc 软件包的文档文件是否存在。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-ordinalpt-doc_function_doc_content",
|
||||
"desc": "测试 texlive-ordinalpt-doc 文档内容的关键部分是否可访问。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-r/texlive-placeat",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-placeat_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-placeat_function_uninstall",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-placeat_function_basic",
|
||||
"desc": "Test basic command usage"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-placeat_function_check_installed",
|
||||
"desc": "Verify texlive-placeat package is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-placeat_function_latex_usage",
|
||||
"desc": "Test basic LaTeX command usage with placeat"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-placeat_function_doc_available",
|
||||
"desc": "Check if package documentation is available"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-s/texlive-pst-pulley-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-pst-pulley-doc_function_draw",
|
||||
"desc": "Test the drawing functionality of the pulley diagram"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-pulley-doc_function_install",
|
||||
"desc": "Test the installation of the texlive-pst-pulley-doc package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-pulley-doc_function_uninstall",
|
||||
"desc": "Test the uninstallation of the texlive-pst-pulley-doc package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-pulley-doc_function_check_installed",
|
||||
"desc": "Test if the texlive-pst-pulley-doc package is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-pulley-doc_function_doc_exist",
|
||||
"desc": "Test the existence of the documentation files for the package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-pulley-doc_function_doc_content",
|
||||
"desc": "Test the content of the documentation for correctness"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-s/texlive-pst-thick",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-pst-thick_function_install",
|
||||
"desc": "Test installation of texlive-pst-thick package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-thick_function_remove",
|
||||
"desc": "Test removal of texlive-pst-thick package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-thick_function_check",
|
||||
"desc": "Test if texlive-pst-thick package is available"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pst-thick_function_basic",
|
||||
"desc": "Test basic PSTricks thick lines usage"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-t/texlive-rectopma-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-rectopma-doc_function_doc",
|
||||
"desc": "Verify the documentation files are correctly installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-rectopma-doc_function_install",
|
||||
"desc": "Verify the texlive-rectopma-doc package can be successfully installed via the package manager"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-rectopma-doc_function_verify_install",
|
||||
"desc": "Verify that the texlive-rectopma-doc package is correctly installed and its files are present in the system"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-rectopma-doc_function_remove",
|
||||
"desc": "Verify the texlive-rectopma-doc package can be completely and cleanly removed via the package manager"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-u/texlive-selnolig-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-selnolig-doc_function_install",
|
||||
"desc": "Verify package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-selnolig-doc_function_uninstall",
|
||||
"desc": "Verify package uninstallation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-selnolig-doc_function_check_doc",
|
||||
"desc": "Check documentation files existence"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-selnolig-doc_function_usage_info",
|
||||
"desc": "Verify package provides usage info"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-w/texlive-templatetools-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-templatetools-doc_install",
|
||||
"desc": "测试texlive-templatetools-doc软件包的安装功能,验证是否能够正确安装到系统中。",
|
||||
"machine num": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-x/texlive-runcode",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-runcode_function_basic",
|
||||
"desc": "Test basic functionality of texlive-runcode"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -5,22 +5,6 @@
|
||||
{
|
||||
"name": "test_uwsgi-plugin-psgi_function_load",
|
||||
"desc": "Test loading the PSGI plugin"
|
||||
},
|
||||
{
|
||||
"name": "test_uwsgi-plugin-psgi_function_install",
|
||||
"desc": "Test installation of the uwsgi-plugin-psgi package"
|
||||
},
|
||||
{
|
||||
"name": "test_uwsgi-plugin-psgi_function_verify",
|
||||
"desc": "Test verification of the plugin installation"
|
||||
},
|
||||
{
|
||||
"name": "test_uwsgi-plugin-psgi_function_basic",
|
||||
"desc": "Test basic PSGI application serving"
|
||||
},
|
||||
{
|
||||
"name": "test_uwsgi-plugin-psgi_function_uninstall",
|
||||
"desc": "Test uninstallation of the uwsgi-plugin-psgi package"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/virt-viewer/virt-viewer-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_uninstall",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_basic",
|
||||
"desc": "Test basic commands"
|
||||
},
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_connect",
|
||||
"desc": "Test remote connection functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_version",
|
||||
"desc": "Test version information"
|
||||
},
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_help",
|
||||
"desc": "Test help documentation"
|
||||
},
|
||||
{
|
||||
"name": "test_virt-viewer-help_function_config",
|
||||
"desc": "Test configuration files"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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-02-08
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 检查NetworkManager-help提供的帮助文档内容是否可正常访问,例如使用man命令查看NetworkManager手册页。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试NetworkManager-help的帮助文档内容"
|
||||
|
||||
LOG_INFO "检查yum源中是否有NetworkManager-help软件包"
|
||||
dnf list NetworkManager-help 2>/dev/null | grep -q "NetworkManager-help"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到NetworkManager-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "检查系统是否已安装NetworkManager-help"
|
||||
rpm -q NetworkManager-help > /dev/null 2>&1
|
||||
INSTALLED=$?
|
||||
|
||||
if [ $INSTALLED -ne 0 ]; then
|
||||
LOG_INFO "未安装NetworkManager-help,开始安装"
|
||||
dnf install -y NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "安装NetworkManager-help失败"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "NetworkManager-help已安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
LOG_INFO "测试使用man命令查看NetworkManager手册页"
|
||||
man NetworkManager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "使用man命令查看NetworkManager手册页失败"
|
||||
|
||||
LOG_INFO "测试使用NetworkManager --help命令"
|
||||
NetworkManager --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "使用NetworkManager --help命令失败"
|
||||
|
||||
LOG_INFO "检查NetworkManager-help提供的其他帮助命令"
|
||||
LOG_INFO "测试nmcli --help命令"
|
||||
nmcli --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "使用nmcli --help命令失败"
|
||||
|
||||
LOG_INFO "测试nmtui --help命令(如果可用)"
|
||||
if command -v nmtui &> /dev/null; then
|
||||
nmtui --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "使用nmtui --help命令失败"
|
||||
else
|
||||
LOG_INFO "nmtui命令不存在,跳过测试"
|
||||
fi
|
||||
|
||||
if [ $INSTALLED -eq 1 ]; then
|
||||
LOG_INFO "清理环境:卸载测试安装的NetworkManager-help"
|
||||
dnf remove -y NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "卸载NetworkManager-help失败"
|
||||
else
|
||||
LOG_INFO "保持原有安装状态,无需卸载"
|
||||
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 : 2026-02-08
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试通过包管理器(如yum/dnf)安装NetworkManager-help软件包的功能是否正常。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试NetworkManager-help软件包安装功能"
|
||||
|
||||
# 检查是否已安装NetworkManager-help
|
||||
LOG_INFO "步骤1:检查NetworkManager-help是否已安装"
|
||||
if rpm -q NetworkManager-help &> /dev/null; then
|
||||
LOG_INFO "NetworkManager-help已安装,标记为需要保持安装状态"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "NetworkManager-help未安装"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有NetworkManager-help软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否存在NetworkManager-help软件包"
|
||||
if ! dnf list available NetworkManager-help &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到NetworkManager-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在NetworkManager-help软件包"
|
||||
|
||||
# 如果未安装,则执行安装
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "步骤3:安装NetworkManager-help软件包"
|
||||
dnf install -y NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "安装NetworkManager-help失败"
|
||||
LOG_INFO "NetworkManager-help安装成功"
|
||||
fi
|
||||
|
||||
# 验证安装结果
|
||||
LOG_INFO "步骤4:验证NetworkManager-help是否成功安装"
|
||||
rpm -q NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "验证NetworkManager-help安装失败"
|
||||
|
||||
LOG_INFO "步骤5:测试NetworkManager-help基本功能"
|
||||
# 这里可以添加一些基本功能测试,例如检查帮助文档是否存在
|
||||
# 示例:检查是否有帮助手册页
|
||||
if man -w NetworkManager &> /dev/null; then
|
||||
LOG_INFO "NetworkManager帮助文档存在"
|
||||
else
|
||||
LOG_ERROR "NetworkManager帮助文档不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 环境清理:如果测试前未安装,则卸载软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "步骤6:清理环境,卸载NetworkManager-help"
|
||||
dnf remove -y NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "卸载NetworkManager-help失败"
|
||||
LOG_INFO "NetworkManager-help卸载成功"
|
||||
else
|
||||
LOG_INFO "步骤6:测试前已安装NetworkManager-help,保持安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "NetworkManager-help软件包安装功能测试完成"
|
||||
}
|
||||
|
||||
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 : 2026-01-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试NetworkManager-help软件包是否可以通过包管理器成功安装。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="NetworkManager-help"
|
||||
LOG_INFO "开始测试${PACKAGE_NAME}软件包是否可以通过包管理器成功安装"
|
||||
LOG_INFO "步骤1: 检查当前环境中是否已安装${PACKAGE_NAME}软件包"
|
||||
if dnf list installed "${PACKAGE_NAME}" &>/dev/null; then
|
||||
LOG_INFO "检测到${PACKAGE_NAME}软件包已安装,测试结束将保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "检测到${PACKAGE_NAME}软件包未安装"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
LOG_INFO "步骤2: 检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
if ! dnf list available "${PACKAGE_NAME}" &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到软件包: ${PACKAGE_NAME}"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤3: 执行软件包安装测试"
|
||||
if [ "${INSTALLED_BEFORE_TEST}" = "false" ]; then
|
||||
dnf install -y "${PACKAGE_NAME}"
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "${PACKAGE_NAME}软件包安装成功"
|
||||
fi
|
||||
LOG_INFO "步骤4: 验证安装后软件包功能"
|
||||
rpm -ql "${PACKAGE_NAME}" | head -5
|
||||
CHECK_RESULT $? 0 0 "验证${PACKAGE_NAME}软件包文件列表失败"
|
||||
LOG_INFO "步骤5: 环境清理与恢复"
|
||||
if [ "${INSTALLED_BEFORE_TEST}" = "false" ]; then
|
||||
LOG_INFO "卸载测试安装的${PACKAGE_NAME}软件包"
|
||||
dnf remove -y "${PACKAGE_NAME}"
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "环境已恢复至测试前状态"
|
||||
else
|
||||
LOG_INFO "测试前已安装${PACKAGE_NAME},保持安装状态"
|
||||
fi
|
||||
LOG_INFO "测试完成: ${PACKAGE_NAME}软件包可以通过包管理器成功安装"
|
||||
}
|
||||
|
||||
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-01-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 验证NetworkManager-help软件包在系统中是否已正确安装,并检查其版本信息。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="NetworkManager-help"
|
||||
|
||||
# 步骤1:检查当前环境是否已安装NetworkManager-help
|
||||
LOG_INFO "步骤1:检查当前环境是否已安装${PACKAGE_NAME}"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "当前环境已安装${PACKAGE_NAME},记录当前安装状态"
|
||||
INSTALLED_BEFORE="yes"
|
||||
else
|
||||
LOG_INFO "当前环境未安装${PACKAGE_NAME}"
|
||||
INSTALLED_BEFORE="no"
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否存在NetworkManager-help软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果环境未安装,则安装NetworkManager-help
|
||||
if [ "${INSTALLED_BEFORE}" = "no" ]; then
|
||||
LOG_INFO "步骤3:安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}失败"
|
||||
LOG_INFO "成功安装${PACKAGE_NAME}"
|
||||
fi
|
||||
|
||||
# 步骤4:验证NetworkManager-help软件包是否已正确安装
|
||||
LOG_INFO "步骤4:验证${PACKAGE_NAME}软件包是否已正确安装"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "${PACKAGE_NAME}软件包未正确安装"
|
||||
|
||||
# 步骤5:检查NetworkManager-help的版本信息
|
||||
LOG_INFO "步骤5:检查${PACKAGE_NAME}的版本信息"
|
||||
VERSION_INFO=$(rpm -q ${PACKAGE_NAME} --qf "%{VERSION}-%{RELEASE}")
|
||||
if [ -z "${VERSION_INFO}" ]; then
|
||||
LOG_ERROR "获取${PACKAGE_NAME}版本信息失败"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "${PACKAGE_NAME}版本信息:${VERSION_INFO}"
|
||||
|
||||
# 步骤6:验证NetworkManager-help提供的帮助文档是否存在
|
||||
LOG_INFO "步骤6:验证${PACKAGE_NAME}提供的帮助文档是否存在"
|
||||
rpm -ql ${PACKAGE_NAME} | grep -E "\.(html|txt|gz)$" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "${PACKAGE_NAME}未提供有效的帮助文档"
|
||||
|
||||
# 步骤7:清理环境,恢复到之前的状态
|
||||
LOG_INFO "步骤7:清理环境,恢复到之前的状态"
|
||||
if [ "${INSTALLED_BEFORE}" = "no" ]; then
|
||||
LOG_INFO "卸载测试过程中安装的${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}失败"
|
||||
LOG_INFO "成功卸载${PACKAGE_NAME},环境已恢复"
|
||||
else
|
||||
LOG_INFO "环境保持原有安装状态,无需清理"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:${PACKAGE_NAME}软件包安装和版本验证成功"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,62 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-01-31
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 验证已安装的NetworkManager-help软件包的版本信息是否正确。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:验证已安装的NetworkManager-help软件包的版本信息是否正确。"
|
||||
|
||||
# 检查是否已安装NetworkManager-help
|
||||
LOG_INFO "检查NetworkManager-help是否已安装。"
|
||||
if rpm -q NetworkManager-help &> /dev/null; then
|
||||
LOG_INFO "NetworkManager-help已安装,标记为已安装状态。"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "NetworkManager-help未安装,标记为未安装状态。"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 如果未安装,则尝试从yum源安装
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "检查yum源中是否有NetworkManager-help软件包。"
|
||||
if ! dnf list available NetworkManager-help &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到NetworkManager-help软件包,退出测试。"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "开始安装NetworkManager-help。"
|
||||
dnf install -y NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "安装NetworkManager-help失败。"
|
||||
fi
|
||||
|
||||
# 验证软件包版本信息
|
||||
LOG_INFO "验证NetworkManager-help软件包的版本信息。"
|
||||
rpm -qi NetworkManager-help | grep -E "Version|Release"
|
||||
CHECK_RESULT $? 0 0 "获取NetworkManager-help版本信息失败。"
|
||||
|
||||
# 如果需要,清理安装的软件包
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载NetworkManager-help。"
|
||||
dnf remove -y NetworkManager-help
|
||||
CHECK_RESULT $? 0 0 "卸载NetworkManager-help失败。"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:NetworkManager-help软件包的版本信息验证成功。"
|
||||
}
|
||||
|
||||
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-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包 adobe-mappings-pdf-help 能否正常安装。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义变量
|
||||
PACKAGE_NAME="adobe-mappings-pdf-help"
|
||||
LOG_INFO "开始测试软件包 ${PACKAGE_NAME} 的安装功能"
|
||||
|
||||
# 步骤1:检查软件包是否已在yum源中
|
||||
LOG_INFO "步骤1:检查yum源中是否存在软件包 ${PACKAGE_NAME}"
|
||||
dnf list available ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到软件包 ${PACKAGE_NAME}"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在软件包 ${PACKAGE_NAME}"
|
||||
|
||||
# 步骤2:检查当前是否已安装软件包
|
||||
LOG_INFO "步骤2:检查当前是否已安装软件包 ${PACKAGE_NAME}"
|
||||
if rpm -q ${PACKAGE_NAME} > /dev/null 2>&1; 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 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装软件包 ${PACKAGE_NAME} 失败"
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 安装成功"
|
||||
fi
|
||||
|
||||
# 步骤4:验证软件包安装
|
||||
LOG_INFO "步骤4:验证软件包 ${PACKAGE_NAME} 是否安装成功"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "验证软件包 ${PACKAGE_NAME} 安装失败"
|
||||
|
||||
# 步骤5:检查软件包提供的命令或功能(假设软件包提供命令"adobe-pdf-help")
|
||||
LOG_INFO "步骤5:检查软件包 ${PACKAGE_NAME} 提供的命令或功能"
|
||||
if command -v adobe-pdf-help > /dev/null 2>&1; then
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 提供的命令 "adobe-pdf-help" 存在"
|
||||
# 测试命令执行(假设命令支持--version参数)
|
||||
LOG_INFO "测试命令 "adobe-pdf-help --version" 执行"
|
||||
adobe-pdf-help --version > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "命令 "adobe-pdf-help --version" 参数不支持或执行失败"
|
||||
exit 255
|
||||
fi
|
||||
CHECK_RESULT $? 0 0 "命令 "adobe-pdf-help --version" 执行失败"
|
||||
else
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 未提供特定命令,跳过命令测试"
|
||||
fi
|
||||
|
||||
# 步骤6:清理环境(如果测试前未安装,则卸载软件包)
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "步骤6:卸载测试安装的软件包 ${PACKAGE_NAME}"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 ${PACKAGE_NAME} 失败"
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 卸载成功,环境已恢复"
|
||||
else
|
||||
LOG_INFO "步骤6:测试前软件包已安装,保持安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试软件包 ${PACKAGE_NAME} 安装功能完成"
|
||||
}
|
||||
|
||||
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 : 2026-03-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包 adobe-mappings-pdf-help 安装后是否包含预期的文件。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装adobe-mappings-pdf-help
|
||||
LOG_INFO "检查是否已安装adobe-mappings-pdf-help软件包"
|
||||
rpm -q adobe-mappings-pdf-help > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "adobe-mappings-pdf-help已安装,保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "adobe-mappings-pdf-help未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在该软件包
|
||||
LOG_INFO "检查yum源中是否存在adobe-mappings-pdf-help软件包"
|
||||
dnf list available adobe-mappings-pdf-help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到adobe-mappings-pdf-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装adobe-mappings-pdf-help软件包"
|
||||
dnf install -y adobe-mappings-pdf-help
|
||||
CHECK_RESULT $? 0 0 "安装adobe-mappings-pdf-help失败"
|
||||
fi
|
||||
|
||||
# 测试步骤:检查软件包安装后是否包含预期的文件
|
||||
LOG_INFO "测试软件包安装后是否包含预期的文件"
|
||||
# 这里假设预期的文件列表,实际应根据软件包内容调整
|
||||
EXPECTED_FILES=(
|
||||
"/usr/share/adobe-mappings-pdf-help/README"
|
||||
"/usr/share/adobe-mappings-pdf-help/help.pdf"
|
||||
)
|
||||
|
||||
for file in "${EXPECTED_FILES[@]}"; do
|
||||
if [ -f "$file" ]; then
|
||||
LOG_INFO "文件 $file 存在"
|
||||
else
|
||||
LOG_ERROR "文件 $file 不存在"
|
||||
# 如果未安装,则卸载软件包后退出
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载adobe-mappings-pdf-help软件包"
|
||||
dnf remove -y adobe-mappings-pdf-help
|
||||
fi
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# 如果测试过程中安装了软件包,则在测试结束后卸载
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载adobe-mappings-pdf-help软件包"
|
||||
dnf remove -y adobe-mappings-pdf-help
|
||||
CHECK_RESULT $? 0 0 "卸载adobe-mappings-pdf-help失败"
|
||||
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 : 2026-03-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包 adobe-mappings-pdf-help 能否被正常卸载。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="adobe-mappings-pdf-help"
|
||||
|
||||
# 步骤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
|
||||
|
||||
# 步骤2:检查当前环境是否已安装该软件包
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装软件包 ${PACKAGE_NAME}"
|
||||
if rpm -q ${PACKAGE_NAME} &> /dev/null; then
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 已安装,脚本结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 未安装,将进行安装测试"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
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 remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 ${PACKAGE_NAME} 失败"
|
||||
|
||||
# 步骤5:验证软件包是否已卸载
|
||||
LOG_INFO "步骤5:验证软件包 ${PACKAGE_NAME} 是否已卸载"
|
||||
if rpm -q ${PACKAGE_NAME} &> /dev/null; then
|
||||
LOG_ERROR "软件包 ${PACKAGE_NAME} 卸载失败"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 已成功卸载"
|
||||
fi
|
||||
|
||||
# 步骤6:环境恢复
|
||||
LOG_INFO "步骤6:环境恢复"
|
||||
if [ "${ALREADY_INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "测试前未安装软件包,无需恢复"
|
||||
else
|
||||
LOG_INFO "重新安装软件包 ${PACKAGE_NAME} 以恢复环境"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "重新安装软件包 ${PACKAGE_NAME} 失败"
|
||||
LOG_INFO "环境已恢复,软件包 ${PACKAGE_NAME} 已安装"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
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-06-11
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 bullet-devel 软件包的安装功能,验证安装过程是否正常完成。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查 bullet-devel 软件包是否已安装
|
||||
LOG_INFO "检查 bullet-devel 软件包是否已安装"
|
||||
rpm -q bullet-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "bullet-devel 软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "bullet-devel 软件包未安装,将在测试完成后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否存在 bullet-devel 软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 bullet-devel 软件包"
|
||||
dnf list available bullet-devel > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum 源中未找到 bullet-devel 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装 bullet-devel 软件包
|
||||
LOG_INFO "开始安装 bullet-devel 软件包"
|
||||
dnf install -y bullet-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "bullet-devel 软件包安装失败"
|
||||
|
||||
# 验证 bullet-devel 软件包是否成功安装
|
||||
LOG_INFO "验证 bullet-devel 软件包是否成功安装"
|
||||
rpm -q bullet-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "bullet-devel 软件包未正确安装"
|
||||
|
||||
# 如果测试前未安装,则在测试完成后卸载
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载 bullet-devel 软件包"
|
||||
dnf remove -y bullet-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "bullet-devel 软件包卸载失败"
|
||||
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-12-09
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test documentation availability
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试文档可用性"
|
||||
|
||||
# 检查是否已安装jboss-logmanager-javadoc
|
||||
LOG_INFO "检查jboss-logmanager-javadoc是否已安装"
|
||||
dnf list installed jboss-logmanager-javadoc > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jboss-logmanager-javadoc已安装,测试后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jboss-logmanager-javadoc未安装,测试后将卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jboss-logmanager-javadoc
|
||||
LOG_INFO "检查yum源中是否有jboss-logmanager-javadoc"
|
||||
dnf search jboss-logmanager-javadoc > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jboss-logmanager-javadoc"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jboss-logmanager-javadoc
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jboss-logmanager-javadoc"
|
||||
dnf install -y jboss-logmanager-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jboss-logmanager-javadoc失败"
|
||||
fi
|
||||
|
||||
# 测试文档可用性
|
||||
LOG_INFO "测试文档可用性"
|
||||
man jboss-logmanager-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "文档不可用"
|
||||
|
||||
# 清理环境(如果之前未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jboss-logmanager-javadoc"
|
||||
dnf remove -y jboss-logmanager-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jboss-logmanager-javadoc失败"
|
||||
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-10-20
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test installation of jboss-logmanager-javadoc package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查yum源中是否存在jboss-logmanager-javadoc软件包
|
||||
LOG_INFO "检查yum源中是否存在jboss-logmanager-javadoc软件包"
|
||||
dnf list available jboss-logmanager-javadoc &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在jboss-logmanager-javadoc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装jboss-logmanager-javadoc软件包
|
||||
LOG_INFO "检查是否已安装jboss-logmanager-javadoc软件包"
|
||||
rpm -q jboss-logmanager-javadoc &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jboss-logmanager-javadoc软件包已安装,脚本结束时保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则进行安装
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装jboss-logmanager-javadoc软件包"
|
||||
dnf install -y jboss-logmanager-javadoc
|
||||
CHECK_RESULT $? 0 0 "安装jboss-logmanager-javadoc软件包失败"
|
||||
fi
|
||||
|
||||
# 测试完成后,如果之前未安装则卸载软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jboss-logmanager-javadoc软件包"
|
||||
dnf remove -y jboss-logmanager-javadoc
|
||||
CHECK_RESULT $? 0 0 "卸载jboss-logmanager-javadoc软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
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-12-08
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包的连接功能,验证是否能够正确建立连接
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jsch-agent-proxy-pageant的连接功能"
|
||||
|
||||
# 检查是否已安装jsch-agent-proxy-pageant
|
||||
LOG_INFO "检查jsch-agent-proxy-pageant是否已安装"
|
||||
if dnf list installed jsch-agent-proxy-pageant &>/dev/null; then
|
||||
LOG_INFO "jsch-agent-proxy-pageant已安装,脚本结束后将保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "jsch-agent-proxy-pageant未安装,将在测试结束后卸载"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jsch-agent-proxy-pageant
|
||||
LOG_INFO "检查yum源中是否有jsch-agent-proxy-pageant"
|
||||
if ! dnf list available jsch-agent-proxy-pageant &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jsch-agent-proxy-pageant软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jsch-agent-proxy-pageant
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装jsch-agent-proxy-pageant"
|
||||
dnf install -y jsch-agent-proxy-pageant
|
||||
CHECK_RESULT $? 0 0 "安装jsch-agent-proxy-pageant失败"
|
||||
fi
|
||||
|
||||
# 测试连接功能
|
||||
LOG_INFO "测试jsch-agent-proxy-pageant的连接功能"
|
||||
jsch-agent-proxy-pageant --connect
|
||||
CHECK_RESULT $? 0 0 "jsch-agent-proxy-pageant连接失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jsch-agent-proxy-pageant"
|
||||
dnf remove -y jsch-agent-proxy-pageant
|
||||
CHECK_RESULT $? 0 0 "卸载jsch-agent-proxy-pageant失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
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-03
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包的安装功能,验证是否能够正确安装到系统中
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查软件包是否存在于yum源中
|
||||
check_package_existence() {
|
||||
dnf list available | grep -q "$1"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $1 不存在于yum源中"
|
||||
exit 255
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查命令是否成功执行
|
||||
check_command_success() {
|
||||
if [ $1 -ne 0 ]; then
|
||||
LOG_ERROR "命令执行失败: $2"
|
||||
exit $1
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查环境是否已安装软件包
|
||||
check_installed() {
|
||||
rpm -q "$1" > /dev/null 2>&1
|
||||
return $?
|
||||
}
|
||||
|
||||
# 主函数
|
||||
main() {
|
||||
PACKAGE_NAME="jsch-agent-proxy-pageant"
|
||||
|
||||
# 步骤1: 检查软件包是否存在于yum源中
|
||||
LOG_INFO "步骤1: 检查软件包 $PACKAGE_NAME 是否存在于yum源中"
|
||||
check_package_existence "$PACKAGE_NAME"
|
||||
|
||||
# 步骤2: 检查环境是否已安装软件包
|
||||
LOG_INFO "步骤2: 检查环境是否已安装软件包 $PACKAGE_NAME"
|
||||
if check_installed "$PACKAGE_NAME"; 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"
|
||||
CHECK_RESULT $? 0 0 "安装软件包失败"
|
||||
|
||||
# 步骤4: 验证软件包是否成功安装
|
||||
LOG_INFO "步骤4: 验证软件包 $PACKAGE_NAME 是否成功安装"
|
||||
rpm -q "$PACKAGE_NAME" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "验证软件包安装失败"
|
||||
|
||||
# 步骤5: 卸载软件包
|
||||
LOG_INFO "步骤5: 卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包失败"
|
||||
|
||||
# 步骤6: 验证软件包是否成功卸载
|
||||
LOG_INFO "步骤6: 验证软件 package 是否成功卸载 "
|
||||
rpm - q “$P ACKAGE _ NAME” > / dev / null 2 >&1
|
||||
CHECK _ RESULT $ ? ! =0 ! =0 “验证卸载失败”
|
||||
fi
|
||||
|
||||
# 恢复环境
|
||||
if [ “$ INSTALLED” = false ]; then
|
||||
LOG _ INFO “恢复环境:无需操作,因未修改原状态”
|
||||
else
|
||||
LOG _ INFO “恢复环境:保持原安装状态”
|
||||
fi
|
||||
|
||||
exit 0
|
||||
}
|
||||
|
||||
main
|
||||
}
|
||||
|
||||
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 : 2026-02-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 确认libXfixes开发头文件(如X11/extensions/Xfixes.h)存在于标准路径。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:确认libXfixes开发头文件(如X11/extensions/Xfixes.h)存在于标准路径"
|
||||
|
||||
LOG_INFO "步骤1: 检查libXfixes-devel软件包是否在yum源中可用"
|
||||
dnf list available libXfixes-devel > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libXfixes-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查系统是否已安装libXfixes-devel"
|
||||
rpm -q libXfixes-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libXfixes-devel已安装,标记为已存在安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "libXfixes-devel未安装,标记为需要测试安装"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3: 安装libXfixes-devel软件包"
|
||||
dnf install -y libXfixes-devel
|
||||
CHECK_RESULT $? 0 0 "安装libXfixes-devel失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 检查X11/extensions/Xfixes.h头文件是否存在"
|
||||
find /usr/include -name "Xfixes.h" -type f | grep -q "X11/extensions/Xfixes.h"
|
||||
CHECK_RESULT $? 0 0 "未找到X11/extensions/Xfixes.h头文件"
|
||||
|
||||
LOG_INFO "步骤5: 验证头文件路径"
|
||||
EXPECTED_PATH="/usr/include/X11/extensions/Xfixes.h"
|
||||
if [ -f "$EXPECTED_PATH" ]; then
|
||||
LOG_INFO "找到头文件: $EXPECTED_PATH"
|
||||
else
|
||||
LOG_ERROR "未在标准路径找到头文件: $EXPECTED_PATH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤6: 清理环境,卸载libXfixes-devel软件包"
|
||||
dnf remove -y libXfixes-devel
|
||||
CHECK_RESULT $? 0 0 "卸载libXfixes-devel失败"
|
||||
else
|
||||
LOG_INFO "步骤6: 保持已安装状态,无需卸载"
|
||||
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 : 2026-02-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 检查libXfixes软件包是否已正确安装在系统上。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查libXfixes软件包是否已正确安装在系统上
|
||||
LOG_INFO "开始测试:检查libXfixes软件包是否已正确安装在系统上"
|
||||
|
||||
# 步骤1: 检查当前系统是否已安装libXfixes软件包
|
||||
LOG_INFO "步骤1: 检查当前系统是否已安装libXfixes软件包"
|
||||
rpm -q libXfixes > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "系统已安装libXfixes软件包"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "系统未安装libXfixes软件包"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 步骤2: 检查yum源中是否存在libXfixes软件包
|
||||
LOG_INFO "步骤2: 检查yum源中是否存在libXfixes软件包"
|
||||
dnf list available libXfixes > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在libXfixes软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装libXfixes软件包
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装libXfixes软件包"
|
||||
dnf install -y libXfixes
|
||||
CHECK_RESULT $? 0 0 "安装libXfixes软件包失败"
|
||||
LOG_INFO "成功安装libXfixes软件包"
|
||||
fi
|
||||
|
||||
# 步骤4: 验证libXfixes软件包是否已正确安装
|
||||
LOG_INFO "步骤4: 验证libXfixes软件包是否已正确安装"
|
||||
rpm -q libXfixes
|
||||
CHECK_RESULT $? 0 0 "libXfixes软件包未正确安装"
|
||||
|
||||
# 步骤5: 测试libXfixes相关功能(这里以检查库文件为例)
|
||||
LOG_INFO "步骤5: 检查libXfixes库文件是否存在"
|
||||
ls /usr/lib*/libXfixes.so* > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "libXfixes库文件不存在"
|
||||
|
||||
# 步骤6: 清理环境,恢复到之前的状态
|
||||
LOG_INFO "步骤6: 清理环境,恢复到之前的状态"
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "卸载测试期间安装的libXfixes软件包"
|
||||
dnf remove -y libXfixes
|
||||
CHECK_RESULT $? 0 0 "卸载libXfixes软件包失败"
|
||||
LOG_INFO "成功卸载libXfixes软件包"
|
||||
else
|
||||
LOG_INFO "系统原本已安装libXfixes软件包,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:libXfixes软件包已正确安装在系统上"
|
||||
}
|
||||
|
||||
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 : 2026-02-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 查询并验证libXfixes库的版本信息。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="libXfixes"
|
||||
TEST_CMD="rpm -q $PACKAGE_NAME"
|
||||
EXPECTED_PATTERN="libXfixes"
|
||||
|
||||
LOG_INFO "开始测试:查询并验证libXfixes库的版本信息"
|
||||
LOG_INFO "步骤1:检查yum源中是否存在$PACKAGE_NAME软件包"
|
||||
dnf list available $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到软件包: $PACKAGE_NAME"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在软件包: $PACKAGE_NAME"
|
||||
|
||||
LOG_INFO "步骤2:检查测试环境是否已安装$PACKAGE_NAME"
|
||||
$TEST_CMD > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "环境中已安装$PACKAGE_NAME,测试后将保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "环境中未安装$PACKAGE_NAME,将在测试前安装"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED_BEFORE_TEST" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装$PACKAGE_NAME软件包"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME软件包失败"
|
||||
LOG_INFO "成功安装$PACKAGE_NAME软件包"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:查询$PACKAGE_NAME的版本信息"
|
||||
VERSION_INFO=$($TEST_CMD 2>&1)
|
||||
CHECK_RESULT $? 0 0 "执行命令"$TEST_CMD"失败"
|
||||
LOG_INFO "版本信息查询结果: $VERSION_INFO"
|
||||
|
||||
LOG_INFO "步骤5:验证版本信息中包含预期内容"
|
||||
echo "$VERSION_INFO" | grep -q "$EXPECTED_PATTERN"
|
||||
CHECK_RESULT $? 0 0 "版本信息中未找到预期内容"$EXPECTED_PATTERN""
|
||||
LOG_INFO "版本信息验证成功"
|
||||
|
||||
if [ "$INSTALLED_BEFORE_TEST" = "false" ]; then
|
||||
LOG_INFO "步骤6:清理环境,卸载测试安装的$PACKAGE_NAME软件包"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME软件包失败"
|
||||
LOG_INFO "成功卸载$PACKAGE_NAME软件包"
|
||||
else
|
||||
LOG_INFO "步骤6:环境清理,保持$PACKAGE_NAME的安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:成功查询并验证了libXfixes库的版本信息"
|
||||
}
|
||||
|
||||
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-10-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test the installation of libappindicator-docs package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 libappindicator-docs 包的安装功能"
|
||||
|
||||
# 检查 yum 源中是否存在 libappindicator-docs 包
|
||||
LOG_INFO "检查 yum 源中是否存在 libappindicator-docs 包"
|
||||
dnf list available libappindicator-docs &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum 源中未找到 libappindicator-docs 包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装 libappindicator-docs 包
|
||||
LOG_INFO "检查是否已安装 libappindicator-docs 包"
|
||||
rpm -q libappindicator-docs &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libappindicator-docs 包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "libappindicator-docs 包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 安装 libappindicator-docs 包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装 libappindicator-docs 包"
|
||||
dnf install -y libappindicator-docs
|
||||
CHECK_RESULT $? 0 0 "libappindicator-docs 包安装失败"
|
||||
fi
|
||||
|
||||
# 验证安装是否成功
|
||||
LOG_INFO "验证 libappindicator-docs 包是否成功安装"
|
||||
rpm -q libappindicator-docs &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "libappindicator-docs 包未成功安装"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载 libappindicator-docs 包"
|
||||
dnf remove -y libappindicator-docs
|
||||
CHECK_RESULT $? 0 0 "libappindicator-docs 包卸载失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:libappindicator-docs包的安装功能验证通过"
|
||||
}
|
||||
|
||||
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-12-08
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify the basic functionality of libappindicator-docs
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
LOG_INFO "开始测试libappindicator-docs的基本功能"
|
||||
|
||||
# 检查环境是否已安装libappindicator-docs
|
||||
LOG_INFO "检查是否已安装libappindicator-docs"
|
||||
rpm -q libappindicator-docs > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libappindicator-docs已安装,测试结束后保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "libappindicator-docs未安装,将在测试结束后卸载"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libappindicator-docs软件包
|
||||
LOG_INFO "检查yum源中是否存在libappindicator-docs软件包"
|
||||
dnf list available libappindicator-docs > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在libappindicator-docs软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装libappindicator-docs软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装libappindicator-docs软件包"
|
||||
dnf install -y libappindicator-docs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libappindicator-docs软件包失败"
|
||||
fi
|
||||
|
||||
# 验证libappindicator-docs的基本功能(示例命令,需根据实际功能调整)
|
||||
LOG_INFO "验证libappindicator-docs的基本功能"
|
||||
command_to_test="some_libappindicator_command --help"
|
||||
$command_to_test > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "libappindicator-docs基本功能验证失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载libappindicator-docs软件包"
|
||||
dnf remove -y libappindicator-docs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libappindicator-docs软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,94 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs软件包的版本检查功能,验证版本信息是否正确。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 设置严格模式,确保脚本安全
|
||||
set -e
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="libnfs"
|
||||
|
||||
# 步骤1:检查yum源中是否存在libnfs软件包
|
||||
LOG_INFO "检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
if ! dnf list available ${PACKAGE_NAME} &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查系统是否已安装libnfs软件包
|
||||
LOG_INFO "检查系统是否已安装${PACKAGE_NAME}软件包"
|
||||
if rpm -q ${PACKAGE_NAME} &>/dev/null; then
|
||||
LOG_INFO "${PACKAGE_NAME}已安装,标记为已存在安装"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}未安装,将在测试过程中安装"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装libnfs软件包
|
||||
if [ ${ALREADY_INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查libnfs软件包版本信息
|
||||
LOG_INFO "检查${PACKAGE_NAME}软件包版本信息"
|
||||
# 使用rpm命令获取版本信息
|
||||
VERSION_INFO=$(rpm -q ${PACKAGE_NAME} --queryformat "%{VERSION}-%{RELEASE}\n")
|
||||
CHECK_RESULT $? 0 0 "获取${PACKAGE_NAME}版本信息失败"
|
||||
|
||||
# 步骤5:验证版本信息格式
|
||||
LOG_INFO "验证${PACKAGE_NAME}版本信息格式"
|
||||
# 检查版本信息是否符合预期格式(例如:x.y.z-r)
|
||||
if [[ ${VERSION_INFO} =~ ^[0-9]+\.[0-9]+\.[0-9]+-[0-9]+(\.[a-zA-Z0-9_]+)*$ ]]; then
|
||||
LOG_INFO "${PACKAGE_NAME}版本信息格式正确:${VERSION_INFO}"
|
||||
else
|
||||
LOG_ERROR "${PACKAGE_NAME}版本信息格式不正确:${VERSION_INFO}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 步骤6:检查libnfs相关命令是否可用
|
||||
LOG_INFO "检查libnfs相关命令是否可用"
|
||||
# 假设libnfs提供了nfs-ls命令(根据实际软件包调整)
|
||||
if command -v nfs-ls &>/dev/null; then
|
||||
LOG_INFO "nfs-ls命令可用"
|
||||
# 测试命令基本功能
|
||||
nfs-ls --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "nfs-ls命令执行失败"
|
||||
else
|
||||
LOG_INFO "nfs-ls命令不存在,跳过命令测试"
|
||||
fi
|
||||
|
||||
# 步骤7:清理环境
|
||||
LOG_INFO "清理测试环境"
|
||||
if [ ${ALREADY_INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}失败"
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}为原有安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,130 +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-28
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs软件包的安装功能,验证安装过程是否正常完成。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试libnfs软件包的安装功能,验证安装过程是否正常完成
|
||||
|
||||
LOG_INFO "开始测试libnfs软件包的安装功能"
|
||||
|
||||
# 检查环境是否已安装libnfs
|
||||
LOG_INFO "步骤1:检查libnfs软件包是否已安装"
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libnfs软件包已安装,测试结束后保持安装状态"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "libnfs软件包未安装,将在测试过程中安装"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有libnfs软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有libnfs软件包"
|
||||
dnf list available libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中没有libnfs软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有libnfs软件包,测试失败"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装libnfs软件包(如果未安装)
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "步骤3:安装libnfs软件包"
|
||||
dnf install -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libnfs软件包失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "安装libnfs软件包失败"
|
||||
exit $?
|
||||
fi
|
||||
LOG_INFO "libnfs软件包安装成功"
|
||||
fi
|
||||
|
||||
# 验证libnfs软件包安装是否成功
|
||||
LOG_INFO "步骤4:验证libnfs软件包安装是否成功"
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "libnfs软件包未正确安装"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "libnfs软件包未正确安装"
|
||||
# 如果是新安装的,则卸载
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
dnf remove -y libnfs > /dev/null 2>&1
|
||||
fi
|
||||
exit $?
|
||||
fi
|
||||
|
||||
# 验证libnfs相关命令是否可用
|
||||
LOG_INFO "步骤5:验证libnfs相关命令是否可用"
|
||||
# 检查nfstrace命令是否存在
|
||||
which nfstrace > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "nfstrace命令存在,尝试执行帮助命令"
|
||||
nfstrace --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "nfstrace命令参数不支持"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "nfstrace命令参数不支持"
|
||||
# 如果是新安装的,则卸载
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
dnf remove -y libnfs > /dev/null 2>&1
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
else
|
||||
LOG_INFO "nfstrace命令不存在,跳过命令测试"
|
||||
fi
|
||||
|
||||
# 清理环境
|
||||
LOG_INFO "步骤6:清理测试环境"
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "卸载测试过程中安装的libnfs软件包"
|
||||
dnf remove -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs软件包失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "卸载libnfs软件包失败"
|
||||
exit $?
|
||||
fi
|
||||
LOG_INFO "libnfs软件包卸载成功"
|
||||
else
|
||||
LOG_INFO "保持原有的libnfs软件包安装状态"
|
||||
fi
|
||||
|
||||
# 最终验证环境已恢复
|
||||
LOG_INFO "步骤7:验证环境已恢复"
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "环境清理失败,libnfs软件包仍然存在"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "环境已成功恢复,libnfs软件包已卸载"
|
||||
fi
|
||||
else
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "环境被破坏,原有的libnfs软件包丢失"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "环境已保持原有状态,libnfs软件包仍然安装"
|
||||
fi
|
||||
fi
|
||||
|
||||
LOG_INFO "libnfs软件包安装功能测试完成"
|
||||
}
|
||||
|
||||
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-12-12
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs的网络功能,验证网络连接是否稳定。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试libnfs的网络功能,验证网络连接是否稳定。"
|
||||
|
||||
# 检查是否已安装libnfs
|
||||
LOG_INFO "检查libnfs是否已安装..."
|
||||
if dnf list installed libnfs > /dev/null 2>&1; then
|
||||
LOG_INFO "libnfs已安装,脚本结束时将保持安装状态。"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "libnfs未安装,将在测试结束后卸载。"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有libnfs软件包
|
||||
LOG_INFO "检查yum源中是否有libnfs软件包..."
|
||||
if ! dnf list available libnfs > /dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装则安装libnfs
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装libnfs..."
|
||||
dnf install -y libnfs
|
||||
CHECK_RESULT $? 0 0 "安装libnfs失败。"
|
||||
fi
|
||||
|
||||
# 测试网络连接功能
|
||||
LOG_INFO "测试libnfs的网络连接功能..."
|
||||
timeout 10 nfs-ls nfs://127.0.0.1
|
||||
CHECK_RESULT $? 0 124 "网络连接不稳定或超时。"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载libnfs..."
|
||||
dnf remove -y libnfs
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs失败。"
|
||||
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-12-12
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs的权限功能,验证权限设置是否生效。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试libnfs的权限功能,验证权限设置是否生效。"
|
||||
|
||||
# 检查是否已安装libnfs
|
||||
LOG_INFO "检查环境中是否已安装libnfs..."
|
||||
if ! dnf list installed libnfs &> /dev/null; then
|
||||
LOG_INFO "libnfs未安装,将进行安装..."
|
||||
# 检查yum源中是否有libnfs
|
||||
if ! dnf list available libnfs &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包,退出测试。"
|
||||
exit 255
|
||||
fi
|
||||
# 安装libnfs
|
||||
dnf install -y libnfs
|
||||
CHECK_RESULT $? 0 0 "安装libnfs失败。"
|
||||
# 标记为测试期间安装,需在结束时卸载
|
||||
INSTALLED_DURING_TEST=1
|
||||
else
|
||||
LOG_INFO "libnfs已安装,无需重复安装。"
|
||||
INSTALLED_DURING_TEST=0
|
||||
fi
|
||||
|
||||
# 测试权限功能
|
||||
LOG_INFO "测试libnfs的权限功能..."
|
||||
# 示例:设置权限并验证
|
||||
mkdir -p /tmp/nfs_test
|
||||
chmod 700 /tmp/nfs_test
|
||||
CHECK_RESULT $? 0 0 "设置权限失败。"
|
||||
|
||||
# 验证权限是否生效(示例命令)
|
||||
ls -ld /tmp/nfs_test | grep -q "drwx------"
|
||||
CHECK_RESULT $? 0 0 "权限设置未生效。"
|
||||
|
||||
# 清理环境
|
||||
LOG_INFO "清理测试环境..."
|
||||
rm -rf /tmp/nfs_test
|
||||
|
||||
# 如果测试期间安装了软件包,则卸载
|
||||
if [ "$INSTALLED_DURING_TEST" -eq 1 ]; then
|
||||
LOG_INFO "卸载测试期间安装的libnfs..."
|
||||
dnf remove -y libnfs
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs失败。"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复。"
|
||||
}
|
||||
|
||||
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-06-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs软件包的安装功能,验证安装过程是否正常完成。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查libnfs软件包是否已安装
|
||||
LOG_INFO "检查libnfs软件包是否已安装"
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libnfs软件包已安装,脚本结束时将保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "libnfs软件包未安装,将在测试完成后卸载"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libnfs软件包
|
||||
LOG_INFO "检查yum源中是否存在libnfs软件包"
|
||||
dnf list available libnfs > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装libnfs软件包
|
||||
LOG_INFO "开始安装libnfs软件包"
|
||||
dnf install -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libnfs软件包失败"
|
||||
|
||||
# 验证安装是否成功
|
||||
LOG_INFO "验证libnfs软件包是否安装成功"
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "验证libnfs软件包安装失败"
|
||||
|
||||
# 如果脚本开始时未安装,则在测试完成后卸载
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载libnfs软件包"
|
||||
dnf remove -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,90 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-06-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs软件包的回滚功能,验证回滚过程是否正常完成。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查yum源中是否存在libnfs软件包
|
||||
LOG_INFO "检查yum源中是否存在libnfs软件包"
|
||||
dnf list available libnfs > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查当前是否已安装libnfs软件包
|
||||
LOG_INFO "检查当前是否已安装libnfs软件包"
|
||||
if rpm -q libnfs > /dev/null 2>&1; then
|
||||
LOG_INFO "libnfs软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "libnfs软件包未安装,将在测试步骤中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装libnfs软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装libnfs软件包"
|
||||
dnf install -y libnfs
|
||||
CHECK_RESULT $? 0 0 "安装libnfs软件包失败"
|
||||
fi
|
||||
|
||||
# 测试回滚功能
|
||||
LOG_INFO "测试libnfs软件包的回滚功能"
|
||||
dnf history list libnfs > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "无法获取libnfs的安装历史记录"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 获取最近的libnfs事务ID
|
||||
TRANSACTION_ID=$(dnf history list libnfs | awk 'NR==3 {print $1}')
|
||||
if [ -z "$TRANSACTION_ID" ]; then
|
||||
LOG_ERROR "未找到有效的libnfs事务ID"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行回滚操作
|
||||
LOG_INFO "执行回滚操作,事务ID: $TRANSACTION_ID"
|
||||
dnf history undo -y "$TRANSACTION_ID"
|
||||
CHECK_RESULT $? 0 0 "回滚libnfs软件包失败"
|
||||
|
||||
# 验证回滚后是否成功卸载或降级了libnfs软件包
|
||||
LOG_INFO "验证回滚结果"
|
||||
if rpm -q libnfs > /dev/null 2>&1; then
|
||||
LOG_INFO "回滚后libnfs软件包仍存在,可能为降级操作"
|
||||
else
|
||||
LOG_INFO "回滚后libnfs软件包已卸载"
|
||||
fi
|
||||
|
||||
# 恢复环境:如果脚本开始时未安装,则卸载libnfs软件包;否则保持原状
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "恢复环境:卸载libnfs软件包"
|
||||
dnf remove -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs软件包失败"
|
||||
else
|
||||
LOG_INFO "恢复环境:保持原状,不卸载libnfs软件包"
|
||||
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-06-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs服务的日志查看功能,验证服务日志是否能够正常查看。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试libnfs服务的日志查看功能,验证服务日志是否能够正常查看。"
|
||||
|
||||
# 检查libnfs软件包是否已安装
|
||||
if rpm -q libnfs &>/dev/null; then
|
||||
LOG_INFO "检测到libnfs软件包已安装,脚本结束后将保持安装状态。"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "未检测到libnfs软件包,将在测试步骤中安装。"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libnfs软件包
|
||||
LOG_INFO "检查yum源中是否存在libnfs软件包..."
|
||||
if ! dnf list available libnfs &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包,退出测试。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装libnfs软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装libnfs软件包..."
|
||||
dnf install -y libnfs
|
||||
CHECK_RESULT $? 0 0 "安装libnfs软件包失败"
|
||||
fi
|
||||
|
||||
# 检查libnfs服务日志查看功能
|
||||
LOG_INFO "验证libnfs服务日志是否能够正常查看..."
|
||||
journalctl -u libnfs --no-pager >/dev/null
|
||||
CHECK_RESULT $? 0 0 "查看libnfs服务日志失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载libnfs软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载libnfs软件包..."
|
||||
dnf remove -y libnfs
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs软件包失败"
|
||||
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-06-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs软件包的卸载功能,验证卸载过程是否正常完成。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查是否已安装libnfs软件包
|
||||
LOG_INFO "检查系统中是否已安装libnfs软件包..."
|
||||
rpm -q libnfs > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libnfs软件包已安装,脚本结束后将保持安装状态。"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "libnfs软件包未安装,将在测试结束后卸载。"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libnfs软件包
|
||||
LOG_INFO "检查yum源中是否存在libnfs软件包..."
|
||||
dnf list available libnfs > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包,退出测试。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装libnfs软件包作为测试步骤
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装libnfs软件包..."
|
||||
dnf install -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libnfs软件包失败"
|
||||
fi
|
||||
|
||||
# 验证卸载功能
|
||||
LOG_INFO "开始验证libnfs软件包的卸载功能..."
|
||||
dnf remove -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs软件包失败"
|
||||
|
||||
# 环境恢复:如果最初未安装,则重新安装以恢复环境;否则不操作
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "恢复环境:重新安装libnfs软件包..."
|
||||
dnf install -y libnfs > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "恢复环境时重新安装libnfs软件包失败"
|
||||
else
|
||||
LOG_INFO "环境恢复:保持libnfs软件包的安装状态。"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,验证了libnfs软件包的卸载功能。"
|
||||
|
||||
}
|
||||
|
||||
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-06-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libnfs软件包的升级功能,验证升级过程是否正常完成。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试libnfs软件包的升级功能,验证升级过程是否正常完成。"
|
||||
|
||||
# 检查是否已安装libnfs软件包
|
||||
LOG_INFO "检查是否已安装libnfs软件包。"
|
||||
if rpm -q libnfs &>/dev/null; then
|
||||
LOG_INFO "libnfs软件包已安装,脚本结束时将保持安装状态。"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "libnfs软件包未安装,将在测试结束后卸载。"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libnfs软件包
|
||||
LOG_INFO "检查yum源中是否存在libnfs软件包。"
|
||||
if ! dnf list available libnfs &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到libnfs软件包。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装或升级libnfs软件包
|
||||
LOG_INFO "开始安装或升级libnfs软件包。"
|
||||
dnf install -y libnfs
|
||||
CHECK_RESULT $? 0 0 "安装或升级libnfs软件包失败。"
|
||||
|
||||
# 验证升级后的软件包版本
|
||||
LOG_INFO "验证升级后的软件包版本。"
|
||||
rpm -q libnfs
|
||||
CHECK_RESULT $? 0 0 "获取libnfs软件包版本失败。"
|
||||
|
||||
# 清理环境:如果最初未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载libnfs软件包。"
|
||||
dnf remove -y libnfs
|
||||
CHECK_RESULT $? 0 0 "卸载libnfs软件包失败。"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复。"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,84 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 lodash.truncate 函数的基本字符串截断功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 lodash.truncate 函数的基本字符串截断功能"
|
||||
|
||||
# 检查 Node.js 和 lodash 是否已安装
|
||||
LOG_INFO "检查 Node.js 和 lodash 是否已安装"
|
||||
if command -v node &> /dev/null && node -e "require("lodash")" &> /dev/null; then
|
||||
LOG_INFO "Node.js 和 lodash 已安装,脚本结束后将保持安装状态"
|
||||
NODE_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Node.js 或 lodash 未安装,将在测试中安装"
|
||||
NODE_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否有 Node.js 和 npm 包
|
||||
LOG_INFO "检查 yum 源中是否有 Node.js 和 npm 包"
|
||||
if ! dnf list available nodejs npm &> /dev/null; then
|
||||
LOG_ERROR "yum 源中没有找到 Node.js 或 npm 包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装 Node.js 和 npm
|
||||
if [ "$NODE_INSTALLED" = false ]; then
|
||||
LOG_INFO "安装 Node.js 和 npm"
|
||||
dnf install -y nodejs npm
|
||||
CHECK_RESULT $? 0 0 "安装 Node.js 和 npm 失败"
|
||||
fi
|
||||
|
||||
# 安装 lodash 包
|
||||
LOG_INFO "安装 lodash 包"
|
||||
npm install -g lodash
|
||||
CHECK_RESULT $? 0 0 "安装 lodash 失败"
|
||||
|
||||
# 测试 lodash.truncate 函数的基本功能
|
||||
LOG_INFO "测试 lodash.truncate 函数的基本功能"
|
||||
cat > test_truncate.js << "EOF"
|
||||
const _ = require("lodash");
|
||||
const str = "Hello, world! This is a long string.";
|
||||
const truncated = _.truncate(str, { length: 20 });
|
||||
console.log(truncated);
|
||||
EOF
|
||||
|
||||
node test_truncate.js | grep -q "Hello, world! This..."
|
||||
CHECK_RESULT $? 0 0 "lodash.truncate 函数截断功能测试失败"
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f test_truncate.js
|
||||
|
||||
# 如果脚本开始时未安装 Node.js 和 lodash,则在测试结束后卸载
|
||||
if [ "$NODE_INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载 lodash 包"
|
||||
npm uninstall -g lodash
|
||||
CHECK_RESULT $? 0 0 "卸载 lodash 失败"
|
||||
|
||||
LOG_INFO "卸载 Node.js 和 npm"
|
||||
dnf remove -y nodejs npm
|
||||
CHECK_RESULT $? 0 0 "卸载 Node.js 和 npm 失败"
|
||||
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 : 2026-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包 nodejs-lodash-trunc 能够通过包管理器成功安装
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:验证nodejs-lodash-trunc软件包能够通过包管理器成功安装"
|
||||
|
||||
# 检查软件包是否已在yum源中
|
||||
LOG_INFO "检查yum源中是否存在nodejs-lodash-trunc软件包"
|
||||
dnf list available nodejs-lodash-trunc &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到nodejs-lodash-trunc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装nodejs-lodash-trunc
|
||||
LOG_INFO "检查nodejs-lodash-trunc是否已安装"
|
||||
rpm -q nodejs-lodash-trunc &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "nodejs-lodash-trunc已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "nodejs-lodash-trunc未安装,将执行安装测试"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则执行安装
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "开始安装nodejs-lodash-trunc软件包"
|
||||
dnf install -y nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "安装nodejs-lodash-trunc失败"
|
||||
LOG_INFO "nodejs-lodash-trunc安装成功"
|
||||
fi
|
||||
|
||||
# 验证软件包是否安装成功
|
||||
LOG_INFO "验证nodejs-lodash-trunc软件包是否安装成功"
|
||||
rpm -q nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "nodejs-lodash-trunc未正确安装"
|
||||
|
||||
# 测试软件包功能(此处以列出文件为例,具体功能根据实际软件包调整)
|
||||
LOG_INFO "测试nodejs-lodash-trunc基本功能"
|
||||
rpm -ql nodejs-lodash-trunc | head -5
|
||||
CHECK_RESULT $? 0 0 "nodejs-lodash-trunc功能测试失败"
|
||||
|
||||
# 如果测试开始时未安装,则在测试结束后卸载
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "测试完成,开始卸载nodejs-lodash-trunc软件包"
|
||||
dnf remove -y nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "卸载nodejs-lodash-trunc失败"
|
||||
LOG_INFO "nodejs-lodash-trunc卸载成功,环境已恢复"
|
||||
else
|
||||
LOG_INFO "测试完成,nodejs-lodash-trunc保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试结束:nodejs-lodash-trunc软件包能够通过包管理器成功安装"
|
||||
}
|
||||
|
||||
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 : 2026-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试指定 length 参数时的字符串截断功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断环境是否已经安装nodejs-lodash包
|
||||
LOG_INFO "检查nodejs-lodash包是否已安装"
|
||||
rpm -q nodejs-lodash > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "nodejs-lodash包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED_FLAG=1
|
||||
else
|
||||
LOG_INFO "nodejs-lodash包未安装,将在测试前安装,测试结束后卸载"
|
||||
INSTALLED_FLAG=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有nodejs-lodash包
|
||||
LOG_INFO "检查yum源中是否有nodejs-lodash包"
|
||||
dnf list available nodejs-lodash > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有找到nodejs-lodash包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装nodejs-lodash包
|
||||
if [ $INSTALLED_FLAG -eq 0 ]; then
|
||||
LOG_INFO "安装nodejs-lodash包"
|
||||
dnf install -y nodejs-lodash > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装nodejs-lodash包失败"
|
||||
fi
|
||||
|
||||
# 测试指定length参数时的字符串截断功能
|
||||
LOG_INFO "测试指定length参数时的字符串截断功能"
|
||||
cat > test_trunc.js << "EOF"
|
||||
const _ = require("lodash");
|
||||
console.log(_.trunc("hi-diddly-ho there, neighborino", { "length": 20 }));
|
||||
EOF
|
||||
|
||||
node test_trunc.js > actual_result.txt
|
||||
CHECK_RESULT $? 0 0 "执行Node.js脚本失败"
|
||||
|
||||
# 检查实际输出是否符合预期
|
||||
EXPECTED="hi-diddly-ho there..."
|
||||
ACTUAL=$(cat actual_result.txt)
|
||||
if [ "$ACTUAL" == "$EXPECTED" ]; then
|
||||
LOG_INFO "测试通过:字符串截断功能正常"
|
||||
else
|
||||
LOG_ERROR "测试失败:预期输出为"$EXPECTED",实际输出为"$ACTUAL""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f test_trunc.js actual_result.txt
|
||||
|
||||
# 如果测试前未安装,则在测试结束后卸载nodejs-lodash包
|
||||
if [ $INSTALLED_FLAG -eq 0 ]; then
|
||||
LOG_INFO "卸载nodejs-lodash包"
|
||||
dnf remove -y nodejs-lodash > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载nodejs-lodash包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +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-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试指定 omission 参数时的字符串截断功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试指定 omission 参数时的字符串截断功能"
|
||||
|
||||
# 检查 yum 源中是否存在 nodejs-lodash-trunc 软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 nodejs-lodash-trunc 软件包"
|
||||
dnf list nodejs-lodash-trunc > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum 源中未找到 nodejs-lodash-trunc 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查环境是否已安装 nodejs-lodash-trunc
|
||||
LOG_INFO "检查环境是否已安装 nodejs-lodash-trunc"
|
||||
rpm -q nodejs-lodash-trunc > /dev/null 2>&1
|
||||
installed=$?
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "环境未安装 nodejs-lodash-trunc,开始安装"
|
||||
dnf install -y nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "安装 nodejs-lodash-trunc 失败"
|
||||
fi
|
||||
|
||||
# 测试指定 omission 参数时的字符串截断功能
|
||||
LOG_INFO "测试指定 omission 参数时的字符串截断功能"
|
||||
node -e "
|
||||
const trunc = require("lodash.trunc");
|
||||
const result = trunc("这是一个测试字符串", {length: 5, omission: "..."});
|
||||
console.log(result);
|
||||
" > actual_output.txt 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行 nodejs-lodash-trunc 命令失败"
|
||||
|
||||
# 检查预期输出
|
||||
expected_output="这是一个..."
|
||||
actual_output=$(cat actual_output.txt)
|
||||
if [ "$actual_output" = "$expected_output" ]; then
|
||||
LOG_INFO "测试通过:字符串截断功能正常"
|
||||
else
|
||||
LOG_ERROR "测试失败:预期输出 "$expected_output",实际输出 "$actual_output""
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f actual_output.txt
|
||||
|
||||
# 如果脚本开始时未安装,则卸载软件包
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "卸载 nodejs-lodash-trunc 软件包"
|
||||
dnf remove -y nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "卸载 nodejs-lodash-trunc 失败"
|
||||
else
|
||||
LOG_INFO "保持 nodejs-lodash-trunc 安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,96 +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-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包 nodejs-lodash-trunc 能够在 Node.js 环境中被正确引入
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查环境是否已安装 nodejs-lodash-trunc
|
||||
LOG_INFO "检查 nodejs-lodash-trunc 软件包是否已安装..."
|
||||
dnf list installed nodejs-lodash-trunc &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "nodejs-lodash-trunc 已安装,脚本结束后将保持安装状态。"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "nodejs-lodash-trunc 未安装,将在测试中安装。"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否有该软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 nodejs-lodash-trunc 软件包..."
|
||||
dnf list available nodejs-lodash-trunc &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "yum 源中未找到 nodejs-lodash-trunc 软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum 源中未找到 nodejs-lodash-trunc 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装 nodejs-lodash-trunc 软件包..."
|
||||
dnf install -y nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "安装 nodejs-lodash-trunc 失败"
|
||||
fi
|
||||
|
||||
# 测试 nodejs-lodash-trunc 能否在 Node.js 环境中被正确引入
|
||||
LOG_INFO "测试 nodejs-lodash-trunc 能否在 Node.js 环境中被正确引入..."
|
||||
cat > /tmp/test_lodash_trunc.js << "EOF"
|
||||
try {
|
||||
const trunc = require("lodash.trunc");
|
||||
console.log("引入 lodash.trunc 成功:", trunc);
|
||||
if (typeof trunc === "function") {
|
||||
console.log("trunc 是一个函数");
|
||||
const result = trunc("Hello World", 5);
|
||||
console.log("trunc 函数执行结果:", result);
|
||||
if (result === "Hello...") {
|
||||
console.log("测试通过");
|
||||
process.exit(0);
|
||||
} else {
|
||||
console.error("测试失败: 函数执行结果不符合预期");
|
||||
process.exit(1);
|
||||
}
|
||||
} else {
|
||||
console.error("测试失败: trunc 不是一个函数");
|
||||
process.exit(1);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error("测试失败: 无法引入 lodash.trunc", error);
|
||||
process.exit(1);
|
||||
}
|
||||
EOF
|
||||
|
||||
node /tmp/test_lodash_trunc.js
|
||||
CHECK_RESULT $? 0 0 "Node.js 环境中引入 lodash.trunc 失败"
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件..."
|
||||
rm -f /tmp/test_lodash_trunc.js
|
||||
|
||||
# 如果脚本开始时未安装,则在测试结束后卸载软件包
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载 nodejs-lodash-trunc 软件包..."
|
||||
dnf remove -y nodejs-lodash-trunc
|
||||
CHECK_RESULT $? 0 0 "卸载 nodejs-lodash-trunc 失败"
|
||||
else
|
||||
LOG_INFO "保持 nodejs-lodash-trunc 软件包安装状态。"
|
||||
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-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试指定 separator 参数时的字符串截断功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试指定 separator 参数时的字符串截断功能
|
||||
|
||||
# 检查是否已经安装nodejs-lodash软件包
|
||||
LOG_INFO "检查是否已安装nodejs-lodash软件包"
|
||||
rpm -q nodejs-lodash > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "nodejs-lodash已安装,标记为已存在"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "nodejs-lodash未安装,标记为未安装"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有nodejs-lodash软件包
|
||||
LOG_INFO "检查yum源中是否有nodejs-lodash软件包"
|
||||
dnf list available nodejs-lodash > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到nodejs-lodash软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "开始安装nodejs-lodash软件包"
|
||||
dnf install -y nodejs-lodash
|
||||
CHECK_RESULT $? 0 0 "安装nodejs-lodash软件包失败"
|
||||
fi
|
||||
|
||||
# 测试trunc函数separator参数功能
|
||||
LOG_INFO "测试trunc函数separator参数功能"
|
||||
# 创建一个测试脚本
|
||||
cat > /tmp/test_trunc.js << "EOF"
|
||||
const _ = require("lodash");
|
||||
console.log("测试1: trunc("hello-world", {separator: "-"})");
|
||||
console.log(_.trunc("hello-world", {separator: "-"}));
|
||||
console.log("测试2: trunc("hello.world.js", {separator: "."})");
|
||||
console.log(_.trunc("hello.world.js", {separator: "."}));
|
||||
console.log("测试3: trunc("hello world", {separator: " ", length: 8})");
|
||||
console.log(_.trunc("hello world", {separator: " ", length: 8}));
|
||||
EOF
|
||||
|
||||
# 执行测试脚本
|
||||
node /tmp/test_trunc.js
|
||||
CHECK_RESULT $? 0 0 "执行trunc函数测试失败"
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/test_trunc.js
|
||||
|
||||
# 如果测试前未安装,则卸载软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "卸载nodejs-lodash软件包"
|
||||
dnf remove -y nodejs-lodash
|
||||
CHECK_RESULT $? 0 0 "卸载nodejs-lodash软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,97 +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-02-21
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包 nodejs-lodash-trunc 能够通过包管理器成功卸载
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 初始化日志打印函数(实际环境中可能已定义)
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*"
|
||||
}
|
||||
|
||||
# 定义包名
|
||||
PACKAGE_NAME="nodejs-lodash-trunc"
|
||||
|
||||
# 步骤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
|
||||
|
||||
# 步骤2:检查当前环境是否已安装该软件包
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装软件包 $PACKAGE_NAME"
|
||||
dnf list installed $PACKAGE_NAME &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,标记为已存在"
|
||||
PACKAGE_PRE_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,标记为未存在"
|
||||
PACKAGE_PRE_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包作为测试步骤
|
||||
if [ "$PACKAGE_PRE_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 安装成功"
|
||||
else
|
||||
LOG_INFO "步骤3:软件包 $PACKAGE_NAME 已安装,跳过安装步骤"
|
||||
fi
|
||||
|
||||
# 步骤4:验证软件包是否成功安装
|
||||
LOG_INFO "步骤4:验证软件包 $PACKAGE_NAME 是否成功安装"
|
||||
dnf list installed $PACKAGE_NAME &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "软件包 $PACKAGE_NAME 未正确安装"
|
||||
|
||||
# 步骤5:测试卸载软件包
|
||||
LOG_INFO "步骤5:测试卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 卸载成功"
|
||||
|
||||
# 步骤6:验证软件包是否已卸载
|
||||
LOG_INFO "步骤6:验证软件包 $PACKAGE_NAME 是否已卸载"
|
||||
dnf list installed $PACKAGE_NAME &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 卸载后仍存在"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已成功卸载"
|
||||
fi
|
||||
|
||||
# 步骤7:环境恢复,如果脚本开始时未安装,则保持未安装状态;如果已安装,则重新安装
|
||||
if [ "$PACKAGE_PRE_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤7:环境恢复,脚本开始时未安装 $PACKAGE_NAME,保持未安装状态"
|
||||
else
|
||||
LOG_INFO "步骤7:环境恢复,重新安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "重新安装软件包 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 重新安装成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:软件包 $PACKAGE_NAME 能够通过包管理器成功卸载"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,107 +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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试在 Node.js 代码中能否成功导入 lodash.unescape 模块
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "1. 检查 yum 源中是否存在 nodejs 和 npm 软件包"
|
||||
if ! dnf list available nodejs 2>/dev/null | grep -q nodejs; then
|
||||
LOG_ERROR "yum 源中未找到 nodejs 软件包"
|
||||
exit 255
|
||||
fi
|
||||
if ! dnf list available npm 2>/dev/null | grep -q npm; then
|
||||
LOG_ERROR "yum 源中未找到 npm 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "2. 检查当前环境是否已安装 nodejs 和 npm"
|
||||
NODEJS_INSTALLED=0
|
||||
NPM_INSTALLED=0
|
||||
if command -v node >/dev/null 2>&1; then
|
||||
NODEJS_INSTALLED=1
|
||||
LOG_INFO "nodejs 已安装"
|
||||
else
|
||||
LOG_INFO "nodejs 未安装"
|
||||
fi
|
||||
if command -v npm >/dev/null 2>&1; then
|
||||
NPM_INSTALLED=1
|
||||
LOG_INFO "npm 已安装"
|
||||
else
|
||||
LOG_INFO "npm 未安装"
|
||||
fi
|
||||
|
||||
LOG_INFO "3. 如果 nodejs 或 npm 未安装,则进行安装"
|
||||
if [[ $NODEJS_INSTALLED -eq 0 ]] || [[ $NPM_INSTALLED -eq 0 ]]; then
|
||||
dnf install -y nodejs npm
|
||||
CHECK_RESULT $? 0 0 "安装 nodejs 和 npm 失败"
|
||||
LOG_INFO "安装 nodejs 和 npm 成功"
|
||||
INSTALLED_FOR_TEST=1
|
||||
else
|
||||
INSTALLED_FOR_TEST=0
|
||||
fi
|
||||
|
||||
LOG_INFO "4. 检查 npm 命令是否支持 install 参数"
|
||||
npm install --help >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "npm 命令不支持 install 参数" 255
|
||||
|
||||
LOG_INFO "5. 创建测试目录和测试代码"
|
||||
TEST_DIR="/tmp/test_nodejs_lodash_unescape_$(date +%s)"
|
||||
mkdir -p "$TEST_DIR"
|
||||
cd "$TEST_DIR"
|
||||
|
||||
cat > test_unescape.js << "EOF"
|
||||
const unescape = require("lodash.unescape");
|
||||
if (typeof unescape === "function") {
|
||||
console.log("SUCCESS: lodash.unescape 模块导入成功");
|
||||
process.exit(0);
|
||||
} else {
|
||||
console.error("FAIL: lodash.unescape 模块导入失败");
|
||||
process.exit(1);
|
||||
}
|
||||
EOF
|
||||
|
||||
LOG_INFO "6. 初始化 npm 项目并安装 lodash.unescape 模块"
|
||||
npm init -y >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "npm init 失败"
|
||||
npm install lodash.unescape
|
||||
CHECK_RESULT $? 0 0 "安装 lodash.unescape 模块失败"
|
||||
|
||||
LOG_INFO "7. 执行测试代码,验证能否成功导入 lodash.unescape 模块"
|
||||
node test_unescape.js
|
||||
CHECK_RESULT $? 0 0 "Node.js 代码中导入 lodash.unescape 模块失败"
|
||||
|
||||
LOG_INFO "8. 清理测试目录"
|
||||
cd /
|
||||
rm -rf "$TEST_DIR"
|
||||
|
||||
LOG_INFO "9. 如果本次测试安装了软件包,则在测试结束后卸载"
|
||||
if [[ $INSTALLED_FOR_TEST -eq 1 ]]; then
|
||||
dnf remove -y nodejs npm
|
||||
CHECK_RESULT $? 0 0 "卸载 nodejs 和 npm 失败"
|
||||
LOG_INFO "卸载 nodejs 和 npm 成功"
|
||||
else
|
||||
LOG_INFO "测试前已安装 nodejs 和 npm,保持安装状态"
|
||||
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 : 2026-03-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试通过包管理器安装软件包 nodejs-lodash-unescape 的功能是否正常
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试通过包管理器安装软件包 nodejs-lodash-unescape 的功能是否正常"
|
||||
|
||||
LOG_INFO "步骤1: 检查 yum 源中是否存在 nodejs-lodash-unescape 软件包"
|
||||
dnf list available nodejs-lodash-unescape &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum 源中未找到 nodejs-lodash-unescape 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查系统是否已经安装了 nodejs-lodash-unescape"
|
||||
rpm -q nodejs-lodash-unescape &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "nodejs-lodash-unescape 已经安装,标记为已安装状态"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "nodejs-lodash-unescape 未安装,标记为未安装状态"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3: 如果未安装,则安装 nodejs-lodash-unescape"
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
dnf install -y nodejs-lodash-unescape
|
||||
CHECK_RESULT $? 0 0 "安装 nodejs-lodash-unescape 失败"
|
||||
LOG_INFO "安装 nodejs-lodash-unescape 成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 验证 nodejs-lodash-unescape 安装是否成功"
|
||||
rpm -q nodejs-lodash-unescape
|
||||
CHECK_RESULT $? 0 0 "验证 nodejs-lodash-unescape 安装失败"
|
||||
|
||||
LOG_INFO "步骤5: 测试 nodejs-lodash-unescape 功能是否正常"
|
||||
node -e "const unescape = require("lodash/unescape"); console.log(unescape("fred, barney, & pebbles"));" 2>&1 | grep -q "fred, barney, & pebbles"
|
||||
CHECK_RESULT $? 0 0 "nodejs-lodash-unescape 功能测试失败"
|
||||
|
||||
LOG_INFO "步骤6: 环境恢复,如果之前未安装则卸载 nodejs-lodash-unescape"
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
dnf remove -y nodejs-lodash-unescape
|
||||
CHECK_RESULT $? 0 0 "卸载 nodejs-lodash-unescape 失败"
|
||||
LOG_INFO "卸载 nodejs-lodash-unescape 成功"
|
||||
else
|
||||
LOG_INFO "保持 nodejs-lodash-unescape 安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试通过包管理器安装软件包 nodejs-lodash-unescape 的功能是否正常 测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,203 +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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 unescape 函数解码 HTML 实体字符的核心功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $1"
|
||||
}
|
||||
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $1"
|
||||
}
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
check_package_in_repo() {
|
||||
local package_name=$1
|
||||
LOG_INFO "检查yum源中是否存在软件包: $package_name"
|
||||
dnf list available "$package_name" &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $package_name 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查命令参数
|
||||
check_command_param() {
|
||||
local command=$1
|
||||
local param=$2
|
||||
LOG_INFO "检查命令 $command 是否支持参数 $param"
|
||||
$command --help 2>&1 | grep -q "$param"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "命令 $command 不支持参数 $param"
|
||||
exit 255
|
||||
fi
|
||||
}
|
||||
|
||||
# 安装软件包
|
||||
install_package() {
|
||||
local package_name=$1
|
||||
LOG_INFO "安装软件包: $package_name"
|
||||
dnf install -y "$package_name"
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $package_name 失败"
|
||||
}
|
||||
|
||||
# 卸载软件包
|
||||
uninstall_package() {
|
||||
local package_name=$1
|
||||
LOG_INFO "卸载软件包: $package_name"
|
||||
dnf remove -y "$package_name"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $package_name 失败"
|
||||
}
|
||||
|
||||
# 检查Node.js是否已安装
|
||||
check_nodejs_installed() {
|
||||
LOG_INFO "检查Node.js是否已安装"
|
||||
command -v node &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "Node.js 已安装"
|
||||
return 0
|
||||
else
|
||||
LOG_INFO "Node.js 未安装"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查lodash是否已安装
|
||||
check_lodash_installed() {
|
||||
LOG_INFO "检查lodash是否已安装"
|
||||
npm list lodash &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "lodash 已安装"
|
||||
return 0
|
||||
else
|
||||
LOG_INFO "lodash 未安装"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 主测试函数
|
||||
test_unescape_function() {
|
||||
LOG_INFO "开始测试 unescape 函数解码 HTML 实体字符的核心功能"
|
||||
|
||||
# 创建测试脚本
|
||||
cat > test_unescape.js << "EOF"
|
||||
const _ = require("lodash");
|
||||
|
||||
// 测试数据
|
||||
const testCases = [
|
||||
{ input: "&", expected: "&" },
|
||||
{ input: "<", expected: "<" },
|
||||
{ input: ">", expected: ">" },
|
||||
{ input: """, expected: """ },
|
||||
{ input: "'", expected: """ },
|
||||
{ input: "&<>"'", expected: "&<>"" }
|
||||
];
|
||||
|
||||
console.log("开始测试 lodash unescape 函数...");
|
||||
|
||||
let allPassed = true;
|
||||
testCases.forEach((testCase, index) => {
|
||||
const result = _.unescape(testCase.input);
|
||||
if (result === testCase.expected) {
|
||||
console.log(`测试用例 ${index + 1} 通过: ${testCase.input} -> ${result}`);
|
||||
} else {
|
||||
console.log(`测试用例 ${index + 1} 失败: ${testCase.input} -> ${result} (期望: ${testCase.expected})`);
|
||||
allPassed = false;
|
||||
}
|
||||
});
|
||||
|
||||
if (allPassed) {
|
||||
console.log("所有测试用例通过!");
|
||||
process.exit(0);
|
||||
} else {
|
||||
console.log("部分测试用例失败!");
|
||||
process.exit(1);
|
||||
}
|
||||
EOF
|
||||
|
||||
LOG_INFO "执行Node.js测试脚本"
|
||||
node test_unescape.js
|
||||
CHECK_RESULT $? 0 0 "unescape 函数测试失败"
|
||||
|
||||
# 清理测试文件
|
||||
rm -f test_unescape.js
|
||||
}
|
||||
|
||||
# 主函数
|
||||
main() {
|
||||
local nodejs_installed_before=0
|
||||
local lodash_installed_before=0
|
||||
|
||||
# 检查Node.js安装状态
|
||||
if check_nodejs_installed; then
|
||||
nodejs_installed_before=1
|
||||
fi
|
||||
|
||||
# 检查lodash安装状态
|
||||
if check_lodash_installed; then
|
||||
lodash_installed_before=1
|
||||
fi
|
||||
|
||||
# 如果需要安装Node.js
|
||||
if [ $nodejs_installed_before -eq 0 ]; then
|
||||
LOG_INFO "Node.js未安装,开始安装Node.js"
|
||||
check_package_in_repo "nodejs"
|
||||
install_package "nodejs"
|
||||
fi
|
||||
|
||||
# 如果需要安装lodash
|
||||
if [ $lodash_installed_before -eq 0 ]; then
|
||||
LOG_INFO "lodash未安装,开始安装lodash"
|
||||
# 检查npm是否可用
|
||||
check_command_param "npm" "install"
|
||||
LOG_INFO "使用npm安装lodash"
|
||||
npm install lodash
|
||||
CHECK_RESULT $? 0 0 "安装lodash失败"
|
||||
fi
|
||||
|
||||
# 执行测试
|
||||
test_unescape_function
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "开始环境恢复"
|
||||
|
||||
# 如果测试前未安装lodash,则卸载
|
||||
if [ $lodash_installed_before -eq 0 ]; then
|
||||
LOG_INFO "卸载测试期间安装的lodash"
|
||||
npm uninstall lodash
|
||||
CHECK_RESULT $? 0 0 "卸载lodash失败"
|
||||
fi
|
||||
|
||||
# 如果测试前未安装Node.js,则卸载
|
||||
if [ $nodejs_installed_before -eq 0 ]; then
|
||||
LOG_INFO "卸载测试期间安装的Node.js"
|
||||
uninstall_package "nodejs"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
# 执行主函数
|
||||
main
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,105 +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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试通过包管理器卸载软件包 nodejs-lodash-unescape 的功能是否正常
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 软件包卸载功能测试脚本
|
||||
|
||||
LOG_INFO "开始测试软件包卸载功能"
|
||||
LOG_INFO "测试用例:测试通过包管理器卸载软件包 nodejs-lodash-unescape 的功能是否正常"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "步骤1:检查软件包 nodejs-lodash-unescape 是否在yum源中"
|
||||
dnf list available nodejs-lodash-unescape > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 nodejs-lodash-unescape 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "软件包 nodejs-lodash-unescape 在yum源中"
|
||||
|
||||
# 检查当前软件包安装状态
|
||||
LOG_INFO "步骤2:检查当前软件包安装状态"
|
||||
rpm -q nodejs-lodash-unescape > /dev/null 2>&1
|
||||
PACKAGE_INSTALLED=$?
|
||||
if [ $PACKAGE_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "软件包 nodejs-lodash-unescape 已安装,测试结束后将保持安装状态"
|
||||
INITIAL_STATE="installed"
|
||||
else
|
||||
LOG_INFO "软件包 nodejs-lodash-unescape 未安装,将先安装再测试卸载功能"
|
||||
INITIAL_STATE="not_installed"
|
||||
fi
|
||||
|
||||
# 如果未安装,先安装软件包
|
||||
if [ "$INITIAL_STATE" = "not_installed" ]; then
|
||||
LOG_INFO "步骤3:安装软件包 nodejs-lodash-unescape"
|
||||
dnf install -y nodejs-lodash-unescape
|
||||
CHECK_RESULT $? 0 0 "软件包安装失败"
|
||||
LOG_INFO "软件包安装成功"
|
||||
fi
|
||||
|
||||
# 验证软件包已安装
|
||||
LOG_INFO "步骤4:验证软件包已正确安装"
|
||||
rpm -q nodejs-lodash-unescape > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "软件包未正确安装"
|
||||
|
||||
# 卸载软件包
|
||||
LOG_INFO "步骤5:卸载软件包 nodejs-lodash-unescape"
|
||||
dnf remove -y nodejs-lodash-unescape
|
||||
CHECK_RESULT $? 0 0 "软件包卸载失败"
|
||||
LOG_INFO "软件包卸载成功"
|
||||
|
||||
# 验证软件包已卸载
|
||||
LOG_INFO "步骤6:验证软件包已正确卸载"
|
||||
rpm -q nodejs-lodash-unescape > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "软件包卸载后仍然存在"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "软件包已正确卸载"
|
||||
|
||||
# 如果需要,重新安装软件包以恢复环境
|
||||
if [ "$INITIAL_STATE" = "installed" ]; then
|
||||
LOG_INFO "步骤7:恢复环境,重新安装软件包"
|
||||
dnf install -y nodejs-lodash-unescape
|
||||
CHECK_RESULT $? 0 0 "环境恢复失败"
|
||||
LOG_INFO "环境恢复成功,软件包已重新安装"
|
||||
else
|
||||
LOG_INFO "步骤7:环境恢复,软件包保持未安装状态"
|
||||
fi
|
||||
|
||||
# 最终验证
|
||||
LOG_INFO "步骤8:最终环境验证"
|
||||
if [ "$INITIAL_STATE" = "installed" ]; then
|
||||
rpm -q nodejs-lodash-unescape > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "环境恢复后软件包未正确安装"
|
||||
LOG_INFO "环境已恢复到初始安装状态"
|
||||
else
|
||||
rpm -q nodejs-lodash-unescape > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "环境恢复后软件包不应存在"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "环境已恢复到初始未安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:软件包卸载功能测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,107 +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-02-20
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lz4-help基准测试功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已安装lz4
|
||||
LOG_INFO "检查系统是否已安装lz4软件包"
|
||||
rpm -q lz4 > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "lz4软件包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED_BEFORE=1
|
||||
else
|
||||
LOG_INFO "lz4软件包未安装,将在测试过程中安装并在测试结束后卸载"
|
||||
INSTALLED_BEFORE=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有lz4软件包
|
||||
LOG_INFO "检查yum源中是否存在lz4软件包"
|
||||
dnf list available lz4 > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到lz4软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装lz4
|
||||
if [ ${INSTALLED_BEFORE} -eq 0 ]; then
|
||||
LOG_INFO "安装lz4软件包"
|
||||
dnf install -y lz4 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装lz4软件包失败"
|
||||
fi
|
||||
|
||||
# 测试lz4 --help命令
|
||||
LOG_INFO "测试lz4 --help命令"
|
||||
lz4 --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "lz4 --help命令执行失败"
|
||||
|
||||
# 测试lz4 -h命令
|
||||
LOG_INFO "测试lz4 -h命令"
|
||||
lz4 -h > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "lz4 -h命令执行失败"
|
||||
|
||||
# 测试lz4 --version命令
|
||||
LOG_INFO "测试lz4 --version命令"
|
||||
lz4 --version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "lz4 --version命令执行失败"
|
||||
|
||||
# 测试lz4 -V命令
|
||||
LOG_INFO "测试lz4 -V命令"
|
||||
lz4 -V > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "lz4 -V命令执行失败"
|
||||
|
||||
# 测试不支持的参数
|
||||
LOG_INFO "测试lz4不支持的参数"
|
||||
lz4 --invalid-param > /dev/null 2>&1
|
||||
if [ $? -ne 255 ] && [ $? -ne 1 ]; then
|
||||
LOG_ERROR "lz4不支持--invalid-param参数但未按预期退出"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 基准测试:压缩测试
|
||||
LOG_INFO "执行lz4压缩基准测试"
|
||||
echo "This is a test file for lz4 benchmark" > test_input.txt
|
||||
lz4 -z test_input.txt test_compressed.lz4
|
||||
CHECK_RESULT $? 0 0 "lz4压缩测试失败"
|
||||
|
||||
# 基准测试:解压缩测试
|
||||
LOG_INFO "执行lz4解压缩基准测试"
|
||||
lz4 -d test_compressed.lz4 test_output.txt
|
||||
CHECK_RESULT $? 0 0 "lz4解压缩测试失败"
|
||||
|
||||
# 验证压缩解压缩结果
|
||||
LOG_INFO "验证压缩解压缩结果"
|
||||
diff test_input.txt test_output.txt > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "压缩解压缩后文件内容不一致"
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试生成的文件"
|
||||
rm -f test_input.txt test_compressed.lz4 test_output.txt
|
||||
|
||||
# 如果测试前未安装,则卸载lz4
|
||||
if [ ${INSTALLED_BEFORE} -eq 0 ]; then
|
||||
LOG_INFO "卸载lz4软件包"
|
||||
dnf remove -y lz4 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载lz4软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "lz4-help基准测试功能测试完成"
|
||||
}
|
||||
|
||||
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-02-20
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lz4-help帮助信息功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试lz4-help帮助信息功能
|
||||
|
||||
LOG_INFO "1. 检查系统中是否已安装lz4软件包"
|
||||
if command -v lz4 &> /dev/null; then
|
||||
LOG_INFO "lz4已安装,脚本结束后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "lz4未安装,将在测试过程中安装,并在脚本结束前卸载"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
LOG_INFO "2. 检查yum源中是否有lz4软件包"
|
||||
dnf list available lz4 &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到lz4软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "3. 安装lz4软件包"
|
||||
if [ "$already_installed" = false ]; then
|
||||
dnf install -y lz4
|
||||
CHECK_RESULT $? 0 0 "安装lz4软件包失败"
|
||||
LOG_INFO "lz4软件包安装成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "4. 测试lz4 -h参数"
|
||||
lz4 -h &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "lz4 -h命令执行失败"
|
||||
|
||||
LOG_INFO "5. 测试lz4 --help参数"
|
||||
lz4 --help &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "lz4 --help命令执行失败"
|
||||
|
||||
LOG_INFO "6. 测试不支持的参数"
|
||||
lz4 --invalid-param 2>&1 | grep -q "unknown option"
|
||||
CHECK_RESULT $? 0 0 "lz4不支持--invalid-param参数"
|
||||
|
||||
LOG_INFO "7. 验证帮助信息包含关键内容"
|
||||
lz4 -h | grep -q "LZ4 command line interface"
|
||||
CHECK_RESULT $? 0 0 "帮助信息中未找到"LZ4 command line interface""
|
||||
|
||||
lz4 -h | grep -q "Usage:"
|
||||
CHECK_RESULT $? 0 0 "帮助信息中未找到"Usage:""
|
||||
|
||||
LOG_INFO "8. 清理环境"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载lz4软件包"
|
||||
dnf remove -y lz4
|
||||
CHECK_RESULT $? 0 0 "卸载lz4软件包失败"
|
||||
LOG_INFO "lz4软件包卸载成功"
|
||||
else
|
||||
LOG_INFO "保持lz4软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "9. 测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +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-02-20
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lz4-help列出支持格式
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试lz4-help列出支持格式"
|
||||
LOG_INFO "步骤1:检查lz4软件包是否已在yum源中"
|
||||
if ! dnf list available lz4 2>/dev/null | grep -q lz4; then
|
||||
LOG_ERROR "yum源中未找到lz4软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤2:检查lz4是否已经安装"
|
||||
if rpm -q lz4 >/dev/null 2>&1; then
|
||||
LOG_INFO "lz4已经安装,记录安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "lz4未安装,将进行安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装lz4软件包"
|
||||
dnf install -y lz4
|
||||
CHECK_RESULT $? 0 0 "安装lz4失败"
|
||||
fi
|
||||
LOG_INFO "步骤4:执行lz4 -h命令测试help功能"
|
||||
lz4 -h > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "lz4 -h命令执行失败"
|
||||
LOG_INFO "步骤5:检查lz4 --help命令是否支持"
|
||||
if lz4 --help > /dev/null 2>&1; then
|
||||
LOG_INFO "lz4 --help命令执行成功"
|
||||
else
|
||||
LOG_ERROR "lz4不支持--help参数"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤6:检查lz4 -help命令是否支持"
|
||||
if lz4 -help > /dev/null 2>&1; then
|
||||
LOG_INFO "lz4 -help命令执行成功"
|
||||
else
|
||||
LOG_ERROR "lz4不支持-help参数"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤7:检查lz4 help命令是否支持"
|
||||
if lz4 help > /dev/null 2>&1; then
|
||||
LOG_INFO "lz4 help命令执行成功"
|
||||
else
|
||||
LOG_ERROR "lz4不支持help参数"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤8:执行lz4 -h并检查是否列出支持格式"
|
||||
lz4 -h 2>&1 | grep -q "supported"
|
||||
CHECK_RESULT $? 0 0 "lz4 -h未列出支持格式"
|
||||
LOG_INFO "步骤9:清理环境"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载lz4软件包"
|
||||
dnf remove -y lz4
|
||||
CHECK_RESULT $? 0 0 "卸载lz4失败"
|
||||
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 : 2026-02-20
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lz4-help版本查询功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已经安装lz4
|
||||
LOG_INFO "检查lz4是否已经安装"
|
||||
if ! rpm -qa | grep -q lz4; then
|
||||
LOG_INFO "lz4未安装,将进行安装测试"
|
||||
INSTALLED_FOR_TEST=true
|
||||
else
|
||||
LOG_INFO "lz4已经安装,将保持安装状态"
|
||||
INSTALLED_FOR_TEST=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有lz4软件包
|
||||
LOG_INFO "检查yum源中是否有lz4软件包"
|
||||
if ! dnf list available lz4 &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有lz4软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装lz4
|
||||
if [ "$INSTALLED_FOR_TEST" = true ]; then
|
||||
LOG_INFO "安装lz4软件包"
|
||||
dnf install -y lz4
|
||||
CHECK_RESULT $? 0 0 "安装lz4失败"
|
||||
fi
|
||||
|
||||
# 测试lz4 --help参数
|
||||
LOG_INFO "测试lz4 --help参数"
|
||||
lz4 --help
|
||||
CHECK_RESULT $? 0 0 "lz4 --help执行失败"
|
||||
|
||||
# 测试lz4 --version参数
|
||||
LOG_INFO "测试lz4 --version参数"
|
||||
lz4 --version
|
||||
CHECK_RESULT $? 0 0 "lz4 --version执行失败"
|
||||
|
||||
# 测试不支持的参数
|
||||
LOG_INFO "测试lz4不支持的参数(例如--nonexistent)"
|
||||
lz4 --nonexistent 2>/dev/null
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "不支持的参数未返回正确的退出码"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 环境恢复:如果是为了测试安装的,则卸载
|
||||
if [ "$INSTALLED_FOR_TEST" = true ]; then
|
||||
LOG_INFO "卸载lz4软件包"
|
||||
dnf remove -y lz4
|
||||
CHECK_RESULT $? 0 0 "卸载lz4失败"
|
||||
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-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lzma-java-javadoc软件包的解压功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试lzma-java-javadoc软件包的解压功能"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查lzma-java-javadoc软件包是否已安装"
|
||||
if dnf list installed lzma-java-javadoc &>/dev/null; then
|
||||
LOG_INFO "lzma-java-javadoc软件包已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "lzma-java-javadoc软件包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在该软件包
|
||||
LOG_INFO "检查yum源中是否存在lzma-java-javadoc软件包"
|
||||
if ! dnf list available lzma-java-javadoc &>/dev/null; then
|
||||
LOG_ERROR "yum源中不存在lzma-java-javadoc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 若未安装则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装lzma-java-javadoc软件包"
|
||||
dnf install -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "安装lzma-java-javadoc失败"
|
||||
fi
|
||||
|
||||
# 测试解压功能
|
||||
LOG_INFO "测试解压功能"
|
||||
if ! command -v lzmajavadoc &>/dev/null; then
|
||||
LOG_ERROR "命令lzmajavadoc不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "执行解压命令"
|
||||
lzmajavadoc --decompress test.lzma output.txt
|
||||
CHECK_RESULT $? 0 0 "解压失败"
|
||||
|
||||
# 清理测试文件(如果存在)
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f test.lzma output.txt
|
||||
|
||||
# 若脚本开始时未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载lzma-java-javadoc软件包"
|
||||
dnf remove -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "卸载lzma-java-javadoc失败"
|
||||
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 : 2026-02-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 检查lzma-java-javadoc软件包是否已正确安装
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始检查lzma-java-javadoc软件包是否已正确安装"
|
||||
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在lzma-java-javadoc软件包"
|
||||
dnf list available lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到lzma-java-javadoc软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在lzma-java-javadoc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查当前是否已安装lzma-java-javadoc"
|
||||
if rpm -q lzma-java-javadoc > /dev/null 2>&1; then
|
||||
LOG_INFO "lzma-java-javadoc已安装,将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "lzma-java-javadoc未安装,将进行安装测试"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装lzma-java-javadoc软件包"
|
||||
dnf install -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "安装lzma-java-javadoc失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 验证lzma-java-javadoc安装是否正确"
|
||||
rpm -q lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "lzma-java-javadoc安装验证失败"
|
||||
|
||||
LOG_INFO "步骤5: 检查lzma-java-javadoc相关文件"
|
||||
rpm -ql lzma-java-javadoc | head -5 > /dev/null
|
||||
CHECK_RESULT $? 0 0 "lzma-java-javadoc文件检查失败"
|
||||
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "步骤6: 清理环境,卸载lzma-java-javadoc软件包"
|
||||
dnf remove -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "卸载lzma-java-javadoc失败"
|
||||
LOG_INFO "已恢复原始环境状态"
|
||||
else
|
||||
LOG_INFO "保持lzma-java-javadoc安装状态,无需清理"
|
||||
fi
|
||||
|
||||
LOG_INFO "lzma-java-javadoc软件包安装检查完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +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-02-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lzma-java-javadoc软件包的卸载功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试lzma-java-javadoc软件包的卸载功能
|
||||
|
||||
LOG_INFO "检查当前环境是否已安装lzma-java-javadoc软件包"
|
||||
rpm -q lzma-java-javadoc > /dev/null 2>&1
|
||||
already_installed=$?
|
||||
|
||||
LOG_INFO "检查yum源中是否存在lzma-java-javadoc软件包"
|
||||
dnf list available lzma-java-javadoc > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到lzma-java-javadoc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "检查dnf命令是否支持remove参数"
|
||||
dnf --help | grep -q "remove"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "dnf命令不支持remove参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "环境已安装lzma-java-javadoc,执行卸载测试"
|
||||
LOG_INFO "卸载lzma-java-javadoc软件包"
|
||||
dnf remove -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "卸载lzma-java-javadoc软件包失败"
|
||||
|
||||
LOG_INFO "验证软件包是否已卸载"
|
||||
rpm -q lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 1 0 "软件包卸载后仍存在"
|
||||
|
||||
LOG_INFO "重新安装lzma-java-javadoc软件包以恢复环境"
|
||||
dnf install -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "重新安装lzma-java-javadoc软件包失败"
|
||||
else
|
||||
LOG_INFO "环境未安装lzma-java-javadoc,执行安装和卸载测试"
|
||||
LOG_INFO "安装lzma-java-javadoc软件包"
|
||||
dnf install -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "安装lzma-java-javadoc软件包失败"
|
||||
|
||||
LOG_INFO "验证软件包是否已安装"
|
||||
rpm -q lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "软件包安装后不存在"
|
||||
|
||||
LOG_INFO "卸载lzma-java-javadoc软件包"
|
||||
dnf remove -y lzma-java-javadoc
|
||||
CHECK_RESULT $? 0 0 "卸载lzma-java-javadoc软件包失败"
|
||||
|
||||
LOG_INFO "验证软件包是否已卸载"
|
||||
rpm -q lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 1 0 "软件包卸载后仍存在"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复到初始状态"
|
||||
}
|
||||
|
||||
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-02-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 验证安装的javadoc文档内容完整性
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查环境是否已安装lzma-java-javadoc软件包
|
||||
LOG_INFO "步骤1: 检查lzma-java-javadoc是否已安装"
|
||||
dnf list installed lzma-java-javadoc > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "lzma-java-javadoc已安装,标记为保持安装状态"
|
||||
INSTALLED_FLAG=1
|
||||
else
|
||||
LOG_INFO "lzma-java-javadoc未安装,标记为需要清理"
|
||||
INSTALLED_FLAG=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在lzma-java-javadoc软件包
|
||||
LOG_INFO "步骤2: 检查yum源中是否存在lzma-java-javadoc软件包"
|
||||
dnf list available lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到lzma-java-javadoc软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在lzma-java-javadoc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $INSTALLED_FLAG -eq 0 ]; then
|
||||
LOG_INFO "步骤3: 安装lzma-java-javadoc软件包"
|
||||
dnf install -y lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装lzma-java-javadoc失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "安装lzma-java-javadoc失败"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "lzma-java-javadoc安装成功"
|
||||
fi
|
||||
|
||||
# 验证javadoc文档内容完整性
|
||||
LOG_INFO "步骤4: 验证javadoc文档内容完整性"
|
||||
# 假设javadoc文档位于/usr/share/javadoc/lzma-java目录下
|
||||
JAVADOC_DIR="/usr/share/javadoc/lzma-java"
|
||||
if [ -d "$JAVADOC_DIR" ]; then
|
||||
LOG_INFO "找到javadoc文档目录: $JAVADOC_DIR"
|
||||
# 检查目录是否为空
|
||||
if [ -z "$(ls -A $JAVADOC_DIR)" ]; then
|
||||
LOG_ERROR "javadoc文档目录为空"
|
||||
exit 1
|
||||
fi
|
||||
# 检查是否存在index.html文件
|
||||
if [ ! -f "$JAVADOC_DIR/index.html" ]; then
|
||||
LOG_ERROR "javadoc文档缺少index.html文件"
|
||||
exit 1
|
||||
fi
|
||||
# 检查index.html文件是否包含javadoc相关标记
|
||||
if ! grep -q "Generated by javadoc" "$JAVADOC_DIR/index.html"; then
|
||||
LOG_ERROR "index.html文件不是有效的javadoc文档"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "javadoc文档内容完整性验证通过"
|
||||
else
|
||||
LOG_ERROR "未找到javadoc文档目录: $JAVADOC_DIR"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理环境:如果之前未安装,则卸载软件包
|
||||
if [ $INSTALLED_FLAG -eq 0 ]; then
|
||||
LOG_INFO "步骤5: 清理环境,卸载lzma-java-javadoc软件包"
|
||||
dnf remove -y lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载lzma-java-javadoc失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "卸载lzma-java-javadoc失败"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "lzma-java-javadoc卸载成功"
|
||||
else
|
||||
LOG_INFO "步骤5: 保持lzma-java-javadoc安装状态,无需清理"
|
||||
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-03
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试lzma-java-javadoc软件包的安装功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查yum源中是否存在lzma-java-javadoc软件包
|
||||
LOG_INFO "检查yum源中是否存在lzma-java-javadoc软件包"
|
||||
dnf list available lzma-java-javadoc > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在lzma-java-javadoc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装lzma-java-javadoc软件包
|
||||
LOG_INFO "检查是否已安装lzma-java-javadoc软件包"
|
||||
rpm -q lzma-java-javadoc > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "lzma-java-javadoc软件包已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "lzma-java-javadoc软件包未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始安装lzma-java-javadoc软件包"
|
||||
dnf install -y lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装lzma-java-javadoc软件包失败"
|
||||
LOG_INFO "lzma-java-javadoc软件包安装成功"
|
||||
fi
|
||||
|
||||
# 测试完成后,如果之前未安装则卸载软件包以恢复环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始卸载lzma-java-javadoc软件包以恢复环境"
|
||||
dnf remove -y lzma-java-javadoc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载lzma-java-javadoc软件包失败"
|
||||
LOG_INFO "lzma-java-javadoc软件包卸载成功,环境已恢复"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕"
|
||||
|
||||
}
|
||||
|
||||
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-12-12
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test event handling functionality
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查是否已安装openjfx-devel软件包
|
||||
LOG_INFO "检查是否已安装openjfx-devel软件包"
|
||||
if rpm -q openjfx-devel &>/dev/null; then
|
||||
LOG_INFO "openjfx-devel已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "openjfx-devel未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在openjfx-devel软件包
|
||||
LOG_INFO "检查yum源中是否存在openjfx-devel软件包"
|
||||
if ! dnf list available openjfx-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到openjfx-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装openjfx-devel软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装openjfx-devel软件包"
|
||||
dnf install -y openjfx-devel
|
||||
CHECK_RESULT $? 0 0 "安装openjfx-devel失败"
|
||||
fi
|
||||
|
||||
# 测试event handling功能
|
||||
LOG_INFO "开始测试event handling功能"
|
||||
java -jar /path/to/test_event_handling.jar --test-event
|
||||
CHECK_RESULT $? 0 0 "event handling功能测试失败"
|
||||
|
||||
# 清理环境(如果脚本开始时未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载openjfx-devel软件包"
|
||||
dnf remove -y openjfx-devel
|
||||
CHECK_RESULT $? 0 0 "卸载openjfx-devel失败"
|
||||
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-12
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test media playback support
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:test_openjfx-devel_function_media.sh
|
||||
|
||||
LOG_INFO "开始测试:Test media playback support"
|
||||
|
||||
# 检查是否已安装openjfx-devel
|
||||
LOG_INFO "检查是否已安装openjfx-devel"
|
||||
rpm -q openjfx-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "openjfx-devel已安装,保持环境状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "openjfx-devel未安装,将在测试后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有openjfx-devel软件包
|
||||
LOG_INFO "检查yum源中是否有openjfx-devel软件包"
|
||||
dnf list available openjfx-devel > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到openjfx-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装openjfx-devel
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装openjfx-devel"
|
||||
dnf install -y openjfx-devel
|
||||
CHECK_RESULT $? 0 0 "安装openjfx-devel失败"
|
||||
fi
|
||||
|
||||
# 测试media playback支持
|
||||
LOG_INFO "测试media playback支持"
|
||||
java -jar /usr/share/openjfx/lib/javafx-media.jar --version
|
||||
CHECK_RESULT $? 0 0 "media playback支持测试失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载openjfx-devel"
|
||||
dnf remove -y openjfx-devel
|
||||
CHECK_RESULT $? 0 0 "卸载openjfx-devel失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test media playback support"
|
||||
}
|
||||
|
||||
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-12-12
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test UI components rendering
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:test_openjfx-devel_function_ui
|
||||
# 测试用例描述:Test UI components rendering
|
||||
|
||||
LOG_INFO "开始测试:Test UI components rendering"
|
||||
|
||||
# 检查yum源中是否存在openjfx-devel软件包
|
||||
LOG_INFO "检查yum源中是否存在openjfx-devel软件包"
|
||||
dnf list available openjfx-devel > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到openjfx-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装openjfx-devel
|
||||
LOG_INFO "检查是否已安装openjfx-devel"
|
||||
rpm -q openjfx-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "openjfx-devel已安装,跳过安装步骤"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "openjfx-devel未安装,开始安装"
|
||||
dnf install -y openjfx-devel
|
||||
CHECK_RESULT $? 0 0 "安装openjfx-devel失败"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 测试UI组件渲染功能
|
||||
LOG_INFO "测试UI组件渲染功能"
|
||||
java -version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "Java环境未安装或配置错误"
|
||||
|
||||
# 模拟UI组件渲染测试命令(示例命令,需根据实际测试需求调整)
|
||||
LOG_INFO "执行UI组件渲染测试命令"
|
||||
test_command="java -jar /path/to/ui-test-tool.jar --test-ui"
|
||||
eval $test_command
|
||||
CHECK_RESULT $? 0 0 "UI组件渲染测试失败"
|
||||
|
||||
# 环境恢复:如果脚本开始时未安装openjfx-devel,则卸载
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载openjfx-devel"
|
||||
dnf remove -y openjfx-devel
|
||||
CHECK_RESULT $? 0 0 "卸载openjfx-devel失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test UI components rendering"
|
||||
}
|
||||
|
||||
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-01-25
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test presence of header files
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试头文件的存在性"
|
||||
LOG_INFO "步骤1:检查是否已安装pcp-libs-devel软件包"
|
||||
if rpm -q pcp-libs-devel &>/dev/null; then
|
||||
LOG_INFO "pcp-libs-devel已安装,测试结束后保持安装状态"
|
||||
installed_before_test=true
|
||||
else
|
||||
LOG_INFO "pcp-libs-devel未安装,将在测试步骤中安装"
|
||||
installed_before_test=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有pcp-libs-devel软件包"
|
||||
if ! dnf list available pcp-libs-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到pcp-libs-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:安装pcp-libs-devel软件包"
|
||||
if [ "$installed_before_test" = false ]; then
|
||||
dnf install -y pcp-libs-devel
|
||||
CHECK_RESULT $? 0 0 "安装pcp-libs-devel失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查头文件是否存在"
|
||||
header_files=(
|
||||
"/usr/include/pcp/pmapi.h"
|
||||
"/usr/include/pcp/pmda.h"
|
||||
"/usr/include/pcp/impl.h"
|
||||
)
|
||||
|
||||
for header in "${header_files[@]}"; do
|
||||
LOG_INFO "检查头文件: $header"
|
||||
if [ ! -f "$header" ]; then
|
||||
LOG_ERROR "头文件 $header 不存在"
|
||||
exit 1
|
||||
fi
|
||||
CHECK_RESULT $? 0 0 "头文件 $header 检查失败"
|
||||
done
|
||||
|
||||
LOG_INFO "步骤5:清理测试环境"
|
||||
if [ "$installed_before_test" = false ]; then
|
||||
LOG_INFO "卸载pcp-libs-devel软件包"
|
||||
dnf remove -y pcp-libs-devel
|
||||
CHECK_RESULT $? 0 0 "卸载pcp-libs-devel失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装pcp-libs-devel,保持安装状态"
|
||||
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-09-15
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package installation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试软件包安装功能"
|
||||
|
||||
# 检查是否已安装pcp-libs-devel
|
||||
if rpm -q pcp-libs-devel &>/dev/null; then
|
||||
LOG_INFO "检测到pcp-libs-devel已安装,测试将保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "未检测到pcp-libs-devel安装,测试将执行安装步骤"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在pcp-libs-devel
|
||||
LOG_INFO "检查yum源中是否存在pcp-libs-devel"
|
||||
if ! dnf list available pcp-libs-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到pcp-libs-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装pcp-libs-devel(如果未安装)
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始安装pcp-libs-devel"
|
||||
dnf install -y pcp-libs-devel
|
||||
CHECK_RESULT $? 0 0 "安装pcp-libs-devel失败"
|
||||
fi
|
||||
|
||||
# 验证软件包是否成功安装
|
||||
LOG_INFO "验证pcp-libs-devel是否成功安装"
|
||||
rpm -q pcp-libs-devel &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "验证pcp-libs-devel安装失败"
|
||||
|
||||
# 测试卸载(如果最初未安装)
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始卸载pcp-libs-devel"
|
||||
dnf remove -y pcp-libs-devel
|
||||
CHECK_RESULT $? 0 0 "卸载pcp-libs-devel失败"
|
||||
|
||||
# 验证软件包是否成功卸载
|
||||
LOG_INFO "验证pcp-libs-devel是否成功卸载"
|
||||
rpm -q pcp-libs-devel &>/dev/null
|
||||
CHECK_RESULT $? 1 0 "验证pcp-libs-devel卸载失败"
|
||||
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-01-25
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package removal
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试包移除功能
|
||||
LOG_INFO "开始测试包移除功能"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="pcp-libs-devel"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查 $PACKAGE_NAME 是否已安装"
|
||||
rpm -q $PACKAGE_NAME >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "$PACKAGE_NAME 已安装,测试结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME 未安装,将在测试前安装,测试后卸载"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有 $PACKAGE_NAME 软件包"
|
||||
dnf list available $PACKAGE_NAME >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到 $PACKAGE_NAME 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$ALREADY_INSTALLED" = false ]; then
|
||||
LOG_INFO "安装 $PACKAGE_NAME 软件包"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "$PACKAGE_NAME 安装成功"
|
||||
fi
|
||||
|
||||
# 验证软件包已正确安装
|
||||
LOG_INFO "验证 $PACKAGE_NAME 已正确安装"
|
||||
rpm -q $PACKAGE_NAME >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "$PACKAGE_NAME 未正确安装"
|
||||
|
||||
# 测试软件包移除功能
|
||||
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 2>&1
|
||||
CHECK_RESULT $? 1 0 "$PACKAGE_NAME 未被正确移除"
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "开始环境恢复"
|
||||
if [ "$ALREADY_INSTALLED" = true ]; then
|
||||
LOG_INFO "重新安装 $PACKAGE_NAME 以恢复到初始状态"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "重新安装 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "$PACKAGE_NAME 已重新安装"
|
||||
else
|
||||
LOG_INFO "测试前 $PACKAGE_NAME 未安装,无需重新安装"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复到初始状态"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,115 +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-01-25
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package version query
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数(虽然题目说明无需定义,但实际使用时需要定义,这里补充定义以便脚本能正常运行)
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*"
|
||||
}
|
||||
|
||||
# 定义检查结果函数
|
||||
CHECK_RESULT() {
|
||||
local actual=$1
|
||||
local expect=$2
|
||||
local mode=$3
|
||||
local message=$4
|
||||
|
||||
if [ $mode -eq 0 ]; then
|
||||
if [ $actual -eq $expect ]; then
|
||||
LOG_INFO "$message: 成功"
|
||||
else
|
||||
LOG_ERROR "$message: 失败"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if [ $actual -ne $expect ]; then
|
||||
LOG_INFO "$message: 成功"
|
||||
else
|
||||
LOG_ERROR "$message: 失败"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# 定义SSH_CMD函数(虽然题目说明无需定义,但实际使用时需要定义,这里补充定义以便脚本能正常运行)
|
||||
SSH_CMD() {
|
||||
local cmd=$1
|
||||
local ip=$2
|
||||
local password=$3
|
||||
local user=$4
|
||||
# 这里仅模拟SSH执行,实际应根据环境实现
|
||||
echo "模拟在 $ip 执行: $cmd"
|
||||
# 实际应使用sshpass或密钥方式执行,例如:
|
||||
# sshpass -p $password ssh $user@$ip "$cmd"
|
||||
}
|
||||
|
||||
# 测试脚本开始
|
||||
LOG_INFO "开始测试: Test package version query"
|
||||
|
||||
# 检查是否已经安装pcp-libs-devel
|
||||
LOG_INFO "步骤1: 检查pcp-libs-devel是否已安装"
|
||||
if rpm -q pcp-libs-devel &> /dev/null; then
|
||||
LOG_INFO "pcp-libs-devel已安装,测试结束后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "pcp-libs-devel未安装,将在测试过程中安装并最终卸载"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有pcp-libs-devel软件包
|
||||
LOG_INFO "步骤2: 检查yum源中是否有pcp-libs-devel软件包"
|
||||
if ! dnf list available pcp-libs-devel &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到pcp-libs-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装pcp-libs-devel
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3: 安装pcp-libs-devel软件包"
|
||||
dnf install -y pcp-libs-devel
|
||||
CHECK_RESULT $? 0 0 "安装pcp-libs-devel"
|
||||
fi
|
||||
|
||||
# 测试查询软件包版本
|
||||
LOG_INFO "步骤4: 查询pcp-libs-devel软件包版本"
|
||||
if ! rpm -q pcp-libs-devel --queryformat "%{VERSION}-%{RELEASE}\n" &> /dev/null; then
|
||||
LOG_ERROR "rpm命令不支持--queryformat参数或参数错误"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
version=$(rpm -q pcp-libs-devel --queryformat "%{VERSION}-%{RELEASE}\n")
|
||||
CHECK_RESULT $? 0 0 "查询pcp-libs-devel版本"
|
||||
LOG_INFO "pcp-libs-devel版本: $version"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤5: 卸载pcp-libs-devel软件包"
|
||||
dnf remove -y pcp-libs-devel
|
||||
CHECK_RESULT $? 0 0 "卸载pcp-libs-devel"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成: Test package version query"
|
||||
}
|
||||
|
||||
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-16
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic command usage
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test basic command usage"
|
||||
LOG_INFO "步骤1:检查yum源中是否存在potrace软件包"
|
||||
dnf list available potrace > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到potrace软件包,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查系统是否已安装potrace"
|
||||
rpm -q potrace > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "系统已安装potrace,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "系统未安装potrace,执行安装"
|
||||
dnf install -y potrace
|
||||
CHECK_RESULT $? 0 0 "安装potrace失败"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:测试potrace --help命令基本用法"
|
||||
potrace --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "potrace --help命令执行失败"
|
||||
|
||||
LOG_INFO "步骤4:测试不支持的参数"
|
||||
potrace --invalid-option 2>&1 | grep -q "unrecognized option"
|
||||
CHECK_RESULT $? 0 0 "potrace未正确识别无效参数,退出码应为255"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "potrace不支持指定的参数,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:测试基本命令执行"
|
||||
potrace --version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "potrace --version命令执行失败"
|
||||
|
||||
LOG_INFO "步骤6:清理测试环境"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载测试安装的potrace软件包"
|
||||
dnf remove -y potrace
|
||||
CHECK_RESULT $? 0 0 "卸载potrace失败"
|
||||
else
|
||||
LOG_INFO "系统原本已安装potrace,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test basic command usage"
|
||||
}
|
||||
|
||||
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 : 2026-03-16
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test help info output
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test help info output"
|
||||
|
||||
# 检查yum源中是否存在potrace软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否存在potrace软件包"
|
||||
dnf list available potrace > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到potrace软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装potrace
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装potrace"
|
||||
rpm -q potrace > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "potrace已安装,标记为已安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "potrace未安装,标记为未安装状态"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装potrace
|
||||
if [ $? -eq 0 ] && [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3:安装potrace软件包"
|
||||
dnf install -y potrace > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装potrace失败"
|
||||
fi
|
||||
|
||||
# 测试potrace命令的help参数
|
||||
LOG_INFO "步骤4:测试potrace命令的help参数"
|
||||
potrace --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "potrace --help命令执行失败"
|
||||
|
||||
# 测试potrace命令的-h参数
|
||||
LOG_INFO "步骤5:测试potrace命令的-h参数"
|
||||
potrace -h > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "potrace -h命令执行失败"
|
||||
|
||||
# 测试不支持的参数,预期失败
|
||||
LOG_INFO "步骤6:测试potrace命令的不支持参数,预期失败"
|
||||
potrace --invalid-param > /dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_INFO "不支持的参数正确处理,退出码为255"
|
||||
else
|
||||
LOG_ERROR "不支持的参数未正确处理"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境:如果之前未安装,则卸载potrace
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤7:清理环境,卸载potrace软件包"
|
||||
dnf remove -y potrace > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载potrace失败"
|
||||
else
|
||||
LOG_INFO "步骤7:保持potrace安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test help info output"
|
||||
}
|
||||
|
||||
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-10-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package installation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试软件包安装功能"
|
||||
|
||||
# 检查potrace软件包是否已安装
|
||||
if rpm -q potrace &> /dev/null; then
|
||||
LOG_INFO "potrace软件包已安装,跳过安装步骤"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "potrace软件包未安装,准备安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在potrace软件包
|
||||
LOG_INFO "检查yum源中是否存在potrace软件包"
|
||||
dnf list available potrace &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yum源中不存在potrace软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在potrace软件包,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装potrace软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始安装potrace软件包"
|
||||
dnf install -y potrace &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "安装potrace软件包失败"
|
||||
fi
|
||||
|
||||
# 测试potrace命令的帮助功能
|
||||
LOG_INFO "测试potrace命令的帮助功能"
|
||||
potrace --help &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "potrace命令的帮助功能测试失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载potrace软件包以恢复环境"
|
||||
dnf remove -y potrace &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "卸载potrace软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +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-16
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package removal
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试软件包卸载功能"
|
||||
LOG_INFO "步骤1:检查potrace-help软件包是否已在yum源中"
|
||||
dnf list available potrace-help 2>/dev/null | grep -q "potrace-help"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到potrace-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "potrace-help软件包在yum源中可用"
|
||||
|
||||
LOG_INFO "步骤2:检查系统是否已安装potrace-help软件包"
|
||||
rpm -q potrace-help >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "系统已安装potrace-help软件包,测试结束后将保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "系统未安装potrace-help软件包,将在测试步骤中安装"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:测试卸载功能前,确保软件包已安装"
|
||||
if [ "$INSTALLED_BEFORE_TEST" = "false" ]; then
|
||||
LOG_INFO "安装potrace-help软件包"
|
||||
dnf install -y potrace-help
|
||||
CHECK_RESULT $? 0 0 "安装potrace-help软件包失败"
|
||||
LOG_INFO "potrace-help软件包安装成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:测试卸载软件包功能"
|
||||
LOG_INFO "执行卸载命令:dnf remove -y potrace-help"
|
||||
dnf remove -y potrace-help
|
||||
CHECK_RESULT $? 0 0 "卸载potrace-help软件包失败"
|
||||
LOG_INFO "potrace-help软件包卸载成功"
|
||||
|
||||
LOG_INFO "步骤5:验证软件包是否已卸载"
|
||||
rpm -q potrace-help >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "验证失败,potrace-help软件包仍在系统中"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "验证成功,potrace-help软件包已从系统中移除"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6:环境恢复"
|
||||
if [ "$INSTALLED_BEFORE_TEST" = "true" ]; then
|
||||
LOG_INFO "恢复原始状态:重新安装potrace-help软件包"
|
||||
dnf install -y potrace-help
|
||||
CHECK_RESULT $? 0 0 "重新安装potrace-help软件包失败"
|
||||
LOG_INFO "potrace-help软件包重新安装成功"
|
||||
else
|
||||
LOG_INFO "测试前未安装,无需恢复安装状态"
|
||||
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 : 2026-03-16
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test version info display
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test version info display"
|
||||
LOG_INFO "步骤1:检查potrace软件包是否在yum源中"
|
||||
dnf list available potrace &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到potrace软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤2:检查potrace命令是否已安装"
|
||||
if command -v potrace &>/dev/null; then
|
||||
LOG_INFO "potrace命令已安装,标记为已存在"
|
||||
INSTALLED_BEFORE="true"
|
||||
else
|
||||
LOG_INFO "potrace命令未安装,标记为未安装"
|
||||
INSTALLED_BEFORE="false"
|
||||
fi
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装potrace软件包"
|
||||
dnf install -y potrace
|
||||
CHECK_RESULT $? 0 0 "安装potrace软件包失败"
|
||||
fi
|
||||
LOG_INFO "步骤4:测试potrace --help参数"
|
||||
potrace --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "potrace --help参数执行失败"
|
||||
LOG_INFO "步骤5:测试potrace --version参数"
|
||||
potrace --version &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "potrace --version参数执行失败"
|
||||
LOG_INFO "步骤6:测试potrace不支持的参数(例如--nonexistent)"
|
||||
potrace --nonexistent &>/dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_INFO "不支持的参数返回退出码255,符合预期"
|
||||
else
|
||||
LOG_ERROR "不支持的参数未返回退出码255"
|
||||
exit 255
|
||||
fi
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤7:清理环境,卸载potrace软件包"
|
||||
dnf remove -y potrace
|
||||
CHECK_RESULT $? 0 0 "卸载potrace软件包失败"
|
||||
else
|
||||
LOG_INFO "步骤7:环境已安装potrace,保持安装状态"
|
||||
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-07
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic functionality of python-sphinxtesters-help
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test basic functionality of python-sphinxtesters-help"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查python-sphinxtesters-help是否已安装"
|
||||
if dnf list installed python-sphinxtesters-help &>/dev/null; then
|
||||
LOG_INFO "python-sphinxtesters-help已安装,测试结束后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "python-sphinxtesters-help未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否存在python-sphinxtesters-help"
|
||||
if ! dnf list available python-sphinxtesters-help &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到python-sphinxtesters-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装python-sphinxtesters-help"
|
||||
dnf install -y python-sphinxtesters-help
|
||||
CHECK_RESULT $? 0 0 "安装python-sphinxtesters-help失败"
|
||||
fi
|
||||
|
||||
# 测试基本功能
|
||||
LOG_INFO "测试python-sphinxtesters-help的基本功能"
|
||||
python-sphinxtesters-help --help
|
||||
CHECK_RESULT $? 0 0 "python-sphinxtesters-help --help执行失败"
|
||||
|
||||
# 检查不支持的参数
|
||||
LOG_INFO "检查不支持的参数"
|
||||
python-sphinxtesters-help --invalid-arg &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_INFO "不支持的参数测试通过"
|
||||
else
|
||||
LOG_ERROR "不支持的参数测试失败"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境(如果测试前未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载python-sphinxtesters-help"
|
||||
dnf remove -y python-sphinxtesters-help
|
||||
CHECK_RESULT $? 0 0 "卸载python-sphinxtesters-help失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test basic functionality of python-sphinxtesters-help"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,92 +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-07
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试qt6-qtscxml软件包是否能被正确安装
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*" >&2
|
||||
}
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="qt6-qtscxml"
|
||||
|
||||
# 步骤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 "软件包 $PACKAGE_NAME 在yum源中存在"
|
||||
|
||||
# 步骤2: 检查当前环境中是否已安装该软件包
|
||||
LOG_INFO "步骤2: 检查当前环境中是否已安装软件包 $PACKAGE_NAME"
|
||||
if rpm -q "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,脚本结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装软件包作为测试步骤
|
||||
if [ "$ALREADY_INSTALLED" = false ]; 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 -q "$PACKAGE_NAME" &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "软件包 $PACKAGE_NAME 未正确安装"
|
||||
|
||||
# 步骤5: 测试软件包的基本功能(例如,查看版本信息)
|
||||
LOG_INFO "步骤5: 测试软件包 $PACKAGE_NAME 的基本功能"
|
||||
if command -v qscxmlc &>/dev/null; then
|
||||
LOG_INFO "qscxmlc 命令存在,尝试查看版本信息"
|
||||
qscxmlc --version &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "qscxmlc 命令执行失败"
|
||||
LOG_INFO "qscxmlc 命令执行成功"
|
||||
else
|
||||
LOG_INFO "qscxmlc 命令不存在,跳过功能测试"
|
||||
fi
|
||||
|
||||
# 步骤6: 清理环境,恢复到之前的状态
|
||||
LOG_INFO "步骤6: 清理环境,恢复到之前的状态"
|
||||
if [ "$ALREADY_INSTALLED" = false ]; 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 "测试脚本执行完毕"
|
||||
}
|
||||
|
||||
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-07
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试qt6-qtscxml软件包是否能被正确卸载
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="qt6-qtscxml"
|
||||
LOG_INFO "开始测试:测试qt6-qtscxml软件包是否能被正确卸载"
|
||||
|
||||
LOG_INFO "步骤1:检查dnf工具是否可用"
|
||||
command -v dnf >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "dnf工具未找到"
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否存在软件包 $PACKAGE_NAME"
|
||||
dnf list available $PACKAGE_NAME >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到软件包 $PACKAGE_NAME"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:检查当前环境中软件包 $PACKAGE_NAME 的安装状态"
|
||||
rpm -q $PACKAGE_NAME >/dev/null 2>&1
|
||||
PACKAGE_INSTALLED=$?
|
||||
if [ $PACKAGE_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,测试结束后将保持安装状态"
|
||||
NEED_CLEANUP=0
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将执行安装作为测试步骤"
|
||||
NEED_CLEANUP=1
|
||||
fi
|
||||
|
||||
if [ $NEED_CLEANUP -eq 1 ]; then
|
||||
LOG_INFO "步骤4:安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:验证软件包 $PACKAGE_NAME 已成功安装"
|
||||
rpm -q $PACKAGE_NAME >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "软件包 $PACKAGE_NAME 未正确安装"
|
||||
|
||||
LOG_INFO "步骤6:执行卸载操作"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
|
||||
LOG_INFO "步骤7:验证软件包 $PACKAGE_NAME 已被卸载"
|
||||
rpm -q $PACKAGE_NAME >/dev/null 2>&1
|
||||
CHECK_RESULT $? 1 0 "软件包 $PACKAGE_NAME 卸载后仍可查询到"
|
||||
|
||||
LOG_INFO "步骤8:环境恢复"
|
||||
if [ $NEED_CLEANUP -eq 1 ]; then
|
||||
LOG_INFO "测试前环境未安装,无需恢复安装状态"
|
||||
else
|
||||
LOG_INFO "恢复软件包 $PACKAGE_NAME 的安装状态"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "恢复安装软件包 $PACKAGE_NAME 失败"
|
||||
rpm -q $PACKAGE_NAME >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "恢复后软件包 $PACKAGE_NAME 状态异常"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:qt6-qtscxml软件包能够被正确卸载"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user