This commit is contained in:
2026-04-16 18:54:49 +08:00
279 changed files with 0 additions and 23504 deletions

View File

@@ -1,30 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/geronimo-jms/geronimo-jms-help",
"machine num": 1,
"cases": [
{
"name": "test_geronimo-jms-help_function_init",
"desc": "Test initialization of geronimo-jms-help"
},
{
"name": "test_geronimo-jms-help_function_send_msg",
"desc": "Test message sending functionality"
},
{
"name": "test_geronimo-jms-help_function_install",
"desc": "Test installation of geronimo-jms-help package"
},
{
"name": "test_geronimo-jms-help_function_check_version",
"desc": "Test checking the package version"
},
{
"name": "test_geronimo-jms-help_function_basic_usage",
"desc": "Test basic usage example (e.g., help output)"
},
{
"name": "test_geronimo-jms-help_function_uninstall",
"desc": "Test uninstallation of geronimo-jms-help package"
}
]
}

View File

@@ -12,60 +12,11 @@
"desc": "测试jboss-stdio-javadoc软件包的卸载功能验证是否能够成功卸载。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_upgrade",
"desc": "测试jboss-stdio-javadoc软件包的升级功能验证是否能够成功升级到最新版本。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_downgrade",
"desc": "测试jboss-stdio-javadoc软件包的降级功能验证是否能够成功降级到指定版本。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_rollback",
"desc": "测试jboss-stdio-javadoc软件包的回滚功能验证是否能够成功回滚到上一个版本。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_service_start",
"desc": "测试jboss-stdio-javadoc软件包提供的服务启动功能验证服务是否能够成功启动。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_service_stop",
"desc": "测试jboss-stdio-javadoc软件包提供的服务停止功能验证服务是否能够成功停止。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_service_restart",
"desc": "测试jboss-stdio-javadoc软件包提供的服务重启功能验证服务是否能够成功重启。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_service_status",
"desc": "测试jboss-stdio-javadoc软件包提供的服务状态查询功能验证是否能够成功查询服务状态。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_service_log",
"desc": "测试jboss-stdio-javadoc软件包提供的服务日志查看功能验证是否能够成功查看服务日志。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_downgrade_rollback",
"desc": "测试jboss-stdio-javadoc软件包的降级回滚功能验证是否能够成功从降级版本回滚到上一个版本。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_upgrade_rollback",
"desc": "测试jboss-stdio-javadoc软件包的升级回滚功能验证是否能够成功从升级版本回滚到上一个版本。",
"machine num": 1
},
{
"name": "test_jboss-stdio-javadoc_function_dependency",
"desc": "测试jboss-stdio-javadoc软件包的基础依赖库功能验证是否能够正确加载依赖库。"
},
{
"name": "test_jboss-stdio-javadoc_function_install",
"desc": "测试jboss-stdio-javadoc软件包的安装功能验证是否能够成功安装到系统。"
@@ -78,10 +29,6 @@
"name": "test_jboss-stdio-javadoc_function_upgrade",
"desc": "测试jboss-stdio-javadoc软件包的升级功能验证是否能够成功升级到最新可用版本。"
},
{
"name": "test_jboss-stdio-javadoc_function_downgrade",
"desc": "测试jboss-stdio-javadoc软件包的降级功能验证是否能够成功降级到指定的旧版本。"
},
{
"name": "test_jboss-stdio-javadoc_function_check",
"desc": "测试检查jboss-stdio-javadoc软件包是否已安装验证查询安装状态功能。"

View File

@@ -5,262 +5,6 @@
{
"name": "test_libtiff-tools_tiffcp_p_contig",
"desc": "测试 tiffcp 命令的 -p contig 参数,用于连续打包样本"
},
{
"name": "test_libtiff-tools_tiffcp_a",
"desc": "测试tiffcp命令的-a参数将输入TIFF文件追加到输出文件而不是覆盖"
},
{
"name": "test_libtiff-tools_tiffcp_o",
"desc": "测试tiffcp命令的-o参数设置初始目录偏移量"
},
{
"name": "test_libtiff-tools_tiffcp_p_separate",
"desc": "测试tiffcp命令的-p separate参数将样本分开存储"
},
{
"name": "test_libtiff-tools_tiffcp_s",
"desc": "测试tiffcp命令的-s参数以条带形式写入输出"
},
{
"name": "test_libtiff-tools_tiffcp_t",
"desc": "测试tiffcp命令的-t参数以分块形式写入输出"
},
{
"name": "test_libtiff-tools_tiffcp_x",
"desc": "测试tiffcp命令的-x参数强制按顺序合并TIFF页面"
},
{
"name": "test_libtiff-tools_tiffcp_num_8",
"desc": "测试tiffcp命令的-8参数写入BigTIFF格式而不是默认的ClassicTIFF格式"
},
{
"name": "test_libtiff-tools_tiffcp_upper_b",
"desc": "测试tiffcp命令的-B参数以大端字节序写入输出"
},
{
"name": "test_libtiff-tools_tiffcp_upper_l",
"desc": "测试tiffcp命令的-L参数以小端字节序写入输出"
},
{
"name": "test_libtiff-tools_tiffcp_upper_m",
"desc": "测试tiffcp命令的-M参数禁用内存映射文件"
},
{
"name": "test_libtiff-tools_tiffcp_upper_c",
"desc": "测试tiffcp命令的-C参数禁用条带分割"
},
{
"name": "test_libtiff-tools_tiffcp_b",
"desc": "测试tiffcp命令的-b参数指定要从中减去所有其他图像的单色偏置暗场图像"
},
{
"name": "test_libtiff-tools_tiffcp_comma",
"desc": "测试tiffcp命令的-,参数,使用%而不是逗号来分隔图像编号"
},
{
"name": "test_libtiff-tools_tiffcp_m",
"desc": "测试tiffcp命令的-m参数设置最大内存分配大小MiB"
},
{
"name": "test_libtiff-tools_tiffcp_r",
"desc": "测试tiffcp命令的-r参数设置每个条带的最大行数"
},
{
"name": "test_libtiff-tools_tiffcp_w",
"desc": "测试tiffcp命令的-w参数设置输出分块的宽度像素"
},
{
"name": "test_libtiff-tools_tiffcp_l",
"desc": "测试tiffcp命令的-l参数设置输出分块的长度像素"
},
{
"name": "test_libtiff-tools_tiffcp_f_lsb2msb",
"desc": "测试tiffcp命令的-f lsb2msb参数强制输出使用从最低有效位到最高有效位的填充顺序"
},
{
"name": "test_libtiff-tools_tiffcp_f_msb2lsb",
"desc": "测试tiffcp命令的-f msb2lsb参数强制输出使用从最高有效位到最低有效位的填充顺序"
},
{
"name": "test_libtiff-tools_tiffcp_c_lzw",
"desc": "测试tiffcp命令的-c lzw参数使用LZW编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_zip",
"desc": "测试tiffcp命令的-c zip参数使用deflate编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_jpeg",
"desc": "测试tiffcp命令的-c jpeg参数使用JPEG编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_jbig",
"desc": "测试tiffcp命令的-c jbig参数使用ISO JBIG编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_packbits",
"desc": "测试tiffcp命令的-c packbits参数使用packbits编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_g3",
"desc": "测试tiffcp命令的-c g3参数使用CCITT Group 3编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_g4",
"desc": "测试tiffcp命令的-c g4参数使用CCITT Group 4编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_sgilog",
"desc": "测试tiffcp命令的-c sgilog参数使用SGILOG编码压缩输出"
},
{
"name": "test_libtiff-tools_tiffcp_c_none",
"desc": "测试tiffcp命令的-c none参数输出时不使用任何压缩算法"
},
{
"name": "test_libtiff-tools_tiffdump_h",
"desc": "测试显示帮助信息"
},
{
"name": "test_libtiff-tools_tiffdump_o",
"desc": "测试从指定偏移量开始读取文件"
},
{
"name": "test_libtiff-tools_tiffdump_m",
"desc": "测试限制输出的目录条目数量"
},
{
"name": "test_libtiff-tools_tiffdump_o_m",
"desc": "测试组合使用偏移量和最大条目限制参数"
},
{
"name": "test_libtiff-tools_tiffinfo_upper_d",
"desc": "使用-D参数读取并显示TIFF文件数据"
},
{
"name": "test_libtiff-tools_tiffinfo_i",
"desc": "使用-i参数忽略TIFF文件读取错误"
},
{
"name": "test_libtiff-tools_tiffinfo_c",
"desc": "使用-c参数显示灰度/颜色响应曲线或颜色映射数据"
},
{
"name": "test_libtiff-tools_tiffinfo_d",
"desc": "使用-d参数显示原始/解码后的图像数据"
},
{
"name": "test_libtiff-tools_tiffinfo_f_lsb2msb",
"desc": "使用-f lsb2msb参数强制输入使用lsb-to-msb填充顺序"
},
{
"name": "test_libtiff-tools_tiffinfo_f_msb2lsb",
"desc": "使用-f msb2lsb参数强制输入使用msb-to-lsb填充顺序"
},
{
"name": "test_libtiff-tools_tiffinfo_j",
"desc": "使用-j参数显示JPEG表"
},
{
"name": "test_libtiff-tools_tiffinfo_o",
"desc": "使用-o参数设置初始目录偏移量"
},
{
"name": "test_libtiff-tools_tiffinfo_r",
"desc": "使用-r参数读取并显示原始图像数据而非解码数据"
},
{
"name": "test_libtiff-tools_tiffinfo_s",
"desc": "使用-s参数显示条带偏移量和字节计数"
},
{
"name": "test_libtiff-tools_tiffinfo_w",
"desc": "使用-w参数以字为单位而非字节显示原始数据"
},
{
"name": "test_libtiff-tools_tiffinfo_z",
"desc": "使用-z参数启用条带分割"
},
{
"name": "test_libtiff-tools_tiffinfo_upper_m",
"desc": "使用-M参数设置内存分配限制MiB0为无限制"
},
{
"name": "test_libtiff-tools_tiffset_upper_v",
"desc": "测试tiffset命令的-V参数用于显示版本信息"
},
{
"name": "test_libtiff-tools_tiffset_upper_h",
"desc": "测试tiffset命令的-H参数用于显示帮助信息"
},
{
"name": "test_libtiff-tools_tiffset_upper_f",
"desc": "测试tiffset命令的-F参数用于设置图像为填充顺序"
},
{
"name": "test_libtiff-tools_tiffset_upper_c",
"desc": "测试tiffset命令的-C参数用于设置图像压缩方案"
},
{
"name": "test_libtiff-tools_tiffset_upper_r",
"desc": "测试tiffset命令的-R参数用于设置图像行数"
},
{
"name": "test_libtiff-tools_tiffset_upper_s",
"desc": "测试tiffset命令的-S参数用于设置条带大小"
},
{
"name": "test_libtiff-tools_tiffset_upper_w",
"desc": "测试tiffset命令的-W参数用于设置图像宽度"
},
{
"name": "test_libtiff-tools_tiffset_upper_a",
"desc": "测试tiffset命令的-A参数用于设置艺术家信息"
},
{
"name": "test_libtiff-tools_tiffset_upper_t",
"desc": "测试tiffset命令的-T参数用于设置图像标题"
},
{
"name": "test_libtiff_tools_tiffsplit_upper_m",
"desc": "测试tiffsplit命令的-M选项设置内存分配限制为100MiB"
},
{
"name": "test_libtiff_tools_tiffsplit_no_option",
"desc": "测试tiffsplit命令不带任何选项仅提供输入文件和输出前缀"
},
{
"name": "test_libtiff_tools_tiffsplit_upper_m_num_0",
"desc": "测试tiffsplit命令的-M 0选项禁用内存分配限制"
},
{
"name": "test_libtiff-tools_function_install",
"desc": "测试通过包管理器安装libtiff-tools软件包"
},
{
"name": "test_libtiff-tools_function_uninstall",
"desc": "测试通过包管理器卸载libtiff-tools软件包"
},
{
"name": "test_libtiff-tools_function_tiffcp_basic",
"desc": "测试tiffcp命令的基本图像转换功能"
},
{
"name": "test_libtiff-tools_function_tiffinfo_basic",
"desc": "测试tiffinfo命令查看TIFF文件信息"
},
{
"name": "test_libtiff-tools_function_tiffdump_basic",
"desc": "测试tiffdump命令以十六进制查看TIFF文件"
},
{
"name": "test_libtiff-tools_function_tiffset_basic",
"desc": "测试tiffset命令设置TIFF标签基本功能"
},
{
"name": "test_libtiff-tools_function_tiffsplit_basic",
"desc": "测试tiffsplit命令分割多页TIFF文件"
}
]
}

View File

@@ -1,22 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/lttng-ust/lttng-ust-help",
"machine num": 1,
"cases": [
{
"name": "test_lttng-ust-help_function_install",
"desc": "测试软件包lttng-ust-help的安装功能。"
},
{
"name": "test_lttng-ust-help_function_check",
"desc": "测试检查软件包lttng-ust-help是否已正确安装。"
},
{
"name": "test_lttng-ust-help_function_remove",
"desc": "测试软件包lttng-ust-help的卸载功能。"
},
{
"name": "test_lttng-ust-help_function_help",
"desc": "测试访问软件包lttng-ust-help提供的帮助文档。"
}
]
}

View File

@@ -5,10 +5,6 @@
{
"name": "test_lucene-analyzers-phonetic_function_install",
"desc": "Test the installation of lucene-analyzers-phonetic package"
},
{
"name": "test_lucene-analyzers-phonetic_function_analyze",
"desc": "Test the phonetic analysis functionality"
}
]
}

View File

@@ -1,22 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/maven-surefire/maven-surefire-provider-testng",
"machine num": 1,
"cases": [
{
"name": "test_maven-surefire-provider-testng_function_basic",
"desc": "Test basic functionality of maven-surefire-provider-testng"
},
{
"name": "test_maven-surefire-provider-testng_function_config",
"desc": "Test configuration loading of maven-surefire-provider-testng"
},
{
"name": "test_maven-surefire-provider-testng_function_exec",
"desc": "Test test execution flow in maven-surefire-provider-testng"
},
{
"name": "test_maven-surefire-provider-testng_function_report",
"desc": "Test report generation in maven-surefire-provider-testng"
}
]
}

View File

@@ -1,10 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/openvswitch/network-scripts-openvswitch",
"machine num": 1,
"cases": [
{
"name": "test_network-scripts-openvswitch_function_install",
"desc": "Test package installation"
}
]
}

View File

@@ -6,14 +6,6 @@
"name": "test_protobuf2-lite-static_function_parsing",
"desc": "Test parsing functionality"
},
{
"name": "test_protobuf2-lite-static_function_serialize",
"desc": "Test serialization functionality"
},
{
"name": "test_protobuf2-lite-static_function_deserialize",
"desc": "Test deserialization functionality"
},
{
"name": "test_protobuf2-lite-static_function_message",
"desc": "Test message handling"

View File

@@ -1,95 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/python-pip-run/python-pip-run-help",
"machine num": 3,
"cases": [
{
"name": "test_python-pip-run-help_install",
"desc": "测试python-pip-run-help软件包的安装功能",
"machine num": 1
},
{
"name": "test_python-pip-run-help_uninstall",
"desc": "测试python-pip-run-help软件包的卸载功能",
"machine num": 1
},
{
"name": "test_python-pip-run-help_upgrade",
"desc": "测试python-pip-run-help软件包的升级功能",
"machine num": 1
},
{
"name": "test_python-pip-run-help_downgrade",
"desc": "测试python-pip-run-help软件包的降级功能",
"machine num": 1
},
{
"name": "test_python-pip-run-help_rollback",
"desc": "测试python-pip-run-help软件包的回滚功能",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_deps",
"desc": "测试python-pip-run-help软件包的安装功能包括依赖包的安装",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_without_deps",
"desc": "测试python-pip-run-help软件包的安装功能不包括依赖包的安装",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_conflict",
"desc": "测试python-pip-run-help软件包的安装功能包括冲突包的安装",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_custom_path",
"desc": "测试python-pip-run-help软件包的安装功能指定自定义安装路径",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_custom_deps",
"desc": "测试python-pip-run-help软件包的安装功能指定自定义依赖包安装",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_custom_user",
"desc": "测试python-pip-run-help软件包的安装功能指定自定义用户安装",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_no_user",
"desc": "测试python-pip-run-help软件包的安装功能不指定用户安装",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_no_cache_dir",
"desc": "测试python-pip-run-help软件包的安装功能不缓存依赖包",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_no_color",
"desc": "测试python-pip-run-help软件包的安装功能不显示彩色输出",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_no_compile",
"desc": "测试python-pip-run-help软件包的安装功能不编译安装包",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_no_binary",
"desc": "测试python-pip-run-help软件包的安装功能不安装二进制文件",
"machine num": 1
},
{
"name": "test_python-pip-run-help_install_with_no_clean",
"desc": "测试python-pip-run-help软件包的安装功能不清理安装包",
"machine num": 1
},
{
"name": "test_python-pip-run-help_function_install",
"desc": "测试python-pip-run-help软件包的安装功能"
}
]
}

View File

@@ -2,18 +2,6 @@
"path": "$OET_PATH/testcases/function_test/pkg_test/python-pyinstaller-hooks-contrib/python3-pyinstaller-hooks-contrib",
"machine num": 1,
"cases": [
{
"name": "test_python3-pyinstaller-hooks-contrib_install",
"desc": "测试使用包管理器(如 apt安装 python3-pyinstaller-hooks-contrib 软件包的功能是否正常。"
},
{
"name": "test_python3-pyinstaller-hooks-contrib_import",
"desc": "测试在 Python 环境中能否成功导入 pyinstaller_hooks_contrib 模块,验证其基本可用性。"
},
{
"name": "test_python3-pyinstaller-hooks-contrib_hooks_list",
"desc": "测试能否成功获取 pyinstaller_hooks_contrib 提供的钩子hooks列表验证其核心功能。"
},
{
"name": "test_python3-pyinstaller-hooks-contrib_uninstall",
"desc": "测试使用包管理器(如 apt卸载 python3-pyinstaller-hooks-contrib 软件包的功能是否正常。"

View File

@@ -2,49 +2,9 @@
"path": "$OET_PATH/testcases/function_test/pkg_test/python-zope-schema/python3-zope-schema",
"machine num": 1,
"cases": [
{
"name": "test_python3-zope-schema_function_validation",
"desc": "Test schema validation functionality"
},
{
"name": "test_python3-zope-schema_function_install",
"desc": "Test installation of python3-zope-schema package"
},
{
"name": "test_python3-zope-schema_function_import",
"desc": "Test basic import of zope.schema"
},
{
"name": "test_python3-zope-schema_function_field_def",
"desc": "Test defining schema fields"
},
{
"name": "test_python3-zope-schema_function_schema_creation",
"desc": "Test creating a schema class"
},
{
"name": "test_python3-zope-schema_function_field_validation",
"desc": "Test field value validation"
},
{
"name": "test_python3-zope-schema_function_interface_bind",
"desc": "Test binding schema to interface"
},
{
"name": "test_python3-zope-schema_function_constraint_usage",
"desc": "Test using field constraints"
},
{
"name": "test_python3-zope-schema_function_default_value",
"desc": "Test field default values"
},
{
"name": "test_python3-zope-schema_function_required_field",
"desc": "Test required field validation"
},
{
"name": "test_python3-zope-schema_function_schema_inherit",
"desc": "Test schema inheritance"
}
]
}

View File

@@ -2,69 +2,9 @@
"path": "$OET_PATH/testcases/function_test/pkg_test/qt6-qttools/qt6-designer",
"machine num": 1,
"cases": [
{
"name": "test_qt6-designer_designer-qt6__h",
"desc": "测试显示帮助信息"
},
{
"name": "test_qt6-designer_designer-qt6__help",
"desc": "测试显示帮助信息"
},
{
"name": "test_qt6-designer_designer-qt6__upper_v",
"desc": "测试显示版本信息"
},
{
"name": "test_qt6-designer_designer-qt6__version",
"desc": "测试显示版本信息"
},
{
"name": "test_qt6-designer_designer-qt6__upper_h",
"desc": "测试显示帮助信息"
},
{
"name": "test_qt6-designer_designer-qt6__upper_v__h",
"desc": "测试同时显示版本和帮助信息"
},
{
"name": "test_qt6-designer_function_install",
"desc": "测试软件包安装功能"
},
{
"name": "test_qt6-designer_function_uninstall",
"desc": "测试软件包卸载功能"
},
{
"name": "test_qt6-designer_function_check_installed",
"desc": "测试检查软件包是否已安装"
},
{
"name": "test_qt6-designer_function_launch_gui",
"desc": "测试启动Qt Designer图形界面"
},
{
"name": "test_qt6-designer_function_create_ui",
"desc": "测试使用Qt Designer创建基础UI文件"
},
{
"name": "test_qt6-designer_function_convert_ui",
"desc": "测试将.ui文件转换为.py文件"
},
{
"name": "test_qt6-designer_function_widget_toolbox",
"desc": "测试工具箱中标准小部件的可用性"
},
{
"name": "test_qt6-designer_function_layout_management",
"desc": "测试布局管理功能(如垂直、水平布局)"
},
{
"name": "test_qt6-designer_function_signal_slot_edit",
"desc": "测试信号与槽编辑器功能"
},
{
"name": "test_qt6-designer_function_property_editor",
"desc": "测试对象属性编辑器功能"
}
]
}

View File

