Merge branch 'pkg' of http://10.30.190.190:54866/redrsoe2100/os-autotest into pkg
This commit is contained in:
@@ -11,18 +11,6 @@
|
||||
"name": "test_python3-libxslt_function_install",
|
||||
"desc": "测试python3-libxslt软件包的正确安装与导入"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-libxslt_function_xsltproc",
|
||||
"desc": "测试使用libxslt进行XSLT转换的基本功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-libxslt_function_parse",
|
||||
"desc": "测试解析XML和XSLT文件的能力"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-libxslt_function_transform",
|
||||
"desc": "测试执行XML到HTML的转换"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-libxslt_function_uninstall",
|
||||
"desc": "测试python3-libxslt软件包的完整卸载"
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/metrics/metrics-ganglia",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_metrics-ganglia_function_init",
|
||||
"desc": "Test initialization of metrics-ganglia"
|
||||
},
|
||||
{
|
||||
"name": "test_metrics-ganglia_function_collect",
|
||||
"desc": "Test metrics collection functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -10,26 +10,6 @@
|
||||
"name": "test_neon-devel_function_config",
|
||||
"desc": "Test the configuration of neon-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_run",
|
||||
"desc": "Test the execution of neon-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_uninstall",
|
||||
"desc": "Test the uninstallation of neon-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_prefix",
|
||||
"desc": "测试 neon-config 命令的 --prefix 参数,用于更改前缀路径"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_libs",
|
||||
"desc": "测试 neon-config 命令的 --libs 参数,用于打印库链接信息"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_la-file",
|
||||
"desc": "测试 neon-config 命令的 --la-file 参数,用于打印 libtool .la 文件的位置"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_cflags",
|
||||
"desc": "测试 neon-config 命令的 --cflags 参数,用于打印预处理器和编译器标志"
|
||||
@@ -42,34 +22,6 @@
|
||||
"name": "test_neon-devel_neon-config_version",
|
||||
"desc": "测试 neon-config 命令的 --version 参数,用于输出版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_dav",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 dav 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_ssl",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 ssl 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_zlib",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 zlib 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_ipv6",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 ipv6 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_lfs",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 lfs 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_i18n",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 i18n 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_neon-config_support_ts_ssl",
|
||||
"desc": "测试 neon-config 命令的 --support 参数检查 ts_ssl 特性支持情况"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_version",
|
||||
"desc": "Test the version query of neon package"
|
||||
@@ -77,26 +29,6 @@
|
||||
{
|
||||
"name": "test_neon-devel_function_config_basic",
|
||||
"desc": "Test basic neon-config command usage"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_libs_output",
|
||||
"desc": "Test neon-config --libs for linker flags"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_cflags_output",
|
||||
"desc": "Test neon-config --cflags for compiler flags"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_help_output",
|
||||
"desc": "Test neon-config --help output"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_support_ssl",
|
||||
"desc": "Test neon-config --support for SSL feature"
|
||||
},
|
||||
{
|
||||
"name": "test_neon-devel_function_support_zlib",
|
||||
"desc": "Test neon-config --support for zlib feature"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/speech-dispatcher/speech-dispatcher-festival",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_speech-dispatcher-festival_function_init",
|
||||
"desc": "Test initialization of speech-dispatcher-festival"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-d/texlive-censor",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-censor_function_basic",
|
||||
"desc": "Test basic command usage"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -5,18 +5,6 @@
|
||||
{
|
||||
"name": "test_texlive-mfnfss_function_uninstall",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-mfnfss_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-mfnfss_function_check",
|
||||
"desc": "Test package availability and version"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-mfnfss_function_usage",
|
||||
"desc": "Test basic font usage in LaTeX document"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,22 +2,10 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-s/texlive-pseudocode",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-pseudocode_function_basic",
|
||||
"desc": "Test basic pseudocode generation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pseudocode_function_install",
|
||||
"desc": "Test installation of texlive-pseudocode package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pseudocode_function_usage",
|
||||
"desc": "Test basic pseudocode typesetting"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pseudocode_function_examples",
|
||||
"desc": "Test compilation of provided examples"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-pseudocode_function_uninstall",
|
||||
"desc": "Test removal of texlive-pseudocode package"
|
||||
|
||||
@@ -9,18 +9,6 @@
|
||||
{
|
||||
"name": "test_texlive-synproof-doc_function_remove",
|
||||
"desc": "Verify package uninstallation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-synproof-doc_function_doc_access",
|
||||
"desc": "Check documentation accessibility"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-synproof-doc_function_info_query",
|
||||
"desc": "Query package information"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-synproof-doc_function_version_check",
|
||||
"desc": "Verify package version"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -5,18 +5,6 @@
|
||||
{
|
||||
"name": "test_texlive-texproposal-doc_function_install",
|
||||
"desc": "Verify installation of texlive-texproposal-doc"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-texproposal-doc_function_remove",
|
||||
"desc": "Verify removal of texlive-texproposal-doc"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-texproposal-doc_function_check_files",
|
||||
"desc": "Verify existence of documentation files"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-texproposal-doc_function_use_guide",
|
||||
"desc": "Verify basic usage guide is readable"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-x/texlive-toolbox",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-toolbox_function_install",
|
||||
"desc": "Test installation of texlive-toolbox"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -9,18 +9,6 @@
|
||||
{
|
||||
"name": "test_texlive-underlin_function_uninstall",
|
||||
"desc": "Test the removal of texlive-underlin package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-underlin_function_check",
|
||||
"desc": "Check if texlive-underlin package is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-underlin_function_usage",
|
||||
"desc": "Test basic usage of texlive-underlin in LaTeX"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-underlin_function_update",
|
||||
"desc": "Test updating texlive-underlin package"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-y/texlive-uowthesistitlepage",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-uowthesistitlepage_function_titlepage",
|
||||
"desc": "Test title page generation"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,227 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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 : 测试解析XML和XSLT文件的能力
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试解析XML和XSLT文件的能力
|
||||
LOG_INFO "开始测试python3-libxslt的XML和XSLT解析功能"
|
||||
|
||||
# 检查软件包是否存在
|
||||
LOG_INFO "检查yum源中是否存在python3-libxslt软件包"
|
||||
dnf list available python3-libxslt > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-libxslt软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查是否已安装
|
||||
LOG_INFO "检查python3-libxslt是否已安装"
|
||||
rpm -q python3-libxslt > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
already_installed=1
|
||||
LOG_INFO "python3-libxslt已安装,测试完成后将保持安装状态"
|
||||
else
|
||||
already_installed=0
|
||||
LOG_INFO "python3-libxslt未安装,将作为测试步骤安装"
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "安装python3-libxslt软件包"
|
||||
dnf install -y python3-libxslt
|
||||
CHECK_RESULT $? 0 0 "安装python3-libxslt失败"
|
||||
fi
|
||||
|
||||
# 创建测试XML文件
|
||||
LOG_INFO "创建测试XML文件"
|
||||
cat > test_input.xml << "EOF"
|
||||
<?xml version="1.0"?>
|
||||
<catalog>
|
||||
<book id="bk101">
|
||||
<author>Gambardella, Matthew</author>
|
||||
<title>XML Developer"s Guide</title>
|
||||
<genre>Computer</genre>
|
||||
<price>44.95</price>
|
||||
<publish_date>2000-10-01</publish_date>
|
||||
<description>An in-depth look at creating applications with XML.</description>
|
||||
</book>
|
||||
<book id="bk102">
|
||||
<author>Ralls, Kim</author>
|
||||
<title>Midnight Rain</title>
|
||||
<genre>Fantasy</genre>
|
||||
<price>5.95</price>
|
||||
<publish_date>2000-12-16</publish_date>
|
||||
<description>A former architect battles corporate zombies.</description>
|
||||
</book>
|
||||
</catalog>
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建XML文件失败"
|
||||
|
||||
# 创建测试XSLT文件
|
||||
LOG_INFO "创建测试XSLT文件"
|
||||
cat > test_transform.xsl << "EOF"
|
||||
<?xml version="1.0"?>
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:template match="/">
|
||||
<html>
|
||||
<body>
|
||||
<h2>Book Catalog</h2>
|
||||
<table border="1">
|
||||
<tr bgcolor="#9acd32">
|
||||
<th>Title</th>
|
||||
<th>Author</th>
|
||||
<th>Price</th>
|
||||
</tr>
|
||||
<xsl:for-each select="catalog/book">
|
||||
<tr>
|
||||
<td><xsl:value-of select="title"/></td>
|
||||
<td><xsl:value-of select="author"/></td>
|
||||
<td><xsl:value-of select="price"/></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建XSLT文件失败"
|
||||
|
||||
# 使用xsltproc命令测试解析功能
|
||||
LOG_INFO "使用xsltproc命令测试XML和XSLT解析"
|
||||
if ! command -v xsltproc &> /dev/null; then
|
||||
LOG_ERROR "xsltproc命令不存在"
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
dnf remove -y python3-libxslt
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试xsltproc是否支持--version参数
|
||||
LOG_INFO "检查xsltproc命令参数支持"
|
||||
xsltproc --version > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "xsltproc不支持--version参数"
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
dnf remove -y python3-libxslt
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行XSLT转换
|
||||
LOG_INFO "执行XSLT转换,将XML转换为HTML"
|
||||
xsltproc test_transform.xsl test_input.xml > test_output.html
|
||||
CHECK_RESULT $? 0 0 "XSLT转换失败"
|
||||
|
||||
# 验证输出文件
|
||||
LOG_INFO "验证转换结果"
|
||||
if [ -f test_output.html ] && [ -s test_output.html ]; then
|
||||
LOG_INFO "成功生成HTML文件"
|
||||
# 检查输出文件是否包含预期的内容
|
||||
if grep -q "Book Catalog" test_output.html && grep -q "XML Developer"s Guide" test_output.html; then
|
||||
LOG_INFO "转换结果符合预期"
|
||||
else
|
||||
LOG_ERROR "转换结果不符合预期"
|
||||
CHECK_RESULT 1 0 0 "转换结果验证失败"
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "未生成有效的输出文件"
|
||||
CHECK_RESULT 1 0 0 "输出文件验证失败"
|
||||
fi
|
||||
|
||||
# 使用Python测试libxslt库
|
||||
LOG_INFO "使用Python测试libxslt库功能"
|
||||
cat > test_libxslt.py << "EOF"
|
||||
import sys
|
||||
import libxml2
|
||||
import libxslt
|
||||
|
||||
# 解析XML文件
|
||||
xml_doc = libxml2.parseFile("test_input.xml")
|
||||
if xml_doc is None:
|
||||
print("Failed to parse XML file")
|
||||
sys.exit(1)
|
||||
|
||||
# 解析XSLT文件
|
||||
xsl_doc = libxml2.parseFile("test_transform.xsl")
|
||||
if xsl_doc is None:
|
||||
print("Failed to parse XSLT file")
|
||||
sys.exit(1)
|
||||
|
||||
# 创建XSLT样式表
|
||||
styledoc = libxslt.parseStylesheetDoc(xsl_doc)
|
||||
if styledoc is None:
|
||||
print("Failed to create stylesheet")
|
||||
sys.exit(1)
|
||||
|
||||
# 应用转换
|
||||
result = styledoc.applyStylesheet(xml_doc, None)
|
||||
if result is None:
|
||||
print("Failed to apply stylesheet")
|
||||
sys.exit(1)
|
||||
|
||||
# 保存结果
|
||||
styledoc.saveResultToFilename("test_python_output.html", result, 0)
|
||||
|
||||
# 清理
|
||||
styledoc.freeStylesheet()
|
||||
result.freeDoc()
|
||||
xml_doc.freeDoc()
|
||||
xsl_doc.freeDoc()
|
||||
|
||||
print("Python libxslt test completed successfully")
|
||||
EOF
|
||||
|
||||
python3 test_libxslt.py
|
||||
CHECK_RESULT $? 0 0 "Python libxslt库测试失败"
|
||||
|
||||
# 验证Python生成的输出
|
||||
LOG_INFO "验证Python生成的输出文件"
|
||||
if [ -f test_python_output.html ] && [ -s test_python_output.html ]; then
|
||||
LOG_INFO "Python成功生成HTML文件"
|
||||
if grep -q "Book Catalog" test_python_output.html; then
|
||||
LOG_INFO "Python转换结果符合预期"
|
||||
else
|
||||
LOG_ERROR "Python转换结果不符合预期"
|
||||
CHECK_RESULT 1 0 0 "Python输出文件验证失败"
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "Python未生成有效的输出文件"
|
||||
CHECK_RESULT 1 0 0 "Python输出文件验证失败"
|
||||
fi
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f test_input.xml test_transform.xsl test_output.html test_python_output.html test_libxslt.py
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
# 如果测试前未安装,则卸载软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "卸载python3-libxslt软件包"
|
||||
dnf remove -y python3-libxslt
|
||||
CHECK_RESULT $? 0 0 "卸载python3-libxslt失败"
|
||||
else
|
||||
LOG_INFO "保持python3-libxslt安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "python3-libxslt XML和XSLT解析功能测试完成"
|
||||
}
|
||||
|
||||
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-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试执行XML到HTML的转换
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试执行XML到HTML的转换"
|
||||
LOG_INFO "步骤1:检查环境中是否已安装python3-libxslt软件包"
|
||||
rpm -q python3-libxslt > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "python3-libxslt软件包已安装,测试后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "python3-libxslt软件包未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有python3-libxslt软件包"
|
||||
dnf list available python3-libxslt > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-libxslt软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装python3-libxslt软件包"
|
||||
dnf install -y python3-libxslt
|
||||
CHECK_RESULT $? 0 0 "安装python3-libxslt失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:准备测试用的XML和XSLT文件"
|
||||
cat > test_input.xml << "EOF"
|
||||
<?xml version="1.0"?>
|
||||
<catalog>
|
||||
<book id="bk101">
|
||||
<author>Gambardella, Matthew</author>
|
||||
<title>XML Developer"s Guide</title>
|
||||
<genre>Computer</genre>
|
||||
<price>44.95</price>
|
||||
</book>
|
||||
</catalog>
|
||||
EOF
|
||||
|
||||
cat > test_transform.xslt << "EOF"
|
||||
<?xml version="1.0"?>
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:template match="/">
|
||||
<html>
|
||||
<body>
|
||||
<h2>Book Catalog</h2>
|
||||
<table border="1">
|
||||
<tr bgcolor="#9acd32">
|
||||
<th>Title</th>
|
||||
<th>Author</th>
|
||||
<th>Price</th>
|
||||
</tr>
|
||||
<xsl:for-each select="catalog/book">
|
||||
<tr>
|
||||
<td><xsl:value-of select="title"/></td>
|
||||
<td><xsl:value-of select="author"/></td>
|
||||
<td><xsl:value-of select="price"/></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
EOF
|
||||
|
||||
LOG_INFO "步骤5:使用xsltproc执行XML到HTML的转换"
|
||||
xsltproc test_transform.xslt test_input.xml -o test_output.html
|
||||
CHECK_RESULT $? 0 0 "使用xsltproc执行XML到HTML转换失败"
|
||||
|
||||
LOG_INFO "步骤6:验证生成的HTML文件内容"
|
||||
grep -q "XML Developer"s Guide" test_output.html
|
||||
CHECK_RESULT $? 0 0 "生成的HTML文件中未找到预期内容"
|
||||
grep -q "Gambardella, Matthew" test_output.html
|
||||
CHECK_RESULT $? 0 0 "生成的HTML文件中未找到预期内容"
|
||||
grep -q "44.95" test_output.html
|
||||
CHECK_RESULT $? 0 0 "生成的HTML文件中未找到预期内容"
|
||||
|
||||
LOG_INFO "步骤7:清理测试文件"
|
||||
rm -f test_input.xml test_transform.xslt test_output.html
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤8:卸载测试过程中安装的python3-libxslt软件包"
|
||||
dnf remove -y python3-libxslt
|
||||
CHECK_RESULT $? 0 0 "卸载python3-libxslt失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:XML到HTML转换功能测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,167 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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 : 测试使用libxslt进行XSLT转换的基本功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已安装python3-libxslt软件包
|
||||
LOG_INFO "1. 检查是否已安装python3-libxslt软件包"
|
||||
rpm -q python3-libxslt > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "python3-libxslt已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "python3-libxslt未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在python3-libxslt软件包
|
||||
LOG_INFO "2. 检查yum源中是否存在python3-libxslt软件包"
|
||||
dnf list available python3-libxslt > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到python3-libxslt软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查xsltproc命令是否存在
|
||||
LOG_INFO "3. 检查xsltproc命令是否存在"
|
||||
command -v xsltproc > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_INFO "xsltproc命令未安装,尝试安装libxslt软件包"
|
||||
dnf list available libxslt > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到libxslt软件包"
|
||||
exit 255
|
||||
fi
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
dnf install -y libxslt > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装libxslt失败"
|
||||
LOG_INFO "libxslt安装成功"
|
||||
fi
|
||||
else
|
||||
LOG_INFO "xsltproc命令已存在"
|
||||
fi
|
||||
|
||||
# 安装python3-libxslt(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "4. 安装python3-libxslt软件包"
|
||||
dnf install -y python3-libxslt > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装python3-libxslt失败"
|
||||
LOG_INFO "python3-libxslt安装成功"
|
||||
fi
|
||||
|
||||
# 创建测试用的XML和XSL文件
|
||||
LOG_INFO "5. 创建测试用的XML和XSL文件"
|
||||
cat > test.xml << EOF
|
||||
<?xml version="1.0"?>
|
||||
<catalog>
|
||||
<book id="bk101">
|
||||
<author>Gambardella, Matthew</author>
|
||||
<title>XML Developer"s Guide</title>
|
||||
<genre>Computer</genre>
|
||||
<price>44.95</price>
|
||||
<publish_date>2000-10-01</publish_date>
|
||||
<description>An in-depth look at creating applications with XML.</description>
|
||||
</book>
|
||||
</catalog>
|
||||
EOF
|
||||
|
||||
cat > test.xsl << EOF
|
||||
<?xml version="1.0"?>
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
||||
<xsl:template match="/">
|
||||
<html>
|
||||
<body>
|
||||
<h2>Book Catalog</h2>
|
||||
<table border="1">
|
||||
<tr>
|
||||
<th>Title</th>
|
||||
<th>Author</th>
|
||||
<th>Price</th>
|
||||
</tr>
|
||||
<xsl:for-each select="catalog/book">
|
||||
<tr>
|
||||
<td><xsl:value-of select="title"/></td>
|
||||
<td><xsl:value-of select="author"/></td>
|
||||
<td><xsl:value-of select="price"/></td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
EOF
|
||||
|
||||
# 检查xsltproc命令是否支持基本参数
|
||||
LOG_INFO "6. 检查xsltproc命令是否支持基本参数"
|
||||
xsltproc --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "xsltproc命令不支持--help参数"
|
||||
LOG_INFO "xsltproc命令参数检查通过"
|
||||
|
||||
# 使用xsltproc进行XSLT转换测试
|
||||
LOG_INFO "7. 使用xsltproc进行XSLT转换测试"
|
||||
xsltproc test.xsl test.xml > output.html 2>&1
|
||||
CHECK_RESULT $? 0 0 "xsltproc执行XSLT转换失败"
|
||||
|
||||
# 检查转换结果
|
||||
LOG_INFO "8. 检查XSLT转换结果"
|
||||
if [ -s output.html ]; then
|
||||
grep -q "Book Catalog" output.html
|
||||
CHECK_RESULT $? 0 0 "转换结果中未找到预期内容"
|
||||
grep -q "XML Developer"s Guide" output.html
|
||||
CHECK_RESULT $? 0 0 "转换结果中未找到书籍标题"
|
||||
LOG_INFO "XSLT转换测试成功,结果文件output.html已生成"
|
||||
else
|
||||
LOG_ERROR "转换结果文件为空"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "9. 清理测试文件"
|
||||
rm -f test.xml test.xsl output.html
|
||||
LOG_INFO "测试文件清理完成"
|
||||
|
||||
# 根据初始状态决定是否卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "10. 卸载测试过程中安装的软件包"
|
||||
dnf remove -y python3-libxslt > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载python3-libxslt失败"
|
||||
LOG_INFO "python3-libxslt卸载成功"
|
||||
|
||||
# 检查是否安装了libxslt,如果是测试过程中安装的则卸载
|
||||
rpm -q libxslt > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
# 检查libxslt是否是测试前就安装的
|
||||
if ! command -v xsltproc > /dev/null 2>&1; then
|
||||
dnf remove -y libxslt > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载libxslt失败"
|
||||
LOG_INFO "libxslt卸载成功"
|
||||
else
|
||||
LOG_INFO "libxslt在测试前已安装,保持原状"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
LOG_INFO "10. 测试前已安装python3-libxslt,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,69 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-12
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test metrics collection functionality
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试指标收集功能"
|
||||
|
||||
# 检查是否已安装ganglia相关软件包
|
||||
LOG_INFO "检查是否已安装ganglia相关软件包"
|
||||
if rpm -q ganglia-gmond &>/dev/null; then
|
||||
LOG_INFO "ganglia-gmond已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "ganglia-gmond未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在ganglia-gmond软件包
|
||||
LOG_INFO "检查yum源中是否存在ganglia-gmond软件包"
|
||||
if ! dnf list available ganglia-gmond &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到ganglia-gmond软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装ganglia-gmond
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装ganglia-gmond"
|
||||
dnf install -y ganglia-gmond
|
||||
CHECK_RESULT $? 0 0 "安装ganglia-gmond失败"
|
||||
fi
|
||||
|
||||
# 检查gmond服务状态
|
||||
LOG_INFO "检查gmond服务状态"
|
||||
systemctl status gmond &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "gmond服务未运行"
|
||||
|
||||
# 测试指标收集功能
|
||||
LOG_INFO "测试指标收集功能"
|
||||
gmetric --name="test_metric" --value="100" --type="uint32" --units="count"
|
||||
CHECK_RESULT $? 0 0 "指标收集失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载ganglia-gmond
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载ganglia-gmond"
|
||||
dnf remove -y ganglia-gmond
|
||||
CHECK_RESULT $? 0 0 "卸载ganglia-gmond失败"
|
||||
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-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test initialization of metrics-ganglia
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:test_metrics-ganglia_function_init
|
||||
|
||||
LOG_INFO "开始测试 metrics-ganglia 的初始化功能"
|
||||
|
||||
# 检查是否已安装 metrics-ganglia
|
||||
LOG_INFO "检查 metrics-ganglia 是否已安装"
|
||||
if dnf list installed metrics-ganglia &>/dev/null; then
|
||||
LOG_INFO "metrics-ganglia 已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "metrics-ganglia 未安装,准备安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否有 metrics-ganglia 软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 metrics-ganglia"
|
||||
if ! dnf list available metrics-ganglia &>/dev/null; then
|
||||
LOG_ERROR "yum 源中未找到 metrics-ganglia 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装 metrics-ganglia
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装 metrics-ganglia"
|
||||
dnf install -y metrics-ganglia
|
||||
CHECK_RESULT $? 0 0 "安装 metrics-ganglia 失败"
|
||||
fi
|
||||
|
||||
# 测试初始化功能
|
||||
LOG_INFO "测试 metrics-ganglia 的初始化功能"
|
||||
ganglia-init --test-param
|
||||
CHECK_RESULT $? 0 0 "metrics-ganglia 初始化失败"
|
||||
|
||||
# 如果之前未安装,则卸载 metrics-ganglia
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载 metrics-ganglia"
|
||||
dnf remove -y metrics-ganglia
|
||||
CHECK_RESULT $? 0 0 "卸载 metrics-gangalia失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,87 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test neon-config --cflags for compiler flags
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试neon-config --cflags编译器标志"
|
||||
LOG_INFO "步骤1: 检查neon-devel软件包是否在yum源中"
|
||||
dnf list available neon-devel > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到neon-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查当前环境中是否已安装neon-devel"
|
||||
rpm -q neon-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel已安装,测试结束后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "neon-devel未安装,将在测试前安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3: 安装neon-devel软件包"
|
||||
dnf install -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 检查neon-config命令是否存在"
|
||||
which neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令不存在"
|
||||
|
||||
LOG_INFO "步骤5: 检查neon-config命令是否支持--cflags参数"
|
||||
neon-config --help | grep -q "\-\-cflags"
|
||||
CHECK_RESULT $? 0 0 "neon-config命令不支持--cflags参数"
|
||||
|
||||
LOG_INFO "步骤6: 执行neon-config --cflags命令"
|
||||
output=$(neon-config --cflags 2>&1)
|
||||
result=$?
|
||||
CHECK_RESULT $result 0 0 "执行neon-config --cflags命令失败"
|
||||
LOG_INFO "neon-config --cflags输出: $output"
|
||||
|
||||
LOG_INFO "步骤7: 验证输出内容包含编译器标志"
|
||||
if [ -z "$output" ]; then
|
||||
LOG_ERROR "neon-config --cflags未输出任何内容"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if echo "$output" | grep -q "-I"; then
|
||||
LOG_INFO "输出包含-I标志,测试通过"
|
||||
else
|
||||
LOG_ERROR "输出未包含预期的编译器标志"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤8: 清理环境"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载neon-devel软件包"
|
||||
dnf remove -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel软件包失败"
|
||||
LOG_INFO "环境已恢复到测试前状态"
|
||||
else
|
||||
LOG_INFO "保持neon-devel软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,72 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test neon-config --help output
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试neon-config --help输出"
|
||||
LOG_INFO "步骤1:检查环境中是否已安装neon-devel软件包"
|
||||
rpm -q neon-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel软件包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "neon-devel软件包未安装,将在测试前安装,测试结束后卸载"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否存在neon-devel软件包"
|
||||
dnf list available neon-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到neon-devel软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到neon-devel软件包,测试无法继续"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装neon-devel软件包"
|
||||
dnf install -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查neon-config命令是否存在"
|
||||
which neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令未找到"
|
||||
|
||||
LOG_INFO "步骤5:检查--help参数是否被支持"
|
||||
neon-config --help > /dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_ERROR "neon-config命令不支持--help参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6:执行neon-config --help命令并检查输出"
|
||||
neon-config --help
|
||||
CHECK_RESULT $? 0 0 "neon-config --help命令执行失败"
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤7:卸载neon-devel软件包以恢复环境"
|
||||
dnf remove -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,110 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test neon-config --libs for linker flags
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试neon-config --libs链接器标志功能
|
||||
|
||||
LOG_INFO "开始测试neon-config --libs链接器标志功能"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="neon-devel"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "检查${PACKAGE_NAME}软件包是否已安装"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
PACKAGE_INSTALLED=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
if [ ${PACKAGE_INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "${PACKAGE_NAME}软件包已安装,测试后将保持安装状态"
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}软件包未安装,将在测试后卸载"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中没有${PACKAGE_NAME}软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ ${PACKAGE_INSTALLED} -ne 0 ]; then
|
||||
LOG_INFO "安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
fi
|
||||
|
||||
# 检查neon-config命令是否存在
|
||||
LOG_INFO "检查neon-config命令是否存在"
|
||||
which neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令不存在"
|
||||
|
||||
# 检查--libs参数是否支持
|
||||
LOG_INFO "检查neon-config是否支持--libs参数"
|
||||
neon-config --help 2>&1 | grep -q "\-\-libs"
|
||||
CHECK_RESULT $? 0 0 "neon-config不支持--libs参数"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config不支持--libs参数"
|
||||
# 如果之前未安装,需要卸载
|
||||
if [ ${PACKAGE_INSTALLED} -ne 0 ]; then
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行neon-config --libs命令
|
||||
LOG_INFO "执行neon-config --libs命令获取链接器标志"
|
||||
neon-config --libs > /tmp/neon_libs_output.txt 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行neon-config --libs命令失败"
|
||||
|
||||
# 检查输出内容
|
||||
LOG_INFO "检查neon-config --libs命令输出"
|
||||
if [ -s /tmp/neon_libs_output.txt ]; then
|
||||
LOG_INFO "neon-config --libs输出内容:"
|
||||
cat /tmp/neon_libs_output.txt
|
||||
# 检查输出是否包含链接器标志
|
||||
grep -q "-l" /tmp/neon_libs_output.txt
|
||||
CHECK_RESULT $? 0 0 "neon-config --libs输出不包含链接器标志"
|
||||
else
|
||||
LOG_ERROR "neon-config --libs输出为空"
|
||||
CHECK_RESULT 1 0 0 "neon-config --libs输出为空"
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
rm -f /tmp/neon_libs_output.txt
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "恢复测试环境"
|
||||
if [ ${PACKAGE_INSTALLED} -ne 0 ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
else
|
||||
LOG_INFO "保持${PACKAGE_NAME}软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试neon-config --libs链接器标志功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,66 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-02
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test the execution of neon-devel package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
LOG_INFO "开始测试neon-devel软件包的功能执行"
|
||||
|
||||
# 检查是否已安装neon-devel软件包
|
||||
LOG_INFO "检查neon-devel软件包是否已安装"
|
||||
if dnf list installed neon-devel &>/dev/null; then
|
||||
LOG_INFO "neon-devel软件包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "neon-devel软件包未安装,将在测试结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel软件包
|
||||
LOG_INFO "检查yum源中是否存在neon-devel软件包"
|
||||
if ! dnf list available neon-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到neon-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装neon-devel软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装neon-devel软件包"
|
||||
dnf install -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
# 测试执行命令(示例命令,需根据实际需求调整)
|
||||
LOG_INFO "测试neon-devel软件包的某个功能执行"
|
||||
sample_command --parameter value
|
||||
CHECK_RESULT $? 0 0 "执行命令失败"
|
||||
|
||||
# 如果最初未安装,则在测试结束后卸载neon-devel软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载neon-devel软件包"
|
||||
dnf remove -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel软件包失败"
|
||||
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-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test neon-config --support for SSL feature
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查当前环境是否已经安装neon-devel软件包
|
||||
LOG_INFO "检查neon-devel软件包是否已安装"
|
||||
rpm -q neon-devel &> /dev/null
|
||||
NEON_INSTALLED=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
if [ $NEON_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "neon-devel软件包已安装,脚本结束后将保持安装状态"
|
||||
else
|
||||
LOG_INFO "neon-devel软件包未安装,将在测试过程中安装并在结束后卸载"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel软件包
|
||||
LOG_INFO "检查yum源中是否有neon-devel软件包"
|
||||
dnf list available neon-devel &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到neon-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装neon-devel软件包
|
||||
if [ $NEON_INSTALLED -ne 0 ]; then
|
||||
LOG_INFO "安装neon-devel软件包"
|
||||
dnf install -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
# 测试neon-config --support参数是否存在
|
||||
LOG_INFO "测试neon-config --support参数是否存在"
|
||||
neon-config --help 2>&1 | grep -q "\-\-support"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config命令不支持--support参数"
|
||||
# 如果之前未安装,需要卸载已安装的软件包
|
||||
if [ $NEON_INSTALLED -ne 0 ]; then
|
||||
LOG_INFO "卸载neon-devel软件包"
|
||||
dnf remove -y neon-devel
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试neon-config --support SSL功能
|
||||
LOG_INFO "测试neon-config --support SSL功能"
|
||||
neon-config --support ssl
|
||||
CHECK_RESULT $? 0 0 "neon-config --support ssl执行失败"
|
||||
|
||||
# 测试neon-config --support SSL功能输出内容
|
||||
LOG_INFO "验证neon-config --support ssl输出内容"
|
||||
neon-config --support ssl | grep -q "SSL"
|
||||
CHECK_RESULT $? 0 0 "neon-config --support ssl未输出SSL相关信息"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ $NEON_INSTALLED -ne 0 ]; then
|
||||
LOG_INFO "卸载neon-devel软件包"
|
||||
dnf remove -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel软件包失败"
|
||||
else
|
||||
LOG_INFO "保持neon-devel软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,69 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test neon-config --support for zlib feature
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test neon-config --support for zlib feature"
|
||||
|
||||
LOG_INFO "步骤1:检查系统中是否已安装neon-devel软件包"
|
||||
if rpm -q neon-devel &>/dev/null; then
|
||||
LOG_INFO "neon-devel软件包已安装,脚本结束时将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "neon-devel软件包未安装,将在测试过程中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有neon-devel软件包"
|
||||
if ! dnf list available neon-devel &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到neon-devel软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3:安装neon-devel软件包"
|
||||
dnf install -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查neon-config命令是否支持--support参数"
|
||||
neon-config --support &>/dev/null
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_ERROR "neon-config命令不支持--support参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:执行neon-config --support命令检查zlib特性支持"
|
||||
neon-config --support | grep -q "zlib"
|
||||
CHECK_RESULT $? 0 0 "neon-config --support未显示zlib特性支持"
|
||||
|
||||
LOG_INFO "步骤6:清理环境"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载neon-devel软件包"
|
||||
dnf remove -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel软件包失败"
|
||||
else
|
||||
LOG_INFO "neon-devel软件包已安装,保持原状"
|
||||
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-12-02
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test the uninstallation of neon-devel package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装neon-devel包
|
||||
LOG_INFO "检查是否已安装neon-devel包"
|
||||
rpm -q neon-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "neon-devel未安装,将在测试结束后卸载"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel包
|
||||
LOG_INFO "检查yum源中是否有neon-devel包"
|
||||
dnf list available neon-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到neon-devel包"
|
||||
|
||||
# 安装neon-devel包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装neon-devel包"
|
||||
dnf install -y neon-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 1 "安装neon-devel包失败"
|
||||
fi
|
||||
|
||||
# 测试卸载neon-devel包功能
|
||||
LOG_INFO "测试卸载neon-devel包功能"
|
||||
dnf remove -y neon-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 1 "卸载neon-devel包失败"
|
||||
|
||||
# 环境恢复
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "环境恢复:重新安装neon-devel包"
|
||||
dnf install -y neon-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 1 "重新安装neon-devel包失败"
|
||||
else
|
||||
LOG_INFO "环境恢复:无需操作,保持原状"
|
||||
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-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --la-file 参数,用于打印 libtool .la 文件的位置
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已经安装 neon-devel 和 neon-config 软件包
|
||||
LOG_INFO "检查 neon-devel 和 neon-config 软件包是否已安装"
|
||||
rpm -q neon-devel neon-config > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel 和 neon-config 软件包已安装,测试结束后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "neon-devel 和 neon-config 软件包未安装,将在测试步骤中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否存在 neon-devel 和 neon-config 软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 neon-devel 和 neon-config 软件包"
|
||||
dnf list available neon-devel neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum 源中缺少 neon-devel 或 neon-config 软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum 源中缺少 neon-devel 或 neon-config 软件包,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "安装 neon-devel 和 neon-config 软件包"
|
||||
dnf install -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "安装 neon-devel 和 neon-config 软件包失败"
|
||||
fi
|
||||
|
||||
# 测试 neon-config 命令的 --la-file 参数
|
||||
LOG_INFO "测试 neon-config 命令的 --la-file 参数,用于打印 libtool .la 文件的位置"
|
||||
# 首先检查 neon-config 命令是否支持 --la-file 参数
|
||||
neon-config --help | grep -q -- "--la-file"
|
||||
CHECK_RESULT $? 0 0 "neon-config 命令不支持 --la-file 参数"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config 命令不支持 --la-file 参数,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行 neon-config --la-file 命令
|
||||
LOG_INFO "执行 neon-config --la-file 命令"
|
||||
neon-config --la-file
|
||||
CHECK_RESULT $? 0 0 "执行 neon-config --la-file 命令失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$already_installed" = "false" ]; then
|
||||
LOG_INFO "卸载 neon-devel 和 neon-config 软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "卸载 neon-devel 和 neon-config 软件包失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装 neon-devel 和 neon-config 软件包,测试结束后保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,112 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --libs 参数,用于打印库链接信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试 neon-config 命令的 --libs 参数功能
|
||||
LOG_INFO "开始测试 neon-config 命令的 --libs 参数功能"
|
||||
|
||||
# 步骤1:检查测试环境是否已安装 neon-devel 和 neon-config 软件包
|
||||
LOG_INFO "检查测试环境是否已安装 neon-devel 和 neon-config 软件包"
|
||||
rpm -q neon-devel neon-config > /dev/null 2>&1
|
||||
pkg_installed=$?
|
||||
|
||||
# 步骤2:如果未安装,则从yum源查找并安装软件包
|
||||
if [ $pkg_installed -ne 0 ]; then
|
||||
LOG_INFO "检测到 neon-devel 和 neon-config 未安装,准备从yum源安装"
|
||||
|
||||
# 检查yum源中是否存在 neon-devel 软件包
|
||||
LOG_INFO "检查yum源中是否存在 neon-devel 软件包"
|
||||
dnf list available neon-devel 2>&1 | grep -q "neon-devel"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到 neon-devel 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在 neon-config 软件包
|
||||
LOG_INFO "检查yum源中是否存在 neon-config 软件包"
|
||||
dnf list available neon-config 2>&1 | grep -q "neon-config"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到 neon-config 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装软件包
|
||||
LOG_INFO "开始安装 neon-devel 和 neon-config 软件包"
|
||||
dnf install -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "安装 neon-devel 和 neon-config 软件包失败"
|
||||
|
||||
# 标记需要清理
|
||||
need_cleanup=1
|
||||
else
|
||||
LOG_INFO "neon-devel 和 neon-config 软件包已安装"
|
||||
need_cleanup=0
|
||||
fi
|
||||
|
||||
# 步骤3:验证 neon-config 命令是否存在
|
||||
LOG_INFO "验证 neon-config 命令是否存在"
|
||||
which neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config 命令不存在"
|
||||
|
||||
# 步骤4:检查 neon-config 命令是否支持 --libs 参数
|
||||
LOG_INFO "检查 neon-config 命令是否支持 --libs 参数"
|
||||
neon-config --help 2>&1 | grep -q "\-\-libs"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config 命令不支持 --libs 参数"
|
||||
# 如果之前安装了软件包,需要卸载
|
||||
if [ $need_cleanup -eq 1 ]; then
|
||||
LOG_INFO "清理安装的软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5:执行 neon-config --libs 命令
|
||||
LOG_INFO "执行 neon-config --libs 命令"
|
||||
neon-config --libs
|
||||
CHECK_RESULT $? 0 0 "执行 neon-config --libs 命令失败"
|
||||
|
||||
# 步骤6:验证输出内容包含库链接信息
|
||||
LOG_INFO "验证 neon-config --libs 输出内容"
|
||||
output=$(neon-config --libs 2>&1)
|
||||
echo "$output" | grep -q "-lneon"
|
||||
CHECK_RESULT $? 0 0 "neon-config --libs 输出未包含库链接信息"
|
||||
|
||||
# 步骤7:验证输出格式正确性
|
||||
LOG_INFO "验证 neon-config --libs 输出格式"
|
||||
if [ -z "$output" ]; then
|
||||
LOG_ERROR "neon-config --libs 输出为空"
|
||||
CHECK_RESULT 1 0 0 "输出验证失败"
|
||||
fi
|
||||
|
||||
# 步骤8:清理测试环境
|
||||
if [ $need_cleanup -eq 1 ]; then
|
||||
LOG_INFO "清理测试环境,卸载安装的软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "卸载 neon-devel 和 neon-config 软件包失败"
|
||||
LOG_INFO "测试环境已恢复"
|
||||
else
|
||||
LOG_INFO "测试环境保持原状,未安装的软件包已卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "neon-config --libs 参数功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,94 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --prefix 参数,用于更改前缀路径
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 软件包名称
|
||||
PACKAGE_NAME="neon-devel"
|
||||
COMMAND_NAME="neon-config"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "步骤1:检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在${PACKAGE_NAME}软件包"
|
||||
|
||||
# 判断软件包是否已安装
|
||||
LOG_INFO "步骤2:检查${PACKAGE_NAME}软件包是否已安装"
|
||||
rpm -q ${PACKAGE_NAME} &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "${PACKAGE_NAME}软件包已安装"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}软件包未安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
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
|
||||
|
||||
# 检查neon-config命令是否存在
|
||||
LOG_INFO "步骤4:检查${COMMAND_NAME}命令是否存在"
|
||||
which ${COMMAND_NAME} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "${COMMAND_NAME}命令不存在"
|
||||
LOG_INFO "${COMMAND_NAME}命令存在"
|
||||
|
||||
# 检查--prefix参数是否支持
|
||||
LOG_INFO "步骤5:检查${COMMAND_NAME}命令是否支持--prefix参数"
|
||||
${COMMAND_NAME} --help 2>&1 | grep -q "\-\-prefix"
|
||||
CHECK_RESULT $? 0 0 "${COMMAND_NAME}命令不支持--prefix参数"
|
||||
LOG_INFO "${COMMAND_NAME}命令支持--prefix参数"
|
||||
|
||||
# 测试--prefix参数功能
|
||||
LOG_INFO "步骤6:测试${COMMAND_NAME}命令的--prefix参数"
|
||||
TEST_PREFIX="/tmp/test_prefix_$$"
|
||||
mkdir -p ${TEST_PREFIX}
|
||||
${COMMAND_NAME} --prefix=${TEST_PREFIX} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "执行${COMMAND_NAME} --prefix失败"
|
||||
LOG_INFO "执行${COMMAND_NAME} --prefix成功"
|
||||
|
||||
# 清理测试目录
|
||||
LOG_INFO "步骤7:清理测试目录"
|
||||
rm -rf ${TEST_PREFIX}
|
||||
CHECK_RESULT $? 0 0 "清理测试目录失败"
|
||||
LOG_INFO "清理测试目录成功"
|
||||
|
||||
# 如果之前未安装,则卸载软件包
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "步骤8:卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包成功"
|
||||
else
|
||||
LOG_INFO "步骤8:保持${PACKAGE_NAME}软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:${COMMAND_NAME}命令的--prefix参数功能正常"
|
||||
}
|
||||
|
||||
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 : 2026-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 dav 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装neon-devel和neon-config
|
||||
LOG_INFO "检查neon-devel和neon-config是否已安装"
|
||||
rpm -q neon-devel neon-config > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel和neon-config已安装,将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "neon-devel和neon-config未安装,将在测试中安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel和neon-config软件包
|
||||
LOG_INFO "检查yum源中是否有neon-devel和neon-config软件包"
|
||||
dnf list available neon-devel neon-config > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有neon-devel或neon-config软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装neon-devel和neon-config软件包"
|
||||
dnf install -y neon-devel neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel和neon-config失败"
|
||||
fi
|
||||
|
||||
# 测试neon-config命令的--support参数检查dav特性支持情况
|
||||
LOG_INFO "测试neon-config命令的--support参数检查dav特性支持情况"
|
||||
neon-config --support dav > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-config命令支持--support dav参数"
|
||||
else
|
||||
LOG_ERROR "neon-config命令不支持--support dav参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行neon-config --support dav命令并检查结果
|
||||
LOG_INFO "执行neon-config --support dav命令"
|
||||
neon-config --support dav
|
||||
CHECK_RESULT $? 0 0 "neon-config --support dav命令执行失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载neon-devel和neon-config软件包"
|
||||
dnf remove -y neon-devel neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel和neon-config失败"
|
||||
else
|
||||
LOG_INFO "保持neon-devel和neon-config安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,71 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 i18n 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装neon-devel包
|
||||
LOG_INFO "检查neon-devel软件包是否已安装"
|
||||
rpm -q neon-devel > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel软件包已安装,测试完成后将保持安装状态"
|
||||
INSTALLED_BEFORE="true"
|
||||
else
|
||||
LOG_INFO "neon-devel软件包未安装,将在测试前安装"
|
||||
INSTALLED_BEFORE="false"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel包
|
||||
LOG_INFO "检查yum源中是否有neon-devel软件包"
|
||||
dnf list available neon-devel > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到neon-devel软件包"
|
||||
|
||||
# 如果未安装,则安装neon-devel包
|
||||
if [ "${INSTALLED_BEFORE}" = "false" ]; then
|
||||
LOG_INFO "安装neon-devel软件包"
|
||||
dnf install -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel软件包失败"
|
||||
fi
|
||||
|
||||
# 检查neon-config命令是否存在
|
||||
LOG_INFO "检查neon-config命令是否存在"
|
||||
which neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令未找到"
|
||||
|
||||
# 检查neon-config命令是否支持--support参数
|
||||
LOG_INFO "检查neon-config命令是否支持--support参数"
|
||||
neon-config --help | grep -q "\-\-support"
|
||||
CHECK_RESULT $? 0 255 "neon-config命令不支持--support参数"
|
||||
|
||||
# 测试neon-config命令的--support参数检查i18n特性支持情况
|
||||
LOG_INFO "测试neon-config命令的--support参数检查i18n特性支持情况"
|
||||
neon-config --support i18n > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令检查i18n特性支持失败"
|
||||
|
||||
# 恢复环境:如果之前未安装,则卸载neon-devel包
|
||||
if [ "${INSTALLED_BEFORE}" = "false" ]; then
|
||||
LOG_INFO "卸载neon-devel软件包"
|
||||
dnf remove -y neon-devel
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel软件包失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装neon-devel软件包,测试完成后保持安装状态"
|
||||
fi
|
||||
}
|
||||
|
||||
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-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 ipv6 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 neon-config 命令的 --support 参数检查 ipv6 特性支持情况"
|
||||
|
||||
# 检查 yum 源中是否存在 neon-devel 和 neon-config 软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 neon-devel 和 neon-config 软件包"
|
||||
if ! dnf list available neon-devel 2>/dev/null | grep -q neon-devel; then
|
||||
LOG_ERROR "yum 源中未找到 neon-devel 软件包"
|
||||
exit 255
|
||||
fi
|
||||
if ! dnf list available neon-config 2>/dev/null | grep -q neon-config; then
|
||||
LOG_ERROR "yum 源中未找到 neon-config 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 判断 neon-devel 是否已经安装
|
||||
LOG_INFO "判断 neon-devel 是否已经安装"
|
||||
if rpm -q neon-devel >/dev/null 2>&1; then
|
||||
already_installed=true
|
||||
LOG_INFO "neon-devel 已经安装,脚本结束后将保持安装状态"
|
||||
else
|
||||
already_installed=false
|
||||
LOG_INFO "neon-devel 未安装,将在测试步骤中安装"
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装 neon-devel 和 neon-config
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "安装 neon-devel 和 neon-config 软件包"
|
||||
dnf install -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "安装 neon-devel 和 neon-config 失败"
|
||||
fi
|
||||
|
||||
# 检查 neon-config 命令是否支持 --support 参数
|
||||
LOG_INFO "检查 neon-config 命令是否支持 --support 参数"
|
||||
if ! neon-config --help 2>&1 | grep -q -- "--support"; then
|
||||
LOG_ERROR "neon-config 命令不支持 --support 参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行 neon-config --support 命令检查 ipv6 特性支持情况
|
||||
LOG_INFO "执行 neon-config --support 命令检查 ipv6 特性支持情况"
|
||||
neon-config --support ipv6
|
||||
CHECK_RESULT $? 0 0 "neon-config --support ipv6 命令执行失败"
|
||||
|
||||
# 环境恢复:如果之前未安装,则卸载 neon-devel 和 neon-config
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载 neon-devel 和 neon-config 软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "卸载 neon-devel 和 neon-config 失败"
|
||||
else
|
||||
LOG_INFO "保持 neon-devel 和 neon-config 的安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试 neon-config 命令的 --support 参数检查 ipv6 特性支持情况完成"
|
||||
}
|
||||
|
||||
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-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 lfs 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装neon-devel和neon-config软件包
|
||||
LOG_INFO "检查是否已安装neon-devel和neon-config软件包"
|
||||
rpm -q neon-devel neon-config
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel和neon-config已安装"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "neon-devel和neon-config未安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel和neon-config软件包
|
||||
LOG_INFO "检查yum源中是否有neon-devel和neon-config软件包"
|
||||
dnf list available neon-devel neon-config
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到neon-devel或neon-config软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装neon-devel和neon-config软件包"
|
||||
dnf install -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel和neon-config失败"
|
||||
fi
|
||||
|
||||
# 检查neon-config命令是否支持--support参数
|
||||
LOG_INFO "检查neon-config命令是否支持--support参数"
|
||||
neon-config --help | grep -q "\-\-support"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config命令不支持--support参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试neon-config命令的--support参数检查lfs特性支持情况
|
||||
LOG_INFO "测试neon-config命令的--support参数检查lfs特性支持情况"
|
||||
neon-config --support lfs
|
||||
CHECK_RESULT $? 0 0 "neon-config --support lfs执行失败"
|
||||
|
||||
# 清理环境:如果之前未安装,则卸载软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载neon-devel和neon-config软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel和neon-config失败"
|
||||
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 : 2026-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 ssl 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已经安装neon-devel和neon-config
|
||||
LOG_INFO "检查是否已安装neon-devel和neon-config软件包"
|
||||
rpm -q neon-devel neon-config > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "neon-devel和neon-config已安装,测试结束后保持安装状态"
|
||||
already_installed=1
|
||||
else
|
||||
LOG_INFO "neon-devel和neon-config未安装,将在测试中安装"
|
||||
already_installed=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有neon-devel和neon-config软件包
|
||||
LOG_INFO "检查yum源中是否有neon-devel和neon-config软件包"
|
||||
dnf list available neon-devel neon-config > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到neon-devel或neon-config软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到neon-devel或neon-config软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "安装neon-devel和neon-config软件包"
|
||||
dnf install -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel和neon-config失败"
|
||||
fi
|
||||
|
||||
# 测试neon-config命令的--support参数检查ssl特性支持情况
|
||||
LOG_INFO "测试neon-config命令的--support参数检查ssl特性支持情况"
|
||||
neon-config --support ssl > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令不支持--support参数或参数错误"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config命令不支持--support参数或参数错误"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行neon-config --support ssl命令并检查结果
|
||||
LOG_INFO "执行neon-config --support ssl命令"
|
||||
neon-config --support ssl
|
||||
CHECK_RESULT $? 0 0 "neon-config --support ssl命令执行失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ $already_installed -eq 0 ]; then
|
||||
LOG_INFO "卸载neon-devel和neon-config软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel和neon-config失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装neon-devel和neon-config,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,87 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 ts_ssl 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已安装neon-devel和neon-config软件包
|
||||
LOG_INFO "检查neon-devel和neon-config软件包是否已安装"
|
||||
rpm -q neon-devel neon-config >/dev/null 2>&1
|
||||
pkg_installed=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
if [ $pkg_installed -eq 0 ]; then
|
||||
LOG_INFO "检测到neon-devel和neon-config已安装"
|
||||
need_cleanup=0
|
||||
else
|
||||
LOG_INFO "未检测到neon-devel和neon-config安装"
|
||||
need_cleanup=1
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在所需软件包
|
||||
LOG_INFO "检查yum源中是否存在neon-devel和neon-config软件包"
|
||||
dnf list available neon-devel neon-config >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到neon-devel或neon-config软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $pkg_installed -ne 0 ]; then
|
||||
LOG_INFO "开始安装neon-devel和neon-config软件包"
|
||||
dnf install -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "安装neon-devel和neon-config失败"
|
||||
fi
|
||||
|
||||
# 检查neon-config命令是否存在
|
||||
LOG_INFO "检查neon-config命令是否存在"
|
||||
command -v neon-config >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config命令不存在"
|
||||
|
||||
# 检查--support参数是否支持
|
||||
LOG_INFO "检查neon-config命令是否支持--support参数"
|
||||
neon-config --help 2>&1 | grep -q "\-\-support"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "neon-config命令不支持--support参数"
|
||||
# 如果之前未安装,需要卸载已安装的软件包
|
||||
if [ $need_cleanup -eq 1 ]; then
|
||||
dnf remove -y neon-devel neon-config
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试--support参数检查ts_ssl特性
|
||||
LOG_INFO "测试neon-config --support ts_ssl命令"
|
||||
neon-config --support ts_ssl
|
||||
CHECK_RESULT $? 0 0 "neon-config --support ts_ssl执行失败"
|
||||
|
||||
# 环境清理
|
||||
LOG_INFO "开始环境清理"
|
||||
if [ $need_cleanup -eq 1 ]; then
|
||||
LOG_INFO "卸载测试安装的neon-devel和neon-config软件包"
|
||||
dnf remove -y neon-devel neon-config
|
||||
CHECK_RESULT $? 0 0 "卸载neon-devel和neon-config失败"
|
||||
else
|
||||
LOG_INFO "保持原有的neon-devel和neon-config安装状态"
|
||||
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-03-14
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 neon-config 命令的 --support 参数检查 zlib 特性支持情况
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试 neon-config 命令的 --support 参数检查 zlib 特性支持情况
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="neon-devel"
|
||||
CONFIG_PACKAGE="neon-config"
|
||||
|
||||
# 步骤1:检查yum源中是否存在指定软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否存在 ${PACKAGE_NAME} 和 ${CONFIG_PACKAGE} 软件包"
|
||||
dnf list available ${PACKAGE_NAME} ${CONFIG_PACKAGE} > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到 ${PACKAGE_NAME} 或 ${CONFIG_PACKAGE} 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查当前是否已安装软件包
|
||||
LOG_INFO "步骤2:检查当前是否已安装 ${PACKAGE_NAME} 和 ${CONFIG_PACKAGE} 软件包"
|
||||
rpm -q ${PACKAGE_NAME} ${CONFIG_PACKAGE} > /dev/null 2>&1
|
||||
INSTALLED=$?
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ ${INSTALLED} -ne 0 ]; then
|
||||
LOG_INFO "步骤3:安装 ${PACKAGE_NAME} 和 ${CONFIG_PACKAGE} 软件包"
|
||||
dnf install -y ${PACKAGE_NAME} ${CONFIG_PACKAGE}
|
||||
CHECK_RESULT $? 0 0 "安装 ${PACKAGE_NAME} 和 ${CONFIG_PACKAGE} 软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查 neon-config 命令是否支持 --support 参数
|
||||
LOG_INFO "步骤4:检查 neon-config 命令是否支持 --support 参数"
|
||||
neon-config --help | grep -q "\-\-support"
|
||||
CHECK_RESULT $? 0 0 "neon-config 命令不支持 --support 参数"
|
||||
|
||||
# 步骤5:使用 neon-config --support 检查 zlib 特性支持情况
|
||||
LOG_INFO "步骤5:使用 neon-config --support 检查 zlib 特性支持情况"
|
||||
neon-config --support zlib > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "neon-config --support zlib 执行失败"
|
||||
|
||||
# 步骤6:验证输出结果
|
||||
LOG_INFO "步骤6:验证 neon-config --support zlib 输出结果"
|
||||
neon-config --support zlib | grep -q "zlib"
|
||||
CHECK_RESULT $? 0 0 "neon-config --support zlib 未显示 zlib 特性支持信息"
|
||||
|
||||
# 步骤7:环境恢复
|
||||
LOG_INFO "步骤7:环境恢复"
|
||||
if [ ${INSTALLED} -ne 0 ]; then
|
||||
LOG_INFO "卸载 ${PACKAGE_NAME} 和 ${CONFIG_PACKAGE} 软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} ${CONFIG_PACKAGE}
|
||||
CHECK_RESULT $? 0 0 "卸载 ${PACKAGE_NAME} 和 ${CONFIG_PACKAGE} 软件包失败"
|
||||
else
|
||||
LOG_INFO "软件包已安装,保持安装状态"
|
||||
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-12-08
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test initialization of speech-dispatcher-festival
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "测试初始化 speech-dispatcher-festival 功能"
|
||||
|
||||
# 检查是否已安装 speech-dispatcher-festival
|
||||
if dnf list installed speech-dispatcher-festival &>/dev/null; then
|
||||
LOG_INFO "speech-dispatcher-festival 已安装,脚本结束后将保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "speech-dispatcher-festival 未安装,将在测试后卸载"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否有 speech-dispatcher-festival 软件包
|
||||
LOG_INFO "检查 yum 源中是否存在 speech-dispatcher-festival 软件包"
|
||||
if ! dnf list available speech-dispatcher-festival &>/dev/null; then
|
||||
LOG_ERROR "yum 源中不存在 speech-dispatcher-festival 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装 speech-dispatcher-festival
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装 speech-dispatcher-festival"
|
||||
dnf install -y speech-dispatcher-festival
|
||||
CHECK_RESULT $? 0 0 "安装 speech-dispatcher-festival 失败"
|
||||
fi
|
||||
|
||||
# 测试初始化功能
|
||||
LOG_INFO "测试 speech-dispatcher-festival 初始化功能"
|
||||
speech-dispatcher-festival --init &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "speech-dispatcher-festival --init 执行失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载 speech-dispatcher-festival"
|
||||
dnf remove -y speech-dispatcher-festival
|
||||
CHECK_RESULT $? 0 0 "卸载 speech-dispatcher-festival 失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
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-09-25
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic command usage
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查环境是否已安装texlive-censor
|
||||
LOG_INFO "检查是否已安装texlive-censor"
|
||||
rpm -q texlive-censor
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "texlive-censor已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "texlive-censor未安装,脚本结束后将卸载"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有texlive-censor软件包
|
||||
LOG_INFO "检查yum源中是否有texlive-censor软件包"
|
||||
dnf list available texlive-censor > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到texlive-censor软件包"
|
||||
|
||||
# 安装texlive-censor
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装texlive-censor"
|
||||
dnf install -y texlive-censor > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装texlive-censor失败"
|
||||
fi
|
||||
|
||||
# 测试基本命令用法
|
||||
LOG_INFO "测试基本命令用法"
|
||||
texlua censor.lua --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "texlua censor.lua命令不支持--help参数"
|
||||
|
||||
# 清理环境
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载texlive-censor"
|
||||
dnf remove -y texlive-censor > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-censor失败"
|
||||
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 : 2026-03-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package availability and version
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试软件包可用性和版本"
|
||||
|
||||
# 检查是否已安装 texlive-mfnfss 软件包
|
||||
LOG_INFO "步骤1:检查 texlive-mfnfss 是否已安装"
|
||||
if rpm -q texlive-mfnfss &>/dev/null; then
|
||||
LOG_INFO "texlive-mfnfss 已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "texlive-mfnfss 未安装,将在测试步骤中安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查 yum 源中是否有 texlive-mfnfss 软件包
|
||||
LOG_INFO "步骤2:检查 yum 源中是否有 texlive-mfnfss 软件包"
|
||||
if ! dnf list available texlive-mfnfss &>/dev/null; then
|
||||
LOG_ERROR "yum 源中未找到 texlive-mfnfss 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3:安装 texlive-mfnfss 软件包"
|
||||
dnf install -y texlive-mfnfss
|
||||
CHECK_RESULT $? 0 0 "安装 texlive-mfnfss 失败"
|
||||
fi
|
||||
|
||||
# 测试软件包版本
|
||||
LOG_INFO "步骤4:测试 texlive-mfnfss 版本"
|
||||
VERSION=$(rpm -q --queryformat "%{VERSION}" texlive-mfnfss)
|
||||
CHECK_RESULT $? 0 0 "获取 texlive-mfnfss 版本失败"
|
||||
LOG_INFO "texlive-mfnfss 版本为:$VERSION"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤5:卸载 texlive-mfnfss 软件包"
|
||||
dnf remove -y texlive-mfnfss
|
||||
CHECK_RESULT $? 0 0 "卸载 texlive-mfnfss 失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:软件包可用性和版本测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test package installation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试软件包安装功能"
|
||||
LOG_INFO "检查环境是否已安装texlive-mfnfss软件包"
|
||||
rpm -q texlive-mfnfss > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "环境中已安装texlive-mfnfss软件包,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "环境中未安装texlive-mfnfss软件包,测试将执行安装步骤"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yum源中是否存在texlive-mfnfss软件包"
|
||||
dnf list available texlive-mfnfss > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中未找到texlive-mfnfss软件包,退出测试"
|
||||
|
||||
LOG_INFO "执行软件包安装测试"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装texlive-mfnfss软件包"
|
||||
dnf install -y texlive-mfnfss
|
||||
CHECK_RESULT $? 0 0 "安装texlive-mfnfss软件包失败"
|
||||
LOG_INFO "texlive-mfnfss软件包安装成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "验证软件包安装是否成功"
|
||||
rpm -q texlive-mfnfss > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "软件包安装验证失败"
|
||||
|
||||
LOG_INFO "执行软件包功能测试"
|
||||
LOG_INFO "检查texlive-mfnfss软件包提供的命令"
|
||||
command -v tex > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "tex命令未找到,软件包功能可能不完整"
|
||||
|
||||
LOG_INFO "清理测试环境"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载测试安装的texlive-mfnfss软件包"
|
||||
dnf remove -y texlive-mfnfss
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-mfnfss软件包失败"
|
||||
LOG_INFO "texlive-mfnfss软件包卸载成功"
|
||||
else
|
||||
LOG_INFO "环境中原本已安装texlive-mfnfss软件包,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复到初始状态"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,93 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic font usage in LaTeX document
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装texlive-mfnfss软件包
|
||||
LOG_INFO "检查是否已安装texlive-mfnfss软件包"
|
||||
rpm -q texlive-mfnfss &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "检测到texlive-mfnfss已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "texlive-mfnfss未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有texlive-mfnfss软件包
|
||||
LOG_INFO "检查yum源中是否有texlive-mfnfss软件包"
|
||||
dnf list available texlive-mfnfss &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到texlive-mfnfss软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装texlive-mfnfss软件包"
|
||||
dnf install -y texlive-mfnfss
|
||||
CHECK_RESULT $? 0 0 "安装texlive-mfnfss失败"
|
||||
fi
|
||||
|
||||
# 创建测试LaTeX文档
|
||||
LOG_INFO "创建测试LaTeX文档"
|
||||
cat > test_font.tex << "EOF"
|
||||
\documentclass{article}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{mfnfss}
|
||||
\begin{document}
|
||||
This is a test document using mfnfss package.
|
||||
\textrm{Roman font} \textsf{Sans serif font} \texttt{Typewriter font}
|
||||
\end{document}
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建测试文档失败"
|
||||
|
||||
# 编译LaTeX文档
|
||||
LOG_INFO "编译LaTeX文档测试字体使用"
|
||||
pdflatex -interaction=nonstopmode test_font.tex &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "编译LaTeX文档失败"
|
||||
|
||||
# 检查生成的PDF文件
|
||||
LOG_INFO "检查生成的PDF文件"
|
||||
if [ -f test_font.pdf ]; then
|
||||
LOG_INFO "PDF文件生成成功"
|
||||
file test_font.pdf | grep -q "PDF document"
|
||||
CHECK_RESULT $? 0 0 "生成的PDF文件格式不正确"
|
||||
else
|
||||
LOG_ERROR "PDF文件未生成"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试生成的文件"
|
||||
rm -f test_font.tex test_font.log test_font.aux test_font.pdf
|
||||
CHECK_RESULT $? 0 0 "清理测试文件失败"
|
||||
|
||||
# 如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载texlive-mfnfss软件包"
|
||||
dnf remove -y texlive-mfnfss
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-mfnfss失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:LaTeX文档中基本字体使用测试通过"
|
||||
}
|
||||
|
||||
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-11-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic pseudocode generation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试伪代码生成基本功能"
|
||||
|
||||
# 检查是否已安装texlive-pseudocode
|
||||
LOG_INFO "检查是否已安装texlive-pseudocode"
|
||||
dnf list installed texlive-pseudocode > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "texlive-pseudocode已安装,测试结束后保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "texlive-pseudocode未安装,将在测试结束后卸载"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有texlive-pseudocode软件包
|
||||
LOG_INFO "检查yum源中是否有texlive-pseudocode软件包"
|
||||
dnf list available texlive-pseudocode > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到texlive-pseudocode软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到texlive-pseudocode软件包,退出测试"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装texlive-pseudocode软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装texlive-pseudocode软件包"
|
||||
dnf install -y texlive-pseudocode > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装texlive-pseudocode失败"
|
||||
fi
|
||||
|
||||
# 测试伪代码生成功能
|
||||
LOG_INFO "测试伪代码生成功能"
|
||||
pseudocode --version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "伪代码生成命令执行失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载texlive-pseudocomplete软件包"
|
||||
dnf remove -y texlive-pseudo* > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-pseudo*失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试伪代码生成基本功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,91 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test compilation of provided examples
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本开始
|
||||
|
||||
# 环境检查:检查是否已安装texlive-pseudocode包
|
||||
LOG_INFO "检查环境是否已安装texlive-pseudocode软件包..."
|
||||
rpm -q texlive-pseudocode > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "环境已安装texlive-pseudocode软件包,测试结束后将保持安装状态。"
|
||||
INSTALLED_BEFORE_TEST=1
|
||||
else
|
||||
LOG_INFO "环境未安装texlive-pseudocode软件包,测试将进行安装和卸载。"
|
||||
INSTALLED_BEFORE_TEST=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在texlive-pseudocode包
|
||||
LOG_INFO "检查yum源中是否存在texlive-pseudocode软件包..."
|
||||
dnf list available texlive-pseudocode > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在texlive-pseudocode软件包,退出测试。"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果环境未安装,则安装texlive-pseudocode包
|
||||
if [ $INSTALLED_BEFORE_TEST -eq 0 ]; then
|
||||
LOG_INFO "开始安装texlive-pseudocode软件包..."
|
||||
dnf install -y texlive-pseudocode
|
||||
CHECK_RESULT $? 0 0 "安装texlive-pseudocode软件包失败"
|
||||
LOG_INFO "texlive-pseudocode软件包安装成功。"
|
||||
fi
|
||||
|
||||
# 测试编译提供的示例文件
|
||||
LOG_INFO "测试编译提供的示例文件..."
|
||||
# 查找示例文件路径
|
||||
EXAMPLE_PATH=$(find /usr/share/texlive/texmf-dist/ -name "*pseudocode*example*.tex" 2>/dev/null | head -1)
|
||||
if [ -z "$EXAMPLE_PATH" ]; then
|
||||
LOG_ERROR "未找到pseudocode示例文件,退出测试。"
|
||||
# 环境恢复:如果测试前未安装,则卸载软件包
|
||||
if [ $INSTALLED_BEFORE_TEST -eq 0 ]; then
|
||||
LOG_INFO "清理环境:卸载texlive-pseudocode软件包..."
|
||||
dnf remove -y texlive-pseudocode
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-pseudocode软件包失败"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 编译示例文件
|
||||
LOG_INFO "找到示例文件:$EXAMPLE_PATH,开始编译..."
|
||||
pdflatex -interaction=nonstopmode "$EXAMPLE_PATH" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "编译示例文件失败"
|
||||
LOG_INFO "示例文件编译成功。"
|
||||
|
||||
# 清理生成的中间文件
|
||||
LOG_INFO "清理编译生成的中间文件..."
|
||||
rm -f *.aux *.log *.out *.pdf 2>/dev/null
|
||||
CHECK_RESULT $? 0 0 "清理中间文件失败"
|
||||
|
||||
# 环境恢复:如果测试前未安装,则卸载软件包
|
||||
if [ $INSTALLED_BEFORE_TEST -eq 0 ]; then
|
||||
LOG_INFO "清理环境:卸载texlive-pseudocode软件包..."
|
||||
dnf remove -y texlive-pseudocode
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-pseudocode软件包失败"
|
||||
LOG_INFO "环境已恢复至测试前状态。"
|
||||
else
|
||||
LOG_INFO "测试完成,环境保持安装状态。"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕。"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,87 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-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 : Test basic pseudocode typesetting
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test basic pseudocode typesetting"
|
||||
|
||||
LOG_INFO "步骤1: 检查texlive-pseudocode软件包是否在yum源中"
|
||||
if ! dnf list available texlive-pseudocode &> /dev/null; then
|
||||
LOG_ERROR "texlive-pseudocode软件包在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查系统是否已安装texlive-pseudocode"
|
||||
if rpm -q texlive-pseudocode &> /dev/null; then
|
||||
LOG_INFO "texlive-pseudocode已安装,测试后保持安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "texlive-pseudocode未安装,将在测试中安装"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3: 安装texlive-pseudocode软件包(如果未安装)"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
dnf install -y texlive-pseudocode
|
||||
CHECK_RESULT $? 0 0 "安装texlive-pseudocode失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 测试基本pseudocode排版功能"
|
||||
cat > test_pseudocode.tex << "EOF"
|
||||
\documentclass{article}
|
||||
\usepackage{algorithm}
|
||||
\usepackage{algpseudocode}
|
||||
\begin{document}
|
||||
\begin{algorithmic}
|
||||
\State $x \gets 0$
|
||||
\If{$x < 5$}
|
||||
\State $x \gets x + 1$
|
||||
\EndIf
|
||||
\end{algorithmic}
|
||||
\end{document}
|
||||
EOF
|
||||
|
||||
pdflatex -interaction=nonstopmode test_pseudocode.tex
|
||||
CHECK_RESULT $? 0 0 "pdflatex编译pseudocode示例失败"
|
||||
|
||||
LOG_INFO "步骤5: 验证生成的PDF文件"
|
||||
if [ -f test_pseudocode.pdf ]; then
|
||||
LOG_INFO "成功生成test_pseudocode.pdf"
|
||||
else
|
||||
LOG_ERROR "未生成test_pseudocode.pdf"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6: 清理测试文件"
|
||||
rm -f test_pseudocode.tex test_pseudocode.log test_pseudocode.aux test_pseudocode.pdf
|
||||
|
||||
LOG_INFO "步骤7: 恢复环境(如果测试前未安装则卸载软件包)"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载texlive-pseudocode软件包"
|
||||
dnf remove -y texlive-pseudocode
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-pseudocode失败"
|
||||
else
|
||||
LOG_INFO "保持texlive-pseudocode安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test basic pseudocode typesetting"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Check documentation accessibility
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:检查文档可访问性"
|
||||
|
||||
# 步骤1:检查是否已安装texlive-synproof-doc软件包
|
||||
LOG_INFO "步骤1:检查texlive-synproof-doc是否已安装"
|
||||
if dnf list installed texlive-synproof-doc &>/dev/null; then
|
||||
LOG_INFO "texlive-synproof-doc已安装,测试结束后保持安装状态"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "texlive-synproof-doc未安装,将在测试过程中安装"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否存在texlive-synproof-doc软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否存在texlive-synproof-doc"
|
||||
if ! dnf list available texlive-synproof-doc &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到texlive-synproof-doc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装texlive-synproof-doc软件包"
|
||||
dnf install -y texlive-synproof-doc
|
||||
CHECK_RESULT $? 0 0 "安装texlive-synproof-doc失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查文档可访问性
|
||||
LOG_INFO "步骤4:检查文档可访问性"
|
||||
if [ -d "/usr/share/texlive/texmf-dist/doc/fonts/synproof" ]; then
|
||||
LOG_INFO "文档目录存在:/usr/share/texlive/texmf-dist/doc/fonts/synproof"
|
||||
if [ -r "/usr/share/texlive/texmf-dist/doc/fonts/synproof/README" ]; then
|
||||
LOG_INFO "文档文件可读"
|
||||
CHECK_RESULT $? 0 0 "文档文件不可读"
|
||||
else
|
||||
LOG_ERROR "文档文件不可读"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "文档目录不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 步骤5:清理环境
|
||||
LOG_INFO "步骤5:清理环境"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载texlive-synproof-doc软件包"
|
||||
dnf remove -y texlive-synproof-doc
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-synproof-doc失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装,保持安装状态"
|
||||
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 : 2026-02-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Query package information
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断环境是否已安装texlive-synproof-doc
|
||||
LOG_INFO "检查texlive-synproof-doc是否已安装"
|
||||
if dnf list installed texlive-synproof-doc > /dev/null 2>&1; then
|
||||
LOG_INFO "texlive-synproof-doc已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "texlive-synproof-doc未安装,将在测试前安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在texlive-synproof-doc软件包
|
||||
LOG_INFO "检查yum源中是否存在texlive-synproof-doc软件包"
|
||||
if ! dnf list available texlive-synproof-doc > /dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中未找到texlive-synproof-doc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装texlive-synproof-doc软件包"
|
||||
dnf install -y texlive-synproof-doc
|
||||
CHECK_RESULT $? 0 0 "安装texlive-synproof-doc失败"
|
||||
fi
|
||||
|
||||
# 测试查询软件包信息功能
|
||||
LOG_INFO "测试查询软件包信息功能"
|
||||
rpm -qi texlive-synproof-doc
|
||||
CHECK_RESULT $? 0 0 "查询texlive-synproof-doc软件包信息失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载texlive-synproof-doc软件包"
|
||||
dnf remove -y texlive-synproof-doc
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-synproof-doc失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,76 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-02-19
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify package version
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*"
|
||||
}
|
||||
|
||||
# 定义测试包名
|
||||
PACKAGE_NAME="texlive-synproof-doc"
|
||||
|
||||
# 步骤1: 检查yum源中是否存在指定软件包
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在软件包 $PACKAGE_NAME"
|
||||
dnf list available $PACKAGE_NAME &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 在yum源中不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2: 检查软件包是否已安装
|
||||
LOG_INFO "步骤2: 检查软件包 $PACKAGE_NAME 是否已安装"
|
||||
if rpm -q $PACKAGE_NAME &>/dev/null; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,脚本结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将在测试过程中安装"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装软件包
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3: 安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 验证软件包版本
|
||||
LOG_INFO "步骤4: 验证软件包 $PACKAGE_NAME 的版本"
|
||||
rpm -q $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "获取软件包 $PACKAGE_NAME 版本失败"
|
||||
|
||||
# 步骤5: 如果之前未安装,则在测试结束后卸载软件包
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤5: 卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 步骤6: 环境清理完成
|
||||
LOG_INFO "步骤6: 环境清理完成,脚本结束"
|
||||
}
|
||||
|
||||
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-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify existence of documentation files
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:验证文档文件的存在性
|
||||
|
||||
LOG_INFO "开始测试:验证texlive-texproposal-doc软件包的文档文件是否存在"
|
||||
|
||||
# 检查软件包是否已安装
|
||||
LOG_INFO "步骤1:检查texlive-texproposal-doc软件包是否已安装"
|
||||
if dnf list installed texlive-texproposal-doc &> /dev/null; then
|
||||
LOG_INFO "软件包已安装,将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "软件包未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否存在texlive-texproposal-doc软件包"
|
||||
if ! dnf list available texlive-texproposal-doc &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到texlive-texproposal-doc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装texlive-texproposal-doc软件包"
|
||||
dnf install -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "安装texlive-texproposal-doc软件包失败"
|
||||
fi
|
||||
|
||||
# 验证文档文件的存在性
|
||||
LOG_INFO "步骤4:验证文档文件是否存在"
|
||||
DOC_FILES=(
|
||||
"/usr/share/doc/texlive-texproposal-doc/README"
|
||||
"/usr/share/doc/texlive-texproposal-doc/CHANGELOG"
|
||||
"/usr/share/doc/texlive-texproposal-doc/LICENSE"
|
||||
)
|
||||
|
||||
for file in "${DOC_FILES[@]}"; do
|
||||
if [ -f "$file" ]; then
|
||||
LOG_INFO "文档文件 $file 存在"
|
||||
else
|
||||
LOG_ERROR "文档文件 $file 不存在"
|
||||
CHECK_RESULT 1 0 0 "文档文件 $file 不存在"
|
||||
fi
|
||||
done
|
||||
|
||||
# 如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤5:卸载texlive-texproposal-doc软件包"
|
||||
dnf remove -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-texproposal-doc软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:文档文件验证结束"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,91 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify removal of texlive-texproposal-doc
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:验证移除 texlive-texproposal-doc 功能"
|
||||
|
||||
# 检查 yum 源中是否存在 texlive-texproposal-doc 软件包
|
||||
LOG_INFO "步骤1:检查 yum 源中是否存在 texlive-texproposal-doc 软件包"
|
||||
dnf list available texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "yum 源中未找到 texlive-texproposal-doc 软件包"
|
||||
|
||||
# 检查当前环境是否已安装 texlive-texproposal-doc
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装 texlive-texproposal-doc"
|
||||
if rpm -q texlive-texproposal-doc; then
|
||||
LOG_INFO "texlive-texproposal-doc 已安装,测试后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "texlive-texproposal-doc 未安装,将安装后进行测试"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装 texlive-texproposal-doc 软件包"
|
||||
dnf install -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "安装 texlive-texproposal-doc 软件包失败"
|
||||
fi
|
||||
|
||||
# 验证软件包是否安装成功
|
||||
LOG_INFO "步骤4:验证 texlive-texproposal-doc 软件包是否安装成功"
|
||||
rpm -q texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "texlive-texproposal-doc 软件包安装验证失败"
|
||||
|
||||
# 移除 texlive-texproposal-doc 软件包
|
||||
LOG_INFO "步骤5:移除 texlive-texproposal-doc 软件包"
|
||||
dnf remove -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "移除 texlive-texproposal-doc 软件包失败"
|
||||
|
||||
# 验证软件包是否已移除
|
||||
LOG_INFO "步骤6:验证 texlive-texproposal-doc 软件包是否已移除"
|
||||
if rpm -q texlive-texproposal-doc; then
|
||||
LOG_ERROR "texlive-texproposal-doc 软件包移除验证失败"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "texlive-texproposal-doc 软件包已成功移除"
|
||||
fi
|
||||
|
||||
# 如果测试前未安装,则重新安装软件包以恢复环境
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤7:恢复环境,重新安装 texlive-texproposal-doc 软件包"
|
||||
dnf install -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "恢复环境时重新安装 texlive-texproposal-doc 软件包失败"
|
||||
fi
|
||||
|
||||
# 最终环境验证
|
||||
LOG_INFO "步骤8:验证环境是否恢复"
|
||||
if [ "$INSTALLED" = true ]; then
|
||||
rpm -q texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "环境恢复验证失败,texlive-texproposal-doc 软件包未安装"
|
||||
LOG_INFO "环境已恢复,texlive-texproposal-doc 软件包保持安装状态"
|
||||
else
|
||||
if rpm -q texlive-texproposal-doc; then
|
||||
LOG_ERROR "环境恢复验证失败,texlive-texproposal-doc 软件包意外安装"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "环境已恢复,texlive-texproposal-doc 软件包未安装"
|
||||
fi
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:texlive-texproposal-doc 移除功能验证通过"
|
||||
}
|
||||
|
||||
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-03-10
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Verify basic usage guide is readable
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "测试开始:验证basic usage guide是否可读"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "检查yum源中是否存在texlive-texproposal-doc软件包"
|
||||
if ! dnf list available texlive-texproposal-doc &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到texlive-texproposal-doc软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查环境是否已安装软件包
|
||||
LOG_INFO "检查环境是否已安装texlive-texproposal-doc软件包"
|
||||
if rpm -q texlive-texproposal-doc &>/dev/null; then
|
||||
LOG_INFO "软件包已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "软件包未安装,将在测试过程中安装并在结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 安装软件包(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装texlive-texproposal-doc软件包"
|
||||
dnf install -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "安装软件包失败"
|
||||
fi
|
||||
|
||||
# 验证basic usage guide是否可读
|
||||
LOG_INFO "验证basic usage guide是否可读"
|
||||
if [ -f "/usr/share/doc/texlive-texproposal-doc/usage_guide.txt" ]; then
|
||||
LOG_INFO "找到usage_guide.txt文件,检查是否可读"
|
||||
if [ -r "/usr/share/doc/texlive-texproposal-doc/usage_guide.txt" ]; then
|
||||
LOG_INFO "usage_guide.txt文件可读"
|
||||
CHECK_RESULT $? 0 0 "usage_guide.txt文件不可读"
|
||||
else
|
||||
LOG_ERROR "usage_guide.txt文件不可读"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
LOG_ERROR "未找到usage_guide.txt文件"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载texlive-texproposal-doc软件包"
|
||||
dnf remove -y texlive-texproposal-doc
|
||||
CHECK_RESULT $? 0 0 "卸载软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:basic usage guide可读性验证通过"
|
||||
}
|
||||
|
||||
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-11-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test installation of texlive-toolbox
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试脚本:Test installation of texlive-toolbox
|
||||
|
||||
LOG_INFO "开始测试:Test installation of texlive-toolbox"
|
||||
|
||||
# 检查是否已安装texlive-toolbox
|
||||
if dnf list installed texlive-toolbox &>/dev/null; then
|
||||
LOG_INFO "texlive-toolbox已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "texlive-toolbox未安装,准备安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有texlive-toolbox软件包
|
||||
LOG_INFO "检查yum源中是否存在texlive-toolbox软件包"
|
||||
if ! dnf list available texlive-toolbox &>/dev/null; then
|
||||
LOG_ERROR "yum源中不存在texlive-toolbox软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则执行安装
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装texlive-toolbox"
|
||||
dnf install -y texlive-toolbox
|
||||
CHECK_RESULT $? 0 0 "安装texlive-toolbox失败"
|
||||
fi
|
||||
|
||||
# 测试命令功能
|
||||
LOG_INFO "测试texlive-toolbox命令功能"
|
||||
texlive-toolbox --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "texlive-toolbox命令功能测试失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载texlive-toolbox"
|
||||
dnf remove -y texlive-toolbox
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-toolbox失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test installation of texlive-toolbox"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,69 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-01
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Check if texlive-underlin package is installed
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "检查texlive-underlin软件包是否已安装"
|
||||
PACKAGE_NAME="texlive-underlin"
|
||||
LOG_INFO "检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available "${PACKAGE_NAME}" >/dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "检查${PACKAGE_NAME}软件包当前安装状态"
|
||||
dnf list installed "${PACKAGE_NAME}" >/dev/null 2>&1
|
||||
INSTALLED=$?
|
||||
NEED_CLEANUP=0
|
||||
if [ ${INSTALLED} -ne 0 ]; then
|
||||
LOG_INFO "${PACKAGE_NAME}软件包未安装,将执行安装操作"
|
||||
dnf install -y "${PACKAGE_NAME}"
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
NEED_CLEANUP=1
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}软件包已安装"
|
||||
fi
|
||||
LOG_INFO "验证${PACKAGE_NAME}软件包基本功能"
|
||||
rpm -ql "${PACKAGE_NAME}" | head -5 >/dev/null
|
||||
CHECK_RESULT $? 0 0 "查询${PACKAGE_NAME}软件包文件列表失败"
|
||||
LOG_INFO "执行软件包相关命令检查"
|
||||
COMMAND_CHECK="false"
|
||||
if command -v latex >/dev/null 2>&1; then
|
||||
LOG_INFO "找到latex命令,检查其参数"
|
||||
latex --help >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
COMMAND_CHECK="true"
|
||||
fi
|
||||
fi
|
||||
if [ "${COMMAND_CHECK}" = "false" ]; then
|
||||
LOG_INFO "未找到latex命令或参数不支持,跳过命令参数测试"
|
||||
fi
|
||||
LOG_INFO "测试完成,开始环境清理"
|
||||
if [ ${NEED_CLEANUP} -eq 1 ]; 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-03-01
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test updating texlive-underlin package
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试更新 texlive-underlin 软件包
|
||||
LOG_INFO "开始测试:更新 texlive-underlin 软件包"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="texlive-underlin"
|
||||
|
||||
# 步骤1:检查软件包是否已在yum源中
|
||||
LOG_INFO "步骤1:检查软件包是否在yum源中"
|
||||
dnf list available "$PACKAGE_NAME" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "软件包 $PACKAGE_NAME 不在yum源中"
|
||||
exit 255
|
||||
fi
|
||||
CHECK_RESULT $? 0 0 "检查软件包是否在yum源中失败"
|
||||
|
||||
# 步骤2:检查当前是否已安装
|
||||
LOG_INFO "步骤2:检查当前是否已安装软件包"
|
||||
INSTALLED=0
|
||||
rpm -q "$PACKAGE_NAME" > /dev/null 2>&1
|
||||
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" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 安装成功"
|
||||
fi
|
||||
|
||||
# 步骤4:获取当前安装的版本
|
||||
LOG_INFO "步骤4:获取当前安装的版本"
|
||||
CURRENT_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" "$PACKAGE_NAME" 2>/dev/null)
|
||||
CHECK_RESULT $? 0 0 "获取当前版本失败"
|
||||
LOG_INFO "当前版本:$CURRENT_VERSION"
|
||||
|
||||
# 步骤5:检查是否有更新可用
|
||||
LOG_INFO "步骤5:检查是否有更新可用"
|
||||
dnf check-update "$PACKAGE_NAME" > /dev/null 2>&1
|
||||
UPDATE_AVAILABLE=$?
|
||||
if [ $UPDATE_AVAILABLE -eq 100 ]; then
|
||||
LOG_INFO "发现可用更新"
|
||||
# 步骤6:执行更新
|
||||
LOG_INFO "步骤6:更新软件包 $PACKAGE_NAME"
|
||||
dnf update -y "$PACKAGE_NAME" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "更新软件包 $PACKAGE_NAME 失败"
|
||||
|
||||
# 步骤7:验证更新后的版本
|
||||
LOG_INFO "步骤7:验证更新后的版本"
|
||||
NEW_VERSION=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}" "$PACKAGE_NAME" 2>/dev/null)
|
||||
CHECK_RESULT $? 0 0 "获取新版本失败"
|
||||
LOG_INFO "更新后版本:$NEW_VERSION"
|
||||
|
||||
if [ "$CURRENT_VERSION" != "$NEW_VERSION" ]; then
|
||||
LOG_INFO "版本已从 $CURRENT_VERSION 更新到 $NEW_VERSION"
|
||||
CHECK_RESULT 0 0 0 "版本更新验证成功"
|
||||
else
|
||||
LOG_ERROR "版本未发生变化"
|
||||
CHECK_RESULT 1 0 0 "版本未更新"
|
||||
fi
|
||||
elif [ $UPDATE_AVAILABLE -eq 0 ]; then
|
||||
LOG_INFO "没有可用更新,当前已是最新版本"
|
||||
CHECK_RESULT 0 0 0 "检查更新完成"
|
||||
else
|
||||
LOG_ERROR "检查更新失败"
|
||||
CHECK_RESULT $UPDATE_AVAILABLE 0 0 "检查更新失败"
|
||||
fi
|
||||
|
||||
# 步骤8:清理环境
|
||||
LOG_INFO "步骤8:清理测试环境"
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
# 如果测试前未安装,则卸载软件包
|
||||
LOG_INFO "卸载测试安装的软件包 $PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已卸载"
|
||||
else
|
||||
LOG_INFO "保持软件包 $PACKAGE_NAME 的安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:更新 texlive-underlin 软件包"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,101 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-01
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test basic usage of texlive-underlin in LaTeX
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试:Test basic usage of texlive-underlin in LaTeX"
|
||||
|
||||
LOG_INFO "步骤1:检查系统中是否已安装texlive-underlin包"
|
||||
if rpm -q texlive-underlin &>/dev/null; then
|
||||
LOG_INFO "检测到texlive-underlin已安装,测试后保持安装状态"
|
||||
INSTALLED_BEFORE="true"
|
||||
else
|
||||
LOG_INFO "检测到texlive-underlin未安装,将在测试中安装"
|
||||
INSTALLED_BEFORE="false"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否存在texlive-underlin包"
|
||||
if ! dnf list available texlive-underlin &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到texlive-underlin包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装texlive-underlin包"
|
||||
dnf install -y texlive-underlin
|
||||
CHECK_RESULT $? 0 0 "安装texlive-underlin包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查texlive-underlin命令是否存在"
|
||||
command -v texlive-underlin
|
||||
CHECK_RESULT $? 0 0 "texlive-underlin命令未找到"
|
||||
|
||||
LOG_INFO "步骤5:测试texlive-underlin基本用法(显示帮助信息)"
|
||||
texlive-underlin --help
|
||||
CHECK_RESULT $? 0 0 "执行texlive-underlin --help失败"
|
||||
|
||||
LOG_INFO "步骤6:测试texlive-underlin不支持参数的情况"
|
||||
if texlive-underlin --invalid-option 2>&1 | grep -q "unrecognized option\|invalid option\|未知选项"; then
|
||||
LOG_INFO "参数检查成功,检测到无效参数错误"
|
||||
else
|
||||
LOG_ERROR "未检测到无效参数错误,可能参数支持情况与预期不符"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤7:创建一个简单的LaTeX测试文件"
|
||||
TEST_FILE="test_underlin.tex"
|
||||
cat > $TEST_FILE << "EOF"
|
||||
\documentclass{article}
|
||||
\usepackage{soul}
|
||||
\begin{document}
|
||||
This is \ul{underlined} text.
|
||||
\end{document}
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建测试LaTeX文件失败"
|
||||
|
||||
LOG_INFO "步骤8:使用texlive-underlin处理测试文件(此处假设命令,实际命令可能不同)"
|
||||
if texlive-underlin --version &>/dev/null; then
|
||||
LOG_INFO "执行texlive-underlin命令(示例,需替换为实际命令)"
|
||||
# 假设texlive-underlin处理文件的命令是:texlive-underlin process <file>
|
||||
# texlive-underlin process $TEST_FILE
|
||||
# CHECK_RESULT $? 0 0 "处理LaTeX文件失败"
|
||||
LOG_INFO "(注:实际测试需根据texlive-underlin真实命令调整)"
|
||||
else
|
||||
LOG_INFO "texlive-underlin可能是一个包集合,不直接提供命令行工具,跳过命令测试"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤9:清理测试文件"
|
||||
rm -f $TEST_FILE *.aux *.log *.pdf 2>/dev/null
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤10:卸载测试安装的texlive-underlin包"
|
||||
dnf remove -y texlive-underlin
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-underlin包失败"
|
||||
LOG_INFO "环境已恢复到测试前状态"
|
||||
else
|
||||
LOG_INFO "步骤10:测试前已安装texlive-underlin,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test basic usage of texlive-underlin in LaTeX"
|
||||
}
|
||||
|
||||
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-11-26
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : Test title page generation
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:Test title page generation"
|
||||
|
||||
# 检查是否已安装texlive-uowthesistitlepage
|
||||
LOG_INFO "检查是否已安装texlive-uowthesistitlepage"
|
||||
if dnf list installed texlive-uowthesistitlepage &>/dev/null; then
|
||||
LOG_INFO "texlive-uowthesistitlepage已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "texlive-uowthesistitlepage未安装,准备安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有texlive-uowthesistitlepage
|
||||
LOG_INFO "检查yum源中是否有texlive-uowthesistitlepage"
|
||||
if ! dnf list available texlive-uowthesistitlepage &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到texlive-uowthesistitlepage软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装texlive-uowthesistitlepage"
|
||||
dnf install -y texlive-uowthesistitlepage
|
||||
CHECK_RESULT $? 0 0 "安装texlive-uowthesistitlepage失败"
|
||||
fi
|
||||
|
||||
# 测试title page生成功能
|
||||
LOG_INFO "测试title page生成功能"
|
||||
test_command="some_title_page_command" # 替换为实际的命令
|
||||
if ! command -v $test_command &>/dev/null; then
|
||||
LOG_ERROR "$test_command命令不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
$test_command --some-param # 替换为实际的参数和命令执行方式
|
||||
CHECK_RESULT $? 0 0 "生成title page失败"
|
||||
|
||||
# 清理环境:如果脚本开始时未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载texlive-uowthesistitlepage"
|
||||
dnf remove -y texlive-uowthesistitlepage
|
||||
CHECK_RESULT $? 0 0 "卸载texlive-uowthesistitlepage失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Test title page generation"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user