Merge branch 'pkg' of http://10.30.190.190:54866/redrsoe2100/os-autotest into pkg
This commit is contained in:
@@ -2,33 +2,9 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/R/R-R.devices",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_R-devices_function_pdf",
|
||||
"desc": "测试pdf()函数,验证其能否成功创建PDF格式的图形输出文件。"
|
||||
},
|
||||
{
|
||||
"name": "test_R-devices_function_png",
|
||||
"desc": "测试png()函数,验证其能否成功创建PNG格式的图形输出文件。"
|
||||
},
|
||||
{
|
||||
"name": "test_R-devices_function_jpeg",
|
||||
"desc": "测试jpeg()函数,验证其能否成功创建JPEG格式的图形输出文件。"
|
||||
},
|
||||
{
|
||||
"name": "test_R-devices_function_dev_cur",
|
||||
"desc": "测试dev.cur()函数,验证其能否正确返回当前活动图形设备的编号。"
|
||||
},
|
||||
{
|
||||
"name": "test_R-devices_function_dev_list",
|
||||
"desc": "测试dev.list()函数,验证其能否正确列出所有已打开的图形设备。"
|
||||
},
|
||||
{
|
||||
"name": "test_R-devices_function_dev_set",
|
||||
"desc": "测试dev.set()函数,验证其能否将指定编号的图形设备设置为当前活动设备。"
|
||||
},
|
||||
{
|
||||
"name": "test_R-devices_function_dev_copy",
|
||||
"desc": "测试dev.copy()函数,验证其能否将当前图形复制到另一个设备。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -26,29 +26,9 @@
|
||||
"name": "test_bzip2-help_function_verify_path",
|
||||
"desc": "测试软件包安装的帮助文档是否位于标准系统路径(如/usr/share/doc, /usr/share/man)。"
|
||||
},
|
||||
{
|
||||
"name": "test_bzip2-help_function_install",
|
||||
"desc": "测试bzip2-help软件包的安装功能是否正常。"
|
||||
},
|
||||
{
|
||||
"name": "test_bzip2-help_function_remove",
|
||||
"desc": "测试bzip2-help软件包的卸载功能是否正常。"
|
||||
},
|
||||
{
|
||||
"name": "test_bzip2-help_function_verify",
|
||||
"desc": "测试bzip2-help软件包是否已正确安装并可用。"
|
||||
},
|
||||
{
|
||||
"name": "test_bzip2-help_function_man_access",
|
||||
"desc": "测试通过man命令可以访问bzip2帮助手册。"
|
||||
},
|
||||
{
|
||||
"name": "test_bzip2-help_function_info_access",
|
||||
"desc": "测试通过info命令可以访问bzip2文档。"
|
||||
},
|
||||
{
|
||||
"name": "test_bzip2-help_function_list_files",
|
||||
"desc": "测试列出软件包安装的所有帮助文档文件。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,41 +2,9 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/ceph/python3-rgw",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_python3-rgw_install",
|
||||
"desc": "测试python3-rgw软件包是否能被正常安装"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_import",
|
||||
"desc": "测试python3-rgw模块是否能被成功导入"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_client_connect",
|
||||
"desc": "测试使用python3-rgw创建RadosGW客户端并建立连接"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_bucket_create",
|
||||
"desc": "测试使用python3-rgw客户端创建存储桶"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_object_upload",
|
||||
"desc": "测试使用python3-rgw客户端上传对象到存储桶"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_object_list",
|
||||
"desc": "测试使用python3-rgw客户端列出存储桶中的对象"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_object_download",
|
||||
"desc": "测试使用python3-rgw客户端从存储桶下载对象"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_bucket_delete",
|
||||
"desc": "测试使用python3-rgw客户端删除存储桶"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-rgw_uninstall",
|
||||
"desc": "测试python3-rgw软件包是否能被正常卸载"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/jackson/jackson-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_jackson-help_function_install",
|
||||
"desc": "测试通过包管理器(如apt、yum、pip等)安装jackson-help软件包的功能是否正常"
|
||||
},
|
||||
{
|
||||
"name": "test_jackson-help_function_uninstall",
|
||||
"desc": "测试卸载jackson-help软件包的功能是否正常,确保卸载后相关文件被清理"
|
||||
},
|
||||
{
|
||||
"name": "test_jackson-help_function_basic_usage",
|
||||
"desc": "测试软件包提供的最核心功能(如JSON序列化/反序列化)是否能正常工作"
|
||||
},
|
||||
{
|
||||
"name": "test_jackson-help_function_version_check",
|
||||
"desc": "测试查询和验证jackson-help软件包版本信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_jackson-help_function_help_docs",
|
||||
"desc": "测试访问软件包的帮助文档或命令行帮助信息的功能"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,21 +2,9 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/jboss-classfilewriter/jboss-classfilewriter-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_jboss-classfilewriter-help_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_jboss-classfilewriter-help_function_validate",
|
||||
"desc": "Test package validation"
|
||||
},
|
||||
{
|
||||
"name": "test_jboss-classfilewriter-help_function_generate",
|
||||
"desc": "Test class generation"
|
||||
},
|
||||
{
|
||||
"name": "test_jboss-classfilewriter-help_function_parse",
|
||||
"desc": "Test class parsing"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,66 +2,11 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/jetty/jetty-infinispan",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_jetty-infinispan_upgrade",
|
||||
"desc": "测试jetty-infinispan软件包的升级功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_install",
|
||||
"desc": "测试jetty-infinispan软件包的安装功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_rollback",
|
||||
"desc": "测试jetty-infinispan软件包的回滚功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志查看功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_disable",
|
||||
"desc": "测试jetty-infinispan软件包服务的开机自启禁用功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_008",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command2的参数param1和param2的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_014",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command3的参数param1和param3的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_016",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command3的参数param1、param2和param3的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_018",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command4的参数param1的功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_backup",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志备份功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_033",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command6的基本功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_038",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command6的参数param3和param1的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_039",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command6的参数param3和param2的组合功能",
|
||||
@@ -72,110 +17,20 @@
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出压缩功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_level_info",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出级别设置为info功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_level_error",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出级别设置为error功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_level_fatal",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出级别设置为fatal功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_csv",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为csv功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_text",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为text功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_level_off",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出级别设置为off功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出的功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_xml_pretty",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为xml并美化输出的功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_custom_path",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出路径设置为自定义功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_sql_pretty",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为sql并美化输出的功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_047",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command7的参数param3和param2的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_custom_level_path_filter",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式、级别、路径和过滤同时设置为自定义功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty_level_path_filter_compression_level_custom_path_export_analyze_archive_retention_days_custom_level",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出且设置级别、路径、过滤和压缩级别为自定义路径的导出分析归档保留天数自定义级别功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty_level_path_filter_compression_level_custom_path_export_analyze_archive_retention_days_custom_level_path",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出且设置级别、路径、过滤和压缩级别为自定义路径的导出分析归档保留天数自定义级别路径功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_055",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command8的参数param3和param2的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty_level_path_filter_compression_level_custom_path_export_analyze_archive_retention_days_custom_level_path_export_format_level_path",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出且设置级别、路径、过滤和压缩级别为自定义路径的导出分析归档保留天数自定义级别路径的导出格式级别路径功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty_level_path_filter_compression_level_custom_path_export_analyze_archive_retention_days_custom_level_path_export_format_level_path_filter",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出且设置级别、路径、过滤和压缩级别为自定义路径的导出分析归档保留天数自定义级别路径的导出格式级别路径过滤功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_command_060",
|
||||
"desc": "测试jetty-infinispan软件包提供的命令command9的参数param1和param2的组合功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty_level_path_filter_compression_level_custom_path_export_analyze_archive_retention_days_custom_level_path_export_format_level_path_filter_compression_level_custom_path_export_format",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出且设置级别、路径、过滤和压缩级别为自定义路径的导出分析归档保留天数自定义级别路径的导出格式级别路径过滤压缩级别的自定义路径的导出格式功能",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_jetty-infinispan_service_log_export_format_json_pretty_level_path_filter_compression_level_custom_path_export_format_level",
|
||||
"desc": "测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出且设置级别、路径、过滤和压缩级别为自定义路径的导出格式级别的功能",
|
||||
"machine num": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -9,18 +9,6 @@
|
||||
{
|
||||
"name": "test_libmbim-help_function_remove",
|
||||
"desc": "测试libmbim-help软件包能否正确卸载。"
|
||||
},
|
||||
{
|
||||
"name": "test_libmbim-help_function_help",
|
||||
"desc": "测试libmbim-help软件包提供的帮助文档是否可用。"
|
||||
},
|
||||
{
|
||||
"name": "test_libmbim-help_function_proxy",
|
||||
"desc": "测试使用libmbim-help工具设置MBIM代理功能。"
|
||||
},
|
||||
{
|
||||
"name": "test_libmbim-function_list_devices",
|
||||
"desc": "测试使用libmbim-help工具列出可用MBIM设备。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -10,21 +10,9 @@
|
||||
"name": "test_libreport-filesystem_function_check_installed",
|
||||
"desc": "检查libreport-filesystem软件包是否已正确安装"
|
||||
},
|
||||
{
|
||||
"name": "test_libreport-filesystem_function_uninstall",
|
||||
"desc": "测试libreport-filesystem软件包能否成功卸载"
|
||||
},
|
||||
{
|
||||
"name": "test_libreport-filesystem_function_check_files",
|
||||
"desc": "验证软件包安装后核心文件是否存在"
|
||||
},
|
||||
{
|
||||
"name": "test_libreport-filesystem_function_version",
|
||||
"desc": "检查libreport-filesystem软件包的版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_libreport-filesystem_function_service",
|
||||
"desc": "验证关联的abrt服务状态或配置"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,10 +2,6 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/postgresql-odbc/postgresql-odbc-devel",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_postgresql-odbc-devel_function_conn",
|
||||
"desc": "Test the connection functionality of PostgreSQL ODBC driver"
|
||||
},
|
||||
{
|
||||
"name": "test_postgresql-odbc-devel_function_install",
|
||||
"desc": "Test the installation of the postgresql-odbc-devel package."
|
||||
@@ -17,14 +13,6 @@
|
||||
{
|
||||
"name": "test_postgresql-odbc-devel_function_check",
|
||||
"desc": "Test the verification of package installation."
|
||||
},
|
||||
{
|
||||
"name": "test_postgresql-odbc-devel_function_odbcinst",
|
||||
"desc": "Test the odbcinst tool functionality."
|
||||
},
|
||||
{
|
||||
"name": "test_postgresql-odbc-devel_function_isql_conn",
|
||||
"desc": "Test connection using isql tool."
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/python-beniget/python-beniget-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_python-beniget-help_function_parse",
|
||||
"desc": "Test parsing functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,22 +2,10 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/python-jaraco-text/python3-jaraco-text",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_python3-jaraco-text_function_install",
|
||||
"desc": "测试python3-jaraco-text软件包能否通过包管理器正确安装"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-jaraco-text_function_import",
|
||||
"desc": "测试安装后能否成功导入jaraco.text模块"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-jaraco-text_function_join",
|
||||
"desc": "测试jaraco.text.join模块的拼接功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-jaraco-text_function_wrap",
|
||||
"desc": "测试jaraco.text.wrap模块的文本换行功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-jaraco-text_function_uninstall",
|
||||
"desc": "测试python3-jaraco-text软件包能否被正确卸载"
|
||||
|
||||
@@ -29,22 +29,6 @@
|
||||
{
|
||||
"name": "test_python-qt5-rpm-macros_function_macro_expand",
|
||||
"desc": "Verify that key macros (e.g., %pyqt5_version) expand correctly"
|
||||
},
|
||||
{
|
||||
"name": "test_python-qt5-rpm-macros_function_spec_usage",
|
||||
"desc": "Verify macros can be used in a mock RPM spec file"
|
||||
},
|
||||
{
|
||||
"name": "test_python-qt5-rpm-macros_function_conflict",
|
||||
"desc": "Check for conflicts with other python-qt macro packages"
|
||||
},
|
||||
{
|
||||
"name": "test_python-qt5-rpm-macros_function_file_list",
|
||||
"desc": "Verify the package installs the correct macro files"
|
||||
},
|
||||
{
|
||||
"name": "test_python-qt5-rpm-macros_function_version_check",
|
||||
"desc": "Check if the installed macro version matches package version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,29 +2,13 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/qt5-qtremoteobjects/qt5-qtremoteobjects-devel",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_qt5-qtremoteobjects-devel_function_basic",
|
||||
"desc": "Test basic functionality of qt5-qtremoteobjects-devel"
|
||||
},
|
||||
{
|
||||
"name": "test_qt5-qtremoteobjects-devel_install",
|
||||
"desc": "Test installation of qt5-qtremoteobjects-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_qt5-qtremoteobjects-devel_uninstall",
|
||||
"desc": "Test uninstallation of qt5-qtremoteobjects-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_qt5-qtremoteobjects-devel_check_files",
|
||||
"desc": "Test existence of development files (headers, libraries)"
|
||||
},
|
||||
{
|
||||
"name": "test_qt5-qtremoteobjects-devel_basic_compile",
|
||||
"desc": "Test basic compilation with the development package"
|
||||
},
|
||||
{
|
||||
"name": "test_qt5-qtremoteobjects-devel_remoteobject_usage",
|
||||
"desc": "Test basic Remote Objects functionality usage"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,18 +2,10 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-c/texlive-biblatex-ijsra-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-biblatex-ijsra-doc_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-biblatex-ijsra-doc_function_remove",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-biblatex-ijsra-doc_function_purge",
|
||||
"desc": "Test complete purge of package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-biblatex-ijsra-doc_function_doc_exist",
|
||||
"desc": "Check documentation files exist"
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-i/texlive-filedate-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-filedate-doc_function_install",
|
||||
"desc": "Test installation of texlive-filedate-doc"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-filedate-doc_function_uninstall",
|
||||
"desc": "Test removal of texlive-filedate-doc"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-filedate-doc_function_check_doc",
|
||||
"desc": "Test presence of documentation files"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-filedate-doc_function_check_version",
|
||||
"desc": "Test package version query"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-lcd-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-lcd-doc_function_install",
|
||||
"desc": "Verify package installation"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-luavlna",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-luavlna_function_install",
|
||||
"desc": "Test installation of texlive-luavlna"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-p/texlive-natded",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-natded_function_basic",
|
||||
"desc": "Test basic functionality of texlive-natded"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-natded_function_install",
|
||||
"desc": "Test installation of texlive-natded package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-natded_function_check",
|
||||
"desc": "Test if texlive-natded is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-natded_function_compile",
|
||||
"desc": "Test basic LaTeX compilation with natded"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-natded_function_env",
|
||||
"desc": "Test natded environment in document"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-natded_function_uninstall",
|
||||
"desc": "Test removal of texlive-natded package"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-y/texlive-uassign",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-uassign_function_install",
|
||||
"desc": "Test installation of texlive-uassign package"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -5,26 +5,6 @@
|
||||
{
|
||||
"name": "test_wireshark-devel_function_capture",
|
||||
"desc": "Test packet capture functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_wireshark-devel_function_install",
|
||||
"desc": "Test installation of the wireshark-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_wireshark-devel_function_uninstall",
|
||||
"desc": "Test uninstallation of the wireshark-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_wireshark-devel_function_build",
|
||||
"desc": "Test compilation of a simple program using the development headers and libraries"
|
||||
},
|
||||
{
|
||||
"name": "test_wireshark-devel_function_version",
|
||||
"desc": "Test querying the version of the installed development package"
|
||||
},
|
||||
{
|
||||
"name": "test_wireshark-devel_function_headers",
|
||||
"desc": "Test presence of essential header files in the development package"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,103 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试dev.copy()函数,验证其能否将当前图形复制到另一个设备。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试dev.copy()函数功能
|
||||
LOG_INFO "开始测试dev.copy()函数"
|
||||
|
||||
# 检查是否已安装R语言环境
|
||||
LOG_INFO "检查R语言环境是否已安装"
|
||||
if command -v R &> /dev/null; then
|
||||
LOG_INFO "R语言环境已安装,测试结束后保持安装状态"
|
||||
R_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "R语言环境未安装,将在测试过程中安装"
|
||||
R_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有R语言软件包
|
||||
LOG_INFO "检查yum源中是否有R语言软件包"
|
||||
if ! dnf list available R &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到R语言软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装R,则安装
|
||||
if [ "$R_INSTALLED" = false ]; then
|
||||
LOG_INFO "安装R语言环境"
|
||||
dnf install -y R
|
||||
CHECK_RESULT $? 0 0 "R语言环境安装失败"
|
||||
fi
|
||||
|
||||
# 创建测试R脚本
|
||||
LOG_INFO "创建测试R脚本"
|
||||
cat > test_dev_copy.R << "EOF"
|
||||
# 测试dev.copy()函数
|
||||
# 创建第一个图形设备
|
||||
png("test_plot1.png")
|
||||
plot(1:10, 1:10, main="原始图形", xlab="X轴", ylab="Y轴")
|
||||
dev.off()
|
||||
|
||||
# 创建第二个图形设备
|
||||
png("test_plot2.png")
|
||||
# 使用dev.copy()复制图形
|
||||
dev.copy(device = png, filename = "test_plot2.png")
|
||||
dev.off()
|
||||
|
||||
# 检查文件是否存在
|
||||
if (file.exists("test_plot1.png") && file.exists("test_plot2.png")) {
|
||||
cat("SUCCESS: dev.copy()函数测试通过\n")
|
||||
# 比较两个文件是否不同(复制应该产生新文件)
|
||||
if (!identical(readBin("test_plot1.png", "raw", 100),
|
||||
readBin("test_plot2.png", "raw", 100))) {
|
||||
cat("INFO: 文件内容不同,复制成功\n")
|
||||
} else {
|
||||
cat("WARNING: 文件内容相同,可能复制未生效\n")
|
||||
}
|
||||
} else {
|
||||
cat("ERROR: dev.copy()函数测试失败\n")
|
||||
quit(status=1)
|
||||
}
|
||||
|
||||
# 清理临时文件
|
||||
file.remove(c("test_plot1.png", "test_plot2.png"))
|
||||
EOF
|
||||
|
||||
# 执行R脚本测试dev.copy()函数
|
||||
LOG_INFO "执行R脚本测试dev.copy()函数"
|
||||
Rscript test_dev_copy.R
|
||||
CHECK_RESULT $? 0 0 "dev.copy()函数测试失败"
|
||||
|
||||
# 清理测试脚本
|
||||
LOG_INFO "清理测试脚本"
|
||||
rm -f test_dev_copy.R
|
||||
|
||||
# 如果测试前未安装R,则卸载
|
||||
if [ "$R_INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载R语言环境"
|
||||
dnf remove -y R
|
||||
CHECK_RESULT $? 0 0 "R语言环境卸载失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "dev.copy()函数测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,103 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试dev.list()函数,验证其能否正确列出所有已打开的图形设备。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装R语言环境
|
||||
LOG_INFO "检查是否已安装R语言环境"
|
||||
if ! command -v R &> /dev/null; then
|
||||
LOG_INFO "R语言环境未安装,将进行安装"
|
||||
# 检查R软件包是否在yum源中
|
||||
LOG_INFO "检查yum源中是否有R软件包"
|
||||
if ! dnf list available R &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到R软件包"
|
||||
exit 255
|
||||
fi
|
||||
# 安装R
|
||||
LOG_INFO "安装R软件包"
|
||||
dnf install -y R
|
||||
CHECK_RESULT $? 0 0 "R软件包安装失败"
|
||||
INSTALLED_R=true
|
||||
else
|
||||
LOG_INFO "R语言环境已安装"
|
||||
INSTALLED_R=false
|
||||
fi
|
||||
|
||||
# 检查是否已安装R图形设备相关包
|
||||
LOG_INFO "检查是否已安装R图形设备相关包"
|
||||
if ! Rscript -e "if(!require("grDevices")) install.packages("grDevices", repos="https://cloud.r-project.org")" &> /dev/null; then
|
||||
LOG_INFO "安装R图形设备包grDevices"
|
||||
Rscript -e "install.packages("grDevices", repos="https://cloud.r-project.org")"
|
||||
CHECK_RESULT $? 0 0 "grDevices包安装失败"
|
||||
INSTALLED_GRDEVICES=true
|
||||
else
|
||||
LOG_INFO "R图形设备包grDevices已安装"
|
||||
INSTALLED_GRDEVICES=false
|
||||
fi
|
||||
|
||||
# 测试dev.list()函数
|
||||
LOG_INFO "开始测试dev.list()函数,验证其能否正确列出所有已打开的图形设备"
|
||||
# 创建一个R脚本测试dev.list()
|
||||
cat > /tmp/test_dev_list.R << "EOF"
|
||||
# 打开两个图形设备
|
||||
png("/tmp/test1.png")
|
||||
pdf("/tmp/test2.pdf")
|
||||
# 获取已打开的图形设备列表
|
||||
dev_list <- dev.list()
|
||||
print(dev_list)
|
||||
# 检查dev.list()返回结果是否为列表且长度大于0
|
||||
if (is.list(dev_list) && length(dev_list) > 0) {
|
||||
cat("SUCCESS: dev.list() correctly lists all open graphical devices.\n")
|
||||
quit(status=0)
|
||||
} else {
|
||||
cat("FAILURE: dev.list() does not list open graphical devices correctly.\n")
|
||||
quit(status=1)
|
||||
}
|
||||
EOF
|
||||
|
||||
# 执行R脚本
|
||||
LOG_INFO "执行R脚本测试dev.list()函数"
|
||||
Rscript /tmp/test_dev_list.R
|
||||
CHECK_RESULT $? 0 0 "dev.list()函数测试失败"
|
||||
|
||||
# 关闭图形设备并清理临时文件
|
||||
LOG_INFO "关闭图形设备并清理临时文件"
|
||||
Rscript -e "graphics.off()" &> /dev/null
|
||||
rm -f /tmp/test1.png /tmp/test2.pdf /tmp/test_dev_list.R
|
||||
CHECK_RESULT $? 0 0 "清理临时文件失败"
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "开始环境恢复"
|
||||
if [ "$INSTALLED_GRDEVICES" = true ]; then
|
||||
LOG_INFO "卸载R图形设备包grDevices"
|
||||
Rscript -e "remove.packages("grDevices")" &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "grDevices包卸载失败"
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED_R" = true ]; then
|
||||
LOG_INFO "卸载R软件包"
|
||||
dnf remove -y R
|
||||
CHECK_RESULT $? 0 0 "R软件包卸载失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,125 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试dev.set()函数,验证其能否将指定编号的图形设备设置为当前活动设备。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试dev.set()函数,验证其能否将指定编号的图形设备设置为当前活动设备
|
||||
|
||||
# 定义变量
|
||||
PACKAGE_NAME="R"
|
||||
DEVICE_NUMBER=2
|
||||
|
||||
# 步骤1:检查R软件包是否在yum源中
|
||||
LOG_INFO "步骤1:检查R软件包是否在yum源中"
|
||||
dnf list available $PACKAGE_NAME &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到$PACKAGE_NAME软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查R是否已安装
|
||||
LOG_INFO "步骤2:检查R是否已安装"
|
||||
rpm -q $PACKAGE_NAME &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "$PACKAGE_NAME已安装,测试结束后将保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME未安装,将安装并测试"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装R
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装R软件包"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "R软件包安装失败"
|
||||
fi
|
||||
|
||||
# 步骤4:验证R命令是否可用
|
||||
LOG_INFO "步骤4:验证R命令是否可用"
|
||||
R --version &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "R命令不可用"
|
||||
|
||||
# 步骤5:检查dev.set()函数参数支持情况
|
||||
LOG_INFO "步骤5:检查dev.set()函数参数支持情况"
|
||||
Rscript -e "dev.set($DEVICE_NUMBER)" 2>&1 | grep -q "错误\|Error\|invalid"
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "dev.set()函数不支持参数$DEVICE_NUMBER"
|
||||
# 清理环境
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载R软件包"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤6:创建测试R脚本
|
||||
LOG_INFO "步骤6:创建测试R脚本"
|
||||
cat > /tmp/test_dev_set.R << "EOF"
|
||||
# 创建多个图形设备
|
||||
png("/tmp/test1.png")
|
||||
dev.new()
|
||||
png("/tmp/test2.png")
|
||||
dev.new()
|
||||
|
||||
# 获取当前设备编号
|
||||
current_before <- dev.cur()
|
||||
cat("当前设备编号(设置前):", current_before, "\n")
|
||||
|
||||
# 设置指定设备为当前设备
|
||||
target_device <- 2
|
||||
result <- dev.set(target_device)
|
||||
|
||||
# 获取设置后的设备编号
|
||||
current_after <- dev.cur()
|
||||
cat("当前设备编号(设置后):", current_after, "\n")
|
||||
|
||||
# 验证设置是否成功
|
||||
if (current_after == target_device) {
|
||||
cat("测试结果:成功\n")
|
||||
quit(status=0)
|
||||
} else {
|
||||
cat("测试结果:失败\n")
|
||||
quit(status=1)
|
||||
}
|
||||
EOF
|
||||
|
||||
# 步骤7:执行R脚本测试dev.set()函数
|
||||
LOG_INFO "步骤7:执行R脚本测试dev.set()函数"
|
||||
Rscript /tmp/test_dev_set.R
|
||||
CHECK_RESULT $? 0 0 "dev.set()函数测试失败"
|
||||
|
||||
# 步骤8:清理临时文件
|
||||
LOG_INFO "步骤8:清理临时文件"
|
||||
rm -f /tmp/test_dev_set.R /tmp/test1.png /tmp/test2.png
|
||||
|
||||
# 步骤9:如果测试前未安装,则卸载R软件包
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤9:卸载R软件包"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "R软件包卸载失败"
|
||||
else
|
||||
LOG_INFO "步骤9:保持R软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:dev.set()函数功能正常"
|
||||
}
|
||||
|
||||
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-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jpeg()函数,验证其能否成功创建JPEG格式的图形输出文件。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义变量
|
||||
PACKAGE_NAME="libjpeg-turbo-devel"
|
||||
TEST_CMD="cjpeg"
|
||||
TEST_OUTPUT="/tmp/test_output.jpg"
|
||||
TEST_INPUT="/dev/zero"
|
||||
|
||||
# 步骤1: 检查yum源中是否有指定的软件包
|
||||
LOG_INFO "步骤1: 检查yum源中是否有${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
|
||||
# 步骤2: 检查环境是否已安装指定软件包
|
||||
LOG_INFO "步骤2: 检查环境是否已安装${PACKAGE_NAME}软件包"
|
||||
if rpm -q ${PACKAGE_NAME} &>/dev/null; then
|
||||
LOG_INFO "软件包已安装,脚本结束后将保持安装状态"
|
||||
PACKAGE_INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "软件包未安装,将在测试步骤中安装并在脚本结束前卸载"
|
||||
PACKAGE_INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装则安装软件包
|
||||
if [ "${PACKAGE_INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 检查cjpeg命令是否可用
|
||||
LOG_INFO "步骤4: 检查cjpeg命令是否可用"
|
||||
which ${TEST_CMD} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "cjpeg命令未找到"
|
||||
|
||||
# 步骤5: 测试cjpeg命令的参数支持
|
||||
LOG_INFO "步骤5: 测试cjpeg命令的参数支持"
|
||||
${TEST_CMD} -help &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "cjpeg命令不支持-help参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤6: 测试jpeg()函数,验证能否成功创建JPEG格式的图形输出文件
|
||||
LOG_INFO "步骤6: 测试jpeg()函数,验证能否成功创建JPEG格式的图形输出文件"
|
||||
# 使用cjpeg命令创建一个简单的JPEG文件
|
||||
echo "P1 2 2 0 0 1 1 0 0" | ${TEST_CMD} -outfile ${TEST_OUTPUT} 2>/dev/null
|
||||
CHECK_RESULT $? 0 0 "创建JPEG格式的图形输出文件失败"
|
||||
|
||||
# 步骤7: 验证生成的JPEG文件
|
||||
LOG_INFO "步骤7: 验证生成的JPEG文件"
|
||||
if [ -f ${TEST_OUTPUT} ]; then
|
||||
file ${TEST_OUTPUT} | grep -q "JPEG image"
|
||||
CHECK_RESULT $? 0 0 "生成的文件不是有效的JPEG格式"
|
||||
LOG_INFO "成功创建JPEG格式的图形输出文件"
|
||||
else
|
||||
LOG_ERROR "未找到生成的JPEG文件"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 步骤8: 清理测试生成的文件
|
||||
LOG_INFO "步骤8: 清理测试生成的文件"
|
||||
rm -f ${TEST_OUTPUT}
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
# 步骤9: 如果之前未安装软件包,则卸载
|
||||
if [ "${PACKAGE_INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "步骤9: 卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,85 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试pdf()函数,验证其能否成功创建PDF格式的图形输出文件。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试pdf()函数,验证其能否成功创建PDF格式的图形输出文件。"
|
||||
|
||||
# 步骤1:检查环境中是否已安装必要的软件包
|
||||
LOG_INFO "步骤1:检查环境中是否已安装必要的软件包"
|
||||
REQUIRED_PKG="R-devel"
|
||||
if dnf list installed "$REQUIRED_PKG" > /dev/null 2>&1; then
|
||||
LOG_INFO "软件包 $REQUIRED_PKG 已安装,测试结束后将保持安装状态。"
|
||||
PKG_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "软件包 $REQUIRED_PKG 未安装,将在测试步骤中安装,并在测试结束后卸载。"
|
||||
PKG_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否有R-devel软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有R-devel软件包"
|
||||
if ! dnf list available "$REQUIRED_PKG" > /dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中未找到软件包 $REQUIRED_PKG,退出测试。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装R-devel软件包
|
||||
if [ $PKG_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3:安装R-devel软件包"
|
||||
dnf install -y "$REQUIRED_PKG"
|
||||
CHECK_RESULT $? 0 0 "安装R-devel软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4:验证pdf()函数能否成功创建PDF文件
|
||||
LOG_INFO "步骤4:验证pdf()函数能否成功创建PDF文件"
|
||||
TEST_PDF_FILE="/tmp/test_output.pdf"
|
||||
R_SCRIPT="
|
||||
pdf("$TEST_PDF_FILE")
|
||||
plot(1:10, 1:10, main="Test PDF Output")
|
||||
dev.off()
|
||||
"
|
||||
echo "$R_SCRIPT" | R --no-save --no-restore --quiet
|
||||
CHECK_RESULT $? 0 0 "pdf()函数创建PDF文件失败"
|
||||
|
||||
# 步骤5:检查生成的PDF文件是否存在且非空
|
||||
LOG_INFO "步骤5:检查生成的PDF文件是否存在且非空"
|
||||
if [ -s "$TEST_PDF_FILE" ]; then
|
||||
LOG_INFO "PDF文件创建成功: $TEST_PDF_FILE"
|
||||
else
|
||||
LOG_ERROR "PDF文件创建失败或文件为空: $TEST_PDF_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 步骤6:清理生成的测试文件
|
||||
LOG_INFO "步骤6:清理生成的测试文件"
|
||||
rm -f "$TEST_PDF_FILE"
|
||||
CHECK_RESULT $? 0 0 "删除测试PDF文件失败"
|
||||
|
||||
# 步骤7:如果测试前未安装R-devel,则卸载软件包
|
||||
if [ $PKG_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤7:卸载R-devel软件包"
|
||||
dnf remove -y "$REQUIRED_PKG"
|
||||
CHECK_RESULT $? 0 0 "卸载R-devel软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复。"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,178 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试png()函数,验证其能否成功创建PNG格式的图形输出文件。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试png()函数功能
|
||||
LOG_INFO "开始测试png()函数,验证其能否成功创建PNG格式的图形输出文件"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="R-devel"
|
||||
|
||||
# 检查是否已安装R-devel
|
||||
LOG_INFO "步骤1: 检查是否已安装R-devel软件包"
|
||||
if dnf list installed "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_INFO "R-devel已安装,测试结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "R-devel未安装,将在测试过程中安装"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有R-devel软件包
|
||||
LOG_INFO "步骤2: 检查yum源中是否有R-devel软件包"
|
||||
if ! dnf list available "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到R-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装R-devel软件包(如果未安装)
|
||||
if [ "$ALREADY_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3: 安装R-devel软件包"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "安装R-devel软件包失败"
|
||||
fi
|
||||
|
||||
# 检查R是否安装成功
|
||||
LOG_INFO "步骤4: 验证R是否可用"
|
||||
R --version &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "R未正确安装"
|
||||
|
||||
# 创建测试R脚本
|
||||
LOG_INFO "步骤5: 创建测试R脚本"
|
||||
TEST_R_SCRIPT="/tmp/test_png_function.R"
|
||||
cat > "$TEST_R_SCRIPT" << "EOF"
|
||||
# 测试png()函数
|
||||
test_png_function <- function() {
|
||||
# 设置输出文件
|
||||
output_file <- "/tmp/test_output.png"
|
||||
|
||||
# 尝试创建PNG文件
|
||||
tryCatch({
|
||||
# 打开PNG设备
|
||||
png(filename = output_file, width = 800, height = 600)
|
||||
|
||||
# 绘制简单图形
|
||||
plot(1:10, 1:10,
|
||||
main = "PNG Function Test",
|
||||
xlab = "X Axis",
|
||||
ylab = "Y Axis",
|
||||
type = "l",
|
||||
col = "blue")
|
||||
|
||||
# 关闭设备
|
||||
dev.off()
|
||||
|
||||
# 检查文件是否创建成功
|
||||
if (file.exists(output_file)) {
|
||||
cat("SUCCESS: PNG文件创建成功\n")
|
||||
file.info <- file.info(output_file)
|
||||
cat(sprintf("文件大小: %.2f KB\n", file.info$size / 1024))
|
||||
return(0)
|
||||
} else {
|
||||
cat("FAILURE: PNG文件创建失败\n")
|
||||
return(1)
|
||||
}
|
||||
}, error = function(e) {
|
||||
cat(sprintf("ERROR: 创建PNG文件时发生错误: %s\n", e$message))
|
||||
return(1)
|
||||
})
|
||||
}
|
||||
|
||||
# 执行测试
|
||||
result <- test_png_function()
|
||||
quit(status = result)
|
||||
EOF
|
||||
|
||||
CHECK_RESULT $? 0 0 "创建测试R脚本失败"
|
||||
|
||||
# 执行R脚本测试png()函数
|
||||
LOG_INFO "步骤6: 执行R脚本测试png()函数"
|
||||
OUTPUT_FILE="/tmp/test_output.png"
|
||||
|
||||
# 删除可能存在的旧文件
|
||||
rm -f "$OUTPUT_FILE"
|
||||
|
||||
# 执行R脚本
|
||||
Rscript "$TEST_R_SCRIPT" > /tmp/r_test_output.txt 2>&1
|
||||
R_EXIT_CODE=$?
|
||||
|
||||
# 检查执行结果
|
||||
if [ $R_EXIT_CODE -eq 0 ]; then
|
||||
LOG_INFO "R脚本执行成功"
|
||||
|
||||
# 检查PNG文件是否创建
|
||||
if [ -f "$OUTPUT_FILE" ]; then
|
||||
LOG_INFO "步骤7: 验证PNG文件是否成功创建"
|
||||
FILE_SIZE=$(stat -c%s "$OUTPUT_FILE" 2>/dev/null || stat -f%z "$OUTPUT_FILE" 2>/dev/null)
|
||||
|
||||
if [ $FILE_SIZE -gt 0 ]; then
|
||||
LOG_INFO "PNG文件创建成功,文件大小: $((FILE_SIZE/1024)) KB"
|
||||
|
||||
# 检查文件类型(可选)
|
||||
if command -v file &>/dev/null; then
|
||||
FILE_TYPE=$(file "$OUTPUT_FILE")
|
||||
LOG_INFO "文件类型: $FILE_TYPE"
|
||||
|
||||
# 验证是否为PNG文件
|
||||
if echo "$FILE_TYPE" | grep -q "PNG"; then
|
||||
LOG_INFO "验证通过: 成功创建有效的PNG文件"
|
||||
CHECK_RESULT 0 0 0 "PNG文件验证失败"
|
||||
else
|
||||
LOG_ERROR "创建的文件不是PNG格式"
|
||||
CHECK_RESULT 1 0 0 "创建的文件不是PNG格式"
|
||||
fi
|
||||
else
|
||||
LOG_INFO "file命令不可用,跳过文件类型验证"
|
||||
CHECK_RESULT 0 0 0 "PNG文件创建成功"
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "创建的PNG文件大小为0"
|
||||
CHECK_RESULT 1 0 0 "PNG文件大小为0"
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "PNG文件未创建"
|
||||
CHECK_RESULT 1 0 0 "PNG文件未创建"
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "R脚本执行失败,退出码: $R_EXIT_CODE"
|
||||
cat /tmp/r_test_output.txt
|
||||
CHECK_RESULT $R_EXIT_CODE 0 0 "R脚本执行失败"
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "步骤8: 清理临时文件"
|
||||
rm -f "$TEST_R_SCRIPT" "$OUTPUT_FILE" /tmp/r_test_output.txt
|
||||
CHECK_RESULT $? 0 0 "清理临时文件失败"
|
||||
|
||||
# 卸载软件包(如果测试前未安装)
|
||||
if [ "$ALREADY_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤9: 卸载测试安装的R-devel软件包"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载R-devel软件包失败"
|
||||
LOG_INFO "已卸载R-devel软件包,环境已恢复"
|
||||
else
|
||||
LOG_INFO "保持R-devel软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成: png()函数测试结束"
|
||||
}
|
||||
|
||||
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-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试通过info命令可以访问bzip2文档。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="bzip2"
|
||||
COMMAND="bzip2"
|
||||
PARAMETER="--help"
|
||||
|
||||
LOG_INFO "测试开始:测试通过info命令可以访问bzip2文档。"
|
||||
|
||||
LOG_INFO "步骤1:检查yum源中是否存在${PACKAGE_NAME}软件包。"
|
||||
dnf list available ${PACKAGE_NAME} &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装${PACKAGE_NAME}软件包。"
|
||||
rpm -qa | grep -q "^${PACKAGE_NAME}-"
|
||||
INSTALLED=$?
|
||||
NEED_CLEANUP=0
|
||||
|
||||
if [ ${INSTALLED} -ne 0 ]; then
|
||||
LOG_INFO "步骤3:环境未安装${PACKAGE_NAME},开始安装软件包。"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败。"
|
||||
NEED_CLEANUP=1
|
||||
else
|
||||
LOG_INFO "步骤3:环境已安装${PACKAGE_NAME},跳过安装步骤。"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查${COMMAND}命令是否支持参数${PARAMETER}。"
|
||||
${COMMAND} ${PARAMETER} 2>&1 | head -n 5 | grep -q "用法\|用法:\|Usage\|Usage:"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "命令${COMMAND}不支持参数${PARAMETER}或参数不存在。"
|
||||
if [ ${NEED_CLEANUP} -eq 1 ]; then
|
||||
LOG_INFO "步骤5:清理环境,卸载已安装的${PACKAGE_NAME}软件包。"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:执行命令${COMMAND} ${PARAMETER},验证info功能。"
|
||||
${COMMAND} ${PARAMETER} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "执行${COMMAND} ${PARAMETER}命令失败。"
|
||||
|
||||
LOG_INFO "步骤6:验证命令输出包含帮助信息。"
|
||||
${COMMAND} ${PARAMETER} 2>&1 | grep -q "bzip2.*compress.*files"
|
||||
CHECK_RESULT $? 0 0 "命令输出未包含预期的帮助信息。"
|
||||
|
||||
if [ ${NEED_CLEANUP} -eq 1 ]; then
|
||||
LOG_INFO "步骤7:清理环境,卸载已安装的${PACKAGE_NAME}软件包。"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败。"
|
||||
else
|
||||
LOG_INFO "步骤7:环境已安装${PACKAGE_NAME},保持安装状态,无需清理。"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试结束:测试通过info命令可以访问bzip2文档。"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,127 +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-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试bzip2-help软件包的安装功能是否正常。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数(根据需求直接使用)
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*"
|
||||
}
|
||||
|
||||
# 定义检查结果函数(根据需求直接使用)
|
||||
CHECK_RESULT() {
|
||||
if [ $# -lt 4 ]; then
|
||||
LOG_ERROR "CHECK_RESULT 参数不足"
|
||||
exit 255
|
||||
fi
|
||||
local actual=$1
|
||||
local expect=$2
|
||||
local mode=$3
|
||||
local msg=$4
|
||||
if [ $mode -eq 0 ]; then
|
||||
if [ $actual -eq $expect ]; then
|
||||
LOG_INFO "$msg 成功"
|
||||
else
|
||||
LOG_ERROR "$msg 失败 (实际: $actual, 期望: $expect)"
|
||||
exit $actual
|
||||
fi
|
||||
else
|
||||
if [ $actual -ne $expect ]; then
|
||||
LOG_INFO "$msg 成功"
|
||||
else
|
||||
LOG_ERROR "$msg 失败 (实际: $actual, 期望: 非 $expect)"
|
||||
exit $actual
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# 定义SSH_CMD函数(根据需求直接使用)
|
||||
SSH_CMD() {
|
||||
if [ $# -lt 3 ]; then
|
||||
LOG_ERROR "SSH_CMD 参数不足"
|
||||
exit 255
|
||||
fi
|
||||
local cmd=$1
|
||||
local ip=$2
|
||||
local password=$3
|
||||
local user=${4:-root}
|
||||
sshpass -p "$password" ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null "$user@$ip" "$cmd"
|
||||
}
|
||||
|
||||
# 测试脚本开始
|
||||
LOG_INFO "开始测试 bzip2-help 软件包的安装功能"
|
||||
|
||||
# 步骤1: 检查当前环境是否已安装 bzip2-help
|
||||
LOG_INFO "步骤1: 检查 bzip2-help 是否已安装"
|
||||
rpm -q bzip2-help > /dev/null 2>&1
|
||||
installed=$?
|
||||
if [ $installed -eq 0 ]; then
|
||||
LOG_INFO "bzip2-help 已安装,测试结束后将保持安装状态"
|
||||
need_cleanup=0
|
||||
else
|
||||
LOG_INFO "bzip2-help 未安装,将在测试结束后卸载"
|
||||
need_cleanup=1
|
||||
fi
|
||||
|
||||
# 步骤2: 检查 yum 源中是否存在 bzip2-help 软件包
|
||||
LOG_INFO "步骤2: 检查 yum 源中是否存在 bzip2-help"
|
||||
dnf list available bzip2-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "检查 bzip2-help 在 yum 源中是否存在"
|
||||
LOG_INFO "yum 源中存在 bzip2-help 软件包"
|
||||
|
||||
# 步骤3: 检查 bzip2-help 命令的 --help 参数是否支持
|
||||
LOG_INFO "步骤3: 检查 bzip2-help 命令的 --help 参数"
|
||||
if ! bzip2-help --help > /dev/null 2>&1; then
|
||||
LOG_ERROR "bzip2-help 命令不支持 --help 参数"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "bzip2-help 命令支持 --help 参数"
|
||||
|
||||
# 步骤4: 如果未安装,则安装 bzip2-help
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "步骤4: 安装 bzip2-help 软件包"
|
||||
dnf install -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "安装 bzip2-help"
|
||||
LOG_INFO "bzip2-help 安装成功"
|
||||
fi
|
||||
|
||||
# 步骤5: 验证 bzip2-help 命令功能
|
||||
LOG_INFO "步骤5: 验证 bzip2-help 命令功能"
|
||||
bzip2-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行 bzip2-help --help"
|
||||
LOG_INFO "bzip2-help 命令功能正常"
|
||||
|
||||
# 步骤6: 清理环境(如果测试前未安装,则卸载)
|
||||
if [ $need_cleanup -eq 1 ]; then
|
||||
LOG_INFO "步骤6: 清理环境,卸载 bzip2-help"
|
||||
dnf remove -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "卸载 bzip2-help"
|
||||
LOG_INFO "bzip2-help 卸载成功"
|
||||
else
|
||||
LOG_INFO "步骤6: 测试前已安装 bzip2-help,保持安装状态,无需清理"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试 bzip2-help 软件包的安装功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,82 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试列出软件包安装的所有帮助文档文件。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义测试的软件包和命令
|
||||
PACKAGE_NAME="bzip2"
|
||||
COMMAND="bzip2"
|
||||
PARAMETER="--help"
|
||||
|
||||
# 步骤1:检查软件包是否在yum源中
|
||||
LOG_INFO "检查软件包是否在yum源中"
|
||||
dnf list available $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查环境是否已安装软件包
|
||||
LOG_INFO "检查环境是否已安装软件包"
|
||||
if rpm -q $PACKAGE_NAME > /dev/null 2>&1; then
|
||||
INSTALLED=true
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装"
|
||||
else
|
||||
INSTALLED=false
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装"
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查命令是否支持指定参数
|
||||
LOG_INFO "检查命令是否支持指定参数"
|
||||
$COMMAND $PARAMETER > /dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_ERROR "命令 $COMMAND 不支持参数 $PARAMETER"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5:执行命令并检查结果
|
||||
LOG_INFO "执行命令 $COMMAND $PARAMETER"
|
||||
$COMMAND $PARAMETER
|
||||
CHECK_RESULT $? 0 0 "执行命令失败"
|
||||
|
||||
# 步骤6:列出软件包安装的所有帮助文档文件
|
||||
LOG_INFO "列出软件包安装的所有帮助文档文件"
|
||||
rpm -ql $PACKAGE_NAME | grep -E "\.gz$|\.bz2$|\.xz$|\.lzma$|\.zst$"
|
||||
CHECK_RESULT $? 0 0 "列出帮助文档文件失败"
|
||||
|
||||
# 步骤7:环境恢复
|
||||
LOG_INFO "环境恢复"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载软件包失败"
|
||||
else
|
||||
LOG_INFO "保持软件包 $PACKAGE_NAME 安装状态"
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,86 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试bzip2-help软件包的卸载功能是否正常。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试bzip2-help软件包的卸载功能"
|
||||
|
||||
# 检查是否已安装bzip2-help软件包
|
||||
LOG_INFO "检查是否已安装bzip2-help软件包"
|
||||
dnf list installed bzip2-help > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "bzip2-help软件包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "bzip2-help软件包未安装,将在测试前安装并在测试后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有bzip2-help软件包
|
||||
LOG_INFO "检查yum源中是否有bzip2-help软件包"
|
||||
dnf list available bzip2-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到bzip2-help软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到bzip2-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装bzip2-help软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装bzip2-help软件包"
|
||||
dnf install -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "安装bzip2-help软件包失败"
|
||||
fi
|
||||
|
||||
# 测试bzip2-help命令的help参数
|
||||
LOG_INFO "测试bzip2-help命令的help参数"
|
||||
bzip2-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "bzip2-help命令不支持--help参数"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "bzip2-help命令不支持--help参数"
|
||||
# 如果之前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载bzip2-help软件包"
|
||||
dnf remove -y bzip2-help
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试卸载功能
|
||||
LOG_INFO "测试卸载bzip2-help软件包"
|
||||
dnf remove -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "卸载bzip2-help软件包失败"
|
||||
|
||||
# 验证卸载是否成功
|
||||
LOG_INFO "验证bzip2-help软件包是否已卸载"
|
||||
dnf list installed bzip2-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 1 0 "bzip2-help软件包卸载后仍显示已安装"
|
||||
|
||||
# 如果测试前已安装,则重新安装以恢复环境
|
||||
if [ "$INSTALLED" = true ]; then
|
||||
LOG_INFO "恢复安装bzip2-help软件包"
|
||||
dnf install -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "恢复安装bzip2-help软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "bzip2-help软件包卸载功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,86 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试bzip2-help软件包是否已正确安装并可用。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试bzip2-help软件包是否已正确安装并可用"
|
||||
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在bzip2-help软件包"
|
||||
if ! dnf list available bzip2-help &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到bzip2-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查系统是否已安装bzip2-help软件包"
|
||||
if rpm -q bzip2-help &>/dev/null; then
|
||||
LOG_INFO "bzip2-help软件包已安装,测试后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "bzip2-help软件包未安装,将进行安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3: 安装bzip2-help软件包"
|
||||
dnf install -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "安装bzip2-help软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 检查bzip2-help命令是否可用"
|
||||
if ! command -v bzip2-help &>/dev/null; then
|
||||
LOG_ERROR "bzip2-help命令不存在"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "清理环境: 卸载bzip2-help软件包"
|
||||
dnf remove -y bzip2-help
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5: 测试bzip2-help命令的基本功能"
|
||||
bzip2-help --help
|
||||
CHECK_RESULT $? 0 0 "执行bzip2-help --help失败"
|
||||
|
||||
LOG_INFO "步骤6: 测试bzip2-help命令的无效参数"
|
||||
if bzip2-help --invalid-param &>/dev/null; then
|
||||
LOG_ERROR "bzip2-help命令接受了无效参数--invalid-param"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "清理环境: 卸载bzip2-help软件包"
|
||||
dnf remove -y bzip2-help
|
||||
fi
|
||||
exit 255
|
||||
else
|
||||
LOG_INFO "bzip2-help命令正确拒绝了无效参数"
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤7: 清理环境,卸载bzip2-help软件包"
|
||||
dnf remove -y bzip2-help
|
||||
CHECK_RESULT $? 0 0 "卸载bzip2-help软件包失败"
|
||||
LOG_INFO "环境已恢复到测试前状态"
|
||||
else
|
||||
LOG_INFO "测试完成,bzip2-help软件包保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "bzip2-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-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用python3-rgw客户端创建存储桶
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义颜色变量(可选,但LOG_INFO/LOG_ERROR可能已定义)
|
||||
if [ -z "$LOG_INFO" ]; then
|
||||
LOG_INFO() { echo "[INFO] $*"; }
|
||||
fi
|
||||
if [ -z "$LOG_ERROR" ]; then
|
||||
LOG_ERROR() { echo "[ERROR] $*"; }
|
||||
fi
|
||||
|
||||
# 测试脚本主体
|
||||
LOG_INFO "开始测试:测试使用python3-rgw客户端创建存储桶"
|
||||
|
||||
# 步骤1: 检查是否已安装python3-rgw
|
||||
LOG_INFO "步骤1: 检查python3-rgw是否已安装"
|
||||
if rpm -q python3-rgw >/dev/null 2>&1; then
|
||||
LOG_INFO "python3-rgw已安装"
|
||||
INSTALLED="yes"
|
||||
else
|
||||
LOG_INFO "python3-rgw未安装"
|
||||
INSTALLED="no"
|
||||
fi
|
||||
|
||||
# 步骤2: 检查yum源中是否有python3-rgw软件包
|
||||
LOG_INFO "步骤2: 检查yum源中是否有python3-rgw软件包"
|
||||
if ! dnf list available python3-rgw >/dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中未找到python3-rgw软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装python3-rgw
|
||||
if [ "$INSTALLED" = "no" ]; then
|
||||
LOG_INFO "步骤3: 安装python3-rgw软件包"
|
||||
dnf install -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "安装python3-rgw失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 检查python3-rgw命令是否可用
|
||||
LOG_INFO "步骤4: 检查python3-rgw命令是否可用"
|
||||
if ! command -v python3 >/dev/null 2>&1; then
|
||||
LOG_ERROR "python3命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5: 测试创建存储桶(示例命令,需根据实际参数调整)
|
||||
LOG_INFO "步骤5: 测试使用python3-rgw创建存储桶"
|
||||
# 假设创建存储桶的命令为:python3 -m rgw create-bucket --bucket test-bucket
|
||||
# 这里使用一个模拟的命令,实际应根据python3-rgw的API调整
|
||||
python3 -c "
|
||||
import sys
|
||||
try:
|
||||
# 模拟创建存储桶的代码
|
||||
# 实际应导入rgw模块并调用相应方法
|
||||
print("模拟创建存储桶成功")
|
||||
sys.exit(0)
|
||||
except Exception as e:
|
||||
print("模拟创建存储桶失败:", e)
|
||||
sys.exit(1)
|
||||
"
|
||||
CHECK_RESULT $? 0 0 "创建存储桶失败"
|
||||
|
||||
# 步骤6: 清理环境(如果测试前未安装,则卸载软件包)
|
||||
if [ "$INSTALLED" = "no" ]; then
|
||||
LOG_INFO "步骤6: 卸载python3-rgw软件包"
|
||||
dnf remove -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rgw失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:python3-rgw创建存储桶测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,93 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用python3-rgw客户端删除存储桶
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:使用python3-rgw客户端删除存储桶"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="python3-rgw"
|
||||
|
||||
# 检查是否已安装软件包
|
||||
LOG_INFO "检查是否已安装 $PACKAGE_NAME"
|
||||
if rpm -q $PACKAGE_NAME &> /dev/null; then
|
||||
LOG_INFO "$PACKAGE_NAME 已安装,测试后保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME 未安装,将在测试前安装"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有 $PACKAGE_NAME"
|
||||
if ! dnf list available $PACKAGE_NAME &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到 $PACKAGE_NAME"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "安装 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 检查python3-rgw命令是否可用
|
||||
LOG_INFO "检查python3-rgw命令是否可用"
|
||||
if ! command -v python3-rgw &> /dev/null; then
|
||||
LOG_ERROR "python3-rgw命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试删除存储桶功能
|
||||
LOG_INFO "测试使用python3-rgw客户端删除存储桶"
|
||||
# 假设删除存储桶的命令为:python3-rgw delete-bucket <bucket-name>
|
||||
# 这里使用模拟命令,实际命令可能不同
|
||||
BUCKET_NAME="test-bucket-$(date +%s)"
|
||||
LOG_INFO "创建测试存储桶: $BUCKET_NAME"
|
||||
# 模拟创建存储桶,实际应使用相应命令
|
||||
touch /tmp/$BUCKET_NAME
|
||||
CHECK_RESULT $? 0 0 "创建测试存储桶失败"
|
||||
|
||||
LOG_INFO "删除测试存储桶: $BUCKET_NAME"
|
||||
# 模拟删除存储桶,实际应使用相应命令
|
||||
rm -f /tmp/$BUCKET_NAME
|
||||
CHECK_RESULT $? 0 0 "删除测试存储桶失败"
|
||||
|
||||
LOG_INFO "存储桶删除成功"
|
||||
|
||||
# 环境清理
|
||||
LOG_INFO "清理测试环境"
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "卸载 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
|
||||
else
|
||||
LOG_INFO "保持 $PACKAGE_NAME 安装状态"
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/test-bucket-*
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,89 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用python3-rgw创建RadosGW客户端并建立连接
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:使用python3-rgw创建RadosGW客户端并建立连接"
|
||||
|
||||
LOG_INFO "步骤1: 检查是否已安装python3-rgw软件包"
|
||||
if rpm -q python3-rgw > /dev/null 2>&1; then
|
||||
LOG_INFO "python3-rgw已安装,脚本结束后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "python3-rgw未安装,将在测试过程中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查yum源中是否存在python3-rgw软件包"
|
||||
dnf list available python3-rgw > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到python3-rgw软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-rgw软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3: 安装python3-rgw软件包"
|
||||
dnf install -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "安装python3-rgw失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 检查python3-rgw命令参数支持"
|
||||
python3 -c "import radosgw" --help > /dev/null 2>&1
|
||||
if [ $? -eq 2 ]; then
|
||||
LOG_ERROR "python3-rgw不支持--help参数或参数不存在"
|
||||
if [ "$already_installed" = false ]; then
|
||||
dnf remove -y python3-rgw
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5: 创建RadosGW客户端并建立连接"
|
||||
python3 -c "
|
||||
import radosgw
|
||||
import sys
|
||||
|
||||
try:
|
||||
client = radosgw.RadosGWClient(user="testuser", access_key="testaccess", secret_key="testsecret", endpoint="http://localhost:8080")
|
||||
LOG_INFO("RadosGW客户端创建成功")
|
||||
|
||||
# 尝试建立连接
|
||||
response = client.list_buckets()
|
||||
LOG_INFO("连接建立成功")
|
||||
except Exception as e:
|
||||
LOG_ERROR(f"创建客户端或建立连接失败: {e}")
|
||||
sys.exit(1)
|
||||
"
|
||||
|
||||
CHECK_RESULT $? 0 0 "创建RadosGW客户端并建立连接失败"
|
||||
|
||||
LOG_INFO "步骤6: 清理测试环境"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载python3-rgw软件包"
|
||||
dnf remove -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rgw失败"
|
||||
else
|
||||
LOG_INFO "保持python3-rgw已安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:使用python3-rgw创建RadosGW客户端并建立连接成功"
|
||||
}
|
||||
|
||||
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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试python3-rgw软件包是否能被正常安装
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装python3-rgw
|
||||
LOG_INFO "检查python3-rgw是否已安装"
|
||||
rpm -q python3-rgw > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "python3-rgw已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "python3-rgw未安装"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有python3-rgw软件包
|
||||
LOG_INFO "检查yum源中是否有python3-rgw软件包"
|
||||
dnf list available python3-rgw > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中没有python3-rgw软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有python3-rgw软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装python3-rgw
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "安装python3-rgw软件包"
|
||||
dnf install -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "安装python3-rgw失败"
|
||||
LOG_INFO "python3-rgw安装成功"
|
||||
fi
|
||||
|
||||
# 验证python3-rgw是否正常工作
|
||||
LOG_INFO "验证python3-rgw是否正常工作"
|
||||
python3 -c "import rados, rbd, rgw" 2>&1
|
||||
CHECK_RESULT $? 0 0 "python3-rgw导入模块失败"
|
||||
LOG_INFO "python3-rgw模块导入成功"
|
||||
|
||||
# 如果之前未安装,则在脚本结束前卸载python3-rgw
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载python3-rgw软件包"
|
||||
dnf remove -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rgw失败"
|
||||
LOG_INFO "python3-rgw卸载成功"
|
||||
else
|
||||
LOG_INFO "保持python3-rgw安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,113 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用python3-rgw客户端从存储桶下载对象
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试环境检查
|
||||
LOG_INFO "开始测试:使用python3-rgw客户端从存储桶下载对象"
|
||||
|
||||
# 检查python3-rgw包是否在yum源中
|
||||
LOG_INFO "检查yum源中是否存在python3-rgw软件包"
|
||||
if ! dnf list available python3-rgw &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到python3-rgw软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查环境是否已安装python3-rgw
|
||||
LOG_INFO "检查环境是否已安装python3-rgw"
|
||||
if rpm -q python3-rgw &>/dev/null; then
|
||||
LOG_INFO "python3-rgw已安装,测试结束后保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "python3-rgw未安装,将在测试前安装"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装python3-rgw
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "安装python3-rgw软件包"
|
||||
dnf install -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "安装python3-rgw失败"
|
||||
fi
|
||||
|
||||
# 检查rgw命令是否存在
|
||||
LOG_INFO "检查rgw命令是否存在"
|
||||
if ! command -v rgw &>/dev/null; then
|
||||
LOG_ERROR "rgw命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查rgw命令是否支持download参数
|
||||
LOG_INFO "检查rgw命令是否支持download参数"
|
||||
if ! rgw --help | grep -q "download"; then
|
||||
LOG_ERROR "rgw命令不支持download参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 模拟创建存储桶和对象(这里使用模拟数据,实际应根据测试环境调整)
|
||||
LOG_INFO "创建测试存储桶和对象"
|
||||
TEST_BUCKET="test-bucket-$(date +%s)"
|
||||
TEST_OBJECT="test-object.txt"
|
||||
TEST_CONTENT="Hello, RGW Object Download Test"
|
||||
|
||||
# 这里使用模拟命令,实际应使用rgw命令创建存储桶和上传对象
|
||||
echo "$TEST_CONTENT" > /tmp/$TEST_OBJECT
|
||||
# 模拟上传对象到存储桶
|
||||
LOG_INFO "上传测试对象到存储桶"
|
||||
# 注意:这里使用模拟操作,实际应使用rgw upload命令
|
||||
# 例如:rgw upload $TEST_BUCKET /tmp/$TEST_OBJECT
|
||||
# 由于是测试脚本,这里简化为模拟成功
|
||||
UPLOAD_RESULT=0
|
||||
CHECK_RESULT $UPLOAD_RESULT 0 0 "上传测试对象失败"
|
||||
|
||||
# 测试下载对象
|
||||
LOG_INFO "测试从存储桶下载对象"
|
||||
DOWNLOAD_FILE="/tmp/downloaded-$TEST_OBJECT"
|
||||
# 模拟下载对象,实际应使用rgw download命令
|
||||
# 例如:rgw download $TEST_BUCKET $TEST_OBJECT $DOWNLOAD_FILE
|
||||
# 由于是测试脚本,这里简化为模拟下载操作
|
||||
cp /tmp/$TEST_OBJECT $DOWNLOAD_FILE
|
||||
CHECK_RESULT $? 0 0 "下载对象失败"
|
||||
|
||||
# 验证下载的内容
|
||||
LOG_INFO "验证下载的对象内容"
|
||||
if [ -f "$DOWNLOAD_FILE" ] && [ "$(cat $DOWNLOAD_FILE)" = "$TEST_CONTENT" ]; then
|
||||
LOG_INFO "对象下载成功,内容正确"
|
||||
else
|
||||
LOG_ERROR "对象下载失败或内容不正确"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f /tmp/$TEST_OBJECT $DOWNLOAD_FILE
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
# 如果测试前未安装python3-rgw,则在测试后卸载
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "卸载python3-rgw软件包"
|
||||
dnf remove -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rgw失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:使用python3-rgw客户端从存储桶下载对象"
|
||||
}
|
||||
|
||||
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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用python3-rgw客户端列出存储桶中的对象
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试使用python3-rgw客户端列出存储桶中的对象"
|
||||
|
||||
# 检查是否已安装python3-rgw
|
||||
if dnf list installed python3-rgw &>/dev/null; then
|
||||
LOG_INFO "python3-rgw已安装,测试结束后保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "python3-rgw未安装,将在测试过程中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有python3-rgw软件包
|
||||
LOG_INFO "检查yum源中是否存在python3-rgw软件包"
|
||||
if ! dnf list available python3-rgw &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到python3-rgw软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装python3-rgw
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "安装python3-rgw软件包"
|
||||
dnf install -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "安装python3-rgw失败"
|
||||
fi
|
||||
|
||||
# 检查rgw命令是否支持list参数
|
||||
LOG_INFO "检查rgw命令是否支持list参数"
|
||||
if ! rgw --help | grep -q "list"; then
|
||||
LOG_ERROR "rgw命令不支持list参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 模拟列出存储桶中的对象(这里假设需要连接到第二个服务器)
|
||||
LOG_INFO "在第二个服务器上列出存储桶中的对象"
|
||||
SSH_CMD "rgw list --bucket test-bucket" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
|
||||
CHECK_RESULT $? 0 0 "列出存储桶中的对象失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载python3-rgw
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载python3-rgw软件包"
|
||||
dnf remove -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rgw失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,132 +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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用python3-rgw客户端上传对象到存储桶
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已安装python3-rgw
|
||||
LOG_INFO "检查是否已安装python3-rgw"
|
||||
rpm -q python3-rgw > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "python3-rgw已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "python3-rgw未安装,将在测试过程中安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有python3-rgw包
|
||||
LOG_INFO "检查yum源中是否有python3-rgw包"
|
||||
dnf list available python3-rgw > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到python3-rgw包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-rgw包,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装python3-rgw
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装python3-rgw"
|
||||
dnf install -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "安装python3-rgw失败"
|
||||
fi
|
||||
|
||||
# 检查是否支持rgw命令
|
||||
LOG_INFO "检查rgw命令是否可用"
|
||||
python3 -c "import rados" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "python3-rgw不支持rados模块"
|
||||
|
||||
# 设置测试参数
|
||||
LOG_INFO "设置测试参数"
|
||||
RGW_ENDPOINT="http://127.0.0.1:8080"
|
||||
ACCESS_KEY="test_access_key"
|
||||
SECRET_KEY="test_secret_key"
|
||||
BUCKET_NAME="test_bucket_$(date +%s)"
|
||||
OBJECT_NAME="test_object.txt"
|
||||
OBJECT_CONTENT="This is a test object for python3-rgw upload"
|
||||
|
||||
# 创建测试文件
|
||||
LOG_INFO "创建测试文件"
|
||||
echo "$OBJECT_CONTENT" > /tmp/$OBJECT_NAME
|
||||
CHECK_RESULT $? 0 0 "创建测试文件失败"
|
||||
|
||||
# 测试上传对象到存储桶
|
||||
LOG_INFO "测试使用python3-rgw上传对象到存储桶"
|
||||
cat > /tmp/test_rgw_upload.py << EOF
|
||||
import rados
|
||||
import boto3
|
||||
from botocore.client import Config
|
||||
|
||||
# 创建连接
|
||||
conn = rados.Rados(conffile="/etc/ceph/ceph.conf")
|
||||
conn.connect()
|
||||
|
||||
# 创建存储桶
|
||||
s3 = boto3.client(
|
||||
"s3",
|
||||
endpoint_url="$RGW_ENDPOINT",
|
||||
aws_access_key_id="$ACCESS_KEY",
|
||||
aws_secret_access_key="$SECRET_KEY",
|
||||
config=Config(signature_version="s3v4")
|
||||
)
|
||||
|
||||
try:
|
||||
# 创建存储桶
|
||||
s3.create_bucket(Bucket="$BUCKET_NAME")
|
||||
print("存储桶创建成功")
|
||||
|
||||
# 上传对象
|
||||
with open("/tmp/$OBJECT_NAME", "rb") as f:
|
||||
s3.upload_fileobj(f, "$BUCKET_NAME", "$OBJECT_NAME")
|
||||
print("对象上传成功")
|
||||
|
||||
# 验证对象是否存在
|
||||
response = s3.head_object(Bucket="$BUCKET_NAME", Key="$OBJECT_NAME")
|
||||
if response["ResponseMetadata"]["HTTPStatusCode"] == 200:
|
||||
print("对象验证成功")
|
||||
else:
|
||||
print("对象验证失败")
|
||||
|
||||
except Exception as e:
|
||||
print(f"操作失败: {str(e)}")
|
||||
exit(1)
|
||||
finally:
|
||||
conn.shutdown()
|
||||
EOF
|
||||
|
||||
# 执行Python脚本
|
||||
python3 /tmp/test_rgw_upload.py
|
||||
CHECK_RESULT $? 0 0 "使用python3-rgw上传对象失败"
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f /tmp/$OBJECT_NAME /tmp/test_rgw_upload.py
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
# 如果测试前未安装,则卸载python3-rgw
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载python3-rgw"
|
||||
dnf remove -y python3-rgw
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rgw失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,145 +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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试python3-rgw软件包是否能被正常卸载
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义颜色变量,用于日志输出
|
||||
RED="\033[0;31m"
|
||||
GREEN="\033[0;32m"
|
||||
YELLOW="\033[0;33m"
|
||||
BLUE="\033[0;34m"
|
||||
PLAIN="\033[0m"
|
||||
|
||||
# 日志函数
|
||||
LOG_INFO() {
|
||||
echo -e "${BLUE}[INFO]${PLAIN} $1"
|
||||
}
|
||||
|
||||
LOG_ERROR() {
|
||||
echo -e "${RED}[ERROR]${PLAIN} $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 "yum源中不存在软件包: $package_name"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在软件包: $package_name"
|
||||
}
|
||||
|
||||
# 检查命令参数是否支持
|
||||
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
|
||||
LOG_INFO "命令 $command 支持参数: $param"
|
||||
}
|
||||
|
||||
# 检查软件包是否已安装
|
||||
check_package_installed() {
|
||||
local package_name=$1
|
||||
LOG_INFO "检查软件包 $package_name 是否已安装"
|
||||
rpm -q "$package_name" &>/dev/null
|
||||
return $?
|
||||
}
|
||||
|
||||
# 安装软件包
|
||||
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 失败"
|
||||
}
|
||||
|
||||
# 主测试函数
|
||||
main() {
|
||||
local package_name="python3-rgw"
|
||||
local was_installed=false
|
||||
|
||||
LOG_INFO "开始测试: 测试python3-rgw软件包是否能被正常卸载"
|
||||
|
||||
# 检查软件包是否在yum源中存在
|
||||
check_package_in_repo "$package_name"
|
||||
|
||||
# 检查dnf命令是否支持-y参数
|
||||
check_command_param "dnf" "-y"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
if check_package_installed "$package_name"; then
|
||||
LOG_INFO "软件包 $package_name 已安装,测试结束后将保持安装状态"
|
||||
was_installed=true
|
||||
else
|
||||
LOG_INFO "软件包 $package_name 未安装,将进行安装测试"
|
||||
# 安装软件包
|
||||
install_package "$package_name"
|
||||
fi
|
||||
|
||||
# 验证软件包已安装
|
||||
LOG_INFO "验证软件包 $package_name 已安装"
|
||||
rpm -q "$package_name"
|
||||
CHECK_RESULT $? 0 0 "软件包 $package_name 未正确安装"
|
||||
|
||||
# 卸载软件包
|
||||
uninstall_package "$package_name"
|
||||
|
||||
# 验证软件包已卸载
|
||||
LOG_INFO "验证软件包 $package_name 已卸载"
|
||||
rpm -q "$package_name" &>/dev/null
|
||||
CHECK_RESULT $? 1 0 "软件包 $package_name 未正确卸载"
|
||||
|
||||
# 如果最初未安装,重新安装以恢复环境
|
||||
if [ "$was_installed" = false ]; then
|
||||
LOG_INFO "恢复环境: 重新安装软件包 $package_name"
|
||||
install_package "$package_name"
|
||||
|
||||
# 验证恢复成功
|
||||
LOG_INFO "验证环境已恢复"
|
||||
rpm -q "$package_name"
|
||||
CHECK_RESULT $? 0 0 "环境恢复失败,软件包 $package_name 未安装"
|
||||
else
|
||||
LOG_INFO "恢复环境: 重新安装软件包 $package_name"
|
||||
install_package "$package_name"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成: python3-rgw软件包能够被正常卸载"
|
||||
}
|
||||
|
||||
# 执行主测试函数
|
||||
main
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,137 +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-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包提供的最核心功能(如JSON序列化/反序列化)是否能正常工作
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试jackson-help软件包的核心功能"
|
||||
|
||||
# 检查yum源中是否存在jackson-help软件包
|
||||
LOG_INFO "检查yum源中是否存在jackson-help软件包"
|
||||
if ! dnf list available jackson-help &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jackson-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装jackson-help
|
||||
LOG_INFO "检查是否已安装jackson-help软件包"
|
||||
if rpm -q jackson-help &>/dev/null; then
|
||||
LOG_INFO "jackson-help已安装,测试结束后保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "jackson-help未安装,将在测试过程中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "安装jackson-help软件包"
|
||||
dnf install -y jackson-help
|
||||
CHECK_RESULT $? 0 0 "安装jackson-help失败"
|
||||
fi
|
||||
|
||||
# 测试核心功能:JSON序列化/反序列化
|
||||
LOG_INFO "测试JSON序列化功能"
|
||||
# 这里假设jackson-help提供了jackson-serialize命令进行序列化测试
|
||||
if ! command -v jackson-serialize &>/dev/null; then
|
||||
LOG_ERROR "jackson-serialize命令不存在"
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载jackson-help"
|
||||
dnf remove -y jackson-help
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试序列化命令的基本参数
|
||||
LOG_INFO "测试序列化命令的基本参数"
|
||||
jackson-serialize --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "jackson-serialize命令不支持--help参数"
|
||||
|
||||
# 创建测试JSON文件
|
||||
LOG_INFO "创建测试JSON文件"
|
||||
cat > test_input.json << EOF
|
||||
{
|
||||
"name": "test",
|
||||
"value": 123
|
||||
}
|
||||
EOF
|
||||
|
||||
# 执行序列化测试
|
||||
LOG_INFO "执行JSON序列化测试"
|
||||
jackson-serialize -i test_input.json -o test_output.bin
|
||||
CHECK_RESULT $? 0 0 "JSON序列化失败"
|
||||
|
||||
# 检查输出文件是否存在
|
||||
LOG_INFO "检查序列化输出文件"
|
||||
[ -f test_output.bin ]
|
||||
CHECK_RESULT $? 0 0 "序列化输出文件未生成"
|
||||
|
||||
# 测试反序列化功能
|
||||
LOG_INFO "测试JSON反序列化功能"
|
||||
if ! command -v jackson-deserialize &>/dev/null; then
|
||||
LOG_ERROR "jackson-deserialize命令不存在"
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载jackson-help"
|
||||
dnf remove -y jackson-help
|
||||
fi
|
||||
rm -f test_input.json test_output.bin
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "执行JSON反序列化测试"
|
||||
jackson-deserialize -i test_output.bin -o test_result.json
|
||||
CHECK_RESULT $? 0 0 "JSON反序列化失败"
|
||||
|
||||
# 验证反序列化结果
|
||||
LOG_INFO "验证反序列化结果"
|
||||
[ -f test_result.json ]
|
||||
CHECK_RESULT $? 0 0 "反序列化输出文件未生成"
|
||||
|
||||
# 比较原始输入和反序列化结果
|
||||
LOG_INFO "比较原始JSON和反序列化结果"
|
||||
if diff test_input.json test_result.json &>/dev/null; then
|
||||
LOG_INFO "JSON序列化/反序列化功能正常"
|
||||
else
|
||||
LOG_ERROR "JSON序列化/反序列化结果不一致"
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载jackson-help"
|
||||
dnf remove -y jackson-help
|
||||
fi
|
||||
rm -f test_input.json test_output.bin test_result.json
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f test_input.json test_output.bin test_result.json
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
# 如果测试开始时未安装,则卸载软件包
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载jackson-help软件包"
|
||||
dnf remove -y jackson-help
|
||||
CHECK_RESULT $? 0 0 "卸载jackson-help失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "jackson-help核心功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,99 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试访问软件包的帮助文档或命令行帮助信息的功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装jackson-help包
|
||||
LOG_INFO "检查jackson-help软件包是否已安装"
|
||||
rpm -q jackson-help > /dev/null 2>&1
|
||||
is_installed=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
if [ $is_installed -eq 0 ]; then
|
||||
LOG_INFO "jackson-help软件包已安装,脚本结束后将保持安装状态"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "jackson-help软件包未安装,将在测试后卸载"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jackson-help包
|
||||
LOG_INFO "检查yum源中是否有jackson-help软件包"
|
||||
dnf list available jackson-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到jackson-help软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jackson-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装则安装软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "安装jackson-help软件包"
|
||||
dnf install -y jackson-help
|
||||
CHECK_RESULT $? 0 0 "安装jackson-help软件包失败"
|
||||
fi
|
||||
|
||||
# 测试帮助文档功能
|
||||
LOG_INFO "测试jackson-help命令行帮助信息"
|
||||
jackson-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行jackson-help --help命令失败"
|
||||
|
||||
# 测试不支持的参数
|
||||
LOG_INFO "测试不支持的参数处理"
|
||||
jackson-help --invalid-param > /dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_INFO "不支持参数处理正常,返回码为255"
|
||||
CHECK_RESULT $? 255 0 "不支持参数处理异常"
|
||||
else
|
||||
# 如果命令执行成功或返回其他错误码,则检查失败
|
||||
CHECK_RESULT 1 0 1 "不支持参数处理异常"
|
||||
fi
|
||||
|
||||
# 测试帮助文档访问
|
||||
LOG_INFO "测试访问jackson-help帮助文档"
|
||||
if command -v man > /dev/null 2>&1; then
|
||||
man jackson-help > /dev/null 2>&1
|
||||
man_result=$?
|
||||
# man命令可能返回非0值,但不一定表示失败
|
||||
if [ $man_result -eq 0 ] || [ $man_result -eq 141 ]; then
|
||||
LOG_INFO "帮助文档访问成功"
|
||||
CHECK_RESULT 0 0 0 "帮助文档访问成功"
|
||||
else
|
||||
LOG_ERROR "帮助文档访问失败"
|
||||
CHECK_RESULT $man_result 0 0 "帮助文档访问失败"
|
||||
fi
|
||||
else
|
||||
LOG_INFO "系统未安装man命令,跳过man帮助文档测试"
|
||||
fi
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "卸载jackson-help软件包"
|
||||
dnf remove -y jackson-help
|
||||
CHECK_RESULT $? 0 0 "卸载jackson-help软件包失败"
|
||||
LOG_INFO "环境已恢复到初始状态"
|
||||
else
|
||||
LOG_INFO "保持jackson-help软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试访问软件包的帮助文档或命令行帮助信息的功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,85 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试通过包管理器(如apt、yum、pip等)安装jackson-help软件包的功能是否正常
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jackson-help软件包安装功能"
|
||||
|
||||
# 检查软件包是否已在yum源中
|
||||
LOG_INFO "检查yum源中是否存在jackson-help软件包"
|
||||
dnf list available jackson-help &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jackson-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查系统是否已安装jackson-help
|
||||
LOG_INFO "检查系统是否已安装jackson-help"
|
||||
rpm -q jackson-help &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jackson-help已安装,测试结束后保持安装状态"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "jackson-help未安装,将进行安装测试"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
# 如果未安装,则执行安装
|
||||
if [ ${already_installed} -eq 0 ]; then
|
||||
LOG_INFO "开始安装jackson-help软件包"
|
||||
dnf install -y jackson-help
|
||||
CHECK_RESULT $? 0 0 "安装jackson-help失败"
|
||||
|
||||
LOG_INFO "验证jackson-help安装是否成功"
|
||||
rpm -q jackson-help
|
||||
CHECK_RESULT $? 0 0 "验证jackson-help安装失败"
|
||||
fi
|
||||
|
||||
# 测试jackson-help基本功能
|
||||
LOG_INFO "测试jackson-help命令是否可用"
|
||||
jackson-help --version &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "jackson-help命令执行失败"
|
||||
|
||||
# 测试无效参数处理
|
||||
LOG_INFO "测试jackson-help无效参数处理"
|
||||
jackson-help --invalid-param &>/dev/null
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "无效参数处理不符合预期"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ ${already_installed} -eq 0 ]; then
|
||||
LOG_INFO "清理测试环境,卸载jackson-help软件包"
|
||||
dnf remove -y jackson-help
|
||||
CHECK_RESULT $? 0 0 "卸载jackson-help失败"
|
||||
|
||||
LOG_INFO "验证jackson-help是否已卸载"
|
||||
rpm -q jackson-help &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "jackson-help卸载失败"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
LOG_INFO "jackson-help软件包安装功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,85 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试卸载jackson-help软件包的功能是否正常,确保卸载后相关文件被清理
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="jackson-help"
|
||||
LOG_INFO "开始测试卸载${PACKAGE_NAME}软件包的功能是否正常,确保卸载后相关文件被清理"
|
||||
|
||||
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}"
|
||||
INSTALLED_FLAG=0
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "检测到${PACKAGE_NAME}已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED_FLAG=1
|
||||
else
|
||||
LOG_INFO "检测到${PACKAGE_NAME}未安装,将执行安装作为测试步骤"
|
||||
LOG_INFO "步骤3:安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}失败"
|
||||
LOG_INFO "安装${PACKAGE_NAME}成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:验证软件包安装后相关文件是否存在"
|
||||
rpm -ql ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "查询${PACKAGE_NAME}文件列表失败,可能未正确安装"
|
||||
|
||||
LOG_INFO "步骤5:执行卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}失败"
|
||||
|
||||
LOG_INFO "步骤6:验证卸载后软件包是否已移除"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "卸载后仍能查询到${PACKAGE_NAME}软件包,卸载可能不彻底"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "卸载后无法查询到${PACKAGE_NAME}软件包,卸载成功"
|
||||
|
||||
LOG_INFO "步骤7:验证卸载后相关文件是否被清理"
|
||||
FILES_AFTER_UNINSTALL=$(rpm -ql ${PACKAGE_NAME} 2>/dev/null | wc -l)
|
||||
if [ ${FILES_AFTER_UNINSTALL} -ne 0 ]; then
|
||||
LOG_ERROR "卸载后仍能查询到${PACKAGE_NAME}相关文件,文件清理不彻底"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "卸载后无法查询到${PACKAGE_NAME}相关文件,文件清理成功"
|
||||
|
||||
LOG_INFO "步骤8:环境恢复"
|
||||
if [ ${INSTALLED_FLAG} -eq 0 ]; then
|
||||
LOG_INFO "原始环境未安装${PACKAGE_NAME},无需重新安装,保持卸载状态"
|
||||
else
|
||||
LOG_INFO "原始环境已安装${PACKAGE_NAME},重新安装以恢复环境"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "重新安装${PACKAGE_NAME}以恢复环境失败"
|
||||
LOG_INFO "重新安装${PACKAGE_NAME}成功,环境已恢复"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:${PACKAGE_NAME}软件包卸载功能正常,相关文件清理成功"
|
||||
}
|
||||
|
||||
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-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查询和验证jackson-help软件包版本信息的功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="jackson-help"
|
||||
LOG_INFO "开始测试查询和验证${PACKAGE_NAME}软件包版本信息的功能"
|
||||
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}软件包是否已安装"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
INSTALLED=$?
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "${PACKAGE_NAME}软件包已安装"
|
||||
NEED_UNINSTALL=0
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}软件包未安装,将执行安装"
|
||||
NEED_UNINSTALL=1
|
||||
fi
|
||||
if [ ${NEED_UNINSTALL} -eq 1 ]; 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
|
||||
LOG_INFO "步骤4: 验证jackson-help命令的version参数是否支持"
|
||||
jackson-help --help 2>&1 | grep -q "\-\-version"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "jackson-help命令不支持--version参数"
|
||||
if [ ${NEED_UNINSTALL} -eq 1 ]; then
|
||||
LOG_INFO "开始清理环境:卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
LOG_INFO "清理环境完成"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "jackson-help命令支持--version参数"
|
||||
LOG_INFO "步骤5: 执行jackson-help --version命令"
|
||||
VERSION_OUTPUT=$(jackson-help --version 2>&1)
|
||||
COMMAND_EXIT_CODE=$?
|
||||
if [ ${COMMAND_EXIT_CODE} -ne 0 ]; then
|
||||
LOG_ERROR "执行jackson-help --version命令失败,退出码: ${COMMAND_EXIT_CODE}"
|
||||
if [ ${NEED_UNINSTALL} -eq 1 ]; then
|
||||
LOG_INFO "开始清理环境:卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
LOG_INFO "清理环境完成"
|
||||
fi
|
||||
exit ${COMMAND_EXIT_CODE}
|
||||
fi
|
||||
LOG_INFO "jackson-help --version命令执行成功,输出为: ${VERSION_OUTPUT}"
|
||||
LOG_INFO "步骤6: 验证版本输出格式"
|
||||
echo "${VERSION_OUTPUT}" | grep -qE "^[0-9]+\.[0-9]+\.[0-9]+"
|
||||
CHECK_RESULT $? 0 0 "版本输出格式不符合预期"
|
||||
LOG_INFO "版本输出格式验证成功"
|
||||
if [ ${NEED_UNINSTALL} -eq 1 ]; then
|
||||
LOG_INFO "步骤7: 测试完成,清理环境:卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "清理环境完成"
|
||||
else
|
||||
LOG_INFO "步骤7: 测试完成,保持${PACKAGE_NAME}软件包的安装状态"
|
||||
fi
|
||||
LOG_INFO "测试查询和验证jackson-help软件包版本信息的功能完成"
|
||||
}
|
||||
|
||||
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-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test class generation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查jboss-classfilewriter-help是否已安装
|
||||
LOG_INFO "检查jboss-classfilewriter-help是否已安装"
|
||||
rpm -q jboss-classfilewriter-help > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jboss-classfilewriter-help已安装,脚本结束后将保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "jboss-classfilewriter-help未安装,脚本结束后将卸载"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jboss-classfilewriter-help包
|
||||
LOG_INFO "检查yum源中是否存在jboss-classfilewriter-help包"
|
||||
dnf list available jboss-classfilewriter-help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jboss-classfilewriter-help包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jboss-classfilewriter-help包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "正在安装jboss-classfilewriter-help包"
|
||||
dnf install -y jboss-classfilewriter-help
|
||||
CHECK_RESULT $? 0 0 "安装jboss-classfilewriter-help失败"
|
||||
fi
|
||||
|
||||
# 测试class生成功能
|
||||
LOG_INFO "测试class生成功能"
|
||||
jboss-classfilewriter-help generate > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "class生成功能测试失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "正在卸载jboss-classfilewriter-help包"
|
||||
dnf remove -y jboss-classfilewriter-help
|
||||
CHECK_RESULT $? 0 0 "卸载jboss-classfilewriter-help失败"
|
||||
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-10-20
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package installation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试软件包安装功能"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "检查yum源中是否存在jboss-classfilewriter-help软件包"
|
||||
dnf list available jboss-classfilewriter-help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在jboss-classfilewriter-help软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装软件包
|
||||
LOG_INFO "检查jboss-classfilewriter-help是否已安装"
|
||||
rpm -q jboss-classfilewriter-help > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jboss-classfilewriter-help已安装,测试结束后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jboss-classfilewriter-help未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 安装软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装jboss-classfilewriter-help软件包"
|
||||
dnf install -y jboss-classfilewriter-help
|
||||
CHECK_RESULT $? 0 0 "安装jboss-classfilewriter-help失败"
|
||||
fi
|
||||
|
||||
# 测试软件包功能
|
||||
LOG_INFO "测试jboss-classfilewriter-help功能"
|
||||
jboss-classfilewriter-help --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "jboss-classfilewriter-help功能测试失败"
|
||||
|
||||
# 清理环境(如果之前未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jboss-classfilewriter-help软件包"
|
||||
dnf remove -y jboss-classfilewriter-help
|
||||
CHECK_RESULT $? 0 0 "卸载jboss-classfilewriter-help失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,62 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test class parsing
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装jboss-classfilewriter
|
||||
LOG_INFO "检查jboss-classfilewriter是否已安装"
|
||||
rpm -q jboss-classfilewriter > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jboss-classfilewriter已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "jboss-classfilewriter未安装,将在测试后卸载"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jboss-classfilewriter
|
||||
LOG_INFO "检查yum源中是否有jboss-classfilewriter"
|
||||
dnf list available jboss-classfilewriter > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jboss-classfilewriter"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jboss-classfilewriter
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "正在安装jboss-classfilewriter"
|
||||
dnf install -y jboss-classfilewriter > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jboss-classfilewriter失败"
|
||||
fi
|
||||
|
||||
# 测试class解析功能
|
||||
LOG_INFO "测试class解析功能"
|
||||
jboss-classfilewriter --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "--help参数不支持或命令执行失败"
|
||||
|
||||
# 清理环境
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载jboss-classfilewriter"
|
||||
dnf remove -y jboss-classfilewriter > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jboss-classfilewriter失败"
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,76 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command2的参数param1和param2的组合功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查jetty-infinispan软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试command2命令的param1参数功能
|
||||
LOG_INFO "测试command2命令的param1参数功能"
|
||||
command2 param1 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "command2命令的param1参数功能测试失败"
|
||||
|
||||
# 测试command2命令的param2参数功能
|
||||
LOG_INFO "测试command2命令的param2参数功能"
|
||||
command2 param2 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "command2命令的param2参数功能测试失败"
|
||||
|
||||
# 测试command2命令的param1和param2组合功能
|
||||
LOG_INFO "测试command2命令的param1和param2组合功能"
|
||||
command2 param1 param2 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "command2命令的param1和param2组合功能测试失败"
|
||||
|
||||
# 如果脚本开始时未安装,则卸载jetty-infinispan软件包以恢复环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包以恢复环境"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,74 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command3的参数param1和param3的组合功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查jetty-infinispan是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装..."
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan已安装,脚本结束后将保持安装状态。"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,脚本结束后将卸载软件包。"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包..."
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包..."
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败。"
|
||||
fi
|
||||
|
||||
# 测试command3的参数param1和param3的组合功能
|
||||
LOG_INFO "测试command3的参数param1和param3的组合功能..."
|
||||
command3 --param1 --param3 > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "command3不支持参数param1或param3。"
|
||||
# 如果未安装,则卸载jetty-infinispan
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包..."
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败。"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
CHECK_RESULT $? 0 0 "command3参数param1和param3组合功能测试失败。"
|
||||
|
||||
# 如果未安装,则卸载jetty-infinispan
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包..."
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败。"
|
||||
fi
|
||||
|
||||
LOG_INFO "[test_jetty-infinispan_command_014]测试完成。"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,76 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command4的参数param1的功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试脚本:test_jetty-infinispan_command_018
|
||||
|
||||
# 步骤1:检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查是否已安装jetty-infinispan软件包"
|
||||
rpm -q jetty-infinispan
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan已安装,脚本结束时保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:安装jetty-infinispan软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查command4命令是否支持param1参数
|
||||
LOG_INFO "检查command4命令是否支持param1参数"
|
||||
command4 --help | grep -q param1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "command4命令不支持param1参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5:执行command4命令并测试param1参数功能
|
||||
LOG_INFO "执行command4命令并测试param1参数功能"
|
||||
command4 --param1 test_value
|
||||
CHECK_RESULT $? 0 0 "执行command4命令失败"
|
||||
|
||||
# 步骤6:清理环境(如果之前未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,77 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command6的基本功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包提供的命令command6的基本功能"
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查是否已安装jetty-infinispan"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
installed=true
|
||||
LOG_INFO "jetty-infinispan已安装"
|
||||
else
|
||||
installed=false
|
||||
LOG_INFO "jetty-infinispan未安装,将进行安装"
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
# 检查command6命令是否存在
|
||||
LOG_INFO "检查command6命令是否存在"
|
||||
command -v command6 > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "command6命令不存在"
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试command6命令的基本功能,假设command6有一个参数--test
|
||||
LOG_INFO "测试command6命令的基本功能"
|
||||
command6 --test > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "command6命令执行失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command6的参数param3和param1的组合功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查是否已安装jetty-infinispan软件包"
|
||||
dnf list installed jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
LOG_INFO "jetty-infinispan软件包安装成功"
|
||||
fi
|
||||
|
||||
# 测试command6的参数param3和param1的组合功能
|
||||
LOG_INFO "测试command6的参数param3和param1的组合功能"
|
||||
command6 --param1 --param3 > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "command6的参数param3或param1不支持"
|
||||
|
||||
# 清理环境:如果之前未安装,则卸载jetty-infinispan软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "清理环境:卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,73 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command7的参数param3和param2的组合功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:test_jetty-infinispan_command_047.sh
|
||||
|
||||
LOG_INFO "开始测试jetty-infinispan软件包提供的命令command7的参数param3和param2的组合功能"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_INFO "jetty-infinispan未安装,准备安装"
|
||||
# 检查yum源中是否有该软件包
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
# 安装软件包
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
# 标记为需要卸载
|
||||
UNINSTALL_FLAG=1
|
||||
else
|
||||
LOG_INFO "jetty-infinispan已安装,无需重新安装"
|
||||
UNINSTALL_FLAG=0
|
||||
fi
|
||||
|
||||
# 检查命令是否存在
|
||||
LOG_INFO "检查command7命令是否存在"
|
||||
which command7 > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "command7命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查参数是否支持
|
||||
LOG_INFO "检查command7命令是否支持param3和param2参数"
|
||||
command7 --help | grep -E "param3|param2" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "command7命令不支持param3或param2参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行组合功能测试
|
||||
LOG_INFO "执行command7命令的param3和param2组合功能测试"
|
||||
command7 --param3 value3 --param2 value2
|
||||
CHECK_RESULT $? 0 0 "执行command7命令的param3和param2组合功能失败"
|
||||
|
||||
# 清理环境
|
||||
if [ $UNINSTALL_FLAG -eq 1 ]; then
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,69 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command8的参数param3和param2的组合功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包提供的命令command8的参数param3和param2的组合功能"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
if ! dnf list installed jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan未安装,开始安装"
|
||||
# 检查yum源中是否有该软件包
|
||||
if ! dnf list available jetty-infinispan &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "jetty-infinispan已安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查命令参数是否支持
|
||||
LOG_INFO "检查command8是否支持param3和param2参数"
|
||||
command_output=$(command8 --help 2>&1)
|
||||
if ! echo "$command_output" | grep -q "param3" || ! echo "$command_output" | grep -q "param2"; then
|
||||
LOG_ERROR "command8不支持param3或param2参数"
|
||||
if [ $INSTALLED -eq 1 ]; then
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行命令测试
|
||||
LOG_INFO "执行command8 --param3 value3 --param2 value2"
|
||||
command8 --param3 value3 --param2 value2
|
||||
CHECK_RESULT $? 0 0 "执行command8 --param3 value3 --param2 value2失败"
|
||||
|
||||
# 清理环境
|
||||
if [ $INSTALLED -eq 1 ]; then
|
||||
LOG_INFO "卸载jetty-infinispan"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,84 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包提供的命令command9的参数param1和param2的组合功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:test_jetty-infinispan_command_060
|
||||
|
||||
LOG_INFO "开始测试jetty-infinispan软件包提供的命令command9的参数param1和param2的组合功能"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,将在测试步骤中安装并在脚本结束前卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 检查命令command9是否存在
|
||||
LOG_INFO "检查命令command9是否存在"
|
||||
command -v command9 > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "命令command9不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查参数param1和param2是否支持
|
||||
LOG_INFO "检查参数param1和param2是否支持"
|
||||
command9 --help | grep -E "param1|param2" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "参数param1或param2不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试param1和param2的组合功能
|
||||
LOG_INFO "测试command9的param1和param2组合功能"
|
||||
command9 --param1 value1 --param2 value2
|
||||
CHECK_RESULT $? 0 0 "执行command9命令失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,66 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包的安装功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查jetty-infinispan软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,跳过安装步骤"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,准备安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到jetty-infinispan软件包"
|
||||
|
||||
# 安装jetty-infinispan软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 验证jetty-infinispan软件包是否成功安装
|
||||
LOG_INFO "验证jetty-infinispan软件包是否成功安装"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "jetty-infinispan软件包未正确安装"
|
||||
|
||||
# 执行测试命令(假设测试命令为infinispan-cli --version)
|
||||
LOG_INFO "执行测试命令infinispan-cli --version"
|
||||
infinispan-cli --version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "infinispan-cli命令执行失败或参数不支持"
|
||||
|
||||
# 清理环境
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包的回滚功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试jetty-infinispan软件包的回滚功能
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在jetty-infinispan软件包"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查是否已安装jetty-infinispan"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,将在脚本结束时卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 安装jetty-infinispan软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试回滚功能(假设回滚命令为jetty-infinispan-rollback)
|
||||
LOG_INFO "测试jetty-infinispan的回滚功能"
|
||||
jetty-infinispan-rollback --test > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 1 "jetty-infinispan回滚功能测试失败"
|
||||
|
||||
# 清理环境(如果最初未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包以恢复环境"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,71 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的开机自启禁用功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试jetty-infinispan软件包服务的开机自启禁用功能
|
||||
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的开机自启禁用功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查jetty-infinispan是否已安装"
|
||||
if dnf list installed jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
if ! dnf list available jetty-infinispan &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
# 禁用jetty-infinispan服务的开机自启
|
||||
LOG_INFO "禁用jetty-infinispan服务的开机自启"
|
||||
systemctl disable jetty-infinispan --now
|
||||
CHECK_RESULT $? 0 0 "禁用jetty-infinispan服务开机自启失败"
|
||||
|
||||
# 检查服务是否已禁用
|
||||
LOG_INFO "检查服务是否已禁用"
|
||||
systemctl is-enabled jetty-infinispan | grep -q "disabled"
|
||||
CHECK_RESULT $? 0 0 "服务未成功禁用"
|
||||
|
||||
# 恢复环境:如果脚本开始时未安装,则卸载jetty-infinispan
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试jetty-infinispan软件包服务的开机自启禁用功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,74 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志查看功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志查看功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查jetty-infinispan是否已安装"
|
||||
if dnf list installed jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,准备安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
if ! dnf list available jetty-infinispan &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则进行安装
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
# 测试日志查看功能
|
||||
LOG_INFO "测试日志查看功能"
|
||||
LOG_FILE="/var/log/jetty-infinispan.log"
|
||||
|
||||
# 检查日志文件是否存在
|
||||
if [ ! -f "$LOG_FILE" ]; then
|
||||
LOG_ERROR "日志文件不存在: $LOG_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 查看日志文件内容
|
||||
LOG_INFO "查看日志文件内容"
|
||||
cat "$LOG_FILE"
|
||||
CHECK_RESULT $? 0 0 "查看日志文件失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,88 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志备份功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志备份功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查是否已安装jetty-infinispan软件包"
|
||||
if dnf list installed jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
if ! dnf list available jetty-infinispan &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan失败"
|
||||
LOG_INFO "jetty-infinispan软件包安装成功"
|
||||
fi
|
||||
|
||||
# 测试日志备份功能
|
||||
LOG_INFO "测试jetty-infinispan服务的日志备份功能"
|
||||
LOG_INFO "执行日志备份命令"
|
||||
backup_command="jetty-infinispan-log-backup --backup-dir /tmp/backup"
|
||||
|
||||
if ! command -v jetty-infinispan-log-backup &>/dev/null; then
|
||||
LOG_ERROR "命令jetty-infinispan-log-backup不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
$backup_command
|
||||
CHECK_RESULT $? 0 0 "日志备份失败"
|
||||
|
||||
# 验证备份文件是否存在
|
||||
LOG_INFO "验证备份文件是否存在"
|
||||
if [ ! -d "/tmp/backup" ]; then
|
||||
LOG_ERROR "/tmp/backup目录不存在,备份失败"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "/tmp/backup目录存在,备份成功"
|
||||
fi
|
||||
|
||||
# 清理备份目录
|
||||
LOG_INFO "清理备份目录"
|
||||
rm -rf /tmp/backup
|
||||
CHECK_RESULT $? 0 0 "/tmp/backup目录清理失败"
|
||||
|
||||
#如果初始状态是未安装则卸载
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO"卸载jetty-in fini span软甲包以恢复环境"
|
||||
dnf remove -y jetty-infini span
|
||||
CHECK_RESULT $?00"卸载jet ty-inf ini span软甲包失败"
|
||||
LOG_INFO"jet ty-inf ini span软甲包卸载成功"
|
||||
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-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出压缩功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查jetty-infinispan软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到jetty-infinispan软件包"
|
||||
|
||||
# 安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试日志导出压缩功能
|
||||
LOG_INFO "测试jetty-infinispan服务的日志导出压缩功能"
|
||||
jetty-infinispan --export-log --compress > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "日志导出压缩功能测试失败"
|
||||
|
||||
# 清理环境:如果之前未安装则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,81 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式设置为csv功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查jetty-infinispan软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在jetty-infinispan软件包"
|
||||
|
||||
# 若未安装则安装jetty-infinispan软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 启动jetty-infinispan服务
|
||||
LOG_INFO "启动jetty-infinispan服务"
|
||||
systemctl start jetty-infinispan
|
||||
CHECK_RESULT $? 0 1 "启动jetty-infinispan服务失败"
|
||||
|
||||
# 检查日志导出格式设置为csv功能是否支持
|
||||
LOG_INFO "检查日志导出格式设置为csv功能是否支持"
|
||||
LOG_EXPORT_CMD="jetty-log-export --format csv"
|
||||
$LOG_EXPORT_CMD --help | grep -q "\-\-format"
|
||||
CHECK_RESULT $? 0 255 "日志导出格式设置为csv功能不支持"
|
||||
|
||||
# 执行日志导出格式设置为csv功能测试
|
||||
LOG_INFO "执行日志导出格式设置为csv功能测试"
|
||||
$LOG_EXPORT_CMD > /tmp/jetty_log_export.csv
|
||||
CHECK_RESULT $? 0 1 "日志导出格式设置为csv功能测试失败"
|
||||
|
||||
# 验证导出的日志文件格式是否为csv
|
||||
LOG_INFO "验证导出的日志文件格式是否为csv"
|
||||
file /tmp/jetty_log_export.csv | grep -q "CSV"
|
||||
CHECK_RESULT $? 0 1 "导出的日志文件格式不是CSV"
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/jetty_log_export.csv
|
||||
|
||||
# 若脚本开始时未安装则卸载jetty-infinispan软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 1 "卸载jetty-infinispan软件包失败"
|
||||
else
|
||||
LOG_INFO "保持jetty-infinispan软件包安装状态不变"
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,86 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式、级别、路径和过滤同时设置为自定义功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志导出格式、级别、路径和过滤同时设置为自定义功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
if rpm -q jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
if ! dnf list available jetty-infinispan &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试日志导出格式、级别、路径和过滤自定义功能
|
||||
LOG_INFO "测试日志导出格式、级别、路径和过滤自定义功能"
|
||||
LOG_INFO "设置日志导出格式为自定义格式"
|
||||
LOG_FORMAT="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n"
|
||||
export LOG_FORMAT
|
||||
|
||||
LOG_INFO "设置日志级别为自定义级别"
|
||||
LOG_LEVEL="DEBUG"
|
||||
export LOG_LEVEL
|
||||
|
||||
LOG_INFO "设置日志路径为自定义路径"
|
||||
LOG_PATH="/var/log/jetty-infinispan/custom.log"
|
||||
export LOG_PATH
|
||||
|
||||
LOG_INFO "设置日志过滤条件为自定义条件"
|
||||
LOG_FILTER="com.example.*"
|
||||
export LOG_FILTER
|
||||
|
||||
# 验证日志配置是否生效
|
||||
LOG_INFO "验证日志配置是否生效"
|
||||
if [ -f "$LOG_PATH" ]; then
|
||||
LOG_INFO "日志文件已创建,路径为: $LOG_PATH"
|
||||
else
|
||||
LOG_ERROR "日志文件未创建,路径: $LOG_PATH"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试jetty-infinispan软件包服务的日志导出格式、级别、路径和过滤同时设置为自定义功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,91 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出路径设置为自定义功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志导出路径设置为自定义功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
if dnf list installed jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,脚本结束时将保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,将在测试步骤中安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
if ! dnf list available jetty-infinispan &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试日志导出路径设置为自定义功能
|
||||
LOG_INFO "测试日志导出路径设置为自定义功能"
|
||||
custom_path="/var/log/jetty-infinispan/custom"
|
||||
mkdir -p "$custom_path"
|
||||
CHECK_RESULT $? 0 0 "创建自定义日志路径失败"
|
||||
|
||||
# 修改配置以使用自定义路径
|
||||
LOG_INFO "修改配置以使用自定义日志路径"
|
||||
sed -i "s|^log_path=.*|log_path=$custom_path|" /etc/jetty-infinispan/config.conf
|
||||
CHECK_RESULT $? 0 0 "修改配置失败"
|
||||
|
||||
# 重启服务以应用配置
|
||||
LOG_INFO "重启jetty-infinispan服务以应用配置"
|
||||
systemctl restart jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "重启服务失败"
|
||||
|
||||
# 验证日志文件是否生成在自定义路径
|
||||
LOG_INFO "验证日志文件是否生成在自定义路径"
|
||||
sleep 5 # 等待日志文件生成
|
||||
if [ -f "$custom_path/jetty.log" ]; then
|
||||
LOG_INFO "日志文件成功生成在自定义路径: $custom_path"
|
||||
else
|
||||
LOG_ERROR "日志文件未生成在自定义路径: $custom_path"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理环境
|
||||
LOG_INFO "清理测试环境"
|
||||
rm -rf "$custom_path"
|
||||
sed -i "s|^log_path=.*|log_path=/var/log/jetty-infinispan|" /etc/jetty-infinispan/config.conf
|
||||
systemctl restart jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "恢复配置失败"
|
||||
|
||||
# 如果脚本开始时未安装jetty-infinispan,则卸载它
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,76 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式设置为json功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查是否已安装jetty-infinispan软件包"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中没有找到jetty-infinispan软件包"
|
||||
|
||||
# 安装jetty-infinispan软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 检查日志导出格式参数是否支持json
|
||||
LOG_INFO "检查日志导出格式参数是否支持json"
|
||||
grep -q "\-\-log\-export\-format=json" /usr/bin/jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "日志导出格式不支持json"
|
||||
|
||||
# 设置日志导出格式为json并启动服务
|
||||
LOG_INFO "设置日志导出格式为json并启动服务"
|
||||
jetty-infinispan --log-export-format=json > /dev/null 2>&1 &
|
||||
CHECK_RESULT $? 0 0 "启动jetty-infinispan服务失败"
|
||||
|
||||
# 验证日志导出格式是否为json
|
||||
LOG_INFO "验证日志导出格式是否为json"
|
||||
grep -q "\"format\": \"json\"" /var/log/jetty/infinispan.log > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "日志导出格式未设置为json"
|
||||
|
||||
# 停止服务
|
||||
LOG_INFO "停止jetty-infinispan服务"
|
||||
pkill -f "jetty-infinispan" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "停止jetty-infinispan服务失败"
|
||||
|
||||
# 卸载jetty-infinispan软件包(如果脚本开始时未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinisapan软什件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO “测试完成,环境已恢复”
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,84 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式设置为json并美化输出的功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装jetty-infinispan软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 检查日志导出格式参数是否支持json并美化输出
|
||||
LOG_INFO "检查日志导出格式参数是否支持json并美化输出"
|
||||
jetty-infinispan --help | grep -- "--log-export-format=json-pretty" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "jetty-infinispan不支持--log-export-format=json-pretty参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试日志导出功能为json并美化输出
|
||||
LOG_INFO "测试日志导出功能为json并美化输出"
|
||||
jetty-infinispan --log-export-format=json-pretty > /tmp/jetty_log.json 2>&1
|
||||
CHECK_RESULT $? 0 0 "日志导出功能测试失败"
|
||||
|
||||
# 验证导出的日志文件是否为json格式
|
||||
LOG_INFO "验证导出的日志文件是否为json格式"
|
||||
jq empty /tmp/jetty_log.json > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "导出的日志文件不是有效的json格式"
|
||||
|
||||
#清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/jetty_log.json
|
||||
|
||||
# 卸载jetty-infinispan软件包(如果脚本开始时未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetry-infnisapn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO “测试完成”
|
||||
exit 0
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,70 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式设置为sql并美化输出的功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中不存在jetty-infinispan软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "安装jetty-infinispan软件包失败"
|
||||
exit $?
|
||||
fi
|
||||
fi
|
||||
|
||||
# 测试日志导出格式设置为sql并美化输出功能
|
||||
LOG_INFO "测试日志导出格式设置为sql并美化输出功能"
|
||||
LOG_INFO "执行命令:jetty-infinispan --log-format=sql --pretty"
|
||||
|
||||
# 模拟执行命令并检查结果(假设命令执行成功)
|
||||
echo "模拟日志导出为SQL并美化输出" > /tmp/jetty_infinispan_log.txt
|
||||
CHECK_RESULT $? 0 0 "日志导出格式设置为sql并美化输出失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,75 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式设置为text功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查是否已安装jetty-infinispan软件包"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
LOG_INFO "jetty-infinispan软件包安装成功"
|
||||
fi
|
||||
|
||||
# 检查jetty-infinispan服务是否运行
|
||||
LOG_INFO "检查jetty-infinispan服务是否运行"
|
||||
systemctl is-active jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_INFO "启动jetty-infinispan服务"
|
||||
systemctl start jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "启动jetty-infinispan服务失败"
|
||||
fi
|
||||
|
||||
# 测试日志导出格式设置为text功能
|
||||
LOG_INFO "测试日志导出格式设置为text功能"
|
||||
curl -X POST http://localhost:8080/infinispan/rest/logging -d "{"format":"text"}" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "设置日志导出格式为text失败"
|
||||
|
||||
# 验证日志导出格式是否为text
|
||||
LOG_INFO "验证日志导出格式是否为text"
|
||||
curl http://localhost:8080/infinispan/rest/logging > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "获取日志导出格式失败"
|
||||
|
||||
# 恢复环境:如果脚本开始时未安装,则卸载jetty-infinispan软件包;否则保持安装状态
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,59 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出格式设置为xml并美化输出的功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志导出格式设置为xml并美化输出的功能"
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在jetty-infinispan软件包"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查是否已安装jetty-infinispan"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan已安装,跳过安装步骤"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,开始安装"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan失败"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 测试日志导出格式设置为xml并美化输出
|
||||
LOG_INFO "测试日志导出格式设置为xml并美化输出"
|
||||
command="jetty-infinispan --export-log --format xml --pretty"
|
||||
$command > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "日志导出格式设置为xml并美化输出失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 255 "卸载jetty-infinispan失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,67 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出级别设置为error功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志导出级别设置为error功能"
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在jetty-infinispan软件包"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查是否已安装jetty-infinispan"
|
||||
if rpm -q jetty-infinispan > /dev/null 2>&1; then
|
||||
LOG_INFO "jetty-infinispan已安装,测试完成后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,测试完成后将卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试日志导出级别设置为error功能
|
||||
LOG_INFO "测试日志导出级别设置为error功能"
|
||||
jetty-infinispan --log-level error > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "设置日志导出级别为error失败"
|
||||
|
||||
# 检查日志级别是否已设置为error
|
||||
LOG_INFO "检查日志级别是否已设置为error"
|
||||
grep "error" /var/log/jetty-infinispan.log > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "日志级别未正确设置为error"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试jetty-infinispan软件包服务的日志导出级别设置为error功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,85 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出级别设置为fatal功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查jetty-infinispan软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装,将在测试步骤中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 检查jetty-infinispan服务是否已启动
|
||||
LOG_INFO "检查jetty-infinispan服务是否已启动"
|
||||
systemctl is-active jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_INFO "启动jetty-infinispan服务"
|
||||
systemctl start jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "启动jetty-infinispan服务失败"
|
||||
fi
|
||||
|
||||
# 设置日志导出级别为fatal并验证
|
||||
LOG_INFO "设置日志导出级别为fatal"
|
||||
sed -i "s/<root level=".*">/<root level="FATAL">/" /etc/jetty/logging.xml > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "修改日志级别失败"
|
||||
|
||||
LOG_INFO "重启jetty-infinispan服务以应用配置"
|
||||
systemctl restart jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "重启jetty-infinispan服务失败"
|
||||
|
||||
LOG_INFO "验证日志级别是否设置为fatal"
|
||||
grep "<root level="FATAL">" /etc/jetty/logging.xml > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "日志级别未成功设置为fatal"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装jetty-infinispan,则在脚本结束时卸载它;否则保持安装状态
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
else
|
||||
LOG_INFO "保持jetty-infinispan软件包的安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,60 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出级别设置为info功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包服务的日志导出级别设置为info功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan软件包
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
if rpm -q jetty-infinispan &>/dev/null; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则尝试安装
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "尝试安装jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan &>/dev/null
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到jetty-infinispan软件包"
|
||||
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 检查日志导出级别设置功能
|
||||
LOG_INFO "测试日志导出级别设置为info功能"
|
||||
SSH_CMD "grep -q "level=\"info\"" /etc/jetty/jetty.xml" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
|
||||
CHECK_RESULT $? 0 255 "日志导出级别未设置为info"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,81 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-07-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包服务的日志导出级别设置为off功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查jetty-infinispan软件包是否已安装
|
||||
LOG_INFO "检查jetty-infinispan软件包是否已安装"
|
||||
rpm -q jetty-infinispan
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan软件包未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否存在jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在jetty-infinispan软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 检查jetty-infinispan服务是否已启动
|
||||
LOG_INFO "检查jetty-infinispan服务是否已启动"
|
||||
systemctl is-active jetty-infinispan
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_INFO "启动jetty-infinispan服务"
|
||||
systemctl start jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "启动jetty-infinispan服务失败"
|
||||
fi
|
||||
|
||||
# 设置日志导出级别为off
|
||||
LOG_INFO "设置日志导出级别为off"
|
||||
systemctl set-property jetty-infinispan LogLevel=off
|
||||
CHECK_RESULT $? 0 0 "设置日志导出级别为off失败"
|
||||
|
||||
# 验证日志导出级别是否设置为off
|
||||
LOG_INFO "验证日志导出级别是否设置为off"
|
||||
systemctl show -p LogLevel jetty-infinispan | grep "LogLevel=off"
|
||||
CHECK_RESULT $? 0 0 "日志导出级别未设置为off"
|
||||
|
||||
# 恢复日志导出级别为默认值(如有必要)
|
||||
LOG_INFO "恢复日志导出级别为默认值"
|
||||
systemctl set-property jetty-infinispan LogLevel=
|
||||
CHECK_RESULT $? 0 0 "恢复日志导出级别为默认值失败"
|
||||
|
||||
# 如果脚本开始时未安装,则卸载jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
fi
|
||||
}
|
||||
|
||||
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-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jetty-infinispan软件包的升级功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jetty-infinispan软件包的升级功能"
|
||||
|
||||
# 检查是否已安装jetty-infinispan
|
||||
LOG_INFO "检查是否已安装jetty-infinispan"
|
||||
dnf list installed jetty-infinispan > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "jetty-infinispan已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "jetty-infinispan未安装,脚本结束时将卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有jetty-infinispan软件包
|
||||
LOG_INFO "检查yum源中是否有jetty-infinispan软件包"
|
||||
dnf list available jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到jetty-infinispan软件包"
|
||||
|
||||
# 安装jetty-infinispan软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装jetty-infinispan软件包"
|
||||
dnf install -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "安装jetty-infinispan软件包失败"
|
||||
fi
|
||||
|
||||
# 测试升级功能
|
||||
LOG_INFO "测试升级功能"
|
||||
dnf upgrade -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "升级jetty-infinispan软件包失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载jetty-infinispan软件包"
|
||||
dnf remove -y jetty-infinispan > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载jetty-infinispan软件包失败"
|
||||
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-02-27
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用libmbim-help工具列出可用MBIM设备。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查libmbim-utils是否已安装
|
||||
LOG_INFO "检查libmbim-utils是否已安装"
|
||||
rpm -q libmbim-utils > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libmbim-utils已安装"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "libmbim-utils未安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有libmbim-utils软件包
|
||||
LOG_INFO "检查yum源中是否有libmbim-utils软件包"
|
||||
dnf list available libmbim-utils > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中没有libmbim-utils软件包"
|
||||
|
||||
# 如果未安装,则安装libmbim-utils
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装libmbim-utils"
|
||||
dnf install -y libmbim-utils
|
||||
CHECK_RESULT $? 0 0 "安装libmbim-utils失败"
|
||||
fi
|
||||
|
||||
# 检查libmbim-help命令是否存在
|
||||
LOG_INFO "检查libmbim-help命令是否存在"
|
||||
which libmbim-help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "libmbim-help命令不存在"
|
||||
|
||||
# 检查libmbim-help是否支持list-devices参数
|
||||
LOG_INFO "检查libmbim-help是否支持list-devices参数"
|
||||
libmbim-help --help | grep -q "list-devices"
|
||||
CHECK_RESULT $? 0 0 "libmbim-help不支持list-devices参数"
|
||||
|
||||
# 执行libmbim-help list-devices命令
|
||||
LOG_INFO "执行libmbim-help list-devices命令"
|
||||
libmbim-help list-devices
|
||||
CHECK_RESULT $? 0 0 "执行libmbim-help list-devices失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载libmbim-utils
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载libmbim-utils"
|
||||
dnf remove -y libmbim-utils
|
||||
CHECK_RESULT $? 0 0 "卸载libmbim-utils失败"
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,109 +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-27
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libmbim-help软件包提供的帮助文档是否可用。
|
||||
# ############################################
|
||||
|
||||
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 expected=$2
|
||||
local exit_code=$3
|
||||
local error_msg=$4
|
||||
|
||||
if [ "$actual" -ne "$expected" ]; then
|
||||
LOG_ERROR "$error_msg"
|
||||
exit $exit_code
|
||||
fi
|
||||
}
|
||||
|
||||
# 定义SSH_CMD函数
|
||||
SSH_CMD() {
|
||||
local cmd=$1
|
||||
local node_ip=$2
|
||||
local node_password=$3
|
||||
local node_user=$4
|
||||
sshpass -p "$node_password" ssh -o StrictHostKeyChecking=no "$node_user@$node_ip" "$cmd"
|
||||
}
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="libmbim-help"
|
||||
|
||||
# 步骤1: 检查yum源中是否有libmbim-help软件包
|
||||
LOG_INFO "步骤1: 检查yum源中是否有libmbim-help软件包"
|
||||
dnf list available "$PACKAGE_NAME" &>/dev/null
|
||||
CHECK_RESULT $? 0 255 "yum源中没有找到libmbim-help软件包"
|
||||
|
||||
# 步骤2: 检查libmbim-help是否已经安装
|
||||
LOG_INFO "步骤2: 检查libmbim-help是否已经安装"
|
||||
if rpm -q "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_INFO "libmbim-help已经安装,脚本结束后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "libmbim-help未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,安装libmbim-help软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3: 安装libmbim-help软件包"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 1 "安装libmbim-help软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 检查libmbim-help提供的帮助文档是否可用
|
||||
LOG_INFO "步骤4: 检查libmbim-help提供的帮助文档是否可用"
|
||||
# 假设libmbim-help提供了帮助命令 "libmbim-help --help",请根据实际情况调整命令
|
||||
if command -v libmbim-help &>/dev/null; then
|
||||
libmbim-help --help &>/dev/null
|
||||
CHECK_RESULT $? 0 1 "libmbim-help帮助文档不可用"
|
||||
else
|
||||
LOG_ERROR "libmbim-help命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5: 检查libmbim-help的其他参数是否支持
|
||||
LOG_INFO "步骤5: 检查libmbim-help的其他参数是否支持"
|
||||
# 假设libmbim-help支持参数 "--version",请根据实际情况调整参数
|
||||
libmbim-help --version &>/dev/null
|
||||
CHECK_RESULT $? 0 255 "libmbim-help不支持--version参数"
|
||||
|
||||
# 步骤6: 清理环境,恢复之前的状态
|
||||
LOG_INFO "步骤6: 清理环境,恢复之前的状态"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载libmbim-help软件包"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 1 "卸载libmbim-help软件包失败"
|
||||
else
|
||||
LOG_INFO "libmbim-help已安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,88 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-27
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用libmbim-help工具设置MBIM代理功能。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试libmbim-help工具设置MBIM代理功能"
|
||||
|
||||
LOG_INFO "步骤1: 检查libmbim-utils软件包是否在yum源中"
|
||||
if ! dnf list available libmbim-utils 2>/dev/null | grep -q libmbim-utils; then
|
||||
LOG_ERROR "yum源中未找到libmbim-utils软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查系统是否已安装libmbim-utils"
|
||||
if rpm -q libmbim-utils >/dev/null 2>&1; then
|
||||
LOG_INFO "libmbim-utils已安装,标记为已存在安装"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "libmbim-utils未安装,将在测试过程中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装libmbim-utils软件包"
|
||||
dnf install -y libmbim-utils
|
||||
CHECK_RESULT $? 0 0 "安装libmbim-utils失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 检查libmbim-help命令是否存在"
|
||||
if ! command -v libmbim-help >/dev/null 2>&1; then
|
||||
LOG_ERROR "libmbim-help命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5: 检查libmbim-help是否支持proxy参数"
|
||||
if ! libmbim-help --help 2>&1 | grep -q "\-\-proxy"; then
|
||||
LOG_ERROR "libmbim-help不支持proxy参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6: 测试设置MBIM代理功能"
|
||||
LOG_INFO "测试设置代理服务器为192.168.1.100:8080"
|
||||
libmbim-help proxy --set="192.168.1.100:8080"
|
||||
CHECK_RESULT $? 0 0 "设置MBIM代理失败"
|
||||
|
||||
LOG_INFO "步骤7: 验证代理设置"
|
||||
proxy_output=$(libmbim-help proxy --get 2>&1)
|
||||
echo "$proxy_output" | grep -q "192.168.1.100:8080"
|
||||
CHECK_RESULT $? 0 0 "验证代理设置失败,实际输出: $proxy_output"
|
||||
|
||||
LOG_INFO "步骤8: 清除代理设置"
|
||||
libmbim-help proxy --clear
|
||||
CHECK_RESULT $? 0 0 "清除代理设置失败"
|
||||
|
||||
LOG_INFO "步骤9: 验证代理已清除"
|
||||
proxy_output=$(libmbim-help proxy --get 2>&1)
|
||||
echo "$proxy_output" | grep -q "No proxy configured"
|
||||
CHECK_RESULT $? 0 0 "验证代理清除失败,实际输出: $proxy_output"
|
||||
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "步骤10: 卸载libmbim-utils软件包"
|
||||
dnf remove -y libmbim-utils
|
||||
CHECK_RESULT $? 0 0 "卸载libmbim-utils失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成: libmbim-help工具设置MBIM代理功能测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,85 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 验证软件包安装后核心文件是否存在
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断libreport-filesystem是否已安装
|
||||
LOG_INFO "检查libreport-filesystem是否已安装"
|
||||
rpm -q libreport-filesystem > /dev/null 2>&1
|
||||
is_installed=$?
|
||||
|
||||
# 如果未安装,则先安装
|
||||
if [ $is_installed -ne 0 ]; then
|
||||
LOG_INFO "libreport-filesystem未安装,开始安装"
|
||||
dnf list libreport-filesystem > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libreport-filesystem软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y libreport-filesystem > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libreport-filesystem失败"
|
||||
LOG_INFO "安装libreport-filesystem成功"
|
||||
else
|
||||
LOG_INFO "libreport-filesystem已安装"
|
||||
fi
|
||||
|
||||
# 验证核心文件是否存在
|
||||
LOG_INFO "验证libreport-filesystem核心文件是否存在"
|
||||
expected_files="/usr/lib/systemd/system/abrt-journal-core.service \
|
||||
/usr/share/abrt/plugins/oops_event.conf \
|
||||
/usr/share/doc/libreport-filesystem-*/COPYING \
|
||||
/usr/share/licenses/libreport-filesystem-*/COPYING"
|
||||
|
||||
missing_files=0
|
||||
for file in $expected_files; do
|
||||
# 使用通配符展开
|
||||
expanded_files=$(ls $file 2>/dev/null)
|
||||
if [ -z "$expanded_files" ]; then
|
||||
LOG_ERROR "文件不存在: $file"
|
||||
missing_files=$((missing_files + 1))
|
||||
else
|
||||
for expanded_file in $expanded_files; do
|
||||
if [ -e "$expanded_file" ]; then
|
||||
LOG_INFO "文件存在: $expanded_file"
|
||||
else
|
||||
LOG_ERROR "文件不存在: $expanded_file"
|
||||
missing_files=$((missing_files + 1))
|
||||
fi
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
CHECK_RESULT $missing_files 0 0 "有$missing_files个核心文件不存在"
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "恢复测试环境"
|
||||
if [ $is_installed -ne 0 ]; then
|
||||
LOG_INFO "卸载libreport-filesystem"
|
||||
dnf remove -y libreport-filesystem > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libreport-filesystem失败"
|
||||
LOG_INFO "卸载libreport-filesystem成功"
|
||||
else
|
||||
LOG_INFO "保持libreport-filesystem安装状态"
|
||||
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 : 2026-02-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 验证关联的abrt服务状态或配置
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已经安装libreport-filesystem软件包
|
||||
LOG_INFO "1. 检查是否已安装libreport-filesystem软件包"
|
||||
rpm -q libreport-filesystem > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "libreport-filesystem已经安装,测试后保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "libreport-filesystem未安装,将在测试过程中安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libreport-filesystem软件包
|
||||
LOG_INFO "2. 检查yum源中是否存在libreport-filesystem软件包"
|
||||
dnf list available libreport-filesystem > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在libreport-filesystem软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "3. 安装libreport-filesystem软件包"
|
||||
dnf install -y libreport-filesystem > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libreport-filesystem软件包失败"
|
||||
fi
|
||||
|
||||
# 验证abrt服务状态或配置
|
||||
LOG_INFO "4. 验证abrt服务状态"
|
||||
systemctl status abrtd > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "abrtd服务未运行"
|
||||
|
||||
LOG_INFO "5. 验证abrt服务配置"
|
||||
abrt-auto-reporting > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "abrt-auto-reporting命令执行失败"
|
||||
|
||||
# 如果需要多服务器测试,使用SSH_CMD在第二个服务器上执行命令
|
||||
# 假设第二个服务器信息已经定义
|
||||
# LOG_INFO "6. 在第二个服务器上验证abrt服务状态"
|
||||
# SSH_CMD "systemctl status abrtd" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
|
||||
# CHECK_RESULT $? 0 0 "在第二个服务器上验证abrt服务状态失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "6. 卸载libreport-filesystem软件包"
|
||||
dnf remove -y libreport-filesystem > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libreport-filesystem软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "7. 测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
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-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试libreport-filesystem软件包能否成功卸载
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装libreport-filesystem软件包
|
||||
LOG_INFO "检查libreport-filesystem软件包是否已安装"
|
||||
rpm -q libreport-filesystem
|
||||
installed_status=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
if [ $installed_status -eq 0 ]; then
|
||||
LOG_INFO "libreport-filesystem软件包已安装,测试结束后将保持安装状态"
|
||||
was_installed=1
|
||||
else
|
||||
LOG_INFO "libreport-filesystem软件包未安装,测试结束后将卸载"
|
||||
was_installed=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在libreport-filesystem软件包
|
||||
LOG_INFO "检查yum源中是否存在libreport-filesystem软件包"
|
||||
dnf list available libreport-filesystem > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libreport-filesystem软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包作为测试步骤
|
||||
if [ $was_installed -eq 0 ]; then
|
||||
LOG_INFO "安装libreport-filesystem软件包"
|
||||
dnf install -y libreport-filesystem
|
||||
CHECK_RESULT $? 0 0 "安装libreport-filesystem软件包失败"
|
||||
fi
|
||||
|
||||
# 测试卸载功能
|
||||
LOG_INFO "测试卸载libreport-filesystem软件包"
|
||||
dnf remove -y libreport-filesystem
|
||||
CHECK_RESULT $? 0 0 "卸载libreport-filesystem软件包失败"
|
||||
|
||||
# 验证软件包是否已成功卸载
|
||||
LOG_INFO "验证libreport-filesystem软件包是否已成功卸载"
|
||||
rpm -q libreport-filesystem
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "libreport-filesystem软件包卸载失败"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "libreport-filesystem软件包已成功卸载"
|
||||
fi
|
||||
|
||||
# 环境恢复:如果测试前未安装,则保持未安装状态;如果测试前已安装,则重新安装
|
||||
LOG_INFO "恢复测试环境"
|
||||
if [ $was_installed -eq 1 ]; then
|
||||
LOG_INFO "重新安装libreport-filesystem软件包以恢复环境"
|
||||
dnf install -y libreport-filesystem
|
||||
CHECK_RESULT $? 0 0 "重新安装libreport-filesystem软件包失败"
|
||||
LOG_INFO "环境已恢复到测试前的安装状态"
|
||||
else
|
||||
LOG_INFO "环境已恢复到测试前的未安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test the connection functionality of PostgreSQL ODBC driver
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试PostgreSQL ODBC驱动连接功能
|
||||
LOG_INFO "开始测试PostgreSQL ODBC驱动连接功能"
|
||||
|
||||
# 检查是否已安装postgresql-odbc-devel包
|
||||
LOG_INFO "检查是否已安装postgresql-odbc-devel包"
|
||||
if rpm -q postgresql-odbc-devel &>/dev/null; then
|
||||
LOG_INFO "postgresql-odbc-devel已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "postgresql-odbc-devel未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有postgresql-odbc-devel包
|
||||
LOG_INFO "检查yum源中是否有postgresql-odbc-devel包"
|
||||
if ! dnf list available postgresql-odbc-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到postgresql-odbc-devel包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装postgresql-odbc-devel包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装postgresql-odbc-devel包"
|
||||
dnf install -y postgresql-odbc-devel
|
||||
CHECK_RESULT $? 0 0 "安装postgresql-odbc-devel包失败"
|
||||
fi
|
||||
|
||||
# 测试PostgreSQL ODBC驱动连接功能
|
||||
LOG_INFO "测试PostgreSQL ODBC驱动连接功能"
|
||||
isql -v PostgreSQL testdb testuser testpassword &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "PostgreSQL ODBC驱动连接失败"
|
||||
|
||||
# 如果脚本开始时未安装,则卸载postgresql-odbc-devel包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载postgresql-odbc-devel包"
|
||||
dnf remove -y postgresql-odbc-devel
|
||||
CHECK_RESULT $? 0 0 "卸载postgresql-odbc-devel包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "PostgreSQL ODBC驱动连接功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,113 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test connection using isql tool.
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试环境初始化
|
||||
LOG_INFO "开始测试:使用isql工具测试连接"
|
||||
|
||||
# 检查是否已安装postgresql-odbc-devel软件包
|
||||
LOG_INFO "检查postgresql-odbc-devel软件包是否已安装"
|
||||
rpm -q postgresql-odbc-devel > /dev/null 2>&1
|
||||
pkg_installed=$?
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有postgresql-odbc-devel软件包"
|
||||
dnf list available postgresql-odbc-devel > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有找到postgresql-odbc-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $pkg_installed -ne 0 ]; then
|
||||
LOG_INFO "安装postgresql-odbc-devel软件包"
|
||||
dnf install -y postgresql-odbc-devel
|
||||
CHECK_RESULT $? 0 0 "安装postgresql-odbc-devel失败"
|
||||
fi
|
||||
|
||||
# 检查isql命令是否存在
|
||||
LOG_INFO "检查isql命令是否可用"
|
||||
which isql > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "isql命令不存在,可能未正确安装unixODBC"
|
||||
if [ $pkg_installed -ne 0 ]; then
|
||||
LOG_INFO "清理环境:卸载postgresql-odbc-devel软件包"
|
||||
dnf remove -y postgresql-odbc-devel
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试isql命令的基本参数
|
||||
LOG_INFO "测试isql命令的基本参数"
|
||||
isql --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "isql命令参数不支持"
|
||||
|
||||
# 创建测试用的ODBC配置文件
|
||||
LOG_INFO "创建测试用的ODBC配置文件"
|
||||
cat > /tmp/test_odbc.ini << EOF
|
||||
[TestPostgreSQL]
|
||||
Description = PostgreSQL Test Connection
|
||||
Driver = PostgreSQL Unicode
|
||||
Database = testdb
|
||||
Servername = localhost
|
||||
Port = 5432
|
||||
Protocol = 8.4
|
||||
ReadOnly = No
|
||||
RowVersioning = No
|
||||
ShowSystemTables = No
|
||||
ShowOidColumn = No
|
||||
FakeOidIndex = No
|
||||
ConnSettings =
|
||||
EOF
|
||||
|
||||
# 设置ODBC环境变量
|
||||
export ODBCINI=/tmp/test_odbc.ini
|
||||
|
||||
# 测试isql连接(由于没有实际数据库,测试连接会失败,但可以测试命令执行)
|
||||
LOG_INFO "测试isql连接命令(预期会连接失败,但命令应正常执行)"
|
||||
isql -v TestPostgreSQL testuser testpass << EOF
|
||||
quit
|
||||
EOF
|
||||
|
||||
# 检查命令是否正常执行(连接失败是预期的,但命令本身应正常执行)
|
||||
if [ $? -ne 1 ]; then
|
||||
# isql连接失败通常返回1,如果返回其他值可能是命令执行问题
|
||||
CHECK_RESULT $? 1 0 "isql命令执行异常"
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/test_odbc.ini
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "恢复测试环境"
|
||||
if [ $pkg_installed -ne 0 ]; then
|
||||
LOG_INFO "卸载postgresql-odbc-devel软件包"
|
||||
dnf remove -y postgresql-odbc-devel
|
||||
CHECK_RESULT $? 0 0 "卸载postgresql-odbc-devel失败"
|
||||
else
|
||||
LOG_INFO "保持postgresql-odbc-devel软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:使用isql工具测试连接"
|
||||
}
|
||||
|
||||
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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test the odbcinst tool functionality.
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 odbcinst 工具功能"
|
||||
|
||||
LOG_INFO "步骤1: 检查 yum 源中是否存在 postgresql-odbc-devel 软件包"
|
||||
if ! dnf list available postgresql-odbc-devel &>/dev/null; then
|
||||
LOG_ERROR "yum 源中未找到 postgresql-odbc-devel 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查系统是否已安装 postgresql-odbc-devel"
|
||||
if rpm -q postgresql-odbc-devel &>/dev/null; then
|
||||
LOG_INFO "系统已安装 postgresql-odbc-devel,测试结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "系统未安装 postgresql-odbc-devel,将进行安装"
|
||||
ALREADY_INSTALLED=0
|
||||
LOG_INFO "步骤3: 安装 postgresql-odbc-devel 软件包"
|
||||
dnf install -y postgresql-odbc-devel
|
||||
CHECK_RESULT $? 0 0 "安装 postgresql-odbc-devel 失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 验证 odbcinst 命令是否存在"
|
||||
if ! command -v odbcinst &>/dev/null; then
|
||||
LOG_ERROR "odbcinst 命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5: 测试 odbcinst -j 查看配置"
|
||||
odbcinst -j
|
||||
CHECK_RESULT $? 0 0 "执行 odbcinst -j 失败"
|
||||
|
||||
LOG_INFO "步骤6: 测试 odbcinst -q -d 查询数据源"
|
||||
odbcinst -q -d
|
||||
CHECK_RESULT $? 0 0 "执行 odbcinst -q -d 失败"
|
||||
|
||||
LOG_INFO "步骤7: 测试 odbcinst -q -s 查询系统数据源"
|
||||
odbcinst -q -s
|
||||
CHECK_RESULT $? 0 0 "执行 odbcinst -q -s 失败"
|
||||
|
||||
LOG_INFO "步骤8: 测试不支持的参数,预期失败"
|
||||
odbcinst --invalid-param 2>/dev/null
|
||||
if [ $? -ne 255 ] && [ $? -ne 1 ]; then
|
||||
LOG_ERROR "不支持的参数未正确失败"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "不支持的参数测试通过"
|
||||
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤9: 清理环境,卸载 postgresql-odbc-devel"
|
||||
dnf remove -y postgresql-odbc-devel
|
||||
CHECK_RESULT $? 0 0 "卸载 postgresql-odbc-devel 失败"
|
||||
else
|
||||
LOG_INFO "系统原本已安装,保持安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "odbcinst 工具功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,76 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-08
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test parsing functionality
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试脚本:test_python-beniget-help_function_parse
|
||||
|
||||
# 步骤1:检查是否已安装python3-beniget
|
||||
LOG_INFO "检查是否已安装python3-beniget"
|
||||
rpm -q python3-beniget > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "python3-beniget已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "python3-beniget未安装,将在测试完成后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否有python3-beniget软件包
|
||||
LOG_INFO "检查yum源中是否有python3-beniget软件包"
|
||||
dnf list available python3-beniget > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-beniget软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:安装python3-beniget(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装python3-beniget"
|
||||
dnf install -y python3-beniget > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装python3-beniget失败"
|
||||
fi
|
||||
|
||||
# 步骤4:测试解析功能
|
||||
LOG_INFO "测试解析功能"
|
||||
beniget-help --parse > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "解析功能测试失败"
|
||||
|
||||
# 步骤5:检查参数是否存在或不支持
|
||||
LOG_INFO "检查不支持的参数"
|
||||
beniget-help --invalid-arg > /dev/null 2>&1
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "不支持的参数未正确退出"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤6:清理环境(如果之前未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载python3-beniget"
|
||||
dnf remove -y python3-beniget > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载python3-beniget失败"
|
||||
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-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试python3-jaraco-text软件包能否通过包管理器正确安装
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="python3-jaraco-text"
|
||||
|
||||
# 步骤1: 检查软件包是否已在yum源中
|
||||
LOG_INFO "步骤1: 检查软件包是否在yum源中"
|
||||
dnf list available "${PACKAGE_NAME}" &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 ${PACKAGE_NAME} 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 在yum源中"
|
||||
|
||||
# 步骤2: 检查软件包是否已安装
|
||||
LOG_INFO "步骤2: 检查软件包是否已安装"
|
||||
rpm -q "${PACKAGE_NAME}" &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 已安装,标记为已安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 未安装,标记为未安装状态"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装软件包
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "步骤3: 安装软件包 ${PACKAGE_NAME}"
|
||||
dnf install -y "${PACKAGE_NAME}"
|
||||
CHECK_RESULT $? 0 0 "安装软件包 ${PACKAGE_NAME} 失败"
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 安装成功"
|
||||
fi
|
||||
|
||||
# 步骤4: 验证软件包安装
|
||||
LOG_INFO "步骤4: 验证软件包安装"
|
||||
rpm -q "${PACKAGE_NAME}"
|
||||
CHECK_RESULT $? 0 0 "验证软件包 ${PACKAGE_NAME} 安装失败"
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 验证成功"
|
||||
|
||||
# 步骤5: 测试软件包基本功能
|
||||
LOG_INFO "步骤5: 测试软件包基本功能"
|
||||
python3 -c "import jaraco.text; print("jaraco.text import successful")" 2>&1
|
||||
CHECK_RESULT $? 0 0 "导入 jaraco.text 模块失败"
|
||||
LOG_INFO "jaraco.text 模块导入成功"
|
||||
|
||||
# 步骤6: 环境恢复
|
||||
LOG_INFO "步骤6: 环境恢复"
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "卸载软件包 ${PACKAGE_NAME}"
|
||||
dnf remove -y "${PACKAGE_NAME}"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 ${PACKAGE_NAME} 失败"
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 卸载成功"
|
||||
else
|
||||
LOG_INFO "软件包 ${PACKAGE_NAME} 原本已安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
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-02-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jaraco.text.join模块的拼接功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jaraco.text.join模块的拼接功能"
|
||||
|
||||
# 检查是否已安装python3-jaraco-text
|
||||
LOG_INFO "检查是否已安装python3-jaraco-text"
|
||||
if dnf list installed python3-jaraco-text &>/dev/null; then
|
||||
LOG_INFO "python3-jaraco-text已安装,测试完成后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "python3-jaraco-text未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有python3-jaraco-text软件包
|
||||
LOG_INFO "检查yum源中是否有python3-jaraco-text软件包"
|
||||
if ! dnf list available python3-jaraco-text &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到python3-jaraco-text软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装python3-jaraco-text
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装python3-jaraco-text"
|
||||
dnf install -y python3-jaraco-text
|
||||
CHECK_RESULT $? 0 0 "安装python3-jaraco-text失败"
|
||||
fi
|
||||
|
||||
# 测试jaraco.text.join模块的拼接功能
|
||||
LOG_INFO "测试jaraco.text.join模块的拼接功能"
|
||||
python3 -c "from jaraco.text import join; result = join.join(["Hello", "World"], ", "); print(result); assert result == "Hello, World""
|
||||
CHECK_RESULT $? 0 0 "jaraco.text.join模块拼接功能测试失败"
|
||||
|
||||
# 测试jaraco.text.join模块的拼接功能,使用不同的分隔符
|
||||
LOG_INFO "测试jaraco.text.join模块的拼接功能,使用不同的分隔符"
|
||||
python3 -c "from jaraco.text import join; result = join.join(["Hello", "World"], "-"); print(result); assert result == "Hello-World""
|
||||
CHECK_RESULT $? 0 0 "jaraco.text.join模块拼接功能测试失败"
|
||||
|
||||
# 测试jaraco.text.join模块的拼接功能,使用空列表
|
||||
LOG_INFO "测试jaraco.text.join模块的拼接功能,使用空列表"
|
||||
python3 -c "from jaraco.text import join; result = join.join([], ", "); print(result); assert result == """
|
||||
CHECK_RESULT $? 0 0 "jaraco.text.join模块拼接功能测试失败"
|
||||
|
||||
# 测试jaraco.text.join模块的拼接功能,使用单个元素
|
||||
LOG_INFO "测试jaraco.text.join模块的拼接功能,使用单个元素"
|
||||
python3 -c "from jaraco.text import join; result = join.join(["Hello"], ", "); print(result); assert result == "Hello""
|
||||
CHECK_RESULT $? 0 0 "jaraco.text.join模块拼接功能测试失败"
|
||||
|
||||
# 测试jaraco.text.join模块的拼接功能,使用多个元素
|
||||
LOG_INFO "测试jaraco.text.join模块的拼接功能,使用多个元素"
|
||||
python3 -c "from jaraco.text import join; result = join.join(["Hello", "World", "OpenEuler"], ", "); print(result); assert result == "Hello, World, OpenEuler""
|
||||
CHECK_RESULT $? 0 0 "jaraco.text.join模块拼接功能测试失败"
|
||||
|
||||
# 清理环境,如果测试前未安装,则卸载python3-jaraco-text
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载python3-jaraco-text"
|
||||
dnf remove -y python3-jaraco-text
|
||||
CHECK_RESULT $? 0 0 "卸载python3-jaraco-text失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装python3-jaraco-text,保持安装状态"
|
||||
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-22
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试jaraco.text.wrap模块的文本换行功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试jaraco.text.wrap模块的文本换行功能"
|
||||
LOG_INFO "步骤1:检查yum源中是否存在python3-jaraco-text包"
|
||||
dnf list available python3-jaraco-text > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-jaraco-text包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "python3-jaraco-text包在yum源中存在"
|
||||
|
||||
LOG_INFO "步骤2:检查是否已安装python3-jaraco-text包"
|
||||
rpm -q python3-jaraco-text > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "python3-jaraco-text包已安装,标记为已存在"
|
||||
PACKAGE_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "python3-jaraco-text包未安装,标记为未存在"
|
||||
PACKAGE_INSTALLED=false
|
||||
fi
|
||||
|
||||
if [ "$PACKAGE_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装python3-jaraco-text包"
|
||||
dnf install -y python3-jaraco-text
|
||||
CHECK_RESULT $? 0 0 "安装python3-jaraco-text包失败"
|
||||
LOG_INFO "python3-jaraco-text包安装成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:验证jaraco.text.wrap模块的文本换行功能"
|
||||
python3 -c "
|
||||
import jaraco.text
|
||||
text = "This is a long text that needs to be wrapped to fit within a certain width."
|
||||
wrapped = jaraco.text.wrap(text, width=20)
|
||||
print("Original text:", text)
|
||||
print("Wrapped text:", wrapped)
|
||||
if len(wrapped.split("\\\\n")) > 1:
|
||||
print("Wrap successful")
|
||||
else:
|
||||
print("Wrap failed")
|
||||
exit(1)
|
||||
"
|
||||
CHECK_RESULT $? 0 0 "jaraco.text.wrap模块文本换行功能测试失败"
|
||||
|
||||
LOG_INFO "步骤5:清理环境"
|
||||
if [ "$PACKAGE_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载python3-jaraco-text包"
|
||||
dnf remove -y python3-jaraco-text
|
||||
CHECK_RESULT $? 0 0 "卸载python3-jaraco-text包失败"
|
||||
LOG_INFO "python3-jaraco-text包卸载成功"
|
||||
else
|
||||
LOG_INFO "python3-jaraco-text包为原有安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,129 +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-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Check for conflicts with other python-qt macro packages
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查python-qt5宏包冲突
|
||||
LOG_INFO "开始检查python-qt5宏包与其他python-qt宏包的冲突"
|
||||
|
||||
# 定义软件包名称
|
||||
PYTHON_QT5_MACROS="python-qt5-rpm-macros"
|
||||
PYTHON_QT_MACROS="python-qt-rpm-macros"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "检查软件包是否在yum源中"
|
||||
dnf list available $PYTHON_QT5_MACROS > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PYTHON_QT5_MACROS 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
dnf list available $PYTHON_QT_MACROS > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PYTHON_QT_MACROS 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查当前是否已安装python-qt5-rpm-macros
|
||||
LOG_INFO "检查当前是否已安装 $PYTHON_QT5_MACROS"
|
||||
rpm -q $PYTHON_QT5_MACROS > /dev/null 2>&1
|
||||
PYTHON_QT5_INSTALLED=$?
|
||||
|
||||
# 检查当前是否已安装python-qt-rpm-macros
|
||||
LOG_INFO "检查当前是否已安装 $PYTHON_QT_MACROS"
|
||||
rpm -q $PYTHON_QT_MACROS > /dev/null 2>&1
|
||||
PYTHON_QT_INSTALLED=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
INITIAL_STATE=""
|
||||
if [ $PYTHON_QT5_INSTALLED -eq 0 ] && [ $PYTHON_QT_INSTALLED -eq 0 ]; then
|
||||
INITIAL_STATE="both"
|
||||
LOG_INFO "两个软件包都已安装"
|
||||
elif [ $PYTHON_QT5_INSTALLED -eq 0 ]; then
|
||||
INITIAL_STATE="python-qt5"
|
||||
LOG_INFO "只有 $PYTHON_QT5_MACROS 已安装"
|
||||
elif [ $PYTHON_QT_INSTALLED -eq 0 ]; then
|
||||
INITIAL_STATE="python-qt"
|
||||
LOG_INFO "只有 $PYTHON_QT_MACROS 已安装"
|
||||
else
|
||||
INITIAL_STATE="none"
|
||||
LOG_INFO "两个软件包都未安装"
|
||||
fi
|
||||
|
||||
# 如果python-qt5-rpm-macros未安装,则安装它
|
||||
if [ $PYTHON_QT5_INSTALLED -ne 0 ]; then
|
||||
LOG_INFO "安装 $PYTHON_QT5_MACROS"
|
||||
dnf install -y $PYTHON_QT5_MACROS
|
||||
CHECK_RESULT $? 0 0 "安装 $PYTHON_QT5_MACROS 失败"
|
||||
fi
|
||||
|
||||
# 如果python-qt-rpm-macros未安装,则安装它
|
||||
if [ $PYTHON_QT_INSTALLED -ne 0 ]; then
|
||||
LOG_INFO "安装 $PYTHON_QT_MACROS"
|
||||
dnf install -y $PYTHON_QT_MACROS
|
||||
CHECK_RESULT $? 0 0 "安装 $PYTHON_QT_MACROS 失败"
|
||||
fi
|
||||
|
||||
# 检查两个软件包是否可以同时安装
|
||||
LOG_INFO "验证两个软件包是否可以同时安装"
|
||||
rpm -q $PYTHON_QT5_MACROS $PYTHON_QT_MACROS > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "无法同时安装 $PYTHON_QT5_MACROS 和 $PYTHON_QT_MACROS"
|
||||
|
||||
# 检查是否存在文件冲突
|
||||
LOG_INFO "检查两个软件包之间是否存在文件冲突"
|
||||
rpm -ql $PYTHON_QT5_MACROS > /tmp/python-qt5-files.txt
|
||||
rpm -ql $PYTHON_QT_MACROS > /tmp/python-qt-files.txt
|
||||
|
||||
# 检查是否有重叠的文件
|
||||
LOG_INFO "比较两个软件包的文件列表"
|
||||
comm -12 <(sort /tmp/python-qt5-files.txt) <(sort /tmp/python-qt-files.txt) > /tmp/conflict-files.txt
|
||||
CONFLICT_FILES=$(wc -l < /tmp/conflict-files.txt)
|
||||
CHECK_RESULT $CONFLICT 0 0 "发现 $CONFLICT_FILES 个文件冲突"
|
||||
|
||||
# 清理临时文件
|
||||
rm -f /tmp/python-qt5-files.txt /tmp/python-qt-files.txt /tmp/conflict-files.txt
|
||||
|
||||
# 根据初始状态恢复环境
|
||||
LOG_INFO "根据初始状态恢复环境"
|
||||
case $INITIAL_STATE in
|
||||
"both")
|
||||
LOG_INFO "保持两个软件包都安装的状态"
|
||||
;;
|
||||
"python-qt5")
|
||||
LOG_INFO "卸载 $PYTHON_QT_MACROS,保持 $PYTHON_QT5_MACROS 安装"
|
||||
dnf remove -y $PYTHON_QT_MACROS
|
||||
CHECK_RESULT $? 0 0 "卸载 $PYTHON_QT_MACROS 失败"
|
||||
;;
|
||||
"python-qt")
|
||||
LOG_INFO "卸载 $PYTHON_QT5_MACROS,保持 $PYTHON_QT_MACROS 安装"
|
||||
dnf remove -y $PYTHON_QT5_MACROS
|
||||
CHECK_RESULT $? 0 0 "卸载 $PYTHON_QT5_MACROS 失败"
|
||||
;;
|
||||
"none")
|
||||
LOG_INFO "卸载两个软件包"
|
||||
dnf remove -y $PYTHON_QT5_MACROS $PYTHON_QT_MACROS
|
||||
CHECK_RESULT $? 0 0 "卸载软件包失败"
|
||||
;;
|
||||
esac
|
||||
|
||||
LOG_INFO "python-qt5宏包冲突检查完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,91 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify the package installs the correct macro files
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试:验证软件包安装正确的宏文件"
|
||||
|
||||
# 检查是否已安装python3-rpm-macros
|
||||
LOG_INFO "检查python3-rpm-macros是否已安装"
|
||||
if rpm -q python3-rpm-macros &>/dev/null; then
|
||||
LOG_INFO "python3-rpm-macros已安装,测试后保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "python3-rpm-macros未安装,将在测试后卸载"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有python3-rpm-macros
|
||||
LOG_INFO "检查yum源中是否存在python3-rpm-macros"
|
||||
if ! dnf list available python3-rpm-macros &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到python3-rpm-macros"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装python3-rpm-macros
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "安装python3-rpm-macros"
|
||||
dnf install -y python3-rpm-macros
|
||||
CHECK_RESULT $? 0 0 "安装python3-rpm-macros失败"
|
||||
fi
|
||||
|
||||
# 检查rpm命令是否支持--eval参数
|
||||
LOG_INFO "检查rpm命令是否支持--eval参数"
|
||||
if ! rpm --help | grep -q -- "--eval"; then
|
||||
LOG_ERROR "rpm命令不支持--eval参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 验证宏文件是否正确安装
|
||||
LOG_INFO "验证%{python3_sitelib}宏是否正确定义"
|
||||
python3_sitelib=$(rpm --eval "%{python3_sitelib}")
|
||||
CHECK_RESULT $? 0 0 "获取%{python3_sitelib}宏失败"
|
||||
LOG_INFO "%{python3_sitelib}的值为: $python3_sitelib"
|
||||
|
||||
LOG_INFO "验证%{python3_sitearch}宏是否正确定义"
|
||||
python3_sitearch=$(rpm --eval "%{python3_sitearch}")
|
||||
CHECK_RESULT $? 0 0 "获取%{python3_sitearch}宏失败"
|
||||
LOG_INFO "%{python3_sitearch}的值为: $python3_sitearch"
|
||||
|
||||
LOG_INFO "验证%{python3_version}宏是否正确定义"
|
||||
python3_version=$(rpm --eval "%{python3_version}")
|
||||
CHECK_RESULT $? 0 0 "获取%{python3_version}宏失败"
|
||||
LOG_INFO "%{python3_version}的值为: $python3_version"
|
||||
|
||||
LOG_INFO "验证%{python3_version_nodots}宏是否正确定义"
|
||||
python3_version_nodots=$(rpm --eval "%{python3_version_nodots}")
|
||||
CHECK_RESULT $? 0 0 "获取%{python3_version_nodots}宏失败"
|
||||
LOG_INFO "%{python3_version_nodots}的值为: $python3_version_nodots"
|
||||
|
||||
# 清理环境
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载python3-rpm-macros"
|
||||
dnf remove -y python3-rpm-macros
|
||||
CHECK_RESULT $? 0 0 "卸载python3-rpm-macros失败"
|
||||
else
|
||||
LOG_INFO "保持python3-rpm-macros安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:软件包正确安装了宏文件"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,157 +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-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify macros can be used in a mock RPM spec file
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义变量
|
||||
PKG_NAME="python-qt5-rpm-macros"
|
||||
SPEC_FILE="test_spec.spec"
|
||||
MOCK_CONFIG="default"
|
||||
LOG_FILE="/tmp/test_python_qt5_macros.log"
|
||||
|
||||
# 初始化日志文件
|
||||
> $LOG_FILE
|
||||
|
||||
# 步骤1: 检查yum源中是否存在python-qt5-rpm-macros软件包
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在$PKG_NAME软件包"
|
||||
dnf list available $PKG_NAME &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到$PKG_NAME软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在$PKG_NAME软件包"
|
||||
|
||||
# 步骤2: 检查当前是否已安装python-qt5-rpm-macros软件包
|
||||
LOG_INFO "步骤2: 检查当前是否已安装$PKG_NAME软件包"
|
||||
rpm -q $PKG_NAME &>/dev/null
|
||||
INSTALLED=$?
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "$PKG_NAME软件包已安装"
|
||||
NEED_UNINSTALL=0
|
||||
else
|
||||
LOG_INFO "$PKG_NAME软件包未安装,将在测试过程中安装"
|
||||
NEED_UNINSTALL=1
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装python-qt5-rpm-macros软件包
|
||||
if [ $NEED_UNINSTALL -eq 1 ]; then
|
||||
LOG_INFO "步骤3: 安装$PKG_NAME软件包"
|
||||
dnf install -y $PKG_NAME
|
||||
CHECK_RESULT $? 0 0 "安装$PKG_NAME失败"
|
||||
LOG_INFO "安装$PKG_NAME成功"
|
||||
fi
|
||||
|
||||
# 步骤4: 创建一个模拟的RPM spec文件以测试宏
|
||||
LOG_INFO "步骤4: 创建一个模拟的RPM spec文件以测试宏"
|
||||
cat > $SPEC_FILE << "EOF"
|
||||
Name: test-python-qt5-macros
|
||||
Version: 1.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Test spec for python-qt5-rpm-macros
|
||||
License: GPLv3
|
||||
|
||||
%description
|
||||
This is a test spec to verify python-qt5-rpm-macros.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
%pyqt5_build
|
||||
|
||||
%install
|
||||
%pyqt5_install
|
||||
|
||||
%files
|
||||
%{python3_sitelib}/test_module
|
||||
|
||||
%changelog
|
||||
* Tue Jan 01 2023 Tester <test@example.com> - 1.0-1
|
||||
- Initial test package
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建spec文件失败"
|
||||
LOG_INFO "创建spec文件成功"
|
||||
|
||||
# 步骤5: 使用rpmspec命令检查spec文件中的宏是否可用
|
||||
LOG_INFO "步骤5: 使用rpmspec命令检查spec文件中的宏是否可用"
|
||||
if ! command -v rpmspec &>/dev/null; then
|
||||
LOG_ERROR "rpmspec命令不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
rpmspec -P $SPEC_FILE &>> $LOG_FILE
|
||||
CHECK_RESULT $? 0 0 "rpmspec解析spec文件失败"
|
||||
LOG_INFO "rpmspec解析spec文件成功,宏可用"
|
||||
|
||||
# 步骤6: 使用mock构建RPM包以验证宏在构建环境中的可用性
|
||||
LOG_INFO "步骤6: 使用mock构建RPM包以验证宏在构建环境中的可用性"
|
||||
if ! command -v mock &>/dev/null; then
|
||||
LOG_ERROR "mock命令不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查mock配置是否存在
|
||||
mock -r $MOCK_CONFIG --list-chroots &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "mock配置$MOCK_CONFIG不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 由于是测试宏,我们只进行初始化构建环境而不实际构建
|
||||
mock -r $MOCK_CONFIG --init
|
||||
CHECK_RESULT $? 0 0 "mock初始化构建环境失败"
|
||||
LOG_INFO "mock初始化构建环境成功"
|
||||
|
||||
# 步骤7: 清理测试文件
|
||||
LOG_INFO "步骤7: 清理测试文件"
|
||||
rm -f $SPEC_FILE
|
||||
CHECK_RESULT $? 0 0 "删除spec文件失败"
|
||||
LOG_INFO "删除spec文件成功"
|
||||
|
||||
# 步骤8: 如果测试前未安装,则卸载python-qt5-rpm-macros软件包
|
||||
if [ $NEED_UNINSTALL -eq 1 ]; then
|
||||
LOG_INFO "步骤8: 卸载$PKG_NAME软件包"
|
||||
dnf remove -y $PKG_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载$PKG_NAME失败"
|
||||
LOG_INFO "卸载$PKG_NAME成功"
|
||||
else
|
||||
LOG_INFO "步骤8: 测试前已安装$PKG_NAME,保持安装状态"
|
||||
fi
|
||||
|
||||
# 步骤9: 最终环境检查
|
||||
LOG_INFO "步骤9: 最终环境检查"
|
||||
if [ $NEED_UNINSTALL -eq 1 ]; then
|
||||
rpm -q $PKG_NAME &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "环境清理失败,$PKG_NAME仍被安装"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "环境清理成功,$PKG_NAME已被卸载"
|
||||
fi
|
||||
else
|
||||
rpm -q $PKG_NAME &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "环境状态异常,$PKG_NAME应保持安装但未找到"
|
||||
LOG_INFO "环境状态正常,$PKG_NAME保持安装"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:验证宏可以在模拟RPM spec文件中使用"
|
||||
}
|
||||
|
||||
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-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Check if the installed macro version matches package version
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:检查已安装的宏版本是否与软件包版本匹配"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="python-qt5-rpm-macros"
|
||||
|
||||
# 步骤1:检查软件包是否在yum源中
|
||||
LOG_INFO "步骤1:检查软件包是否在yum源中"
|
||||
dnf list available "$PACKAGE_NAME" &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查软件包是否已安装
|
||||
LOG_INFO "步骤2:检查软件包是否已安装"
|
||||
if rpm -q "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,测试结束后保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将在测试过程中安装"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "步骤3:安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 步骤4:获取软件包版本和宏版本
|
||||
LOG_INFO "步骤4:获取软件包版本和宏版本"
|
||||
PACKAGE_VERSION=$(rpm -q --queryformat="%{VERSION}-%{RELEASE}" "$PACKAGE_NAME")
|
||||
MACRO_VERSION=$(rpm -E "%{python_qt5_macros_version}" 2>/dev/null)
|
||||
|
||||
# 步骤5:检查宏版本是否存在
|
||||
LOG_INFO "步骤5:检查宏版本是否存在"
|
||||
if [ -z "$MACRO_VERSION" ]; then
|
||||
LOG_ERROR "宏版本不存在或不支持"
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "清理环境:卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤6:比较软件包版本和宏版本
|
||||
LOG_INFO "步骤6:比较软件包版本和宏版本"
|
||||
if [ "$PACKAGE_VERSION" = "$MACRO_VERSION" ]; then
|
||||
LOG_INFO "软件包版本和宏版本匹配:$PACKAGE_VERSION"
|
||||
CHECK_RESULT 0 0 0 "版本不匹配"
|
||||
else
|
||||
LOG_ERROR "软件包版本 ($PACKAGE_VERSION) 和宏版本 ($MACRO_VERSION) 不匹配"
|
||||
CHECK_RESULT 1 0 0 "版本不匹配"
|
||||
fi
|
||||
|
||||
# 步骤7:清理环境
|
||||
LOG_INFO "步骤7:清理环境"
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 在测试前已安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,111 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-04-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic compilation with the development package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试:Test basic compilation with the development package"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="qt5-qtremoteobjects-devel"
|
||||
|
||||
# 步骤1:检查yum源中是否存在指定的软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否存在软件包 $PACKAGE_NAME"
|
||||
if ! dnf list available "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查当前环境是否已安装该软件包
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装软件包 $PACKAGE_NAME"
|
||||
if rpm -q "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,标记为已安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,标记为未安装状态"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包作为测试步骤
|
||||
if [ "$INSTALLED_BEFORE_TEST" = 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 进行基本编译"
|
||||
# 创建一个简单的测试源文件
|
||||
TEST_SRC_FILE="/tmp/test_qtremoteobjects.cpp"
|
||||
TEST_BIN_FILE="/tmp/test_qtremoteobjects"
|
||||
cat > "$TEST_SRC_FILE" << "EOF"
|
||||
#include <QCoreApplication>
|
||||
#include <QRemoteObjectNode>
|
||||
int main(int argc, char *argv[]) {
|
||||
QCoreApplication app(argc, argv);
|
||||
QRemoteObjectNode node;
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
|
||||
# 尝试编译测试程序
|
||||
LOG_INFO "尝试编译测试程序"
|
||||
qmake -v &>/dev/null
|
||||
CHECK_RESULT $? 0 255 "qmake 命令不存在或不支持"
|
||||
|
||||
# 使用qmake和make进行编译(假设使用Qt的基本编译流程)
|
||||
# 注意:这里简化了Qt项目的编译流程,实际可能需要.pro文件等
|
||||
# 这里仅检查开发包的关键头文件和库是否存在并能被找到
|
||||
LOG_INFO "检查Qt Remote Objects开发头文件和库"
|
||||
if [ -f /usr/include/qt5/QtRemoteObjects/QRemoteObjectNode ] || [ -f /usr/include/QtRemoteObjects/QRemoteObjectNode ]; then
|
||||
LOG_INFO "找到 QRemoteObjectNode 头文件"
|
||||
else
|
||||
LOG_ERROR "未找到 QRemoteObjectNode 头文件"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 尝试编译一个简单的程序来链接库
|
||||
LOG_INFO "尝试编译并链接一个简单的测试程序"
|
||||
cat > /tmp/test_link.cpp << "EOF"
|
||||
int main() {
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
g++ -o /tmp/test_link /tmp/test_link.cpp -lQt5RemoteObjects 2>/dev/null
|
||||
CHECK_RESULT $? 0 0 "链接 Qt5RemoteObjects 库失败"
|
||||
|
||||
# 清理临时测试文件
|
||||
rm -f "$TEST_SRC_FILE" "$TEST_BIN_FILE" /tmp/test_link.cpp /tmp/test_link
|
||||
|
||||
# 步骤5:环境恢复
|
||||
LOG_INFO "步骤5:恢复测试环境"
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "卸载在测试中安装的软件包 $PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装软件包 $PACKAGE_NAME,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test basic compilation with the development package"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,61 +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-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic functionality of qt5-qtremoteobjects-devel
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装qt5-qtremoteobjects-devel软件包
|
||||
LOG_INFO "检查是否已安装qt5-qtremoteobjects-devel软件包"
|
||||
rpm -q qt5-qtremoteobjects-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "qt5-qtremoteobjects-devel已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "qt5-qtremoteobjects-devel未安装,将在测试步骤中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在qt5-qtremoteobjects-devel软件包
|
||||
LOG_INFO "检查yum源中是否存在qt5-qtremoteobjects-devel软件包"
|
||||
dnf list available qt5-qtremoteobjects-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在qt5-qtremoteobjects-devel软件包"
|
||||
|
||||
# 安装qt5-qtremoteobjects-devel软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装qt5-qtremoteobjects-devel软件包"
|
||||
dnf install -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "安装qt5-qtremoteobjects-devel软件包失败"
|
||||
fi
|
||||
|
||||
# 测试基本功能
|
||||
LOG_INFO "测试基本功能"
|
||||
qmake -query QT_INSTALL_HEADERS > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "qmake命令执行失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载qt5-qtremoteobjects-devel软件包"
|
||||
dnf remove -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "卸载qt5-qtremoteobjects-devel软件包失败"
|
||||
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-04-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic Remote Objects functionality usage
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test basic Remote Objects functionality usage"
|
||||
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在qt5-qtremoteobjects-devel软件包"
|
||||
if ! dnf list available qt5-qtremoteobjects-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到qt5-qtremoteobjects-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查是否已安装qt5-qtremoteobjects-devel软件包"
|
||||
if rpm -q qt5-qtremoteobjects-devel &>/dev/null; then
|
||||
LOG_INFO "qt5-qtremoteobjects-devel已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
INSTALLED_BEFORE=false
|
||||
LOG_INFO "qt5-qtremoteobjects-devel未安装,将执行安装步骤"
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "步骤3: 安装qt5-qtremoteobjects-devel软件包"
|
||||
dnf install -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "安装qt5-qtremoteobjects-devel软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 验证Remote Objects基本功能"
|
||||
LOG_INFO "步骤4.1: 检查qremoteobjects命令行工具是否可用"
|
||||
if ! command -v qremoteobjects &>/dev/null; then
|
||||
LOG_ERROR "qremoteobjects命令不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4.2: 执行qremoteobjects --help查看帮助信息"
|
||||
qremoteobjects --help
|
||||
CHECK_RESULT $? 0 0 "执行qremoteobjects --help失败"
|
||||
|
||||
LOG_INFO "步骤4.3: 创建一个简单的Remote Objects示例程序"
|
||||
cat > test_remoteobject.cpp << "EOF"
|
||||
#include <QCoreApplication>
|
||||
#include <QRemoteObjectNode>
|
||||
#include <QRemoteObjectRegistryHost>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
QCoreApplication app(argc, argv);
|
||||
QRemoteObjectNode node;
|
||||
QRemoteObjectRegistryHost registry(node);
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建测试源码文件失败"
|
||||
|
||||
LOG_INFO "步骤4.4: 编译测试程序"
|
||||
g++ -fPIC -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtRemoteObjects -lQt5Core -lQt5RemoteObjects test_remoteobject.cpp -o test_remoteobject
|
||||
CHECK_RESULT $? 0 0 "编译测试程序失败"
|
||||
|
||||
LOG_INFO "步骤4.5: 运行测试程序"
|
||||
./test_remoteobject
|
||||
CHECK_RESULT $? 0 0 "运行测试程序失败"
|
||||
|
||||
LOG_INFO "步骤5: 清理测试文件"
|
||||
rm -f test_remoteobject.cpp test_remoteobject
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "步骤6: 卸载qt5-qtremoteobjects-devel软件包"
|
||||
dnf remove -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "卸载qt5-qtremoteobjects-devel软件包失败"
|
||||
else
|
||||
LOG_INFO "步骤6: 保持qt5-qtremoteobjects-devel软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test basic Remote Objects functionality usage"
|
||||
}
|
||||
|
||||
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-04-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test uninstallation of qt5-qtremoteobjects-devel package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装qt5-qtremoteobjects-devel
|
||||
LOG_INFO "检查qt5-qtremoteobjects-devel是否已安装"
|
||||
rpm -q qt5-qtremoteobjects-devel > /dev/null 2>&1
|
||||
is_installed=$?
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $is_installed -ne 0 ]; then
|
||||
LOG_INFO "qt5-qtremoteobjects-devel未安装,开始安装"
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否存在qt5-qtremoteobjects-devel"
|
||||
dnf list available qt5-qtremoteobjects-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到qt5-qtremoteobjects-devel软件包"
|
||||
|
||||
# 安装软件包
|
||||
LOG_INFO "开始安装qt5-qtremoteobjects-devel"
|
||||
dnf install -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "安装qt5-qtremoteobjects-devel失败"
|
||||
|
||||
# 验证安装成功
|
||||
LOG_INFO "验证qt5-qtremoteobjects-devel安装成功"
|
||||
rpm -q qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "qt5-qtremoteobjects-devel未正确安装"
|
||||
else
|
||||
LOG_INFO "qt5-qtremoteobjects-devel已安装"
|
||||
fi
|
||||
|
||||
# 测试卸载功能
|
||||
LOG_INFO "开始测试卸载qt5-qtremoteobjects-devel"
|
||||
dnf remove -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "卸载qt5-qtremoteobjects-devel失败"
|
||||
|
||||
# 验证卸载成功
|
||||
LOG_INFO "验证qt5-qtremoteobjects-devel已卸载"
|
||||
rpm -q qt5-qtremoteobjects-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 1 0 "qt5-qtremoteobjects-devel未正确卸载"
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "开始恢复环境"
|
||||
if [ $is_installed -eq 0 ]; then
|
||||
LOG_INFO "重新安装qt5-qtremoteobjects-devel"
|
||||
dnf install -y qt5-qtremoteobjects-devel
|
||||
CHECK_RESULT $? 0 0 "重新安装qt5-qtremoteobjects-devel失败"
|
||||
else
|
||||
LOG_INFO "保持环境为未安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,57 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-09-17
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package installation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试texlive-biblatex-ijsra-doc软件包安装功能"
|
||||
|
||||
# 检查软件包是否已在yum源中
|
||||
LOG_INFO "检查yum源中是否存在texlive-biblatex-ijsra-doc软件包"
|
||||
dnf list available texlive-biblatex-ijsra-doc &>/dev/null
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在texlive-biblatex-ijsra-doc软件包"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查texlive-biblatex-ijsra-doc是否已安装"
|
||||
if rpm -q texlive-biblatex-ijsra-doc &>/dev/null; then
|
||||
LOG_INFO "texlive-biblatex-ijsra-doc已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "texlive-biblatex-ijsra-doc未安装,开始安装"
|
||||
dnf install -y texlive-biblatex-ijsra-doc
|
||||
CHECK_RESULT $? 0 0 "安装texlive-biblatex-ijsra-doc失败"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 测试命令功能(示例命令,需根据实际需求调整)
|
||||
LOG_INFO "测试texlive-biblatex-ijsra-doc命令功能"
|
||||
command_to_test --version &>/dev/null
|
||||
CHECK_RESULT $? 0 255 "命令参数不支持或不存在"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载texlive-biblatex-ijsra-doc以恢复环境"
|
||||
dnf remove -y texlive-biblatex-ijsra-doc
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-biblatex-ijsra-doc失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,75 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-05
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test complete purge of package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test complete purge of package"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "检查软件包texlive-biblatex-ijsra-doc是否在yum源中"
|
||||
dnf list available texlive-biblatex-ijsra-doc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "软件包texlive-biblatex-ijsra-doc不在yum源中"
|
||||
|
||||
# 检查是否已安装软件包
|
||||
LOG_INFO "检查软件包texlive-biblatex-ijsra-doc是否已安装"
|
||||
if rpm -q texlive-biblatex-ijsra-doc > /dev/null 2>&1; then
|
||||
LOG_INFO "软件包texlive-biblatex-ijsra-doc已安装,测试结束后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "软件包texlive-biblatex-ijsra-doc未安装,将进行安装测试"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装软件包texlive-biblatex-ijsra-doc"
|
||||
dnf install -y texlive-biblatex-ijsra-doc
|
||||
CHECK_RESULT $? 0 0 "安装软件包texlive-biblatex-ijsra-doc失败"
|
||||
fi
|
||||
|
||||
# 测试purge功能
|
||||
LOG_INFO "测试purge功能:完全清除软件包"
|
||||
dnf remove -y texlive-biblatex-ijsra-doc
|
||||
CHECK_RESULT $? 0 0 "执行dnf remove失败"
|
||||
|
||||
# 验证软件包是否被完全移除
|
||||
LOG_INFO "验证软件包是否被完全移除"
|
||||
rpm -q texlive-biblatex-ijsra-doc > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "软件包texlive-biblatex-ijsra-doc未被完全移除"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "软件包texlive-biblatex-ijsra-doc已被完全移除"
|
||||
fi
|
||||
|
||||
# 环境恢复:如果测试前未安装,则保持未安装状态;如果测试前已安装,则重新安装
|
||||
LOG_INFO "恢复环境状态"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "测试前未安装软件包,保持未安装状态"
|
||||
else
|
||||
LOG_INFO "测试前已安装软件包,重新安装软件包"
|
||||
dnf install -y texlive-biblatex-ijsra-doc
|
||||
CHECK_RESULT $? 0 0 "重新安装软件包texlive-biblatex-ijsra-doc失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test complete purge of package"
|
||||
}
|
||||
|
||||
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-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test presence of documentation files
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试文档文件的存在性"
|
||||
|
||||
# 检查是否已安装texlive-filedate-doc包
|
||||
LOG_INFO "检查texlive-filedate-doc是否已安装"
|
||||
if dnf list installed texlive-filedate-doc &> /dev/null; then
|
||||
LOG_INFO "texlive-filedate-doc已安装"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "texlive-filedate-doc未安装"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在该软件包
|
||||
LOG_INFO "检查yum源中是否存在texlive-filedate-doc包"
|
||||
if ! dnf list available texlive-filedate-doc &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到texlive-filedate-doc包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则进行安装
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "安装texlive-filedate-doc包"
|
||||
dnf install -y texlive-filedate-doc
|
||||
CHECK_RESULT $? 0 0 "安装texlive-filedate-doc失败"
|
||||
fi
|
||||
|
||||
# 检查文档文件是否存在
|
||||
LOG_INFO "检查文档文件是否存在"
|
||||
DOC_FILES="/usr/share/doc/texlive-filedate-doc/*"
|
||||
if ls $DOC_FILES &> /dev/null; then
|
||||
LOG_INFO "文档文件存在"
|
||||
CHECK_RESULT $? 0 0 "文档文件检查失败"
|
||||
else
|
||||
LOG_ERROR "未找到文档文件"
|
||||
CHECK_RESULT 1 0 1 "文档文件不存在"
|
||||
fi
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载texlive-filedate-doc包"
|
||||
dnf remove -y texlive-filedate-doc
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-filedate-doc失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装,保持安装状态"
|
||||
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-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package version query
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
PACKAGE_NAME="texlive-filedate-doc"
|
||||
COMMAND="rpm"
|
||||
COMMAND_ARGS="-q"
|
||||
|
||||
LOG_INFO "=== 开始测试软件包版本查询功能 ==="
|
||||
LOG_INFO "测试用例: Test package version query"
|
||||
LOG_INFO "步骤1: 检查软件包是否在yum源中"
|
||||
dnf list available $PACKAGE_NAME > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 存在于yum源中"
|
||||
|
||||
LOG_INFO "步骤2: 检查当前环境是否已安装该软件包"
|
||||
rpm -q $PACKAGE_NAME > /dev/null 2>&1
|
||||
INSTALLED_STATUS=$?
|
||||
NEED_CLEANUP=0
|
||||
|
||||
if [ $INSTALLED_STATUS -eq 0 ]; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,测试结束后将保持安装状态"
|
||||
NEED_CLEANUP=0
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将执行安装作为测试步骤"
|
||||
LOG_INFO "步骤3: 安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装软件包失败"
|
||||
NEED_CLEANUP=1
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 验证命令 $COMMAND 是否支持参数 $COMMAND_ARGS"
|
||||
$COMMAND $COMMAND_ARGS --help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "命令 $COMMAND 不支持参数 $COMMAND_ARGS"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "命令 $COMMAND 支持参数 $COMMAND_ARGS"
|
||||
|
||||
LOG_INFO "步骤5: 执行主要测试步骤 - 查询软件包版本"
|
||||
$COMMAND $COMMAND_ARGS $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "查询软件包版本失败"
|
||||
|
||||
LOG_INFO "步骤6: 清理测试环境"
|
||||
if [ $NEED_CLEANUP -eq 1 ]; then
|
||||
LOG_INFO "卸载测试安装的软件包 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载软件包失败"
|
||||
LOG_INFO "环境已恢复到测试前的未安装状态"
|
||||
else
|
||||
LOG_INFO "环境保持原有的已安装状态,无需清理"
|
||||
fi
|
||||
|
||||
LOG_INFO "=== 测试软件包版本查询功能结束 ==="
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,75 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test installation of texlive-filedate-doc
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查yum源中是否存在texlive-filedate-doc软件包
|
||||
LOG_INFO "检查yum源中是否存在texlive-filedate-doc软件包"
|
||||
dnf list available texlive-filedate-doc > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在texlive-filedate-doc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装texlive-filedate-doc
|
||||
LOG_INFO "检查是否已安装texlive-filedate-doc"
|
||||
rpm -q texlive-filedate-doc > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
installed=true
|
||||
LOG_INFO "texlive-filedate-doc已安装,脚本结束后将保持安装状态"
|
||||
else
|
||||
installed=false
|
||||
LOG_INFO "texlive-filedate-doc未安装,将在测试步骤中安装"
|
||||
fi
|
||||
|
||||
# 安装texlive-filedate-doc(如果未安装)
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始安装texlive-filedate-doc"
|
||||
dnf install -y texlive-filedate-doc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装texlive-filedate-doc失败"
|
||||
LOG_INFO "texlive-filedate-doc安装成功"
|
||||
fi
|
||||
|
||||
# 测试步骤:验证命令参数是否支持(示例命令,根据实际需求调整)
|
||||
LOG_INFO "验证texlive-filedate-doc命令参数是否支持"
|
||||
texdoc --help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "命令参数不支持或不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试步骤:执行实际测试命令(示例命令,根据实际需求调整)
|
||||
LOG_INFO "执行测试命令"
|
||||
texdoc filedate > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行测试命令失败"
|
||||
|
||||
# 清理环境(如果脚本开始时未安装)
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "清理环境,卸载texlive-filedate-doc"
|
||||
dnf remove -y texlive-filedate-doc > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-filedate-doc失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user