@@ -5,286 +5,6 @@
{
"name": "test_texlive-fontinst_function_install",
"desc": "Test installation of texlive-fontinst package"
},
{
"name": "test_texlive-fontinst_fontinst_upper_v",
"desc": "测试 fontinst 命令的 -V 参数,用于显示版本信息。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_h",
"desc": "测试 fontinst 命令的 -H 参数,用于显示帮助信息。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_f",
"desc": "测试 fontinst 命令的 -F 参数,用于指定字体目录。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_o",
"desc": "测试 fontinst 命令的 -O 参数,用于指定输出目录。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_t",
"desc": "测试 fontinst 命令的 -T 参数,用于指定 TFM 输出目录。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_m",
"desc": "测试 fontinst 命令的 -M 参数,用于指定映射文件。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_s",
"desc": "测试 fontinst 命令的 -S 参数,用于指定源目录。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_c",
"desc": "测试 fontinst 命令的 -C 参数,用于指定配置文件。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_d",
"desc": "测试 fontinst 命令的 -D 参数,用于指定调试级别。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_x",
"desc": "测试 fontinst 命令的 -X 参数,用于启用专家模式。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_q",
"desc": "测试 fontinst 命令的 -Q 参数,用于启用安静模式。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_w",
"desc": "测试 fontinst 命令的 -W 参数,用于启用警告模式。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_e",
"desc": "测试 fontinst 命令的 -E 参数,用于指定编码文件。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_p",
"desc": "测试 fontinst 命令的 -P 参数,用于指定平台。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_a",
"desc": "测试 fontinst 命令的 -A 参数,用于指定自动安装。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_n",
"desc": "测试 fontinst 命令的 -N 参数,用于指定不安装。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_i",
"desc": "测试 fontinst 命令的 -I 参数,用于指定安装目录。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_l",
"desc": "测试 fontinst 命令的 -L 参数,用于指定日志文件。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_r",
"desc": "测试 fontinst 命令的 -R 参数,用于指定递归处理。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_u",
"desc": "测试 fontinst 命令的 -U 参数,用于指定更新模式。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_k",
"desc": "测试 fontinst 命令的 -K 参数,用于指定保持临时文件。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_b",
"desc": "测试 fontinst 命令的 -B 参数,用于指定批处理模式。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_g",
"desc": "测试 fontinst 命令的 -G 参数,用于指定图形界面模式。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_j",
"desc": "测试 fontinst 命令的 -J 参数,用于指定作业名称。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_y",
"desc": "测试 fontinst 命令的 -Y 参数,用于指定是/否确认。"
},
{
"name": "test_texlive-fontinst_fontinst_upper_z",
"desc": "测试 fontinst 命令的 -Z 参数,用于指定压缩模式。"
},
{
"name": "test_texlive-fontinst_fontinst_v",
"desc": "测试 fontinst 命令的 -v 参数,用于显示详细输出。"
},
{
"name": "test_texlive-fontinst_fontinst_h",
"desc": "测试 fontinst 命令的 -h 参数,用于显示帮助信息。"
},
{
"name": "test_texlive-fontinst_fontinst_f",
"desc": "测试 fontinst 命令的 -f 参数,用于指定字体文件。"
},
{
"name": "test_texlive-fontinst_fontinst_o",
"desc": "测试 fontinst 命令的 -o 参数,用于指定输出文件。"
},
{
"name": "test_texlive-fontinst_fontinst_t",
"desc": "测试 fontinst 命令的 -t 参数,用于指定临时目录。"
},
{
"name": "test_texlive-fontinst_fontinst_m",
"desc": "测试 fontinst 命令的 -m 参数,用于指定映射模式。"
},
{
"name": "test_texlive-fontinst_fontinst_s",
"desc": "测试 fontinst 命令的 -s 参数,用于指定源文件。"
},
{
"name": "test_texlive-fontinst_fontinst_c",
"desc": "测试 fontinst 命令的 -c 参数,用于指定配置文件。"
},
{
"name": "test_texlive-fontinst_fontinst_d",
"desc": "测试 fontinst 命令的 -d 参数,用于指定调试信息。"
},
{
"name": "test_texlive-fontinst_fontinst_x",
"desc": "测试 fontinst 命令的 -x 参数,用于指定扩展模式。"
},
{
"name": "test_texlive-fontinst_fontinst_q",
"desc": "测试 fontinst 命令的 -q 参数,用于启用安静模式。"
},
{
"name": "test_texlive-fontinst_fontinst_w",
"desc": "测试 fontinst 命令的 -w 参数,用于启用警告模式。"
},
{
"name": "test_texlive-fontinst_fontinst_e",
"desc": "测试 fontinst 命令的 -e 参数,用于指定编码模式。"
},
{
"name": "test_texlive-fontinst_fontinst_p",
"desc": "测试 fontinst 命令的 -p 参数,用于指定平台模式。"
},
{
"name": "test_texlive-fontinst_fontinst_a",
"desc": "测试 fontinst 命令的 -a 参数,用于指定自动模式。"
},
{
"name": "test_texlive-fontinst_fontinst_n",
"desc": "测试 fontinst 命令的 -n 参数,用于指定不执行模式。"
},
{
"name": "test_texlive-fontinst_fontinst_i",
"desc": "测试 fontinst 命令的 -i 参数,用于指定输入文件。"
},
{
"name": "test_texlive-fontinst_fontinst_l",
"desc": "测试 fontinst 命令的 -l 参数,用于指定日志级别。"
},
{
"name": "test_texlive-fontinst_fontinst_r",
"desc": "测试 fontinst 命令的 -r 参数,用于指定递归模式。"
},
{
"name": "test_texlive-fontinst_fontinst_u",
"desc": "测试 fontinst 命令的 -u 参数,用于指定更新模式。"
},
{
"name": "test_texlive-fontinst_fontinst_k",
"desc": "测试 fontinst 命令的 -k 参数,用于指定保持模式。"
},
{
"name": "test_texlive-fontinst_fontinst_b",
"desc": "测试 fontinst 命令的 -b 参数,用于指定批处理模式。"
},
{
"name": "test_texlive-fontinst_fontinst_g",
"desc": "测试 fontinst 命令的 -g 参数,用于指定图形模式。"
},
{
"name": "test_texlive-fontinst_fontinst_j",
"desc": "测试 fontinst 命令的 -j 参数,用于指定作业模式。"
},
{
"name": "test_texlive-fontinst_fontinst_y",
"desc": "测试 fontinst 命令的 -y 参数,用于指定是/否确认模式。"
},
{
"name": "test_texlive-fontinst_fontinst_z",
"desc": "测试 fontinst 命令的 -z 参数,用于指定压缩模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_1",
"desc": "测试 fontinst 命令的 -1 参数,用于指定单线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_2",
"desc": "测试 fontinst 命令的 -2 参数,用于指定双线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_3",
"desc": "测试 fontinst 命令的 -3 参数,用于指定三线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_4",
"desc": "测试 fontinst 命令的 -4 参数,用于指定四线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_5",
"desc": "测试 fontinst 命令的 -5 参数,用于指定五线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_6",
"desc": "测试 fontinst 命令的 -6 参数,用于指定六线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_7",
"desc": "测试 fontinst 命令的 -7 参数,用于指定七线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_8",
"desc": "测试 fontinst 命令的 -8 参数,用于指定八线程模式。"
},
{
"name": "test_texlive-fontinst_fontinst_num_9",
"desc": "测试 fontinst 命令的 -9 参数,用于指定九线程模式。"
},
{
"name": "test_texlive-fontinst_function_check_installed",
"desc": "Check if texlive-fontinst is installed"
},
{
"name": "test_texlive-fontinst_function_fontinst_basic",
"desc": "Test basic fontinst command execution"
},
{
"name": "test_texlive-fontinst_function_fontinst_help",
"desc": "Test fontinst command help output"
},
{
"name": "test_texlive-fontinst_function_fontinst_version",
"desc": "Test fontinst command version output"
},
{
"name": "test_texlive-fontinst_function_fontinst_font",
"desc": "Test fontinst with font file input"
},
{
"name": "test_texlive-fontinst_function_fontinst_output",
"desc": "Test fontinst with output directory"
},
{
"name": "test_texlive-fontinst_function_fontinst_map",
"desc": "Test fontinst with map file"
},
{
"name": "test_texlive-fontinst_function_fontinst_encoding",
"desc": "Test fontinst with encoding file"
},
{
"name": "test_texlive-fontinst_function_fontinst_tfm",
"desc": "Test fontinst TFM generation"
}
]
}

View File

@@ -1,110 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-base/texlive-make4ht",
"machine num": 1,
"cases": [
{
"name": "test_texlive-make4ht_make4ht_h",
"desc": "测试 make4ht 命令的帮助信息显示"
},
{
"name": "test_texlive-make4ht_make4ht_v",
"desc": "测试 make4ht 命令的版本信息显示"
},
{
"name": "test_texlive-make4ht_make4ht_c",
"desc": "测试 make4ht 命令指定自定义配置文件"
},
{
"name": "test_texlive-make4ht_make4ht_d",
"desc": "测试 make4ht 命令指定输出目录"
},
{
"name": "test_texlive-make4ht_make4ht_f",
"desc": "测试 make4ht 命令指定输出文件格式"
},
{
"name": "test_texlive-make4ht_make4ht_l",
"desc": "测试 make4ht 命令使用 lualatex 编译文档"
},
{
"name": "test_texlive-make4ht_make4ht_x",
"desc": "测试 make4ht 命令使用 xelatex 编译文档"
},
{
"name": "test_texlive-make4ht_make4ht_j",
"desc": "测试 make4ht 命令设置作业名"
},
{
"name": "test_texlive-make4ht_make4ht_a",
"desc": "测试 make4ht 命令设置日志级别"
},
{
"name": "test_texlive-make4ht_make4ht_b",
"desc": "测试 make4ht 命令设置后端"
},
{
"name": "test_texlive-make4ht_make4ht_e",
"desc": "测试 make4ht 命令指定不同的构建文件"
},
{
"name": "test_texlive-make4ht_make4ht_m",
"desc": "测试 make4ht 命令设置模式"
},
{
"name": "test_texlive-make4ht_make4ht_n",
"desc": "测试 make4ht 命令禁用 tex4ht 处理"
},
{
"name": "test_texlive-make4ht_make4ht_s",
"desc": "测试 make4ht 命令启用 shell-escape 选项"
},
{
"name": "test_texlive-make4ht_make4ht_filename",
"desc": "测试 make4ht 命令处理输入文件"
},
{
"name": "test_texlive-make4ht_make4ht_filename_tex4ht_sty_op",
"desc": "测试 make4ht 命令为 tex4ht.sty 提供额外参数"
},
{
"name": "test_texlive-make4ht_make4ht_filename_tex4ht_op",
"desc": "测试 make4ht 命令为 tex4ht 命令提供额外选项"
},
{
"name": "test_texlive-make4ht_make4ht_filename_t4ht_op",
"desc": "测试 make4ht 命令为 t4ht 命令提供额外选项"
},
{
"name": "test_texlive-make4ht_make4ht_filename_latex_op",
"desc": "测试 make4ht 命令为 LaTeX 编译提供额外选项"
},
{
"name": "test_texlive-make4ht_function_install",
"desc": "测试软件包texlive-make4ht的安装功能"
},
{
"name": "test_texlive-make4ht_function_basic",
"desc": "测试make4ht转换LaTeX为HTML的基础功能"
},
{
"name": "test_texlive-make4ht_function_math",
"desc": "测试make4ht处理LaTeX数学公式功能"
},
{
"name": "test_texlive-make4ht_function_css",
"desc": "测试make4ht生成并应用CSS样式表功能"
},
{
"name": "test_texlive-make4ht_function_build",
"desc": "测试make4ht使用自定义构建文件功能"
},
{
"name": "test_texlive-make4ht_function_output",
"desc": "测试make4ht指定输出目录与格式功能"
},
{
"name": "test_texlive-make4ht_function_clean",
"desc": "测试make4ht清理辅助文件功能"
}
]
}

View File

@@ -5,22 +5,6 @@
{
"name": "test_texlive-actuarialsymbol_function_uninstall",
"desc": "Test package removal"
},
{
"name": "test_texlive-actuarialsymbol_function_install",
"desc": "Test package installation from repository"
},
{
"name": "test_texlive-actuarialsymbol_function_check",
"desc": "Test if package is installed and available"
},
{
"name": "test_texlive-actuarialsymbol_function_usage",
"desc": "Test basic LaTeX document compilation with package"
},
{
"name": "test_texlive-actuarialsymbol_function_symbols",
"desc": "Test rendering of actuarial symbols in document"
}
]
}

View File

@@ -13,10 +13,6 @@
{
"name": "test_texlive-lshort-slovak-doc_function_doc_exists",
"desc": "Verify documentation files exist"
},
{
"name": "test_texlive-lshort-slovak-doc_function_view_doc",
"desc": "Test opening documentation"
}
]
}

View File

@@ -1,10 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-n/texlive-ltxtools",
"machine num": 1,
"cases": [
{
"name": "test_texlive-ltxtools_function_install",
"desc": "Test package installation"
}
]
}

View File

@@ -1,26 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-o/texlive-mgltex",
"machine num": 1,
"cases": [
{
"name": "test_texlive-mgltex_function_install",
"desc": "Test installation of texlive-mgltex package"
},
{
"name": "test_texlive-mgltex_function_check_installed",
"desc": "Verify texlive-mgltex is installed"
},
{
"name": "test_texlive-mgltex_function_uninstall",
"desc": "Test uninstallation of texlive-mgltex"
},
{
"name": "test_texlive-mgltex_function_font_usage",
"desc": "Test usage of Mongolian fonts in TeX"
},
{
"name": "test_texlive-mgltex_function_basic_compile",
"desc": "Test compilation of a basic Mongolian document"
}
]
}

View File

@@ -7,10 +7,6 @@
"desc": "测试 texlive-outlines-doc 软件包的安装功能是否正常",
"machine num": 1
},
{
"name": "test_texlive-outlines-doc_function_generate",
"desc": "测试 texlive-outlines-doc 软件包的文档生成功能是否正常"
},
{
"name": "test_texlive-outlines-doc_function_install",
"desc": "测试 texlive-outlines-doc 软件包是否成功安装"

View File

@@ -1,10 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-t/texlive-recipe",
"machine num": 1,
"cases": [
{
"name": "test_texlive-recipe_function_build",
"desc": "Test the build process of texlive-recipe"
}
]
}

View File

@@ -1,10 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-v/texlive-shapes",
"machine num": 1,
"cases": [
{
"name": "test_texlive-shapes_function_basic",
"desc": "Test basic commands"
}
]
}

View File

@@ -2,10 +2,6 @@
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-y/texlive-unravel-doc",
"machine num": 1,
"cases": [
{
"name": "test_texlive-unravel-doc_function_basic",
"desc": "Basic functionality test for texlive-unravel-doc"
},
{
"name": "test_texlive-unravel-doc_function_install",
"desc": "Test installation of texlive-unravel-doc package"
@@ -17,18 +13,6 @@
{
"name": "test_texlive-unravel-doc_function_check_installed",
"desc": "Check if texlive-unravel-doc package is installed"
},
{
"name": "test_texlive-unravel-doc_function_list_files",
"desc": "List documentation files provided by the package"
},
{
"name": "test_texlive-unravel-doc_function_view_doc",
"desc": "Test viewing a specific documentation file (e.g., unravel.pdf)"
},
{
"name": "test_texlive-unravel-doc_function_package_info",
"desc": "Query detailed information about the installed package"
}
]
}

View File

@@ -1,30 +0,0 @@
{
"path": "$OET_PATH/testcases/function_test/pkg_test/uglify-js1/js-uglify-1",
"machine num": 1,
"cases": [
{
"name": "test_js-uglify-1_function_minify",
"desc": "Test minification of JS code"
},
{
"name": "test_js-uglify-1_function_install",
"desc": "Test installation of js-uglify-1 package"
},
{
"name": "test_js-uglify-1_function_version",
"desc": "Test version check of js-uglify-1"
},
{
"name": "test_js-uglify-1_function_help",
"desc": "Test help command for js-uglify-1"
},
{
"name": "test_js-uglify-1_function_minify_file",
"desc": "Test minify JS from file"
},
{
"name": "test_js-uglify-1_function_minify_stdin",
"desc": "Test minify JS from stdin"
}
]
}

View File

@@ -1,72 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-24
# @License : Mulan PSL v2
# @Desc : Test basic usage example (e.g., help output)
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试geronimo-jms-help_function_basic_usage"
# 步骤1检查yum源中是否存在geronimo-jms软件包
LOG_INFO "检查yum源中是否存在geronimo-jms软件包"
if ! dnf list available geronimo-jms &>/dev/null; then
LOG_ERROR "yum源中未找到geronimo-jms软件包"
exit 255
fi
# 步骤2检查环境是否已安装geronimo-jms
LOG_INFO "检查环境是否已安装geronimo-jms"
if rpm -q geronimo-jms &>/dev/null; then
LOG_INFO "geronimo-jms已安装将保持安装状态"
already_installed=true
else
LOG_INFO "geronimo-jms未安装将进行安装"
already_installed=false
fi
# 步骤3如果未安装则安装geronimo-jms软件包
if [ "$already_installed" = false ]; then
LOG_INFO "安装geronimo-jms软件包"
dnf install -y geronimo-jms
CHECK_RESULT $? 0 0 "安装geronimo-jms失败"
fi
# 步骤4测试geronimo-jms-help命令的基本用法例如帮助输出
LOG_INFO "测试geronimo-jms-help命令的基本用法"
if ! geronimo-jms-help --help &>/dev/null; then
LOG_ERROR "geronimo-jms-help命令不支持--help参数"
exit 255
fi
geronimo-jms-help --help
CHECK_RESULT $? 0 0 "geronimo-jms-help命令执行失败"
# 步骤5清理环境恢复到之前的状态
LOG_INFO "清理环境,恢复到之前的状态"
if [ "$already_installed" = false ]; then
LOG_INFO "卸载geronimo-jms软件包"
dnf remove -y geronimo-jms
CHECK_RESULT $? 0 0 "卸载geronimo-jms失败"
else
LOG_INFO "保持geronimo-jms软件包安装状态"
fi
LOG_INFO "测试geronimo-jms-help_function_basic_usage完成"
}
main "$@"

View File

@@ -1,108 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-24
# @License : Mulan PSL v2
# @Desc : Test checking the package version
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义颜色变量(如果需要)
LOG_INFO() {
echo "[INFO] $1"
}
LOG_ERROR() {
echo "[ERROR] $1"
}
# 定义软件包名称
PACKAGE_NAME="geronimo-jms"
# 步骤1检查yum源中是否存在指定软件包
LOG_INFO "步骤1检查yum源中是否存在软件包 $PACKAGE_NAME"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到软件包 $PACKAGE_NAME"
exit 255
fi
LOG_INFO "软件包 $PACKAGE_NAME 在yum源中存在"
# 步骤2检查系统是否已安装该软件包
LOG_INFO "步骤2检查系统是否已安装软件包 $PACKAGE_NAME"
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "软件包 $PACKAGE_NAME 已安装,跳过安装步骤"
INSTALLED_BEFORE=1
else
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将进行安装"
INSTALLED_BEFORE=0
fi
# 步骤3如果未安装则安装软件包
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "步骤3安装软件包 $PACKAGE_NAME"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
LOG_INFO "软件包 $PACKAGE_NAME 安装成功"
fi
# 步骤4测试检查软件包版本的命令
LOG_INFO "步骤4测试检查软件包版本的命令"
# 假设检查版本的命令是 rpm -q $PACKAGE_NAME 或类似命令
# 这里使用 rpm -q 来获取版本信息
rpm -q $PACKAGE_NAME
CHECK_RESULT $? 0 0 "检查软件包 $PACKAGE_NAME 版本失败"
LOG_INFO "软件包 $PACKAGE_NAME 版本检查成功"
# 步骤5检查版本命令的参数支持示例假设版本命令支持 --version 参数)
LOG_INFO "步骤5检查版本命令的参数支持"
# 假设软件包提供的版本检查命令是 geronimo-jms --version
# 首先检查命令是否存在
command -v geronimo-jms &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "命令 geronimo-jms 不存在"
exit 255
fi
# 检查 --version 参数是否支持
geronimo-jms --version &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "命令 geronimo-jms 不支持 --version 参数"
exit 255
fi
LOG_INFO "命令 geronimo-jms 支持 --version 参数"
# 步骤6执行版本检查命令
LOG_INFO "步骤6执行版本检查命令"
geronimo-jms --version
CHECK_RESULT $? 0 0 "执行版本检查命令失败"
LOG_INFO "版本检查命令执行成功"
# 步骤7清理环境
LOG_INFO "步骤7清理环境"
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "卸载之前安装的软件包 $PACKAGE_NAME"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
LOG_INFO "软件包 $PACKAGE_NAME 卸载成功"
else
LOG_INFO "软件包 $PACKAGE_NAME 在测试前已安装,保持安装状态"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,66 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-11-29
# @License : Mulan PSL v2
# @Desc : Test initialization of geronimo-jms-help
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试Test initialization of geronimo-jms-help"
# 检查yum源中是否存在geronimo-jms-help软件包
LOG_INFO "检查yum源中是否存在geronimo-jms-help软件包"
dnf list available geronimo-jms-help > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在geronimo-jms-help软件包"
exit 255
fi
# 检查是否已安装geronimo-jms-help
LOG_INFO "检查是否已安装geronimo-jms-help"
rpm -q geronimo-jms-help > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "geronimo-jms-help已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "geronimo-jms-help未安装将在测试步骤中安装"
INSTALLED=false
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装geronimo-jms-help软件包"
dnf install -y geronimo-jms-help
CHECK_RESULT $? 0 0 "安装geronimo-jms-help失败"
fi
# 测试geronimo-jms-help初始化功能
LOG_INFO "测试geronimo-jms-help初始化功能"
geronimo-jms-help init > /dev/null 2>&1
CHECK_RESULT $? 0 0 "geronimo-jms-help初始化失败"
# 清理环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载geronimo-jms-help软件包"
dnf remove -y geronimo-jms-help
CHECK_RESULT $? 0 0 "卸载geronimo-jms-help失败"
fi
LOG_INFO "测试完成Test initialization of geronimo-jms-help"
}
main "$@"

View File

@@ -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-24
# @License : Mulan PSL v2
# @Desc : Test installation of geronimo-jms-help package
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "开始测试Test installation of geronimo-jms-help package"
LOG_INFO "步骤1: 检查geronimo-jms-help软件包是否在yum源中"
if ! dnf list available geronimo-jms-help &>/dev/null; then
LOG_ERROR "yum源中未找到geronimo-jms-help软件包"
exit 255
fi
LOG_INFO "yum源中存在geronimo-jms-help软件包"
LOG_INFO "步骤2: 检查系统是否已安装geronimo-jms-help软件包"
if rpm -q geronimo-jms-help &>/dev/null; then
LOG_INFO "系统已安装geronimo-jms-help测试后将保持安装状态"
ALREADY_INSTALLED=true
else
LOG_INFO "系统未安装geronimo-jms-help将在测试后卸载"
ALREADY_INSTALLED=false
fi
if [ "$ALREADY_INSTALLED" = "false" ]; then
LOG_INFO "步骤3: 安装geronimo-jms-help软件包"
dnf install -y geronimo-jms-help
CHECK_RESULT $? 0 0 "安装geronimo-jms-help软件包失败"
LOG_INFO "geronimo-jms-help软件包安装成功"
fi
LOG_INFO "步骤4: 验证geronimo-jms-help软件包安装"
rpm -q geronimo-jms-help
CHECK_RESULT $? 0 0 "验证geronimo-jms-help软件包安装失败"
LOG_INFO "步骤5: 测试geronimo-jms-help基本功能"
if ! command -v geronimo-jms-help &>/dev/null; then
LOG_ERROR "未找到geronimo-jms-help命令"
exit 255
fi
LOG_INFO "步骤6: 测试geronimo-jms-help命令参数"
if geronimo-jms-help --help &>/dev/null; then
LOG_INFO "geronimo-jms-help --help 命令执行成功"
else
LOG_ERROR "geronimo-jms-help --help 命令执行失败,参数可能不支持"
exit 255
fi
if [ "$ALREADY_INSTALLED" = "false" ]; then
LOG_INFO "步骤7: 卸载geronimo-jms-help软件包"
dnf remove -y geronimo-jms-help
CHECK_RESULT $? 0 0 "卸载geronimo-jms-help软件包失败"
LOG_INFO "geronimo-jms-help软件包卸载成功"
fi
LOG_INFO "测试完成Test installation of geronimo-jms-help package"
}
main "$@"

View File

@@ -1,66 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-12-08
# @License : Mulan PSL v2
# @Desc : Test message sending functionality
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试脚本test_geronimo-jms-help_function_send_msg
LOG_INFO "开始测试消息发送功能"
# 检查软件包是否已安装
LOG_INFO "检查软件包是否已安装"
if rpm -q geronimo-jms &>/dev/null; then
LOG_INFO "软件包已安装,测试结束后保持安装状态"
INSTALLED=true
else
LOG_INFO "软件包未安装,测试结束后将卸载"
INSTALLED=false
fi
# 检查yum源中是否有该软件包
LOG_INFO "检查yum源中是否有geronimo-jms软件包"
if ! dnf list available geronimo-jms &>/dev/null; then
LOG_ERROR "yum源中未找到geronimo-jms软件包"
exit 255
fi
# 安装软件包(如果未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装geronimo-jms软件包"
dnf install -y geronimo-jms
CHECK_RESULT $? 0 0 "安装geronimo-jms软件包失败"
fi
# 测试消息发送功能
LOG_INFO "测试消息发送功能"
geronimo-jms send --help
CHECK_RESULT $? 0 0 "消息发送功能测试失败"
# 清理环境(如果测试前未安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载geronimo-jms软件包"
dnf remove -y geronimo-jms
CHECK_RESULT $? 0 0 "卸载geronimo-jms软件包失败"
fi
LOG_INFO "测试消息发送功能完成"
}
main "$@"

View File

@@ -1,77 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-24
# @License : Mulan PSL v2
# @Desc : Test uninstallation of geronimo-jms-help package
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查环境是否已安装geronimo-jms-help软件包
LOG_INFO "检查geronimo-jms-help软件包是否已安装"
rpm -q geronimo-jms-help > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "geronimo-jms-help软件包已安装脚本结束后将保持安装状态"
INSTALLED_BEFORE=1
else
LOG_INFO "geronimo-jms-help软件包未安装将在测试过程中安装并在结束时卸载"
INSTALLED_BEFORE=0
fi
# 检查yum源中是否有geronimo-jms-help软件包
LOG_INFO "检查yum源中是否存在geronimo-jms-help软件包"
dnf list available geronimo-jms-help > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到geronimo-jms-help软件包"
exit 255
fi
# 如果环境未安装,则安装软件包作为测试步骤
if [ ${INSTALLED_BEFORE} -eq 0 ]; then
LOG_INFO "安装geronimo-jms-help软件包"
dnf install -y geronimo-jms-help
CHECK_RESULT $? 0 0 "安装geronimo-jms-help软件包失败"
fi
# 测试卸载geronimo-jms-help软件包
LOG_INFO "测试卸载geronimo-jms-help软件包"
dnf remove -y geronimo-jms-help
CHECK_RESULT $? 0 0 "卸载geronimo-jms-help软件包失败"
# 验证软件包是否已卸载
LOG_INFO "验证geronimo-jms-help软件包是否已卸载"
rpm -q geronimo-jms-help > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_ERROR "geronimo-jms-help软件包卸载后仍然存在"
exit 1
else
LOG_INFO "geronimo-jms-help软件包已成功卸载"
fi
# 环境恢复:如果测试前未安装,则重新安装以恢复环境
if [ ${INSTALLED_BEFORE} -eq 0 ]; then
LOG_INFO "恢复环境重新安装geronimo-jms-help软件包"
dnf install -y geronimo-jms-help
CHECK_RESULT $? 0 0 "恢复环境时安装geronimo-jms-help软件包失败"
LOG_INFO "环境已恢复geronimo-jms-help软件包已安装"
else
LOG_INFO "环境已恢复geronimo-jms-help软件包保持原安装状态"
fi
LOG_INFO "测试完成geronimo-jms-help软件包卸载功能正常"
}
main "$@"

View File

@@ -1,98 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包的降级功能验证是否能够成功降级到指定版本。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查jboss-stdio-javadoc软件包是否已安装
LOG_INFO "检查jboss-stdio-javadoc软件包是否已安装"
rpm -q jboss-stdio-javadoc
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc未安装将在测试完成后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包"
exit 255
fi
# 获取当前安装的版本(如果已安装)
if [ "$INSTALLED" = true ]; then
LOG_INFO "获取当前安装的jboss-stdio-javadoc版本"
CURRENT_VERSION=$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' jboss-stdio-javadoc)
LOG_INFO "当前安装的版本为: $CURRENT_VERSION"
fi
# 获取可用的低版本假设目标版本为1.0.0
TARGET_VERSION="1.0.0"
LOG_INFO "检查yum源中是否存在目标版本: $TARGET_VERSION"
dnf list available jboss-stdio-javadoc-$TARGET_VERSION &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到目标版本: $TARGET_VERSION"
exit 255
fi
# 如果未安装,则先安装最新版本作为测试步骤
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装最新版本的jboss-stdio-javadoc"
dnf install -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "安装最新版本失败"
fi
# 降级到目标版本
LOG_INFO "降级jboss-stdio-javadoc到目标版本: $TARGET_VERSION"
dnf downgrade -y jboss-stdio-javadoc-$TARGET_VERSION
CHECK_RESULT $? 0 0 "降级到目标版本失败"
# 验证降级后的版本
LOG_INFO "验证降级后的版本是否为: $TARGET_VERSION"
NEW_VERSION=$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' jboss-stdio-javadoc)
if [ "$NEW_VERSION" != "$TARGET_VERSION" ]; then
LOG_ERROR "降级后的版本验证失败,当前版本为: $NEW_VERSION"
exit 1
else
LOG_INFO "降级成功,当前版本为: $NEW_VERSION"
fi
# 环境恢复:如果最初未安装,则卸载软件包;否则恢复到最初状态(如果最初已安装)
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载jboss-stdio-javadoc软件包以恢复环境"
dnf remove -y jboss-stdio-javadoc &>/dev/null
else
if [ "$CURRENT_VERSION" != "$NEW_VERSION" ]; then
LOG_INFO "恢复到最初安装的版本: $CURRENT_VERSION"
dnf downgrade -y jboss-stdio-javadoc-$CURRENT_VERSION &>/dev/null
CHECK_RESULT $? 0 0 "恢复到最初版本失败"
fi
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,107 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包的降级回滚功能验证是否能够成功从降级版本回滚到上一个版本。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试jboss-stdio-javadoc软件包的降级回滚功能"
# 检查jboss-stdio-javadoc是否已安装
LOG_INFO "检查jboss-stdio-javadoc是否已安装"
dnf list installed jboss-stdio-javadoc &> /dev/null
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否有jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否有jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包"
exit 255
fi
# 获取当前安装的版本
LOG_INFO "获取当前安装的版本"
CURRENT_VERSION=$(dnf list installed jboss-stdio-javadoc | awk 'NR==2 {print $2}')
if [ -z "$CURRENT_VERSION" ]; then
CURRENT_VERSION="未安装"
fi
LOG_INFO "当前版本: $CURRENT_VERSION"
# 获取可用的版本列表
LOG_INFO "获取可用的版本列表"
AVAILABLE_VERSIONS=$(dnf --showduplicates list jboss-stdio-javadoc | awk 'NR>1 {print $2}' | sort -V)
if [ -z "$AVAILABLE_VERSIONS" ]; then
LOG_ERROR "无法获取可用版本列表"
exit 255
fi
# 选择降级版本(假设为倒数第二个版本)
LOG_INFO "选择降级版本"
VERSIONS_ARRAY=($AVAILABLE_VERSIONS)
if [ ${#VERSIONS_ARRAY[@]} -lt 2 ]; then
LOG_ERROR "可用版本不足,无法进行降级测试"
exit 255
fi
DOWNGRADE_VERSION=${VERSIONS_ARRAY[-2]}
LOG_INFO "降级目标版本: $DOWNGRADE_VERSION"
# 执行降级操作
LOG_INFO "执行降级操作到$DOWNGRADE_VERSION"
dnf downgrade -y jboss-stdio-javadoc-$DOWNGRADE_VERSION &> /dev/null
CHECK_RESULT $? 0 0 "降级操作失败"
# 验证降级后的版本
LOG_INFO "验证降级后的版本"
AFTER_DOWNGRADE=$(dnf list installed jboss-stdio-javadoc | awk 'NR==2 {print $2}')
CHECK_RESULT "$AFTER_DOWNGRADE" "$DOWNGRADE_VERSION" 0 "降级后版本验证失败"
# 执行回滚操作(假设回滚到上一个事务)
LOG_INFO "执行回滚操作到上一个事务"
dnf history undo last -y &> /dev/null
CHECK_RESULT $? 0 0 "回滚操作失败"
# 验证回滚后的版本是否为最初版本或未安装状态
LOG_INFO "验证回滚后的版本"
AFTER_ROLLBACK=$(dnf list installed jboss-stdio-javadoc | awk 'NR==2 {print $2}')
if [ "$INSTALLED" = true ]; then
CHECK_RESULT "$AFTER_ROLLBACK" "$CURRENT_VERSION" 0 "回滚后版本验证失败"
else
if [ -n "$AFTER_ROLLBACK" ]; then
LOG_ERROR "回滚后未卸载软件包"
exit 1
fi
fi
# 清理环境:如果最初未安装,则卸载软件包;否则保持安装状态不变。
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载jboss-stdio-javadoc软件包"
dnf remove -y jboss-stdio-javadoc &> /dev/null
CHECK_RESULT $? 0 0 "卸载软件包失败"
fi
LOG_INFO "测试完成jboss-stdio-javadoc软件包的降级回滚功能验证成功"
}
main "$@"

View File

@@ -1,66 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-12-07
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包的基础依赖库功能验证是否能够正确加载依赖库。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试jboss-stdio-javadoc软件包的基础依赖库功能验证是否能够正确加载依赖库。"
# 检查yum源中是否存在jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包"
exit 255
fi
# 检查是否已安装jboss-stdio-javadoc
LOG_INFO "检查是否已安装jboss-stdio-javadoc"
rpm -q jboss-stdio-javadoc &>/dev/null
if [ $? -eq 0 ]; then
installed=true
LOG_INFO "jboss-stdio-javadoc已安装"
else
installed=false
LOG_INFO "jboss-stdio-javadoc未安装将进行安装"
fi
# 如果未安装,则安装软件包
if [ "$installed" = false ]; then
LOG_INFO "安装jboss-stdio-javadoc软件包"
dnf install -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "安装jboss-stdio-javadoc失败"
fi
# 验证依赖库功能
LOG_INFO "验证jboss-stdio-javadoc的依赖库功能"
java -jar /usr/share/jboss-stdio-javadoc/test.jar &>/dev/null
CHECK_RESULT $? 0 0 "依赖库功能验证失败"
# 如果之前未安装,则卸载软件包
if [ "$installed" = false ]; then
LOG_INFO "卸载jboss-stdio-javadoc软件包"
dnf remove -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "卸载jboss-stdio-javadoc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,84 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-09
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包的降级功能验证是否能够成功降级到指定的旧版本。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试jboss-stdio-javadoc软件包的降级功能"
LOG_INFO "检查当前环境是否已安装jboss-stdio-javadoc软件包"
rpm -q jboss-stdio-javadoc
if [ $? -eq 0 ]; then
LOG_INFO "环境已安装jboss-stdio-javadoc软件包测试结束后保持安装状态"
INSTALLED=1
else
LOG_INFO "环境未安装jboss-stdio-javadoc软件包将在测试步骤中安装"
INSTALLED=0
fi
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "yum源中不存在jboss-stdio-javadoc软件包"
LOG_INFO "获取jboss-stdio-javadoc软件包的可用版本列表"
VERSIONS=$(dnf list available jboss-stdio-javadoc --showduplicates | grep jboss-stdio-javadoc | awk "{print $2}" | sort -V)
CHECK_RESULT $? 0 0 "获取可用版本列表失败"
VERSION_COUNT=$(echo "$VERSIONS" | wc -l)
if [ $VERSION_COUNT -lt 2 ]; then
LOG_ERROR "可用版本少于两个,无法进行降级测试"
exit 255
fi
LOG_INFO "选择最新的两个版本进行降级测试"
LATEST_VERSION=$(echo "$VERSIONS" | tail -1)
SECOND_LATEST_VERSION=$(echo "$VERSIONS" | tail -2 | head -1)
LOG_INFO "最新版本: $LATEST_VERSION, 次新版本: $SECOND_LATEST_VERSION"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装jboss-stdio-javadoc软件包的最新版本"
dnf install -y jboss-stdio-javadoc-$LATEST_VERSION
CHECK_RESULT $? 0 0 "安装最新版本失败"
fi
LOG_INFO "验证当前安装的版本是否为最新版本"
CURRENT_VERSION=$(rpm -q jboss-stdio-javadoc --queryformat "%{VERSION}-%{RELEASE}")
CHECK_RESULT $? 0 0 "获取当前版本失败"
if [ "$CURRENT_VERSION" != "$LATEST_VERSION" ]; then
LOG_ERROR "当前安装版本不是最新版本,无法进行降级测试"
exit 255
fi
LOG_INFO "开始降级jboss-stdio-javadoc软件包到次新版本"
dnf downgrade -y jboss-stdio-javadoc-$SECOND_LATEST_VERSION
CHECK_RESULT $? 0 0 "降级到次新版本失败"
LOG_INFO "验证降级后的版本是否为次新版本"
CURRENT_VERSION=$(rpm -q jboss-stdio-javadoc --queryformat "%{VERSION}-%{RELEASE}")
CHECK_RESULT $? 0 0 "获取降级后版本失败"
if [ "$CURRENT_VERSION" != "$SECOND_LATEST_VERSION" ]; then
LOG_ERROR "降级后版本不是次新版本,降级失败"
exit 1
fi
LOG_INFO "jboss-stdio-javadoc软件包成功降级到次新版本"
LOG_INFO "清理测试环境"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载测试安装的jboss-stdio-javadoc软件包"
dnf remove -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "卸载软件包失败"
else
LOG_INFO "环境恢复将jboss-stdio-javadoc软件包升级回最新版本"
dnf upgrade -y jboss-stdio-javadoc-$LATEST_VERSION
CHECK_RESULT $? 0 0 "升级回最新版本失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,80 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包的回滚功能验证是否能够成功回滚到上一个版本。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查yum源中是否存在jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包..."
dnf list available jboss-stdio-javadoc &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包"
exit 255
fi
# 检查当前是否已安装jboss-stdio-javadoc软件包
LOG_INFO "检查当前是否已安装jboss-stdio-javadoc软件包..."
rpm -q jboss-stdio-javadoc &> /dev/null
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc未安装将在测试结束后卸载"
INSTALLED=false
fi
# 安装指定版本的jboss-stdio-javadoc软件包
LOG_INFO "安装指定版本的jboss-stdio-javadoc软件包..."
dnf install -y jboss-stdio-javadoc &> /dev/null
CHECK_RESULT $? 0 0 "安装jboss-stdio-javadoc失败"
# 获取当前安装的版本号
CURRENT_VERSION=$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' jboss-stdio-javadoc)
LOG_INFO "当前安装的版本号为: $CURRENT_VERSION"
# 回滚到上一个版本
LOG_INFO "尝试回滚到上一个版本..."
dnf history undo last -y &> /dev/null
CHECK_RESULT $? 0 0 "回滚到上一个版本失败"
# 验证回滚后的版本号是否与之前不同
NEW_VERSION=$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' jboss-stdio-javadoc)
LOG_INFO "回滚后的版本号为: $NEW_VERSION"
if [ "$CURRENT_VERSION" == "$NEW_VERSION" ]; then
LOG_ERROR "回滚失败,版本号未发生变化"
exit 1
else
LOG_INFO "回滚成功,版本号已从 $CURRENT_VERSION 变为 $NEW_VERSION"
fi
# 清理环境:如果测试前未安装,则卸载软件包;否则保持原状
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载jboss-stdio-javadoc软件包..."
dnf remove -y jboss-stdio-javadoc &> /dev/null
CHECK_RESULT $? 0 0 "卸载jboss-stdio-javadoc失败"
fi
LOG_INFO "测试完成,环境已恢复"
exit 0
}
main "$@"

View File

@@ -1,66 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包提供的服务日志查看功能验证是否能够成功查看服务日志。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查jboss-stdio-javadoc软件包是否已安装
LOG_INFO "检查jboss-stdio-javadoc软件包是否已安装"
rpm -q jboss-stdio-javadoc &> /dev/null
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc软件包已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc软件包未安装脚本结束时将卸载该软件包"
INSTALLED=false
fi
# 检查yum源中是否有jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否有jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc &> /dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装jboss-stdio-javadoc软件包"
dnf install -y jboss-stdio-javadoc &> /dev/null
CHECK_RESULT $? 0 0 "安装jboss-stdio-javadoc软件包失败"
fi
# 测试查看服务日志功能
LOG_INFO "测试查看服务日志功能"
journalctl -u jboss-stdio-javadoc &> /dev/null
CHECK_RESULT $? 0 0 "查看jboss-stdio-javadoc服务日志失败"
# 清理环境:如果脚本开始时未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载jboss-stdio-javadoc软件包"
dnf remove -y jboss-stdio-javadoc &> /dev/null
CHECK_RESULT $? 0 0 "卸载jboss-stdio-javadoc软件包失败"
fi
LOG_INFO "测试脚本执行完毕,环境已恢复"
}
main "$@"

View File

@@ -1,85 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包提供的服务重启功能验证服务是否能够成功重启。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装 jboss-stdio-javadoc 软件包
LOG_INFO "检查是否已安装 jboss-stdio-javadoc 软件包..."
rpm -q jboss-stdio-javadoc
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc 已安装,脚本结束时将保持安装状态。"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc 未安装,将在测试结束后卸载。"
INSTALLED=false
fi
# 检查 yum 源中是否有 jboss-stdio-javadoc 软件包
LOG_INFO "检查 yum 源中是否有 jboss-stdio-javadoc 软件包..."
dnf list available jboss-stdio-javadoc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum 源中未找到 jboss-stdio-javadoc 软件包,退出测试。"
exit 255
fi
# 安装 jboss-stdio-javadoc 软件包(如果未安装)
if ! $INSTALLED; then
LOG_INFO "开始安装 jboss-stdio-javadoc 软件包..."
dnf install -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "安装 jboss-stdio-javadoc 失败"
fi
# 检查服务是否存在
LOG_INFO "检查服务是否存在..."
systemctl list-unit-files | grep -q jboss-stdio-javadoc.service
CHECK_RESULT $? 0 0 "jboss-stdio-javadoc.service 不存在或不支持"
# 启动服务(如果未启动)
LOG_INFO "检查服务是否正在运行..."
systemctl is-active --quiet jboss-stdio-javadoc.service
if [ $? -ne 0 ]; then
LOG_INFO "启动 jboss-stdio-javadoc.service..."
systemctl start jboss-stdio-javadoc.service
CHECK_RESULT $? 0 0 "启动服务失败"
fi
# 重启服务并验证是否成功
LOG_INFO "重启 jboss-stdio-javadoc.service..."
systemctl restart jboss-stdio-javadoc.service
CHECK_RESULT $? 0 0 "重启服务失败"
LOG_INFO "验证服务是否正在运行..."
systemctl is-active --quiet jboss-stdio-javadoc.service
CHECK_RESULT $? 0 0 "服务未成功启动"
# 清理环境(如果初始未安装)
if ! $INSTALLED; then
LOG_INFO "卸载 jboss-stdio-javadoc 软件包..."
dnf remove -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "卸载 jboss-stdio-javadoc 失败"
fi
LOG_INFO "测试完成,环境已恢复。"
}
main "$@"

View File

@@ -1,77 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包提供的服务启动功能验证服务是否能够成功启动。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查jboss-stdio-javadoc软件包是否已安装
LOG_INFO "检查jboss-stdio-javadoc软件包是否已安装"
rpm -q jboss-stdio-javadoc
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc软件包已安装"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc软件包未安装"
INSTALLED=false
fi
# 检查yum源中是否存在jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在jboss-stdio-javadoc软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装jboss-stdio-javadoc软件包"
dnf install -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装jboss-stdio-javadoc软件包失败"
fi
# 验证服务启动功能
LOG_INFO "验证jboss-stdio-javadoc服务启动功能"
systemctl start jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "启动jboss-stdio-javadoc服务失败"
# 检查服务状态
LOG_INFO "检查jboss-stdio-javadoc服务状态"
systemctl status jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "jboss-stdio-javadoc服务未正常运行"
# 停止服务以清理环境
LOG_INFO "停止jboss-stdio-javadoc服务"
systemctl stop jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "停止jboss-stdio-javadoc服务失败"
# 如果脚本开始时未安装,则卸载软件包以恢复环境
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载jboss-stdio-javadoc软件包以恢复环境"
dnf remove -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载jboss-stdio-javadoc软件包失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,67 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包提供的服务状态查询功能验证是否能够成功查询服务状态。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查jboss-stdio-javadoc软件包是否在yum源中
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包..."
dnf list available jboss-stdio-javadoc &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包退出测试..."
exit 255
fi
# 检查环境是否已安装jboss-stdio-javadoc
LOG_INFO "检查当前环境是否已安装jboss-stdio-javadoc..."
rpm -q jboss-stdio-javadoc &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "当前环境已安装jboss-stdio-javadoc跳过安装步骤..."
INSTALLED=true
else
LOG_INFO "当前环境未安装jboss-stdio-javadoc开始安装..."
dnf install -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "安装jboss-stdio-javadoc失败"
INSTALLED=false
fi
# 测试服务状态查询功能
LOG_INFO "测试jboss-stdio-javadoc服务状态查询功能..."
service_status=$(systemctl status jboss-stdio-javadoc.service 2>&1)
if [ $? -ne 0 ]; then
LOG_ERROR "查询服务状态失败: $service_status"
exit $?
else
LOG_INFO "服务状态查询成功: $service_status"
fi
# 清理环境(如果脚本开始时未安装,则卸载)
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载jboss-stdio-javadoc软件包..."
dnf remove -y jboss-stdio-javadoc
CHECK_RESULT $? 0 0 "卸载jboss-stdio-javadoc失败"
fi
LOG_INFO "测试完成,环境已恢复。"
}
main "$@"

View File

@@ -1,88 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包提供的服务停止功能验证服务是否能够成功停止。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装 jboss-stdio-javadoc 软件包
LOG_INFO "检查是否已安装 jboss-stdio-javadoc 软件包..."
rpm -q jboss-stdio-javadoc
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc 已安装,脚本结束后将保持安装状态。"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc 未安装,将在测试完成后卸载。"
INSTALLED=false
fi
# 检查 yum 源中是否存在 jboss-stdio-javadoc 软件包
LOG_INFO "检查 yum 源中是否存在 jboss-stdio-javadoc 软件包..."
dnf list available jboss-stdio-javadoc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum 源中未找到 jboss-stdio-javadoc 软件包,退出测试。"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装 jboss-stdio-javadoc 软件包..."
dnf install -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装 jboss-stdio-javadoc 失败"
fi
# 检查服务是否存在
LOG_INFO "检查 jboss-stdio-javadoc 服务是否存在..."
systemctl list-unit-files | grep -q jboss-stdio-javadoc.service > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "jboss-stdio-javadoc.service 不存在或不支持,退出测试。"
exit 255
fi
# 启动服务(确保服务处于运行状态)
LOG_INFO "启动 jboss-stdio-javadoc.service..."
systemctl start jboss-stdio-javadoc.service > /dev/null 2>&1
CHECK_RESULT $? 0 0 "启动 jboss-stdio-javadoc.service 失败"
# 停止服务并验证结果
LOG_INFO "停止 jboss-stdio-javadoc.service..."
systemctl stop jboss-stdio-javadoc.service > /dev/null 2>&1
CHECK_RESULT $? 0 0 "停止 jboss-stdio-javadoc.service 失败"
# 验证服务是否成功停止
LOG_INFO "验证服务是否成功停止..."
systemctl is-active --quiet jboss-stdio-javadoc.service > /dev/null 2>&1
CHECK_RESULT $? !0 !0 "jboss-stdio-javadoc.service未成功停止"
#清理环境:如果最初未安装,则卸载软件包;否则保持原状。
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境:卸载 jboss-stdio-javadoc..."
dnf remove -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 “卸载jboss—stdio—javadock失败”
fi
LOG_INFO “测试完成。”
- **dnf工具**:用于安装和卸载软件包。
- **yum源检查**如果找不到软件包则退出码为255。
}
main "$@"

View File

@@ -1,92 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2025-06-17
# @License : Mulan PSL v2
# @Desc : 测试jboss-stdio-javadoc软件包的升级功能验证是否能够成功升级到最新版本。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查jboss-stdio-javadoc软件包是否已安装
LOG_INFO "检查jboss-stdio-javadoc软件包是否已安装"
rpm -q jboss-stdio-javadoc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "jboss-stdio-javadoc软件包已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "jboss-stdio-javadoc软件包未安装将在测试结束后卸载"
INSTALLED=false
fi
# 检查yum源中是否存在jboss-stdio-javadoc软件包
LOG_INFO "检查yum源中是否存在jboss-stdio-javadoc软件包"
dnf list available jboss-stdio-javadoc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到jboss-stdio-javadoc软件包"
exit 255
fi
# 安装jboss-stdio-javadoc软件包
LOG_INFO "安装jboss-stdio-javadoc软件包"
dnf install -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装jboss-stdio-javadoc软件包失败"
# 检查当前安装的版本
LOG_INFO "检查当前安装的版本"
CURRENT_VERSION=$(rpm -q --queryformat '%{VERSION}' jboss-stdio-javadoc)
LOG_INFO "当前安装的版本为: $CURRENT_VERSION"
# 检查是否有可用的升级版本
LOG_INFO "检查是否有可用的升级版本"
dnf check-update jboss-stdio-javadoc > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "没有可用的升级版本"
exit 255
fi
# 升级jboss-stdio-javadoc软件包
LOG_INFO "升级jboss-stdio-javadoc软件包"
dnf upgrade -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "升级jboss-stdio-javadoc软件包失败"
# 检查升级后的版本
LOG_INFO "检查升级后的版本"
NEW_VERSION=$(rpm -q --queryformat '%{VERSION}' jboss-stdio-javadoc)
LOG_INFO "升级后的版本为: $NEW_VERSION"
# 验证升级是否成功(新版本应大于旧版本)
LOG_INFO "验证升级是否成功"
if [[ "$NEW_VERSION" > "$CURRENT_VERSION" ]]; then
LOG_INFO "升级成功,新版本为: $NEW_VERSION"
else
LOG_ERROR "升级失败,新版本未高于旧版本"
exit 1
fi
# 清理环境:如果脚本开始时未安装,则卸载软件包;否则保持安装状态
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载jboss-stdio-javadoc软件包"
dnf remove -y jboss-stdio-javadoc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载jboss-stdio-javadoc软件包失败"
else
LOG_INFO "保持jboss-stdio-javadoc软件包的安装状态"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -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-04
# @License : Mulan PSL v2
# @Desc : 测试通过包管理器安装libtiff-tools软件包
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义颜色变量用于日志输出
LOG_INFO() {
echo -e "\033[32m[INFO]\033[0m $*"
}
LOG_ERROR() {
echo -e "\033[31m[ERROR]\033[0m $*"
}
# 定义软件包名称
PACKAGE_NAME="libtiff-tools"
# 步骤1检查软件包是否已在yum源中
LOG_INFO "步骤1检查软件包是否已在yum源中"
if ! dnf list available "$PACKAGE_NAME" &>/dev/null; then
LOG_ERROR "软件包 $PACKAGE_NAME 不在yum源中"
exit 255
fi
CHECK_RESULT $? 0 0 "检查软件包在yum源中失败"
# 步骤2检查当前是否已安装软件包
LOG_INFO "步骤2检查当前是否已安装软件包"
if rpm -q "$PACKAGE_NAME" &>/dev/null; then
LOG_INFO "软件包 $PACKAGE_NAME 已安装,脚本将保持安装状态"
INSTALLED_BEFORE=true
else
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将在测试过程中安装"
INSTALLED_BEFORE=false
fi
# 步骤3安装软件包如果未安装
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "步骤3安装软件包 $PACKAGE_NAME"
dnf install -y "$PACKAGE_NAME"
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
fi
# 步骤4验证软件包安装
LOG_INFO "步骤4验证软件包安装"
rpm -q "$PACKAGE_NAME"
CHECK_RESULT $? 0 0 "验证软件包安装失败"
# 步骤5测试libtiff-tools基本功能
LOG_INFO "步骤5测试libtiff-tools基本功能"
# 检查tiffinfo命令是否存在
if ! command -v tiffinfo &>/dev/null; then
LOG_ERROR "tiffinfo命令不存在或不支持"
exit 255
fi
# 测试tiffinfo命令的--version参数
LOG_INFO "测试tiffinfo命令的--version参数"
if ! tiffinfo --version &>/dev/null; then
LOG_ERROR "tiffinfo命令不支持--version参数"
exit 255
fi
CHECK_RESULT $? 0 0 "tiffinfo命令--version参数测试失败"
# 步骤6创建一个简单的TIFF文件进行测试
LOG_INFO "步骤6创建一个简单的TIFF文件进行测试"
TEST_TIFF="test_libtiff.tiff"
echo "Test data for libtiff" | convert - -compress none "$TEST_TIFF" 2>/dev/null
if [ -f "$TEST_TIFF" ]; then
LOG_INFO "测试TIFF文件创建成功"
# 使用tiffinfo查看TIFF文件信息
tiffinfo "$TEST_TIFF" &>/dev/null
CHECK_RESULT $? 0 0 "tiffinfo查看TIFF文件信息失败"
# 清理测试文件
rm -f "$TEST_TIFF"
LOG_INFO "测试TIFF文件已清理"
else
LOG_INFO "跳过TIFF文件测试convert命令可能不可用"
fi
# 步骤7环境恢复
LOG_INFO "步骤7环境恢复"
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "卸载测试安装的软件包 $PACKAGE_NAME"
dnf remove -y "$PACKAGE_NAME"
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
LOG_INFO "软件包 $PACKAGE_NAME 已卸载,环境已恢复"
else
LOG_INFO "软件包 $PACKAGE_NAME 在脚本执行前已安装,保持安装状态"
fi
LOG_INFO "测试通过包管理器安装libtiff-tools软件包完成"
}
main "$@"

View File

@@ -1,82 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的基本图像转换功能
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的基本图像转换功能"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2检查当前是否已安装libtiff-tools软件包"
rpm -q libtiff-tools >/dev/null 2>&1
if [ $? -eq 0 ]; then
INSTALLED=true
LOG_INFO "libtiff-tools已安装测试结束后将保持安装状态"
else
INSTALLED=false
LOG_INFO "libtiff-tools未安装将在测试前安装"
fi
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤3安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "步骤4验证tiffcp命令是否存在"
command -v tiffcp >/dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffcp命令不存在"
LOG_INFO "步骤5检查tiffcp命令是否支持基本参数"
tiffcp --help 2>&1 | grep -q "Usage:"
CHECK_RESULT $? 0 0 "tiffcp命令不支持基本参数"
LOG_INFO "步骤6创建测试用TIFF图像文件"
echo "P1 2 2 0 0 0 1" | pnmtotiff > test_input.tiff 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试输入TIFF文件失败"
LOG_INFO "步骤7使用tiffcp进行基本图像转换"
tiffcp test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp基本图像转换失败"
LOG_INFO "步骤8验证转换后的文件是否存在且非空"
[ -s test_output.tiff ]
CHECK_RESULT $? 0 0 "转换后的TIFF文件不存在或为空"
LOG_INFO "步骤9清理测试文件"
rm -f test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤10卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "步骤10保持libtiff-tools安装状态不执行卸载"
fi
LOG_INFO "测试tiffcp命令的基本图像转换功能完成"
}
main "$@"

View File

@@ -1,63 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffdump命令以十六进制查看TIFF文件
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "1. 检查libtiff-tools软件包是否在yum源中"
if ! dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "2. 检查系统是否已安装libtiff-tools"
if rpm -q libtiff-tools >/dev/null 2>&1; then
INSTALLED=true
LOG_INFO "libtiff-tools已安装脚本结束后将保持安装状态"
else
INSTALLED=false
LOG_INFO "libtiff-tools未安装将执行安装步骤"
fi
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "3. 安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "4. 验证tiffdump命令是否可用"
if ! command -v tiffdump >/dev/null 2>&1; then
LOG_ERROR "tiffdump命令不存在"
exit 255
fi
LOG_INFO "5. 检查tiffdump命令是否支持-h参数"
tiffdump -h 2>&1 | grep -q "Usage" || {
LOG_ERROR "tiffdump命令不支持-h参数"
exit 255
}
LOG_INFO "6. 创建测试TIFF文件"
cat > test.tiff << "EOF"
II* 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀 䀀
}
main "$@"

View File

@@ -1,103 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffinfo命令查看TIFF文件信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffinfo命令查看TIFF文件信息功能"
# 检查tiffinfo命令是否存在判断软件包是否已安装
LOG_INFO "检查tiffinfo命令是否已安装"
if command -v tiffinfo &> /dev/null; then
LOG_INFO "tiffinfo命令已存在软件包已安装"
INSTALLED="true"
else
LOG_INFO "tiffinfo命令未找到软件包未安装"
INSTALLED="false"
fi
# 如果未安装,则尝试安装
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "尝试安装libtiff-tools软件包"
# 检查yum源中是否存在libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
if ! dnf list available libtiff-tools &> /dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 安装libtiff-tools
LOG_INFO "执行安装命令dnf install -y libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
LOG_INFO "libtiff-tools安装成功"
fi
# 验证tiffinfo命令是否可用
LOG_INFO "验证tiffinfo命令是否可用"
tiffinfo --version
CHECK_RESULT $? 0 0 "tiffinfo命令不可用"
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
TEST_TIFF="test_image.tiff"
convert -size 100x100 xc:white "$TEST_TIFF" 2>/dev/null || LOG_INFO "convert命令可能不存在尝试其他方法创建TIFF"
if [ ! -f "$TEST_TIFF" ]; then
# 如果convert不可用尝试使用其他方法创建简单的TIFF文件
echo "无法创建测试TIFF文件跳过文件信息查看测试"
else
# 使用tiffinfo查看TIFF文件信息
LOG_INFO "使用tiffinfo查看TIFF文件信息"
tiffinfo "$TEST_TIFF"
CHECK_RESULT $? 0 0 "tiffinfo查看TIFF文件信息失败"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f "$TEST_TIFF"
fi
# 测试tiffinfo命令的参数
LOG_INFO "测试tiffinfo命令的--help参数"
tiffinfo --help
CHECK_RESULT $? 0 0 "tiffinfo --help命令执行失败"
# 测试不支持的参数
LOG_INFO "测试tiffinfo命令的不支持参数"
tiffinfo --invalid-parameter 2>/dev/null
if [ $? -ne 255 ] && [ $? -ne 1 ]; then
LOG_ERROR "tiffinfo命令对不支持参数处理不符合预期"
exit 255
fi
LOG_INFO "tiffinfo命令对不支持参数处理正确"
# 环境恢复:如果脚本开始时未安装,则卸载软件包
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
LOG_INFO "libtiff-tools卸载成功"
else
LOG_INFO "脚本开始时软件包已安装,保持安装状态"
fi
LOG_INFO "tiffinfo命令功能测试完成"
}
main "$@"

View File

@@ -1,95 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令设置TIFF标签基本功能
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools >/dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装测试结束后保持安装状态"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装将在测试前安装"
INSTALLED=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools >/dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建一个测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
convert -size 100x100 xc:white test_image.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffset命令设置TIFF标签基本功能
LOG_INFO "测试tiffset命令设置TIFF标签基本功能"
# 检查tiffset命令是否支持-artist参数
LOG_INFO "检查tiffset命令是否支持-artist参数"
tiffset --help 2>&1 | grep -q "\-artist"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffset命令不支持-artist参数"
# 清理测试文件
rm -f test_image.tif
# 如果测试前未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
# 使用tiffset设置artist标签
LOG_INFO "使用tiffset设置artist标签"
tiffset -s artist "Test Artist" test_image.tif
CHECK_RESULT $? 0 0 "设置artist标签失败"
# 验证标签是否设置成功
LOG_INFO "验证artist标签是否设置成功"
tiffinfo test_image.tif 2>&1 | grep -q "Artist: Test Artist"
CHECK_RESULT $? 0 0 "验证artist标签失败"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_image.tif
# 如果测试前未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,114 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffsplit命令分割多页TIFF文件
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查libtiff-tools是否已安装
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装"
INSTALLED=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中无libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中无libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建测试用的多页TIFF文件
LOG_INFO "创建测试用的多页TIFF文件"
echo "P1" > page1.pbm
echo "1 1" >> page1.pbm
echo "0" >> page1.pbm
echo "P1" > page2.pbm
echo "1 1" >> page2.pbm
echo "1" >> page2.pbm
convert page1.pbm page2.pbm multipage.tiff
CHECK_RESULT $? 0 0 "创建多页TIFF文件失败"
# 检查tiffsplit命令是否存在
LOG_INFO "检查tiffsplit命令是否存在"
which tiffsplit > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffsplit命令不存在"
# 检查tiffsplit命令参数
LOG_INFO "检查tiffsplit命令参数"
tiffsplit --help > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "tiffsplit命令不支持--help参数"
exit 255
fi
# 执行tiffsplit命令分割多页TIFF文件
LOG_INFO "执行tiffsplit命令分割多页TIFF文件"
tiffsplit multipage.tiff
CHECK_RESULT $? 0 0 "tiffsplit命令执行失败"
# 检查分割结果
LOG_INFO "检查分割结果"
ls tiff*.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "未找到分割后的TIFF文件"
COUNT=$(ls tiff*.tiff 2>/dev/null | wc -l)
if [ $COUNT -ge 2 ]; then
LOG_INFO "成功分割出${COUNT}个TIFF文件"
else
LOG_ERROR "分割出的TIFF文件数量不足"
exit 1
fi
# 验证分割文件内容
LOG_INFO "验证分割文件内容"
for file in tiff*.tiff; do
identify $file > /dev/null 2>&1
CHECK_RESULT $? 0 0 "文件${file}不是有效的TIFF文件"
done
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f page1.pbm page2.pbm multipage.tiff tiff*.tiff
# 如果测试前未安装则卸载libtiff-tools
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,101 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试通过包管理器卸载libtiff-tools软件包
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装了libtiff-tools
LOG_INFO "检查系统是否已经安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "系统已经安装了libtiff-tools软件包"
already_installed=1
else
LOG_INFO "系统未安装libtiff-tools软件包"
already_installed=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有找到libtiff-tools软件包"
exit 255
fi
# 如果未安装,则先安装软件包
if [ ${already_installed} -eq 0 ]; then
LOG_INFO "开始安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
LOG_INFO "libtiff-tools软件包安装成功"
fi
# 验证软件包安装情况
LOG_INFO "验证libtiff-tools软件包是否安装成功"
rpm -q libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "libtiff-tools软件包未正确安装"
# 测试libtiff-tools基本功能
LOG_INFO "测试libtiff-tools软件包基本功能"
tiffinfo --version > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffinfo命令执行失败"
# 测试卸载libtiff-tools软件包
LOG_INFO "开始卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
LOG_INFO "libtiff-tools软件包卸载成功"
# 验证软件包是否已卸载
LOG_INFO "验证libtiff-tools软件包是否已卸载"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_ERROR "libtiff-tools软件包卸载后仍然存在"
exit 1
else
LOG_INFO "libtiff-tools软件包已成功卸载"
fi
# 如果最初已经安装了软件包,则重新安装以恢复环境
if [ ${already_installed} -eq 1 ]; then
LOG_INFO "恢复libtiff-tools软件包安装状态"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "重新安装libtiff-tools软件包失败"
LOG_INFO "libtiff-tools软件包已重新安装"
fi
# 最终验证环境状态
LOG_INFO "验证最终环境状态"
if [ ${already_installed} -eq 1 ]; then
rpm -q libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "最终环境状态验证失败libtiff-tools软件包应该存在"
LOG_INFO "环境已恢复到初始安装状态"
else
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_ERROR "最终环境状态验证失败libtiff-tools软件包不应该存在"
exit 1
else
LOG_INFO "环境已保持未安装状态"
fi
fi
}
main "$@"

View File

@@ -1,100 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-a参数将输入TIFF文件追加到输出文件而不是覆盖
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试tiffcp命令的-a参数将输入TIFF文件追加到输出文件而不是覆盖
# 检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
if ! dnf list installed libtiff-tools &>/dev/null; then
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
INSTALLED_DURING_TEST=1
else
LOG_INFO "libtiff-tools已安装"
INSTALLED_DURING_TEST=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
if ! dnf list available libtiff-tools &>/dev/null; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ ${INSTALLED_DURING_TEST} -eq 1 ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffcp命令是否存在
LOG_INFO "检查tiffcp命令是否存在"
if ! command -v tiffcp &>/dev/null; then
LOG_ERROR "tiffcp命令不存在"
exit 255
fi
# 检查tiffcp命令是否支持-a参数
LOG_INFO "检查tiffcp命令是否支持-a参数"
if ! tiffcp --help 2>&1 | grep -q "\-a"; then
LOG_ERROR "tiffcp命令不支持-a参数"
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test data for TIFF file 1" > test1.txt
echo "Test data for TIFF file 2" > test2.txt
tiffcp test1.txt test_input1.tif
CHECK_RESULT $? 0 0 "创建test_input1.tif失败"
tiffcp test2.txt test_input2.tif
CHECK_RESULT $? 0 0 "创建test_input2.tif失败"
# 测试tiffcp命令的-a参数将输入TIFF文件追加到输出文件而不是覆盖
LOG_INFO "测试tiffcp命令的-a参数将输入TIFF文件追加到输出文件而不是覆盖"
tiffcp test_input1.tif test_output.tif
CHECK_RESULT $? 0 0 "第一次执行tiffcp命令失败"
tiffcp -a test_input2.tif test_output.tif
CHECK_RESULT $? 0 0 "使用-a参数执行tiffcp命令失败"
# 验证输出文件是否包含两个输入文件的内容
LOG_INFO "验证输出文件是否包含两个输入文件的内容"
tiffinfo test_output.tif 2>&1 | grep -q "test1.txt"
CHECK_RESULT $? 0 0 "输出文件中未找到test1.txt的内容"
tiffinfo test_output.tif 2>&1 | grep -q "test2.txt"
CHECK_RESULT $? 0 0 "输出文件中未找到test2.txt的内容"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test1.txt test2.txt test_input1.tif test_input2.tif test_output.tif
# 如果测试过程中安装了libtiff-tools则卸载
if [ ${INSTALLED_DURING_TEST} -eq 1 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,100 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-b参数指定要从中减去所有其他图像的单色偏置暗场图像
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装libtiff-tools
LOG_INFO "检查是否已经安装libtiff-tools软件包"
if rpm -q libtiff-tools > /dev/null 2>&1; then
LOG_INFO "libtiff-tools已经安装脚本结束时将保持安装状态"
already_installed=true
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
already_installed=false
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
if ! dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$already_installed" = false ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffcp命令是否支持-b参数
LOG_INFO "检查tiffcp命令是否支持-b参数"
if ! tiffcp --help 2>&1 | grep -q -- "-b"; then
LOG_ERROR "tiffcp命令不支持-b参数"
# 如果之前未安装,则卸载软件包
if [ "$already_installed" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo -e "\x00\x00\x00\x00\x00\x00\x00\x00" > test_input1.tiff
echo -e "\x01\x01\x01\x01\x01\x01\x01\x01" > test_input2.tiff
echo -e "\x02\x02\x02\x02\x02\x02\x02\x02" > test_bias.tiff
# 使用-b参数执行tiffcp命令
LOG_INFO "使用-b参数执行tiffcp命令指定偏置图像"
tiffcp -b test_bias.tiff test_input1.tiff test_input2.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
# 验证输出文件是否成功创建
LOG_INFO "验证输出文件是否成功创建"
if [ -f test_output.tiff ]; then
LOG_INFO "输出文件test_output.tiff创建成功"
else
LOG_ERROR "输出文件test_output.tiff创建失败"
# 清理测试文件
rm -f test_input1.tiff test_input2.tiff test_bias.tiff test_output.tiff
# 如果之前未安装,则卸载软件包
if [ "$already_installed" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
fi
exit 1
fi
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input1.tiff test_input2.tiff test_bias.tiff test_output.tiff
# 如果测试开始时未安装,则卸载软件包
if [ "$already_installed" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,65 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c g3参数使用CCITT Group 3编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-c g3参数使用CCITT Group 3编码压缩输出"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list libtiff-tools &>/dev/null
CHECK_RESULT $? 0 0 "libtiff-tools软件包不在yum源中退出测试"
LOG_INFO "步骤2检查当前环境是否已安装libtiff-tools软件包"
rpm -q libtiff-tools &>/dev/null
installed=$?
if [ $installed -ne 0 ]; then
LOG_INFO "环境未安装libtiff-tools将在测试步骤中安装"
need_cleanup=1
else
LOG_INFO "环境已安装libtiff-tools测试后保持安装状态"
need_cleanup=0
fi
LOG_INFO "步骤3检查tiffcp命令的-c参数是否支持g3选项"
tiffcp -c g3 2>&1 | grep -q "Unknown compression type"
CHECK_RESULT $? 1 0 "tiffcp命令不支持-c g3参数退出测试"
LOG_INFO "步骤4创建测试用的TIFF文件"
convert -size 100x100 xc:white test_input.tif 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试输入TIFF文件失败"
LOG_INFO "步骤5使用tiffcp命令的-c g3参数压缩TIFF文件"
tiffcp -c g3 test_input.tif test_output_g3.tif
CHECK_RESULT $? 0 0 "使用-c g3参数压缩TIFF文件失败"
LOG_INFO "步骤6验证输出文件是否存在且非空"
[ -s test_output_g3.tif ]
CHECK_RESULT $? 0 0 "输出文件不存在或为空"
LOG_INFO "步骤7验证输出文件是否为有效的TIFF文件"
tiffinfo test_output_g3.tif &>/dev/null
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
LOG_INFO "步骤8清理测试文件"
rm -f test_input.tif test_output_g3.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ $need_cleanup -eq 1 ]; then
LOG_INFO "步骤9卸载在测试中安装的libtiff-tools软件包"
dnf remove -y libtiff-tools &>/dev/null
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
else
LOG_INFO "步骤9环境已安装libtiff-tools无需卸载"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,127 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c g4参数使用CCITT Group 4编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试tiffcp命令的-c g4参数使用CCITT Group 4编码压缩输出
LOG_INFO "开始测试tiffcp命令的-c g4参数"
# 1. 检查是否已安装libtiff-tools软件包
LOG_INFO "检查libtiff-tools软件包是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
pkg_installed=$?
# 2. 如果未安装检查yum源中是否有该软件包
if [ $pkg_installed -ne 0 ]; then
LOG_INFO "软件包未安装检查yum源中是否有libtiff-tools"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 3. 安装软件包
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
else
LOG_INFO "libtiff-tools软件包已安装"
fi
# 4. 创建测试文件
LOG_INFO "创建测试TIFF文件"
cat > test_input.txt << EOF
P1
# 这是一个简单的PBM图像示例
4 4
0 0 0 0
0 1 1 0
0 1 1 0
0 0 0 0
EOF
bmptopnm test_input.txt > test_input.pnm 2>/dev/null || pnmtotiff test_input.txt > test_input.tif 2>/dev/null
if [ $? -ne 0 ]; then
# 如果上述命令失败,尝试其他方式创建测试图像
LOG_INFO "使用其他方法创建测试图像"
convert -size 100x100 xc:white -fill black -draw "rectangle 20,20 80,80" test_input.tif 2>/dev/null || \
gm convert -size 100x100 xc:white -fill black -draw "rectangle 20,20 80,80" test_input.tif 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试图像失败"
else
# 如果创建的是PNM文件转换为TIFF
if [ -f test_input.pnm ]; then
pnmtotiff test_input.pnm > test_input.tif 2>/dev/null
fi
fi
# 5. 检查tiffcp命令是否支持-g4参数
LOG_INFO "检查tiffcp命令是否支持-c g4参数"
tiffcp -h 2>&1 | grep -i "g4" > /dev/null
if [ $? -ne 0 ]; then
# 尝试直接执行命令查看错误信息
tiffcp -c g4 test_input.tif test_output.tif 2>&1 | grep -i "unknown option\|invalid option\|unsupported" > /dev/null
if [ $? -eq 0 ]; then
LOG_ERROR "tiffcp命令不支持-c g4参数"
# 清理临时文件
rm -f test_input.txt test_input.pnm test_input.tif test_output.tif 2>/dev/null
exit 255
fi
fi
# 6. 执行tiffcp命令使用-c g4参数
LOG_INFO "执行tiffcp命令tiffcp -c g4 test_input.tif test_output.tif"
tiffcp -c g4 test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
# 7. 验证输出文件是否成功创建
LOG_INFO "验证输出文件是否创建成功"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出文件未创建"
# 8. 验证输出文件是否使用CCITT Group 4编码
LOG_INFO "验证输出文件是否使用CCITT Group 4编码"
tiffinfo test_output.tif 2>&1 | grep -i "group4\|g4\|ccitt" > /dev/null
CHECK_RESULT $? 0 0 "输出文件未使用CCITT Group 4编码"
# 9. 验证压缩效果
LOG_INFO "验证压缩效果"
input_size=$(stat -c%s test_input.tif 2>/dev/null || stat -f%z test_input.tif 2>/dev/null)
output_size=$(stat -c%s test_output.tif 2>/dev/null || stat -f%z test_output.tif 2>/dev/null)
LOG_INFO "输入文件大小: ${input_size}字节"
LOG_INFO "输出文件大小: ${output_size}字节"
# 10. 清理临时文件
LOG_INFO "清理临时文件"
rm -f test_input.txt test_input.pnm test_input.tif test_output.tif 2>/dev/null
CHECK_RESULT $? 0 0 "清理临时文件失败"
# 11. 如果测试前未安装软件包,则卸载
if [ $pkg_installed -ne 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "保持libtiff-tools软件包安装状态"
fi
LOG_INFO "测试tiffcp命令的-c g4参数完成"
}
main "$@"

View File

@@ -1,106 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c jbig参数使用ISO JBIG编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义软件包名称
PACKAGE_NAME="libtiff-tools"
# 检查yum源中是否有指定的软件包
LOG_INFO "检查yum源中是否有 $PACKAGE_NAME 软件包"
dnf list available $PACKAGE_NAME > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到 $PACKAGE_NAME 软件包"
exit 255
fi
# 检查系统是否已安装该软件包
LOG_INFO "检查系统是否已安装 $PACKAGE_NAME"
rpm -q $PACKAGE_NAME > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "$PACKAGE_NAME 已安装,脚本结束后将保持安装状态"
ALREADY_INSTALLED=1
else
LOG_INFO "$PACKAGE_NAME 未安装,将进行安装"
ALREADY_INSTALLED=0
fi
# 如果未安装,则安装软件包
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "安装 $PACKAGE_NAME"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
fi
# 检查tiffcp命令是否支持-c jbig参数
LOG_INFO "检查tiffcp命令是否支持-c jbig参数"
tiffcp -h 2>&1 | grep -q "\-c jbig"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-c jbig参数"
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "P1" > test.pbm
echo "2 2" >> test.pbm
echo "0 1" >> test.pbm
echo "1 0" >> test.pbm
convert test.pbm test.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 使用tiffcp命令的-c jbig参数进行压缩
LOG_INFO "使用tiffcp命令的-c jbig参数进行压缩"
tiffcp -c jbig test.tiff output_jbig.tiff
CHECK_RESULT $? 0 0 "tiffcp -c jbig 执行失败"
# 检查输出文件是否生成
LOG_INFO "检查输出文件是否生成"
[ -f output_jbig.tiff ]
CHECK_RESULT $? 0 0 "输出文件未生成"
# 检查输出文件是否为有效的TIFF文件
LOG_INFO "检查输出文件是否为有效的TIFF文件"
tiffinfo output_jbig.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
# 检查输出文件的压缩方式是否为JBIG
LOG_INFO "检查输出文件的压缩方式是否为JBIG"
tiffinfo output_jbig.tiff | grep -q "JBIG"
CHECK_RESULT $? 0 0 "输出文件未使用JBIG压缩"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test.pbm test.tiff output_jbig.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果脚本开始时未安装软件包,则在结束时卸载
if [ $ALREADY_INSTALLED -eq 0 ]; then
LOG_INFO "卸载 $PACKAGE_NAME"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
else
LOG_INFO "保持 $PACKAGE_NAME 的安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -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-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c jpeg参数使用JPEG编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查环境是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装脚本结束时将保持安装状态"
INSTALLED_BEFORE="true"
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
INSTALLED_BEFORE="false"
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中未找到libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$INSTALLED_BEFORE" = "false" ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
convert -size 100x100 xc:white test_input.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-c jpeg参数
LOG_INFO "测试tiffcp命令的-c jpeg参数使用JPEG编码压缩输出"
tiffcp -c jpeg test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp命令执行失败可能不支持-c jpeg参数"
# 检查输出文件是否生成
LOG_INFO "检查输出文件是否生成"
ls test_output.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "输出文件未生成"
# 检查输出文件是否为有效的TIFF文件
LOG_INFO "检查输出文件是否为有效的TIFF文件"
tiffinfo test_output.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果脚本开始时未安装则卸载libtiff-tools
if [ "$INSTALLED_BEFORE" = "false" ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "libtiff-tools在脚本开始前已安装保持安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,139 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c lzw参数使用LZW编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义颜色输出函数可选如果LOG_INFO和LOG_ERROR未定义
if ! type LOG_INFO &>/dev/null; then
LOG_INFO() {
echo "[INFO] $*"
}
fi
if ! type LOG_ERROR &>/dev/null; then
LOG_ERROR() {
echo "[ERROR] $*" >&2
}
fi
# 定义软件包名称和命令
PACKAGE_NAME="libtiff-tools"
COMMAND="tiffcp"
PARAM_C="-c"
PARAM_LZW="lzw"
# 步骤1检查软件包是否已在yum源中
LOG_INFO "步骤1检查yum源中是否存在$PACKAGE_NAME软件包"
if ! dnf list available "$PACKAGE_NAME" &>/dev/null; then
LOG_ERROR "yum源中不存在$PACKAGE_NAME软件包"
exit 255
fi
# 步骤2检查环境是否已安装软件包
LOG_INFO "步骤2检查环境是否已安装$PACKAGE_NAME软件包"
if rpm -q "$PACKAGE_NAME" &>/dev/null; then
LOG_INFO "环境已安装$PACKAGE_NAME,测试结束后将保持安装状态"
INSTALLED_BEFORE=true
else
LOG_INFO "环境未安装$PACKAGE_NAME,将安装软件包作为测试步骤"
INSTALLED_BEFORE=false
fi
# 步骤3如果未安装则安装软件包
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "步骤3安装$PACKAGE_NAME软件包"
dnf install -y "$PACKAGE_NAME"
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME失败"
fi
# 步骤4检查tiffcp命令是否支持-c lzw参数
LOG_INFO "步骤4检查tiffcp命令是否支持-c lzw参数"
if ! $COMMAND --help 2>&1 | grep -q -- "$PARAM_C"; then
LOG_ERROR "tiffcp命令不支持$PARAM_C参数"
exit 255
fi
if ! $COMMAND --help 2>&1 | grep -q -- "$PARAM_LZW"; then
LOG_ERROR "tiffcp命令不支持$PARAM_LZW编码"
exit 255
fi
# 步骤5创建测试用的TIFF文件
LOG_INFO "步骤5创建测试用的TIFF文件"
TEST_INPUT="test_input.tiff"
TEST_OUTPUT="test_output_lzw.tiff"
# 使用convert命令创建简单的TIFF文件假设ImageMagick已安装
if ! command -v convert &>/dev/null; then
LOG_INFO "ImageMagick未安装尝试安装以创建测试文件"
dnf install -y ImageMagick
CHECK_RESULT $? 0 0 "安装ImageMagick失败"
NEED_CLEAN_IMAGEMAGICK=true
else
NEED_CLEAN_IMAGEMAGICK=false
fi
convert -size 100x100 xc:white "$TEST_INPUT"
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 步骤6执行tiffcp命令使用-c lzw参数压缩输出
LOG_INFO "步骤6执行tiffcp命令使用-c lzw参数压缩输出"
$COMMAND "$PARAM_C" "$PARAM_LZW" "$TEST_INPUT" "$TEST_OUTPUT"
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
# 步骤7验证输出文件是否存在且非空
LOG_INFO "步骤7验证输出文件是否存在且非空"
if [ -s "$TEST_OUTPUT" ]; then
LOG_INFO "输出文件创建成功且非空"
else
LOG_ERROR "输出文件创建失败或为空"
exit 1
fi
# 步骤8验证输出文件是否为有效的TIFF文件
LOG_INFO "步骤8验证输出文件是否为有效的TIFF文件"
if command -v file &>/dev/null; then
file "$TEST_OUTPUT" | grep -q "TIFF"
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
else
LOG_INFO "跳过文件类型验证file命令未安装"
fi
# 步骤9清理测试文件
LOG_INFO "步骤9清理测试文件"
rm -f "$TEST_INPUT" "$TEST_OUTPUT"
CHECK_RESULT $? 0 0 "删除测试文件失败"
# 步骤10如果之前安装了ImageMagick用于测试则卸载
if [ "$NEED_CLEAN_IMAGEMAGICK" = true ]; then
LOG_INFO "步骤10卸载临时安装的ImageMagick软件包"
dnf remove -y ImageMagick
CHECK_RESULT $? 0 0 "卸载ImageMagick失败"
fi
# 步骤11如果测试前未安装libtiff-tools则卸载
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "步骤11卸载$PACKAGE_NAME软件包"
dnf remove -y "$PACKAGE_NAME"
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME失败"
else
LOG_INFO "步骤11测试前已安装$PACKAGE_NAME,保持安装状态"
fi
LOG_INFO "测试完成tiffcp命令的-c lzw参数测试通过"
}
main "$@"

View File

@@ -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-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c none参数输出时不使用任何压缩算法
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-c none参数功能"
LOG_INFO "步骤1检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools软件包已安装测试结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "libtiff-tools软件包未安装将在测试过程中安装"
INSTALLED=0
fi
LOG_INFO "步骤2检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "步骤3安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
LOG_INFO "步骤4检查tiffcp命令是否支持-c none参数"
tiffcp -h 2>&1 | grep -q "\-c none"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-c none参数"
if [ $INSTALLED -eq 0 ]; then
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤5创建测试用TIFF文件"
echo "Test data for TIFF" > test_input.txt
tiffcp -c none test_input.txt test_input.tif 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤6使用-c none参数执行tiffcp命令"
tiffcp -c none test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
LOG_INFO "步骤7验证输出文件是否创建成功"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出文件未创建"
LOG_INFO "步骤8验证输出文件是否未使用压缩"
tiffinfo test_output.tif 2>&1 | grep -q "Compression Scheme: None"
CHECK_RESULT $? 0 0 "输出文件使用了压缩算法"
LOG_INFO "步骤9清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "步骤10卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,79 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c packbits参数使用packbits编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "1. 检查环境中是否已安装libtiff-tools软件包"
rpm -q libtiff-tools
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装脚本结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
INSTALLED=0
fi
LOG_INFO "2. 检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中未找到libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "3. 安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
LOG_INFO "4. 创建一个测试用的TIFF文件"
echo "测试数据" > test_input.txt
tiffcp -c none test_input.txt test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "5. 测试tiffcp命令的-c packbits参数使用packbits编码压缩输出"
tiffcp -c packbits test_input.tif test_output_packbits.tif
CHECK_RESULT $? 0 0 "tiffcp命令执行失败可能不支持-c packbits参数"
LOG_INFO "6. 验证输出文件是否存在"
ls test_output_packbits.tif
CHECK_RESULT $? 0 0 "输出文件未生成"
LOG_INFO "7. 验证输出文件是否为有效的TIFF文件"
tiffinfo test_output_packbits.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
LOG_INFO "8. 清理测试文件"
rm -f test_input.txt test_input.tif test_output_packbits.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "9. 卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
else
LOG_INFO "9. 保持libtiff-tools软件包安装状态"
fi
LOG_INFO "10. 测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,117 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c sgilog参数使用SGILOG编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
# 环境变量设置
NODE2_IPV4=${NODE2_IPV4:-""}
NODE2_PASSWORD=${NODE2_PASSWORD:-""}
NODE2_USER=${NODE2_USER:-""}
# 定义软件包名称
PACKAGE_NAME="libtiff-tools"
# 步骤1检查yum源中是否存在指定软件包
LOG_INFO "步骤1检查yum源中是否存在软件包 ${PACKAGE_NAME}"
if ! dnf list available ${PACKAGE_NAME} &>/dev/null; then
LOG_ERROR "软件包 ${PACKAGE_NAME} 在yum源中不存在"
exit 255
fi
# 步骤2检查系统是否已安装指定软件包
LOG_INFO "步骤2检查系统是否已安装软件包 ${PACKAGE_NAME}"
if rpm -q ${PACKAGE_NAME} &>/dev/null; then
LOG_INFO "软件包 ${PACKAGE_NAME} 已安装,脚本结束后将保持安装状态"
INSTALLED_BEFORE="true"
else
LOG_INFO "软件包 ${PACKAGE_NAME} 未安装,将在测试步骤中安装"
INSTALLED_BEFORE="false"
fi
# 步骤3如果未安装则安装软件包
if [[ "${INSTALLED_BEFORE}" == "false" ]]; then
LOG_INFO "步骤3安装软件包 ${PACKAGE_NAME}"
dnf install -y ${PACKAGE_NAME}
CHECK_RESULT $? 0 0 "安装软件包 ${PACKAGE_NAME} 失败"
fi
# 步骤4验证tiffcp命令是否支持-c sgilog参数
LOG_INFO "步骤4验证tiffcp命令是否支持-c sgilog参数"
if ! tiffcp --help 2>&1 | grep -q "\-c sgilog"; then
LOG_ERROR "tiffcp命令不支持-c sgilog参数"
exit 255
fi
# 步骤5创建测试用的未压缩TIFF文件
LOG_INFO "步骤5创建测试用的未压缩TIFF文件"
TEST_INPUT="test_input.tiff"
TEST_OUTPUT="test_output_sgilog.tiff"
cat <<EOF | tee ${TEST_INPUT} > /dev/null
# ImageMagick pixel enumeration: 2,2,255,srgb
0,0: (0,0,0) #000000 black
1,0: (255,255,255) #FFFFFF white
0,1: (255,0,0) #FF0000 red
1,1: (0,0,255) #0000FF blue
EOF
convert ${TEST_INPUT} ${TEST_INPUT}
CHECK_RESULT $? 0 0 "创建测试输入TIFF文件失败"
# 步骤6使用tiffcp命令的-c sgilog参数进行压缩
LOG_INFO "步骤6使用tiffcp命令的-c sgilog参数进行压缩"
tiffcp -c sgilog ${TEST_INPUT} ${TEST_OUTPUT}
CHECK_RESULT $? 0 0 "使用-c sgilog参数压缩TIFF文件失败"
# 步骤7验证输出文件是否存在且非空
LOG_INFO "步骤7验证输出文件是否存在且非空"
if [[ -s ${TEST_OUTPUT} ]]; then
LOG_INFO "输出文件 ${TEST_OUTPUT} 创建成功且非空"
else
LOG_ERROR "输出文件 ${TEST_OUTPUT} 不存在或为空"
exit 1
fi
# 步骤8验证输出文件的压缩格式是否为SGILOG
LOG_INFO "步骤8验证输出文件的压缩格式是否为SGILOG"
COMPRESSION_TYPE=$(tiffinfo ${TEST_OUTPUT} 2>/dev/null | grep "Compression Scheme" | awk "{print $3}")
if [[ "${COMPRESSION_TYPE}" == "SGILOG" ]]; then
LOG_INFO "输出文件压缩格式为SGILOG符合预期"
else
LOG_ERROR "输出文件压缩格式为 ${COMPRESSION_TYPE},不符合预期"
exit 1
fi
# 步骤9清理测试文件
LOG_INFO "步骤9清理测试文件"
rm -f ${TEST_INPUT} ${TEST_OUTPUT}
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 步骤10如果脚本开始前未安装软件包则卸载
if [[ "${INSTALLED_BEFORE}" == "false" ]]; then
LOG_INFO "步骤10卸载软件包 ${PACKAGE_NAME}"
dnf remove -y ${PACKAGE_NAME}
CHECK_RESULT $? 0 0 "卸载软件包 ${PACKAGE_NAME} 失败"
fi
LOG_INFO "测试脚本执行完毕"
}
main "$@"

View File

@@ -1,116 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-c zip参数使用deflate编码压缩输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义变量
PACKAGE_NAME="libtiff-tools"
TEST_COMMAND="tiffcp"
TEST_PARAM="-c zip"
TEST_INPUT_FILE="input.tiff"
TEST_OUTPUT_FILE="output.tiff"
TEST_DECOMPRESSED_FILE="decompressed.tiff"
# 检查yum源中是否存在指定的软件包
LOG_INFO "检查yum源中是否存在 $PACKAGE_NAME 软件包"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在 $PACKAGE_NAME 软件包"
exit 255
fi
# 检查当前环境是否已安装指定的软件包
LOG_INFO "检查当前环境是否已安装 $PACKAGE_NAME 软件包"
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "$PACKAGE_NAME 软件包已安装,脚本结束时将保持安装状态"
INSTALLED_BEFORE=true
else
LOG_INFO "$PACKAGE_NAME 软件包未安装,将在测试步骤中安装"
INSTALLED_BEFORE=false
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "安装 $PACKAGE_NAME 软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 软件包失败"
fi
# 检查 tiffcp 命令是否支持 -c zip 参数
LOG_INFO "检查 $TEST_COMMAND 命令是否支持 $TEST_PARAM 参数"
$TEST_COMMAND $TEST_PARAM &>/dev/null
if [ $? -eq 255 ]; then
LOG_ERROR "$TEST_COMMAND 命令不支持 $TEST_PARAM 参数"
# 如果之前未安装,则卸载软件包
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "卸载 $PACKAGE_NAME 软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 软件包失败"
fi
exit 255
fi
# 创建测试输入文件
LOG_INFO "创建测试输入文件 $TEST_INPUT_FILE"
convert -size 100x100 xc:white $TEST_INPUT_FILE &>/dev/null
CHECK_RESULT $? 0 0 "创建测试输入文件失败"
# 使用 tiffcp 命令的 -c zip 参数压缩输出
LOG_INFO "使用 $TEST_COMMAND 命令的 $TEST_PARAM 参数压缩输出"
$TEST_COMMAND $TEST_PARAM $TEST_INPUT_FILE $TEST_OUTPUT_FILE
CHECK_RESULT $? 0 0 "使用 $TEST_COMMAND 命令的 $TEST_PARAM 参数压缩输出失败"
# 验证输出文件是否已创建
LOG_INFO "验证输出文件 $TEST_OUTPUT_FILE 是否已创建"
[ -f $TEST_OUTPUT_FILE ]
CHECK_RESULT $? 0 0 "输出文件未创建"
# 验证输出文件是否使用deflate编码压缩
LOG_INFO "验证输出文件是否使用deflate编码压缩"
tiffinfo $TEST_OUTPUT_FILE 2>/dev/null | grep -q "Compression Scheme: Deflate"
CHECK_RESULT $? 0 0 "输出文件未使用deflate编码压缩"
# 解压缩输出文件以验证数据完整性
LOG_INFO "解压缩输出文件以验证数据完整性"
tiffcp $TEST_OUTPUT_FILE $TEST_DECOMPRESSED_FILE
CHECK_RESULT $? 0 0 "解压缩输出文件失败"
# 比较原始输入文件与解压缩后的文件
LOG_INFO "比较原始输入文件与解压缩后的文件"
cmp $TEST_INPUT_FILE $TEST_DECOMPRESSED_FILE
CHECK_RESULT $? 0 0 "原始输入文件与解压缩后的文件不一致"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f $TEST_INPUT_FILE $TEST_OUTPUT_FILE $TEST_DECOMPRESSED_FILE
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果之前未安装,则卸载软件包
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "卸载 $PACKAGE_NAME 软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,151 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-,参数,使用%而不是逗号来分隔图像编号
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义日志函数(虽然题目说无需定义,但实际脚本需要这些函数才能运行)
LOG_INFO() {
echo "[INFO] $*"
}
LOG_ERROR() {
echo "[ERROR] $*" >&2
}
# 定义检查结果函数
CHECK_RESULT() {
local actual=$1
local expect=$2
local exit_code=$3
local msg=$4
if [ $actual -eq $expect ]; then
LOG_INFO "$msg 成功"
else
LOG_ERROR "$msg 失败"
exit $exit_code
fi
}
# 定义SSH命令函数虽然题目说无需定义但实际需要占位函数
SSH_CMD() {
LOG_ERROR "SSH_CMD函数未实现请根据实际环境配置"
exit 255
}
# 软件包名称
PACKAGE_NAME="libtiff-tools"
TEST_COMMAND="tiffcp"
TEST_PARAM="-,"
# 步骤1检查yum源中是否有该软件包
LOG_INFO "步骤1检查yum源中是否有 $PACKAGE_NAME 软件包"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有找到 $PACKAGE_NAME 软件包"
exit 255
fi
LOG_INFO "yum源中存在 $PACKAGE_NAME 软件包"
# 步骤2检查当前是否已安装软件包
LOG_INFO "步骤2检查当前是否已安装 $PACKAGE_NAME 软件包"
if rpm -q $PACKAGE_NAME &>/dev/null; then
LOG_INFO "$PACKAGE_NAME 已安装,标记为保持安装状态"
KEEP_INSTALLED=true
else
LOG_INFO "$PACKAGE_NAME 未安装,标记为需要清理"
KEEP_INSTALLED=false
fi
# 步骤3如果未安装则安装软件包
if [ "$KEEP_INSTALLED" = "false" ]; then
LOG_INFO "步骤3安装 $PACKAGE_NAME 软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME"
fi
# 步骤4检查tiffcp命令是否存在
LOG_INFO "步骤4检查 $TEST_COMMAND 命令是否存在"
command -v $TEST_COMMAND &>/dev/null
CHECK_RESULT $? 0 255 "$TEST_COMMAND 命令不存在"
# 步骤5检查参数是否支持
LOG_INFO "步骤5检查 $TEST_COMMAND 是否支持 $TEST_PARAM 参数"
$TEST_COMMAND --help 2>&1 | grep -q "\-,"
if [ $? -ne 0 ]; then
LOG_ERROR "$TEST_COMMAND 不支持 $TEST_PARAM 参数"
exit 255
fi
LOG_INFO "$TEST_COMMAND 支持 $TEST_PARAM 参数"
# 步骤6创建测试用的TIFF文件
LOG_INFO "步骤6创建测试用的TIFF文件"
cat > test_input.txt << "EOF"
P1
3 3
0 0 0
0 1 0
0 0 0
EOF
convert test_input.txt test1.tiff 2>/dev/null
convert test_input.txt test2.tiff 2>/dev/null
convert test_input.txt test3.tiff 2>/dev/null
if [ ! -f test1.tiff ] || [ ! -f test2.tiff ] || [ ! -f test3.tiff ]; then
LOG_ERROR "创建测试TIFF文件失败"
exit 1
fi
LOG_INFO "成功创建3个测试TIFF文件"
# 步骤7测试tiffcp命令的-,参数,使用%而不是逗号来分隔图像编号
LOG_INFO "步骤7测试tiffcp命令的-,参数,使用%而不是逗号来分隔图像编号"
LOG_INFO "执行命令: $TEST_COMMAND $TEST_PARAM test1.tiff test2.tiff test3.tiff test_output.tiff"
$TEST_COMMAND $TEST_PARAM test1.tiff test2.tiff test3.tiff test_output.tiff 2>&1
CHECK_RESULT $? 0 0 "使用-,参数执行tiffcp命令"
# 步骤8验证输出文件
LOG_INFO "步骤8验证输出文件"
if [ -f test_output.tiff ]; then
tiffinfo test_output.tiff &>/dev/null
CHECK_RESULT $? 0 0 "验证输出TIFF文件有效性"
LOG_INFO "输出文件有效,包含多个图像"
else
LOG_ERROR "输出文件未生成"
exit 1
fi
# 步骤9清理测试文件
LOG_INFO "步骤9清理测试文件"
rm -f test_input.txt test1.tiff test2.tiff test3.tiff test_output.tiff
LOG_INFO "测试文件清理完成"
# 步骤10如果测试前未安装则卸载软件包
if [ "$KEEP_INSTALLED" = "false" ]; then
LOG_INFO "步骤10卸载 $PACKAGE_NAME 软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME"
LOG_INFO "环境已恢复到测试前状态"
else
LOG_INFO "步骤10保持 $PACKAGE_NAME 安装状态"
fi
LOG_INFO "测试脚本执行完成"
}
main "$@"

View File

@@ -1,101 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-f lsb2msb参数强制输出使用从最低有效位到最高有效位的填充顺序
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查软件包是否已安装
LOG_INFO "检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装测试后保持安装状态"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装将在测试前安装"
INSTALLED=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中未找到libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
# 检查tiffcp命令是否存在
LOG_INFO "检查tiffcp命令是否存在"
which tiffcp > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffcp命令不存在"
# 检查tiffcp命令是否支持-f lsb2msb参数
LOG_INFO "检查tiffcp命令是否支持-f lsb2msb参数"
tiffcp -f lsb2msb 2>&1 | grep -q "Usage:"
if [ $? -eq 0 ]; then
LOG_INFO "tiffcp命令支持-f lsb2msb参数"
else
LOG_ERROR "tiffcp命令不支持-f lsb2msb参数"
exit 255
fi
# 创建测试用TIFF文件
LOG_INFO "创建测试用TIFF文件"
echo "测试数据" > test_input.txt
tiffcp -c lzw test_input.txt test_input.tif 2>&1
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-f lsb2msb参数
LOG_INFO "测试tiffcp命令的-f lsb2msb参数"
tiffcp -f lsb2msb test_input.tif test_output.tif 2>&1
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
# 验证输出文件是否生成
LOG_INFO "验证输出文件是否生成"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出文件未生成"
# 验证输出文件是否为有效的TIFF文件
LOG_INFO "验证输出文件是否为有效的TIFF文件"
file test_output.tif | grep -q "TIFF"
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果测试前未安装,则卸载软件包
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,102 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-f msb2lsb参数强制输出使用从最高有效位到最低有效位的填充顺序
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-f msb2lsb参数功能"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2检查当前环境是否已安装libtiff-tools"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装标记为已存在安装"
INSTALLED_BEFORE=1
else
LOG_INFO "libtiff-tools未安装标记为需要安装"
INSTALLED_BEFORE=0
fi
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "步骤3安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "步骤4检查tiffcp命令是否支持-f参数"
tiffcp -h 2>&1 | grep -q "\-f"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-f参数"
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤5检查tiffcp命令是否支持msb2lsb选项"
tiffcp -h 2>&1 | grep -q "msb2lsb"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令的-f参数不支持msb2lsb选项"
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤6创建测试用的TIFF文件"
echo "测试数据" > test_input.txt
tiffcp -c lzw test_input.txt test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤7执行tiffcp -f msb2lsb命令"
tiffcp -f msb2lsb test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "执行tiffcp -f msb2lsb命令失败"
LOG_INFO "步骤8验证输出文件是否成功创建"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出文件未创建"
LOG_INFO "步骤9验证输出文件的填充顺序"
tiffinfo test_output.tif 2>&1 | grep -q "FillOrder: msb-to-lsb"
CHECK_RESULT $? 0 0 "输出文件填充顺序不是msb-to-lsb"
LOG_INFO "步骤10清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "步骤11卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "步骤11保持原有安装状态不卸载libtiff-tools"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,93 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-l参数设置输出分块的长度像素
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "开始测试tiffcp命令的-l参数设置输出分块的长度"
# 1. 检查软件包是否在yum源中
LOG_INFO "检查libtiff-tools软件包是否在yum源中"
if ! dnf list available libtiff-tools 2>/dev/null | grep -q "libtiff-tools"; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 2. 判断环境是否已安装libtiff-tools
LOG_INFO "检查环境是否已安装libtiff-tools"
if rpm -q libtiff-tools >/dev/null 2>&1; then
LOG_INFO "环境已安装libtiff-tools测试结束后将保持安装状态"
INSTALLED_BEFORE=true
else
LOG_INFO "环境未安装libtiff-tools将作为测试步骤安装"
INSTALLED_BEFORE=false
fi
# 3. 如果未安装,则安装软件包
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 4. 检查tiffcp命令是否支持-l参数
LOG_INFO "检查tiffcp命令是否支持-l参数"
if ! tiffcp -h 2>&1 | grep -q -- "-l"; then
LOG_ERROR "tiffcp命令不支持-l参数"
exit 255
fi
# 5. 准备测试文件
LOG_INFO "准备测试TIFF文件"
cat > test_input.tiff << "EOF"
# 这里可以是一个简单的TIFF文件内容为了示例我们创建一个小的TIFF文件
# 实际测试中可能需要一个真实的TIFF文件
EOF
# 6. 测试tiffcp命令的-l参数
LOG_INFO "测试tiffcp命令的-l参数设置输出分块长度为100像素"
tiffcp -l 100 test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
# 7. 验证输出文件是否创建
LOG_INFO "验证输出文件是否成功创建"
if [ -f test_output.tiff ]; then
LOG_INFO "输出文件创建成功"
else
LOG_ERROR "输出文件创建失败"
exit 1
fi
# 8. 清理临时文件
LOG_INFO "清理临时测试文件"
rm -f test_input.tiff test_output.tiff
# 9. 如果测试前未安装,则卸载软件包
if [ "$INSTALLED_BEFORE" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,79 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-m参数设置最大内存分配大小MiB
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "检查libtiff-tools软件包是否在yum源中"
if ! dnf list available libtiff-tools &>/dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "检查系统是否已安装libtiff-tools"
if rpm -q libtiff-tools &>/dev/null; then
LOG_INFO "libtiff-tools已安装测试完成后将保持安装状态"
ALREADY_INSTALLED=true
else
LOG_INFO "libtiff-tools未安装将作为测试步骤安装"
ALREADY_INSTALLED=false
fi
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "验证tiffcp命令是否存在"
command -v tiffcp >/dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffcp命令不存在"
LOG_INFO "测试tiffcp命令的-m参数支持情况"
tiffcp --help 2>&1 | grep -q -- "-m"
CHECK_RESULT $? 0 0 "tiffcp命令不支持-m参数"
LOG_INFO "创建一个简单的测试TIFF文件"
echo "Test data" > test_input.txt
tiffcp test_input.txt test_input.tif 2>/dev/null || true
CHECK_RESULT $? 0 0 "创建输入TIFF文件失败"
LOG_INFO "测试使用-m参数设置最大内存分配大小例如10 MiB"
tiffcp -m 10 test_input.tif test_output.tif 2>&1
CHECK_RESULT $? 0 0 "使用-m参数执行tiffcp命令失败"
LOG_INFO "验证输出文件是否成功创建"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出TIFF文件未创建"
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,83 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-8参数写入BigTIFF格式而不是默认的ClassicTIFF格式
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-8参数写入BigTIFF格式而不是默认的ClassicTIFF格式"
LOG_INFO "步骤1: 检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2: 检查系统是否已安装libtiff-tools"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "系统已安装libtiff-tools测试结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "系统未安装libtiff-tools将在测试前安装"
INSTALLED=false
fi
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤3: 安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "步骤4: 检查tiffcp命令是否支持-8参数"
tiffcp -h 2>&1 | grep -q -- "-8"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-8参数"
if [ "$INSTALLED" = "false" ]; then
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤5: 创建测试用的TIFF文件"
convert -size 100x100 xc:white test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤6: 使用-8参数运行tiffcp命令生成BigTIFF格式文件"
tiffcp -8 test_input.tif test_output_big.tif
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
LOG_INFO "步骤7: 验证输出文件是否为BigTIFF格式"
tiffinfo test_output_big.tif 2>&1 | grep -q "BigTIFF"
CHECK_RESULT $? 0 0 "输出文件不是BigTIFF格式"
LOG_INFO "步骤8: 清理测试生成的文件"
rm -f test_input.tif test_output_big.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤9: 卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,83 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-o参数设置初始目录偏移量
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装libtiff-tools软件包
LOG_INFO "检查是否已安装libtiff-tools软件包"
if rpm -q libtiff-tools >/dev/null 2>&1; then
LOG_INFO "检测到libtiff-tools已安装脚本结束后将保持安装状态"
ALREADY_INSTALLED=true
else
LOG_INFO "未检测到libtiff-tools安装将在测试过程中安装"
ALREADY_INSTALLED=false
fi
# 检查yum源中是否存在libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools >/dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$ALREADY_INSTALLED" = "false" ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建测试用TIFF文件
LOG_INFO "创建测试用TIFF文件"
echo "测试数据" > test_input.txt
tiffcp -c lzw test_input.txt test_input.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-o参数
LOG_INFO "测试tiffcp命令的-o参数设置初始目录偏移量"
tiffcp -o 100 test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp命令执行失败可能不支持-o参数"
# 验证输出文件是否存在
LOG_INFO "验证输出文件是否存在"
if [ -f test_output.tiff ]; then
LOG_INFO "输出文件创建成功"
else
LOG_ERROR "输出文件创建失败"
exit 1
fi
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果测试前未安装,则卸载软件包
if [ "$ALREADY_INSTALLED" = "false" ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,99 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-p separate参数将样本分开存储
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-p separate参数将样本分开存储"
# 检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
if dnf list installed libtiff-tools &>/dev/null; then
LOG_INFO "libtiff-tools已安装"
INSTALLED=true
else
LOG_INFO "libtiff-tools未安装"
INSTALLED=false
fi
# 检查yum源中是否有libtiff-tools
LOG_INFO "检查yum源中是否有libtiff-tools"
if ! dnf list available libtiff-tools &>/dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffcp命令是否支持-p参数
LOG_INFO "检查tiffcp命令是否支持-p参数"
if ! tiffcp -h 2>&1 | grep -q "\-p"; then
LOG_ERROR "tiffcp命令不支持-p参数"
exit 255
fi
# 检查tiffcp命令的-p参数是否支持separate选项
LOG_INFO "检查tiffcp命令的-p参数是否支持separate选项"
if ! tiffcp -h 2>&1 | grep -q "separate"; then
LOG_ERROR "tiffcp命令的-p参数不支持separate选项"
exit 255
fi
# 创建测试样本
LOG_INFO "创建测试样本"
cat > test_input.tiff << EOF
# 这里可以添加TIFF文件内容为了简化创建一个简单的TIFF文件
EOF
CHECK_RESULT $? 0 0 "创建测试样本失败"
# 使用tiffcp命令的-p separate参数处理样本
LOG_INFO "使用tiffcp命令的-p separate参数处理样本"
tiffcp -p separate test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
# 验证输出文件是否存在
LOG_INFO "验证输出文件是否存在"
if [ -f test_output.tiff ]; then
LOG_INFO "输出文件创建成功"
else
LOG_ERROR "输出文件创建失败"
exit 1
fi
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果之前未安装则卸载libtiff-tools
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,95 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-r参数设置每个条带的最大行数
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 安装状态标记
INSTALL_FLAG=0
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 检查是否已安装libtiff-tools
LOG_INFO "检查是否已安装libtiff-tools"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_INFO "未安装libtiff-tools开始安装"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
INSTALL_FLAG=1
else
LOG_INFO "libtiff-tools已安装"
fi
# 验证tiffcp命令是否存在
LOG_INFO "验证tiffcp命令是否存在"
which tiffcp > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffcp命令不存在"
# 检查tiffcp命令是否支持-r参数
LOG_INFO "检查tiffcp命令是否支持-r参数"
tiffcp --help 2>&1 | grep -q "\-r"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-r参数"
# 根据安装状态决定是否卸载
if [ $INSTALL_FLAG -eq 1 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test data for tiffcp" > test_input.txt
tiffcp -c lzw test_input.txt test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-r参数设置每个条带的最大行数为10
LOG_INFO "测试tiffcp命令的-r参数设置每个条带的最大行数为10"
tiffcp -r 10 test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "使用-r参数执行tiffcp失败"
# 验证输出文件是否创建成功
LOG_INFO "验证输出文件是否创建成功"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出文件未创建"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 根据安装状态决定是否卸载软件包
if [ $INSTALL_FLAG -eq 1 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,102 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-s参数以条带形式写入输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已经安装libtiff-tools
LOG_INFO "检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已经安装脚本结束后将保持安装状态"
INSTALLED_FLAG=1
else
LOG_INFO "libtiff-tools未安装将在测试前安装并在测试后卸载"
INSTALLED_FLAG=0
fi
# 检查yum源中是否存在libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ $INSTALLED_FLAG -eq 0 ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffcp命令是否存在-s参数
LOG_INFO "检查tiffcp命令是否支持-s参数"
tiffcp --help 2>&1 | grep -q "\-s"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-s参数"
# 如果是测试前安装的,需要卸载
if [ $INSTALLED_FLAG -eq 0 ]; then
dnf remove -y libtiff-tools
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test data for libtiff-tools" > test_input.txt
tiffcp -c lzw test_input.txt test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-s参数以条带形式写入输出
LOG_INFO "测试tiffcp命令的-s参数以条带形式写入输出"
tiffcp -s test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "tiffcp -s命令执行失败"
# 验证输出文件是否存在且非空
LOG_INFO "验证输出文件是否存在且非空"
if [ -s test_output.tif ]; then
LOG_INFO "输出文件创建成功且非空"
else
LOG_ERROR "输出文件创建失败或为空"
# 清理测试文件
rm -f test_input.txt test_input.tif test_output.tif
# 如果是测试前安装的,需要卸载
if [ $INSTALLED_FLAG -eq 0 ]; then
dnf remove -y libtiff-tools
fi
exit 1
fi
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果测试前未安装则卸载libtiff-tools
if [ $INSTALLED_FLAG -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,77 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-t参数以分块形式写入输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-t参数以分块形式写入输出"
LOG_INFO "1. 检查libtiff-tools软件包是否在yum源中"
if ! dnf list --available libtiff-tools 2>/dev/null | grep -q "libtiff-tools"; then
LOG_ERROR "libtiff-tools软件包不在yum源中"
exit 255
fi
LOG_INFO "2. 检查当前是否已安装libtiff-tools"
if rpm -q libtiff-tools >/dev/null 2>&1; then
LOG_INFO "libtiff-tools已安装脚本结束后将保持安装状态"
INSTALLED_BEFORE=1
else
LOG_INFO "libtiff-tools未安装将作为测试步骤安装"
INSTALLED_BEFORE=0
fi
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "3. 安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "4. 检查tiffcp命令是否支持-t参数"
tiffcp -h 2>&1 | grep -q "\-t"
CHECK_RESULT $? 0 0 "tiffcp命令不支持-t参数"
LOG_INFO "5. 创建测试输入TIFF文件"
convert -size 100x100 xc:white input.tiff
CHECK_RESULT $? 0 0 "创建测试输入文件失败"
LOG_INFO "6. 使用-t参数以分块形式写入输出"
tiffcp -t 512,512 input.tiff output.tiff
CHECK_RESULT $? 0 0 "tiffcp -t命令执行失败"
LOG_INFO "7. 验证输出文件是否成功创建"
[ -f output.tiff ]
CHECK_RESULT $? 0 0 "输出文件未创建"
LOG_INFO "8. 清理测试文件"
rm -f input.tiff output.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ $INSTALLED_BEFORE -eq 0 ]; then
LOG_INFO "9. 卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "9. 保持libtiff-tools安装状态不进行卸载"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,92 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-B参数以大端字节序写入输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-B参数以大端字节序写入输出"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2检查系统是否已安装libtiff-tools"
rpm -q libtiff-tools >/dev/null 2>&1
installed=$?
if [ $installed -ne 0 ]; then
LOG_INFO "未安装libtiff-tools开始安装"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
else
LOG_INFO "libtiff-tools已安装"
fi
LOG_INFO "步骤3检查tiffcp命令是否支持-B参数"
tiffcp --help 2>&1 | grep -q -- "-B"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-B参数"
if [ $installed -ne 0 ]; then
LOG_INFO "清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤4创建测试输入TIFF文件"
cat > test_input.txt << EOF
P1
2 2
0 1
1 0
EOF
convert test_input.txt test_input.tiff
CHECK_RESULT $? 0 0 "创建测试输入TIFF文件失败"
LOG_INFO "步骤5使用tiffcp命令的-B参数以大端字节序写入输出"
tiffcp -B test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "tiffcp命令执行失败"
LOG_INFO "步骤6验证输出文件是否成功创建"
[ -f test_output.tiff ]
CHECK_RESULT $? 0 0 "输出文件未创建"
LOG_INFO "步骤7验证输出文件格式"
file test_output.tiff | grep -q "TIFF"
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF格式"
LOG_INFO "步骤8清理测试文件"
rm -f test_input.txt test_input.tiff test_output.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ $installed -ne 0 ]; then
LOG_INFO "步骤9清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "步骤9保持libtiff-tools安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,75 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-C参数禁用条带分割
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-C参数禁用条带分割"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "libtiff-tools软件包在yum源中存在"
LOG_INFO "步骤2检查系统是否已安装libtiff-tools"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "系统已安装libtiff-tools测试后保持安装状态"
INSTALLED=1
else
LOG_INFO "系统未安装libtiff-tools将安装作为测试步骤"
INSTALLED=0
LOG_INFO "步骤3安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "步骤4检查tiffcp命令是否支持-C参数"
tiffcp -h 2>&1 | grep -q -- "-C"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-C参数"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "tiffcp命令支持-C参数"
LOG_INFO "步骤5创建测试用TIFF文件"
echo "Test data for TIFF" > test_input.txt
tiffcp test_input.txt test_input.tif
CHECK_RESULT $? 0 0 "创建输入TIFF文件失败"
LOG_INFO "步骤6使用-C参数禁用条带分割执行tiffcp命令"
tiffcp -C test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "使用-C参数执行tiffcp命令失败"
LOG_INFO "步骤7验证输出文件是否生成"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出TIFF文件未生成"
LOG_INFO "步骤8清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "删除测试文件失败"
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "步骤9清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,86 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-L参数以小端字节序写入输出
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装标记为保持安装状态"
KEEP_INSTALLED=true
else
LOG_INFO "libtiff-tools未安装标记为测试后卸载"
KEEP_INSTALLED=false
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中没有libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$KEEP_INSTALLED" = "false" ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建测试文件
LOG_INFO "创建测试TIFF文件"
echo "Test data for tiffcp" > test_input.txt
tiffcp -c none test_input.txt test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-L参数
LOG_INFO "测试tiffcp命令的-L参数以小端字节序写入输出"
tiffcp -L test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "tiffcp命令-L参数测试失败"
# 验证输出文件是否创建成功
LOG_INFO "验证输出文件是否创建成功"
ls test_output.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "输出文件未创建成功"
# 检查输出文件是否为有效的TIFF文件
LOG_INFO "检查输出文件是否为有效的TIFF文件"
tiffinfo test_output.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "输出文件不是有效的TIFF文件"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果测试前未安装,则卸载软件包
if [ "$KEEP_INSTALLED" = "false" ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,92 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-M参数禁用内存映射文件
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools软件包
LOG_INFO "检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装脚本结束后将保持安装状态"
INSTALLED_FLAG=1
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装并在结束后卸载"
INSTALLED_FLAG=0
fi
# 检查yum源中是否存在libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中未找到libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 安装libtiff-tools软件包如果未安装
if [ $INSTALLED_FLAG -eq 0 ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
# 检查tiffcp命令是否支持-M参数
LOG_INFO "检查tiffcp命令是否支持-M参数"
tiffcp -h 2>&1 | grep -q "\-M"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-M参数"
if [ $INSTALLED_FLAG -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test data for TIFF" > test_input.txt
tiffcp -c lzw test_input.txt test_input.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffcp命令的-M参数禁用内存映射文件
LOG_INFO "测试tiffcp命令的-M参数禁用内存映射文件"
tiffcp -M test_input.tif test_output.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "使用-M参数执行tiffcp命令失败"
# 验证输出文件是否创建成功
LOG_INFO "验证输出文件是否创建成功"
[ -f test_output.tif ]
CHECK_RESULT $? 0 0 "输出文件未创建成功"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test_input.tif test_output.tif
# 如果测试前未安装则卸载libtiff-tools软件包
if [ $INSTALLED_FLAG -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,86 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-w参数设置输出分块的宽度像素
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "开始测试tiffcp命令的-w参数功能"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
if ! dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2检查当前是否已安装libtiff-tools"
if rpm -q libtiff-tools >/dev/null 2>&1; then
LOG_INFO "检测到libtiff-tools已安装标记为保持安装状态"
KEEP_INSTALLED=1
else
LOG_INFO "未安装libtiff-tools将在测试过程中安装"
KEEP_INSTALLED=0
fi
LOG_INFO "步骤3安装libtiff-tools软件包"
if [ $KEEP_INSTALLED -eq 0 ]; then
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "步骤4检查tiffcp命令是否支持-w参数"
tiffcp --help 2>&1 | grep -q -- "-w"
CHECK_RESULT $? 0 0 "tiffcp命令不支持-w参数"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffcp命令不支持-w参数"
exit 255
fi
LOG_INFO "步骤5准备测试用TIFF文件"
TEST_INPUT="test_input.tiff"
TEST_OUTPUT="test_output.tiff"
convert -size 100x100 xc:white $TEST_INPUT 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤6测试tiffcp -w参数功能"
tiffcp -w 50 $TEST_INPUT $TEST_OUTPUT
CHECK_RESULT $? 0 0 "tiffcp -w命令执行失败"
LOG_INFO "步骤7验证输出文件的分块宽度"
tiffinfo $TEST_OUTPUT 2>&1 | grep -q "Tile Width: 50"
CHECK_RESULT $? 0 0 "输出文件的分块宽度不符合预期"
LOG_INFO "步骤8清理临时测试文件"
rm -f $TEST_INPUT $TEST_OUTPUT
CHECK_RESULT $? 0 0 "删除临时文件失败"
LOG_INFO "步骤9根据初始状态决定是否卸载软件包"
if [ $KEEP_INSTALLED -eq 0 ]; then
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
LOG_INFO "已卸载libtiff-tools软件包"
else
LOG_INFO "保持libtiff-tools安装状态"
fi
LOG_INFO "测试完成tiffcp -w参数功能验证成功"
}
main "$@"

View File

@@ -1,85 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffcp命令的-x参数强制按顺序合并TIFF页面
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffcp命令的-x参数强制按顺序合并TIFF页面"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2检查是否已安装libtiff-tools软件包"
if rpm -q libtiff-tools > /dev/null 2>&1; then
LOG_INFO "libtiff-tools已安装测试完成后保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools未安装开始安装"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
INSTALLED=false
fi
LOG_INFO "步骤3检查tiffcp命令是否支持-x参数"
tiffcp -x > /dev/null 2>&1
if [ $? -eq 255 ]; then
LOG_ERROR "tiffcp命令不支持-x参数"
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
fi
exit 255
fi
LOG_INFO "步骤4创建测试TIFF文件"
echo "Test image 1" > test1.txt
echo "Test image 2" > test2.txt
tiffcp test1.txt test1.tiff 2>/dev/null
tiffcp test2.txt test2.tiff 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤5使用-x参数强制按顺序合并TIFF页面"
tiffcp -x test1.tiff test2.tiff merged.tiff
CHECK_RESULT $? 0 0 "使用-x参数合并TIFF文件失败"
LOG_INFO "步骤6验证合并后的TIFF文件"
tiffinfo merged.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "合并后的TIFF文件无效"
LOG_INFO "步骤7清理测试文件"
rm -f test1.txt test2.txt test1.tiff test2.tiff merged.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
LOG_INFO "步骤8根据初始状态决定是否卸载软件包"
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "保持libtiff-tools安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,77 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试显示帮助信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 判断是否已安装libtiff-tools
LOG_INFO "检查是否已安装libtiff-tools"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装"
INSTALLED=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中没有libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 测试显示帮助信息
LOG_INFO "测试tiffdump命令显示帮助信息"
tiffdump -h > /dev/null 2>&1
if [ $? -eq 1 ]; then
# 某些版本的tiffdump使用-h参数显示帮助信息后返回1
LOG_INFO "tiffdump -h成功显示帮助信息"
elif tiffdump --help > /dev/null 2>&1; then
LOG_INFO "tiffdump --help成功显示帮助信息"
else
LOG_ERROR "tiffdump不支持-h或--help参数"
# 清理环境
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
# 清理环境
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -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-04
# @License : Mulan PSL v2
# @Desc : 测试限制输出的目录条目数量
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
LOG_INFO "开始测试限制输出的目录条目数量"
# 检查软件包是否在yum源中
LOG_INFO "检查libtiff-tools是否在yum源中"
if ! dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools; then
LOG_ERROR "libtiff-tools不在yum源中"
exit 255
fi
# 检查软件包是否已安装
LOG_INFO "检查libtiff-tools是否已安装"
if rpm -q libtiff-tools >/dev/null 2>&1; then
LOG_INFO "libtiff-tools已安装测试结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools未安装将进行安装"
INSTALLED=false
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffdump命令是否存在
LOG_INFO "检查tiffdump命令是否存在"
if ! command -v tiffdump >/dev/null 2>&1; then
LOG_ERROR "tiffdump命令不存在"
exit 255
fi
# 检查tiffdump命令是否支持-m参数
LOG_INFO "检查tiffdump命令是否支持-m参数"
if ! tiffdump --help 2>&1 | grep -q -- "-m"; then
LOG_ERROR "tiffdump命令不支持-m参数"
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
TEST_TIFF="test_libtiff_tools.tiff"
convert -size 100x100 xc:white "$TEST_TIFF" 2>/dev/null || LOG_INFO "使用convert创建TIFF文件"
if [ ! -f "$TEST_TIFF" ]; then
# 如果convert不可用尝试使用其他方法创建TIFF文件
LOG_INFO "使用tiff工具创建TIFF文件"
tiffcp /dev/null "$TEST_TIFF" 2>/dev/null || true
fi
# 测试tiffdump -m参数
LOG_INFO "测试tiffdump -m参数限制输出的目录条目数量"
tiffdump -m 5 "$TEST_TIFF" > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffdump -m参数执行失败"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f "$TEST_TIFF"
# 如果测试前未安装,则卸载软件包
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,86 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试从指定偏移量开始读取文件
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 测试脚本:测试从指定偏移量开始读取文件
# 步骤1检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
if dnf list installed libtiff-tools &>/dev/null; then
LOG_INFO "libtiff-tools已安装脚本结束时将保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
INSTALLED=false
fi
# 步骤2检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
if ! dnf list available libtiff-tools &>/dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 步骤3如果未安装则安装libtiff-tools
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 步骤4创建一个测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
cat > /tmp/test_input.txt <<EOF
This is a test file for tiffdump.
It contains multiple lines of text.
EOF
tiffcp /tmp/test_input.txt /tmp/test.tiff
CHECK_RESULT $? 0 0 "创建TIFF文件失败"
# 步骤5测试tiffdump命令的-o参数从指定偏移量开始读取
LOG_INFO "测试tiffdump命令的-o参数从指定偏移量开始读取"
tiffdump -o 10 /tmp/test.tiff &>/tmp/tiffdump_output.txt
CHECK_RESULT $? 0 0 "tiffdump命令执行失败"
# 步骤6验证输出结果
LOG_INFO "验证tiffdump输出结果"
if [ -s /tmp/tiffdump_output.txt ]; then
LOG_INFO "tiffdump从偏移量10开始读取成功"
else
LOG_ERROR "tiffdump输出为空"
exit 1
fi
# 步骤7清理测试文件
LOG_INFO "清理测试文件"
rm -f /tmp/test_input.txt /tmp/test.tiff /tmp/tiffdump_output.txt
# 步骤8如果脚本开始时未安装则卸载libtiff-tools
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,74 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试组合使用偏移量和最大条目限制参数
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试组合使用偏移量和最大条目限制参数"
# 检查是否已安装libtiff-tools
if ! dnf list installed libtiff-tools &> /dev/null; then
LOG_INFO "环境未安装libtiff-tools将进行安装"
INSTALLED_DURING_TEST=1
else
LOG_INFO "环境已安装libtiff-tools测试结束后将保持安装状态"
INSTALLED_DURING_TEST=0
fi
# 检查yum源中是否有libtiff-tools
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
if ! dnf list available libtiff-tools &> /dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ $INSTALLED_DURING_TEST -eq 1 ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建一个测试用的TIFF文件
LOG_INFO "创建测试TIFF文件"
echo "Test TIFF content" > test_input.txt
tiffcp test_input.txt test.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试组合使用偏移量和最大条目限制参数
LOG_INFO "测试组合使用偏移量和最大条目限制参数"
tiffdump -o 10 -m 5 test.tiff
CHECK_RESULT $? 0 0 "组合使用偏移量和最大条目限制参数失败"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test.tiff
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果测试过程中安装了软件包,则卸载
if [ $INSTALLED_DURING_TEST -eq 1 ]; then
LOG_INFO "卸载测试过程中安装的libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

View File

@@ -1,130 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-c参数显示灰度/颜色响应曲线或颜色映射数据
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义日志函数
LOG_INFO() {
echo "INFO: $1"
}
LOG_ERROR() {
echo "ERROR: $1"
}
# 检查软件包是否在yum源中
check_package_existence() {
dnf list available $1 &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "软件包 $1 不在yum源中"
exit 255
fi
}
# 检查命令参数是否存在
check_param_support() {
$1 --help 2>&1 | grep -q "\-$2"
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $1 不支持参数 -$2"
exit 255
fi
}
# 检查命令执行结果
check_command_result() {
if [ $1 -ne 0 ]; then
exit $1
fi
}
# 主测试函数
main() {
LOG_INFO "开始测试 tiffinfo -c 参数功能"
# 检查软件包是否存在
LOG_INFO "检查 libtiff-tools 软件包是否在yum源中"
check_package_existence "libtiff-tools"
# 检查是否已安装
LOG_INFO "检查系统是否已安装 libtiff-tools"
rpm -q libtiff-tools &>/dev/null
local installed=$?
# 记录初始安装状态
local initial_installed=$installed
# 如果未安装,则安装
if [ $installed -ne 0 ]; then
LOG_INFO "安装 libtiff-tools 软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装 libtiff-tools 失败"
fi
# 检查 -c 参数是否支持
LOG_INFO "检查 tiffinfo 命令是否支持 -c 参数"
check_param_support "tiffinfo" "c"
# 创建测试TIFF文件
LOG_INFO "创建测试TIFF文件"
local test_tiff="test_image.tiff"
# 使用convert创建简单的TIFF文件如果convert可用
if command -v convert &>/dev/null; then
convert -size 100x100 xc:white $test_tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
else
# 如果convert不可用创建空文件并跳过-c参数测试
LOG_INFO "convert命令不可用创建空TIFF文件进行基本测试"
touch $test_tiff
fi
# 测试 -c 参数
LOG_INFO "测试 tiffinfo -c 参数"
tiffinfo -c $test_tiff
local tiffinfo_result=$?
# 如果文件是空的tiffinfo可能会失败这是预期的
if [ ! -s $test_tiff ]; then
LOG_INFO "测试文件为空,跳过-c参数的功能验证"
else
check_command_result $tiffinfo_result
fi
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f $test_tiff
CHECK_RESULT $? 0 0 "删除测试文件失败"
# 如果最初未安装,则卸载软件包
if [ $initial_installed -ne 0 ]; then
LOG_INFO "卸载 libtiff-tools 软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载 libtiff-tools 失败"
else
LOG_INFO "保持 libtiff-tools 的安装状态"
fi
LOG_INFO "测试完成"
}
# 执行主函数
main
}
main "$@"

View File

@@ -1,98 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-d参数显示原始/解码后的图像数据
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
PACKAGE_NAME="libtiff-tools"
TEST_COMMAND="tiffinfo"
TEST_PARAM="-d"
TEST_FILE="test.tiff"
# 步骤1检查yum源中是否存在libtiff-tools软件包
LOG_INFO "检查yum源中是否存在$PACKAGE_NAME软件包"
if ! dnf list available $PACKAGE_NAME &>/dev/null; then
LOG_ERROR "yum源中不存在$PACKAGE_NAME软件包"
exit 255
fi
# 步骤2检查当前是否已安装libtiff-tools
LOG_INFO "检查当前是否已安装$PACKAGE_NAME软件包"
if rpm -q $PACKAGE_NAME &>/dev/null; then
LOG_INFO "$PACKAGE_NAME软件包已安装,脚本结束后将保持安装状态"
ALREADY_INSTALLED=true
else
LOG_INFO "$PACKAGE_NAME软件包未安装,将在测试步骤中安装"
ALREADY_INSTALLED=false
fi
# 步骤3如果未安装则安装软件包
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "安装$PACKAGE_NAME软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME软件包失败"
fi
# 步骤4检查tiffinfo命令是否存在
LOG_INFO "检查$TEST_COMMAND命令是否存在"
command -v $TEST_COMMAND >/dev/null 2>&1
CHECK_RESULT $? 0 0 "$TEST_COMMAND命令不存在"
# 步骤5检查-d参数是否支持
LOG_INFO "检查$TEST_COMMAND命令是否支持$TEST_PARAM参数"
$TEST_COMMAND $TEST_PARAM --help 2>&1 | grep -q "invalid option\|unrecognized option"
if [ $? -eq 0 ]; then
LOG_ERROR "$TEST_COMMAND命令不支持$TEST_PARAM参数"
exit 255
fi
# 步骤6创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test TIFF file" > $TEST_FILE
convert -size 100x100 xc:white $TEST_FILE 2>/dev/null || convert -size 100x100 xc:white $TEST_FILE.tiff && mv $TEST_FILE.tiff $TEST_FILE 2>/dev/null
if [ ! -f $TEST_FILE ]; then
LOG_INFO "使用fallback方法创建测试TIFF文件"
python3 -c "from PIL import Image; Image.new("RGB", (100, 100), "white").save("$TEST_FILE")" 2>/dev/null || \
python -c "from PIL import Image; Image.new("RGB", (100, 100), "white").save("$TEST_FILE")" 2>/dev/null
fi
if [ ! -f $TEST_FILE ]; then
LOG_ERROR "无法创建测试TIFF文件请确保系统已安装ImageMagick或Pillow"
CHECK_RESULT 1 0 0 "创建测试文件失败"
fi
# 步骤7使用-d参数显示原始/解码后的图像数据
LOG_INFO "使用$TEST_PARAM参数显示原始/解码后的图像数据"
$TEST_COMMAND $TEST_PARAM $TEST_FILE
CHECK_RESULT $? 0 0 "执行$TEST_COMMAND $TEST_PARAM失败"
# 步骤8清理测试文件
LOG_INFO "清理测试文件"
rm -f $TEST_FILE
# 步骤9如果测试前未安装则卸载软件包
if [ "$ALREADY_INSTALLED" = false ]; then
LOG_INFO "卸载$PACKAGE_NAME软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,114 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-f lsb2msb参数强制输入使用lsb-to-msb填充顺序
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
set -e
# 检测软件包是否在yum源中
check_package_existence() {
local package_name=$1
LOG_INFO "检查软件包 $package_name 是否在yum源中"
dnf list available "$package_name" &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "软件包 $package_name 不在yum源中"
exit 255
fi
LOG_INFO "软件包 $package_name 在yum源中找到"
}
# 检查命令参数是否支持
check_command_option() {
local command=$1
local option=$2
LOG_INFO "检查命令 $command 是否支持参数 $option"
$command --help 2>&1 | grep -q "$option"
if [ $? -ne 0 ]; then
LOG_ERROR "命令 $command 不支持参数 $option"
exit 255
fi
LOG_INFO "命令 $command 支持参数 $option"
}
# 主测试函数
main() {
local package_name="libtiff-tools"
local test_command="tiffinfo"
local test_option="-f lsb2msb"
local test_file="test_lsb2msb.tiff"
local installed_before_test=false
# 步骤1: 检查测试环境是否已安装libtiff-tools
LOG_INFO "步骤1: 检查测试环境是否已安装 $package_name"
if rpm -q "$package_name" &>/dev/null; then
LOG_INFO "$package_name 已安装"
installed_before_test=true
else
LOG_INFO "$package_name 未安装"
installed_before_test=false
fi
# 步骤2: 检查yum源中是否有libtiff-tools软件包
check_package_existence "$package_name"
# 步骤3: 如果未安装则安装软件包
if [ "$installed_before_test" = false ]; then
LOG_INFO "步骤3: 安装 $package_name 软件包"
dnf install -y "$package_name"
CHECK_RESULT $? 0 0 "安装 $package_name 失败"
fi
# 步骤4: 检查tiffinfo命令是否支持-f lsb2msb参数
check_command_option "$test_command" "-f lsb2msb"
# 步骤5: 创建测试用的TIFF文件
LOG_INFO "步骤5: 创建测试用的TIFF文件"
echo "Test data for TIFF" > test_data.txt
tiffcp -c lzw test_data.txt "$test_file" 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 步骤6: 使用-f lsb2msb参数执行tiffinfo命令
LOG_INFO "步骤6: 使用-f lsb2msb参数执行tiffinfo命令"
$test_command $test_option "$test_file" 2>&1
CHECK_RESULT $? 0 0 "tiffinfo命令执行失败"
# 步骤7: 清理测试文件
LOG_INFO "步骤7: 清理测试文件"
rm -f test_data.txt "$test_file"
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 步骤8: 恢复环境
LOG_INFO "步骤8: 恢复环境"
if [ "$installed_before_test" = false ]; then
LOG_INFO "卸载 $package_name 软件包"
dnf remove -y "$package_name"
CHECK_RESULT $? 0 0 "卸载 $package_name 失败"
else
LOG_INFO "保持 $package_name 安装状态"
fi
LOG_INFO "测试完成"
}
# 执行主函数
main
}
main "$@"

View File

@@ -1,77 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-f msb2lsb参数强制输入使用msb-to-lsb填充顺序
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装"
INSTALLED=0
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "开始安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
LOG_INFO "安装libtiff-tools成功"
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test data for tiffinfo" > test_input.txt
tiffcp -c none test_input.txt test.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffinfo命令的-f msb2lsb参数
LOG_INFO "测试tiffinfo命令的-f msb2lsb参数"
tiffinfo -f msb2lsb test.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffinfo命令不支持-f msb2lsb参数"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 如果脚本开始前未安装,则在测试结束后卸载
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
LOG_INFO "卸载libtiff-tools成功"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,73 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-i参数忽略TIFF文件读取错误
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffinfo命令的-i参数功能"
LOG_INFO "检查系统中是否已安装libtiff-tools软件包"
if ! dnf list installed libtiff-tools &>/dev/null; then
LOG_INFO "libtiff-tools未安装开始安装"
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
if ! dnf list available libtiff-tools &>/dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
INSTALLED=1
else
LOG_INFO "libtiff-tools已安装"
INSTALLED=0
fi
LOG_INFO "检查tiffinfo命令是否支持-i参数"
tiffinfo -i &>/dev/null
if [ $? -eq 255 ]; then
LOG_ERROR "tiffinfo命令不支持-i参数"
if [ $INSTALLED -eq 1 ]; then
LOG_INFO "清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "创建测试用的损坏TIFF文件"
cat > test_corrupt.tiff << "EOF"
这是一个无效的TIFF文件内容
EOF
LOG_INFO "使用-i参数测试读取损坏的TIFF文件"
tiffinfo -i test_corrupt.tiff 2>&1
CHECK_RESULT $? 0 0 "使用-i参数读取损坏TIFF文件失败"
LOG_INFO "清理测试文件"
rm -f test_corrupt.tiff
if [ $INSTALLED -eq 1 ]; then
LOG_INFO "清理环境卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,79 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-j参数显示JPEG表
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试:使用-j参数显示JPEG表"
LOG_INFO "步骤1: 检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装测试结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools未安装将在测试前安装"
INSTALLED=false
fi
LOG_INFO "步骤2: 检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤3: 安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
LOG_INFO "步骤4: 检查tiffinfo命令是否支持-j参数"
tiffinfo -j > /dev/null 2>&1
if [ $? -eq 255 ]; then
LOG_ERROR "tiffinfo命令不支持-j参数"
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤5: 创建一个测试用的TIFF文件"
convert -size 100x100 xc:white test.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤6: 使用-j参数显示JPEG表"
tiffinfo -j test.tiff
CHECK_RESULT $? 0 0 "使用-j参数显示JPEG表失败"
LOG_INFO "步骤7: 清理测试文件"
rm -f test.tiff
CHECK_RESULT $? 0 0 "删除测试文件失败"
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤8: 卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,92 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-o参数设置初始目录偏移量
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试:使用-o参数设置初始目录偏移量"
# 定义软件包名称
PACKAGE_NAME="libtiff-tools"
# 检查软件包是否已在系统中安装
LOG_INFO "步骤1检查系统中是否已安装${PACKAGE_NAME}软件包"
if rpm -q ${PACKAGE_NAME} > /dev/null 2>&1; then
LOG_INFO "${PACKAGE_NAME}软件包已安装,标记为已安装状态"
INSTALLED=true
else
LOG_INFO "${PACKAGE_NAME}软件包未安装,标记为未安装状态"
INSTALLED=false
fi
# 检查yum源中是否存在该软件包
LOG_INFO "步骤2检查yum源中是否存在${PACKAGE_NAME}软件包"
if ! dnf list available ${PACKAGE_NAME} > /dev/null 2>&1; then
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
exit 255
fi
# 如果未安装,则安装软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤3安装${PACKAGE_NAME}软件包"
dnf install -y ${PACKAGE_NAME}
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
fi
# 检查tiffinfo命令是否支持-o参数
LOG_INFO "步骤4检查tiffinfo命令是否支持-o参数"
if ! tiffinfo --help 2>&1 | grep -q "\-o"; then
LOG_ERROR "tiffinfo命令不支持-o参数"
# 如果之前未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境:卸载${PACKAGE_NAME}软件包"
dnf remove -y ${PACKAGE_NAME}
fi
exit 255
fi
# 创建一个测试用的TIFF文件
LOG_INFO "步骤5创建一个测试用的TIFF文件"
TEST_TIFF="test_image.tiff"
convert -size 100x100 xc:white ${TEST_TIFF} 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 使用-o参数执行tiffinfo命令
LOG_INFO "步骤6使用-o参数执行tiffinfo命令"
tiffinfo -o 100 ${TEST_TIFF} > /dev/null 2>&1
CHECK_RESULT $? 0 0 "使用-o参数执行tiffinfo命令失败"
# 清理测试文件
LOG_INFO "步骤7清理测试文件"
rm -f ${TEST_TIFF}
CHECK_RESULT $? 0 0 "删除测试文件失败"
# 如果测试开始时未安装软件包,则在测试结束后卸载
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤8清理环境卸载${PACKAGE_NAME}软件包"
dnf remove -y ${PACKAGE_NAME}
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
else
LOG_INFO "步骤8保持${PACKAGE_NAME}软件包的安装状态"
fi
LOG_INFO "测试完成:使用-o参数设置初始目录偏移量"
}
main "$@"

View File

@@ -1,93 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-r参数读取并显示原始图像数据而非解码数据
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试libtiff-tools的tiffinfo命令-r参数功能"
# 检查软件包是否在yum源中
LOG_INFO "检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools
if [ $? -ne 0 ]; then
LOG_ERROR "libtiff-tools软件包不在yum源中"
exit 255
fi
# 检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
installed=$?
# 如果未安装,则安装软件包
if [ $installed -ne 0 ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffinfo命令是否存在
LOG_INFO "检查tiffinfo命令是否存在"
command -v tiffinfo > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffinfo命令不存在"
# 检查-r参数是否支持
LOG_INFO "检查tiffinfo命令是否支持-r参数"
tiffinfo -r --help 2>&1 | grep -q "raw data"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffinfo命令不支持-r参数"
# 如果是新安装的,需要卸载
if [ $installed -ne 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "测试图像数据" > test_input.txt
tiffcp test_input.txt test.tiff 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 使用-r参数测试tiffinfo命令
LOG_INFO "使用-r参数执行tiffinfo命令"
tiffinfo -r test.tiff > output.txt 2>&1
CHECK_RESULT $? 0 0 "tiffinfo -r命令执行失败"
# 检查输出是否包含原始数据
LOG_INFO "检查输出是否包含原始图像数据"
grep -q "Raw" output.txt
CHECK_RESULT $? 0 0 "输出不包含原始图像数据"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test.tiff output.txt
# 如果测试前未安装,则卸载软件包
if [ $installed -ne 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,69 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-s参数显示条带偏移量和字节计数
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试:使用-s参数显示条带偏移量和字节计数"
LOG_INFO "步骤1检查libtiff-tools软件包是否已在系统中安装"
if rpm -q libtiff-tools &> /dev/null; then
LOG_INFO "libtiff-tools软件包已安装测试结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools软件包未安装将在测试前安装并在测试结束后卸载"
INSTALLED=false
fi
LOG_INFO "步骤2检查yum源中是否有libtiff-tools软件包"
if ! dnf list available libtiff-tools &> /dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包退出测试"
exit 255
fi
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤3安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
LOG_INFO "步骤4检查tiffinfo命令是否支持-s参数"
if ! tiffinfo -h 2>&1 | grep -q "\-s"; then
LOG_ERROR "tiffinfo命令不支持-s参数退出测试"
if [ "$INSTALLED" = false ]; then
LOG_INFO "清理环境卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤5创建一个测试用的TIFF文件"
echo "Test TIFF content" > test_input.txt
tiffcp test_input.txt test.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤6使用tiffinfo -s命令显示条带偏移量和字节计数"
tiffinfo -s test.tif
CHECK_RESULT $? 0 0 "tiffinfo -s命令执行失败"
LOG_INFO "步骤7清理测试文件"
rm -f test_input.txt test.tif
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ "$INSTALLED" = false ]; then
LOG_INFO "步骤8卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,103 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-D参数读取并显示TIFF文件数据
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
PACKAGE_NAME="libtiff-tools"
COMMAND="tiffinfo"
PARAM="-D"
TEST_FILE="test.tiff"
# 步骤1检查yum源中是否存在软件包
LOG_INFO "步骤1检查yum源中是否存在$PACKAGE_NAME软件包"
dnf list available $PACKAGE_NAME 2>/dev/null | grep -q $PACKAGE_NAME
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到$PACKAGE_NAME软件包"
exit 255
fi
# 步骤2检查当前环境是否已安装软件包
LOG_INFO "步骤2检查当前环境是否已安装$PACKAGE_NAME软件包"
rpm -q $PACKAGE_NAME >/dev/null 2>&1
INSTALLED=$?
NEED_CLEANUP=0
if [ $INSTALLED -ne 0 ]; then
# 步骤3安装软件包
LOG_INFO "步骤3安装$PACKAGE_NAME软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME失败"
NEED_CLEANUP=1
fi
# 步骤4检查命令是否存在
LOG_INFO "步骤4检查$COMMAND命令是否存在"
which $COMMAND >/dev/null 2>&1
CHECK_RESULT $? 0 0 "$COMMAND命令不存在"
# 步骤5检查参数是否支持
LOG_INFO "步骤5检查$COMMAND命令是否支持$PARAM参数"
$COMMAND --help 2>&1 | grep -q -- "$PARAM"
if [ $? -ne 0 ]; then
LOG_ERROR "$COMMAND命令不支持$PARAM参数"
if [ $NEED_CLEANUP -eq 1 ]; then
dnf remove -y $PACKAGE_NAME
fi
exit 255
fi
# 步骤6创建测试文件
LOG_INFO "步骤6创建测试TIFF文件"
cat > create_test_tiff.py << "EOF"
#!/usr/bin/env python3
from PIL import Image
import numpy as np
# 创建测试图像
img_array = np.random.rand(100, 100, 3) * 255
img = Image.fromarray(img_array.astype("uint8")).convert("RGB")
img.save("test.tiff", "TIFF")
print("测试TIFF文件创建成功")
EOF
python3 create_test_tiff.py
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
rm -f create_test_tiff.py
# 步骤7使用-D参数读取并显示TIFF文件数据
LOG_INFO "步骤7使用-D参数读取并显示TIFF文件数据"
$COMMAND $PARAM $TEST_FILE
CHECK_RESULT $? 0 0 "使用-D参数读取TIFF文件失败"
# 步骤8清理测试文件
LOG_INFO "步骤8清理测试文件"
rm -f $TEST_FILE
# 步骤9根据安装状态决定是否卸载软件包
if [ $NEED_CLEANUP -eq 1 ]; then
LOG_INFO "步骤9卸载$PACKAGE_NAME软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,147 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-M参数设置内存分配限制MiB0为无限制
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义软件包名称
PACKAGE_NAME="libtiff-tools"
# 检查yum源中是否存在软件包
LOG_INFO "检查yum源中是否存在软件包: $PACKAGE_NAME"
dnf list available $PACKAGE_NAME 2>/dev/null | grep -q $PACKAGE_NAME
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中不存在软件包: $PACKAGE_NAME"
exit 255
fi
# 检查是否已安装软件包
LOG_INFO "检查是否已安装软件包: $PACKAGE_NAME"
rpm -q $PACKAGE_NAME > /dev/null 2>&1
INSTALLED=$?
# 如果未安装,则安装软件包
if [ $INSTALLED -ne 0 ]; then
LOG_INFO "安装软件包: $PACKAGE_NAME"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装软件包失败"
fi
# 检查tiffinfo命令是否存在
LOG_INFO "检查tiffinfo命令是否存在"
which tiffinfo > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "tiffinfo命令不存在"
exit 255
fi
# 检查tiffinfo命令是否支持-M参数
LOG_INFO "检查tiffinfo命令是否支持-M参数"
tiffinfo -h 2>&1 | grep -q -- "-M"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffinfo命令不支持-M参数"
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
cat > test_image.tiff << "EOF"
%PDF-1.0
1 0 obj
<<
/Type /Catalog
/Pages 2 0 R
>>
endobj
2 0 obj
<<
/Type /Pages
/Kids [3 0 R]
/Count 1
>>
endobj
3 0 obj
<<
/Type /Page
/Parent 2 0 R
/MediaBox [0 0 612 792]
/Resources <<
>>
/Contents 4 0 R
>>
endobj
4 0 obj
<<
/Length 44
>>
stream
BT
/F1 12 Tf
72 720 Td
(Test) Tj
ET
endstream
endobj
xref
0 5
0000000000 65535 f
0000000010 00000 n
0000000053 00000 n
0000000106 00000 n
0000000179 00000 n
trailer
<<
/Size 5
/Root 1 0 R
>>
startxref
233
%%EOF
EOF
# 测试使用-M参数设置内存分配限制为0无限制
LOG_INFO "测试使用-M参数设置内存分配限制为0无限制"
tiffinfo -M 0 test_image.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "使用-M 0参数执行失败"
# 测试使用-M参数设置内存分配限制为10 MiB
LOG_INFO "测试使用-M参数设置内存分配限制为10 MiB"
tiffinfo -M 10 test_image.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "使用-M 10参数执行失败"
# 测试使用-M参数设置内存分配限制为100 MiB
LOG_INFO "测试使用-M参数设置内存分配限制为100 MiB"
tiffinfo -M 100 test_image.tiff > /dev/null 2>&1
CHECK_RESULT $? 0 0 "使用-M 100参数执行失败"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_image.tiff
# 恢复环境:如果脚本开始时未安装,则卸载软件包
if [ $INSTALLED -ne 0 ]; then
LOG_INFO "卸载软件包: $PACKAGE_NAME"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载软件包失败"
else
LOG_INFO "保持软件包安装状态: $PACKAGE_NAME"
fi
}
main "$@"

View File

@@ -1,99 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-w参数以字为单位而非字节显示原始数据
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools软件包
LOG_INFO "检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
already_installed=1
LOG_INFO "libtiff-tools软件包已安装"
else
already_installed=0
LOG_INFO "libtiff-tools软件包未安装"
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools软件包
if [ $already_installed -eq 0 ]; then
LOG_INFO "开始安装libtiff-tools软件包"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
LOG_INFO "libtiff-tools软件包安装成功"
fi
# 创建一个测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
echo "Test data for tiffinfo" > test_input.txt
tiffcp test_input.txt test.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffinfo命令是否支持-w参数
LOG_INFO "检查tiffinfo命令是否支持-w参数"
tiffinfo --help 2>&1 | grep -q "\-w"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffinfo命令不支持-w参数"
# 清理测试文件
rm -f test_input.txt test.tif
# 如果之前未安装,则卸载软件包
if [ $already_installed -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
exit 255
fi
# 使用-w参数执行tiffinfo命令
LOG_INFO "使用-w参数执行tiffinfo命令"
tiffinfo -w test.tif > output.txt 2>&1
CHECK_RESULT $? 0 0 "tiffinfo命令执行失败"
# 检查输出是否包含预期内容
LOG_INFO "检查输出是否包含预期内容"
grep -q "Width" output.txt
CHECK_RESULT $? 0 0 "输出中未找到Width信息"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.txt test.tif output.txt
# 如果测试开始时未安装软件包,则卸载
if [ $already_installed -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
LOG_INFO "libtiff-tools软件包已卸载"
else
LOG_INFO "保持libtiff-tools软件包安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,88 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 使用-z参数启用条带分割
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 定义变量
PACKAGE_NAME="libtiff-tools"
COMMAND_NAME="tiffinfo"
PARAM="-z"
TEST_FILE="test_z.tiff"
# 步骤1: 检查yum源中是否存在libtiff-tools软件包
LOG_INFO "步骤1: 检查yum源中是否存在$PACKAGE_NAME软件包"
dnf list available $PACKAGE_NAME &>/dev/null
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到$PACKAGE_NAME软件包"
exit 255
fi
# 步骤2: 检查当前环境是否已安装libtiff-tools
LOG_INFO "步骤2: 检查当前环境是否已安装$PACKAGE_NAME"
rpm -q $PACKAGE_NAME &>/dev/null
if [ $? -eq 0 ]; then
LOG_INFO "$PACKAGE_NAME已安装,脚本结束后将保持安装状态"
INSTALLED_BEFORE="yes"
else
LOG_INFO "$PACKAGE_NAME未安装,将在测试步骤中安装"
INSTALLED_BEFORE="no"
fi
# 步骤3: 如果未安装则安装libtiff-tools
if [ "$INSTALLED_BEFORE" = "no" ]; then
LOG_INFO "步骤3: 安装$PACKAGE_NAME软件包"
dnf install -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME失败"
fi
# 步骤4: 检查tiffinfo命令是否支持-z参数
LOG_INFO "步骤4: 检查$COMMAND_NAME命令是否支持$PARAM参数"
$COMMAND_NAME --help 2>&1 | grep -q "$PARAM"
if [ $? -ne 0 ]; then
LOG_ERROR "$COMMAND_NAME命令不支持$PARAM参数"
exit 255
fi
# 步骤5: 创建一个测试用的TIFF文件用于测试
LOG_INFO "步骤5: 创建一个测试用的TIFF文件"
convert -size 100x100 xc:white $TEST_FILE 2>/dev/null
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 步骤6: 使用-z参数执行tiffinfo命令
LOG_INFO "步骤6: 使用$PARAM参数执行$COMMAND_NAME命令"
$COMMAND_NAME $PARAM $TEST_FILE
CHECK_RESULT $? 0 0 "使用$PARAM参数执行$COMMAND_NAME命令失败"
# 步骤7: 清理测试文件
LOG_INFO "步骤7: 清理测试文件"
rm -f $TEST_FILE
CHECK_RESULT $? 0 0 "清理测试文件失败"
# 步骤8: 如果测试前未安装,则卸载软件包
if [ "$INSTALLED_BEFORE" = "no" ]; then
LOG_INFO "步骤8: 卸载$PACKAGE_NAME软件包"
dnf remove -y $PACKAGE_NAME
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,81 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-A参数用于设置艺术家信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffset命令的-A参数用于设置艺术家信息"
LOG_INFO "步骤1检查libtiff-tools软件包是否在yum源中"
dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤2检查当前环境是否已安装libtiff-tools软件包"
rpm -q libtiff-tools >/dev/null 2>&1
INSTALLED=$?
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "环境已安装libtiff-tools脚本结束后保持安装状态"
NEED_UNINSTALL=0
else
LOG_INFO "环境未安装libtiff-tools开始安装"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
NEED_UNINSTALL=1
fi
LOG_INFO "步骤3检查tiffset命令是否支持-A参数"
tiffset -h 2>&1 | grep -q -- "-A"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffset命令不支持-A参数"
if [ $NEED_UNINSTALL -eq 1 ]; then
dnf remove -y libtiff-tools
fi
exit 255
fi
LOG_INFO "步骤4创建测试用TIFF文件"
convert -size 100x100 xc:white test_image.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "步骤5使用tiffset命令设置艺术家信息"
tiffset -A "Test Artist" test_image.tiff
CHECK_RESULT $? 0 0 "tiffset命令执行失败"
LOG_INFO "步骤6验证艺术家信息是否设置成功"
tiffdump test_image.tiff | grep -q "Artist: Test Artist"
CHECK_RESULT $? 0 0 "艺术家信息设置未生效"
LOG_INFO "步骤7清理测试文件"
rm -f test_image.tiff
LOG_INFO "步骤8恢复环境状态"
if [ $NEED_UNINSTALL -eq 1 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "保持libtiff-tools安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -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-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-C参数用于设置图像压缩方案
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 安装libtiff-tools软件包
LOG_INFO "检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools软件包已安装测试结束后保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools软件包未安装将进行安装"
INSTALLED=false
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否有libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "yum源中未找到libtiff-tools软件包"
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包退出测试"
exit 255
fi
# 如果未安装则安装libtiff-tools软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "开始安装libtiff-tools软件包"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
# 检查tiffset命令是否支持-C参数
LOG_INFO "检查tiffset命令是否支持-C参数"
tiffset -h 2>&1 | grep -q "\-C"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffset命令不支持-C参数退出测试"
# 如果之前未安装,则卸载软件包
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
convert -size 100x100 xc:white test.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 使用tiffset命令设置图像压缩方案为LZW
LOG_INFO "使用tiffset命令设置图像压缩方案为LZW"
tiffset -C lzw test.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "设置图像压缩方案失败"
# 验证压缩方案是否设置成功
LOG_INFO "验证压缩方案是否设置成功"
tiffinfo test.tif 2>&1 | grep -q "Compression Scheme: LZW"
CHECK_RESULT $? 0 0 "压缩方案设置未生效"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test.tif
# 如果测试开始时未安装软件包,则在测试结束后卸载
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
else
LOG_INFO "测试开始时软件包已安装,保持安装状态"
fi
LOG_INFO "测试tiffset命令的-C参数完成"
}
main "$@"

View File

@@ -1,83 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-F参数用于设置图像为填充顺序
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffset命令的-F参数用于设置图像为填充顺序"
LOG_INFO "步骤1: 检查环境中是否已安装libtiff-tools软件包"
if rpm -q libtiff-tools &> /dev/null; then
LOG_INFO "环境中已安装libtiff-tools软件包脚本结束后将保持安装状态"
installed_before_test=true
else
LOG_INFO "环境中未安装libtiff-tools软件包将在测试步骤中安装"
installed_before_test=false
fi
LOG_INFO "步骤2: 检查yum源中是否有libtiff-tools软件包"
if ! dnf list available libtiff-tools &> /dev/null; then
LOG_ERROR "yum源中没有找到libtiff-tools软件包退出测试"
exit 255
fi
if [ "$installed_before_test" = false ]; then
LOG_INFO "步骤3: 安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools软件包失败"
fi
LOG_INFO "步骤4: 创建测试用的TIFF图像文件"
echo "Test image data" > test_image.txt
tiffcp -c lzw test_image.txt test_image.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF图像失败"
LOG_INFO "步骤5: 检查tiffset命令是否支持-F参数"
tiffset -F msb2lsb test_image.tiff 2>&1 | grep -q "unrecognized option"
if [ $? -eq 0 ]; then
LOG_ERROR "tiffset命令不支持-F参数退出测试"
if [ "$installed_before_test" = false ]; then
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
rm -f test_image.txt test_image.tiff
exit 255
fi
LOG_INFO "步骤6: 测试tiffset命令的-F参数设置图像填充顺序为msb2lsb"
tiffset -F msb2lsb test_image.tiff
CHECK_RESULT $? 0 0 "使用-F参数设置图像填充顺序失败"
LOG_INFO "步骤7: 验证图像填充顺序是否设置成功"
tiffinfo test_image.tiff | grep -q "FillOrder: msb-to-lsb"
CHECK_RESULT $? 0 0 "验证图像填充顺序设置失败"
LOG_INFO "步骤8: 清理测试文件"
rm -f test_image.txt test_image.tiff
CHECK_RESULT $? 0 0 "删除测试文件失败"
if [ "$installed_before_test" = false ]; then
LOG_INFO "步骤9: 卸载测试过程中安装的libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools软件包失败"
fi
LOG_INFO "测试完成,环境已恢复到初始状态"
}
main "$@"

View File

@@ -1,77 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-H参数用于显示帮助信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools
LOG_INFO "检查libtiff-tools是否已安装"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装测试完成后保持安装状态"
INSTALLED="yes"
else
LOG_INFO "libtiff-tools未安装将在测试前安装"
INSTALLED="no"
fi
# 检查yum源中是否有libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$INSTALLED" = "no" ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffset命令的-H参数是否存在
LOG_INFO "检查tiffset命令的-H参数是否存在"
tiffset -H > /dev/null 2>&1
if [ $? -eq 255 ]; then
LOG_ERROR "tiffset命令不支持-H参数"
# 如果之前未安装,则卸载软件包
if [ "$INSTALLED" = "no" ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
fi
exit 255
fi
# 测试tiffset命令的-H参数用于显示帮助信息
LOG_INFO "测试tiffset命令的-H参数用于显示帮助信息"
tiffset -H > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffset命令-H参数执行失败"
# 清理环境:如果测试前未安装,则卸载软件包
if [ "$INSTALLED" = "no" ]; then
LOG_INFO "测试完成卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "测试完成保持libtiff-tools安装状态"
fi
}
main "$@"

View File

@@ -1,91 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-R参数用于设置图像行数
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools
LOG_INFO "检查是否已安装libtiff-tools软件包"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装脚本结束后将保持安装状态"
INSTALLED=1
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
INSTALLED=0
fi
# 检查yum源中是否存在libtiff-tools软件包
LOG_INFO "检查yum源中是否存在libtiff-tools软件包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "安装libtiff-tools软件包"
dnf install -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 检查tiffset命令是否支持-R参数
LOG_INFO "检查tiffset命令是否支持-R参数"
tiffset -h 2>&1 | grep -q "\-R"
if [ $? -ne 0 ]; then
LOG_ERROR "tiffset命令不支持-R参数"
# 如果测试过程中安装了软件包,需要卸载
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
fi
exit 255
fi
# 创建测试用的TIFF文件
LOG_INFO "创建测试用的TIFF文件"
convert -size 100x100 xc:white test_input.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 使用tiffset命令设置图像行数为200
LOG_INFO "使用tiffset命令设置图像行数为200"
tiffset -R 200 test_input.tif > /dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffset命令执行失败"
# 验证图像行数是否已修改
LOG_INFO "验证图像行数是否已修改为200"
tiffinfo test_input.tif 2>&1 | grep -q "Rows/Strip: 200"
CHECK_RESULT $? 0 0 "图像行数修改未生效"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_input.tif
# 如果测试过程中安装了软件包,需要卸载
if [ $INSTALLED -eq 0 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,86 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-S参数用于设置条带大小
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装libtiff-tools
LOG_INFO "检查是否已安装libtiff-tools"
rpm -q libtiff-tools > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "libtiff-tools已安装脚本结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "libtiff-tools未安装将在测试过程中安装"
INSTALLED=false
fi
# 检查yum源中是否有libtiff-tools包
LOG_INFO "检查yum源中是否有libtiff-tools包"
dnf list available libtiff-tools > /dev/null 2>&1
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到libtiff-tools包"
exit 255
fi
# 如果未安装则安装libtiff-tools
if [ "$INSTALLED" = false ]; then
LOG_INFO "安装libtiff-tools"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
fi
# 创建一个测试用的TIFF文件
LOG_INFO "创建一个测试用的TIFF文件"
cat > test_image.txt << EOF
P1
2 2
0 1
1 0
EOF
convert test_image.txt test.tiff
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
# 测试tiffset命令的-S参数
LOG_INFO "测试tiffset命令的-S参数设置条带大小为1024"
tiffset -S 1024 test.tiff
CHECK_RESULT $? 0 0 "tiffset命令执行失败可能-S参数不存在或不支持"
# 验证设置是否成功
LOG_INFO "验证条带大小是否设置成功"
tiffinfo test.tiff | grep -q "Strip Size: 1024"
CHECK_RESULT $? 0 0 "条带大小设置未生效"
# 清理测试文件
LOG_INFO "清理测试文件"
rm -f test_image.txt test.tiff
# 如果测试前未安装则卸载libtiff-tools
if [ "$INSTALLED" = false ]; then
LOG_INFO "卸载libtiff-tools"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "保持libtiff-tools安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

View File

@@ -1,75 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-T参数用于设置图像标题
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "1. 检查yum源中是否存在libtiff-tools软件包"
if ! dnf list available libtiff-tools 2>/dev/null | grep -q libtiff-tools; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "2. 检查libtiff-tools是否已安装"
if ! rpm -q libtiff-tools >/dev/null 2>&1; then
LOG_INFO "libtiff-tools未安装开始安装"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
INSTALLED_FLAG=1
else
LOG_INFO "libtiff-tools已安装"
INSTALLED_FLAG=0
fi
LOG_INFO "3. 检查tiffset命令是否存在"
command -v tiffset >/dev/null 2>&1
CHECK_RESULT $? 0 0 "tiffset命令不存在"
LOG_INFO "4. 检查tiffset命令是否支持-T参数"
tiffset -h 2>&1 | grep -q -- "-T"
CHECK_RESULT $? 0 0 "tiffset命令不支持-T参数"
LOG_INFO "5. 创建一个测试TIFF文件"
convert -size 100x100 xc:white test_input.tif
CHECK_RESULT $? 0 0 "创建测试TIFF文件失败"
LOG_INFO "6. 测试tiffset命令的-T参数设置图像标题"
TEST_TITLE="测试图像标题"
tiffset -T "$TEST_TITLE" test_input.tif
CHECK_RESULT $? 0 0 "使用-T参数设置标题失败"
LOG_INFO "7. 验证图像标题是否设置成功"
tiffinfo test_input.tif 2>&1 | grep -q "Image Title: $TEST_TITLE"
CHECK_RESULT $? 0 0 "图像标题设置验证失败"
LOG_INFO "8. 清理测试文件"
rm -f test_input.tif
CHECK_RESULT $? 0 0 "删除测试文件失败"
LOG_INFO "9. 根据安装标志决定是否卸载软件包"
if [ "$INSTALLED_FLAG" -eq 1 ]; then
LOG_INFO "卸载测试安装的libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
fi
LOG_INFO "10. 测试完成"
}
main "$@"

View File

@@ -1,60 +0,0 @@
#!/usr/bin/bash
# Copyright (c) 2024 ISCAS .ALL rights reserved.
# This program is licensed under Mulan PSL v2.
# You can use it according to the terms and conditions of the Mulan PSL v2.
# http://license.coscl.org.cn/MulanPSL2
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
# #############################################
# @Author : honghua
# @Contact : honghua@iscas.ac.cn
# @Date : 2026-03-04
# @License : Mulan PSL v2
# @Desc : 测试tiffset命令的-V参数用于显示版本信息
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试tiffset命令的-V参数用于显示版本信息"
LOG_INFO "步骤1检查系统中是否已安装libtiff-tools软件包"
if ! dnf list installed libtiff-tools &>/dev/null; then
LOG_INFO "libtiff-tools未安装将进行安装"
LOG_INFO "步骤2检查yum源中是否存在libtiff-tools软件包"
if ! dnf list available libtiff-tools &>/dev/null; then
LOG_ERROR "yum源中未找到libtiff-tools软件包"
exit 255
fi
LOG_INFO "步骤3安装libtiff-tools软件包"
dnf install -y libtiff-tools
CHECK_RESULT $? 0 0 "安装libtiff-tools失败"
INSTALLED=1
else
LOG_INFO "libtiff-tools已安装"
INSTALLED=0
fi
LOG_INFO "步骤4检查tiffset命令是否支持-V参数"
tiffset -V 2>&1 | grep -q "Unknown option"
if [ $? -eq 0 ]; then
LOG_ERROR "tiffset命令不支持-V参数"
exit 255
fi
LOG_INFO "步骤5执行tiffset -V命令"
tiffset -V
CHECK_RESULT $? 0 0 "tiffset -V命令执行失败"
LOG_INFO "步骤6清理环境"
if [ $INSTALLED -eq 1 ]; then
LOG_INFO "卸载libtiff-tools软件包"
dnf remove -y libtiff-tools
CHECK_RESULT $? 0 0 "卸载libtiff-tools失败"
else
LOG_INFO "保持libtiff-tools安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"

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