update testcase for testsuite vo-amrwbenc

This commit is contained in:
2026-04-21 12:09:48 +08:00
parent c300fb933e
commit 55cf2d29cc
4 changed files with 0 additions and 245 deletions

View File

@@ -19,18 +19,6 @@
{
"name": "test_vo-amrwbenc_function_uninstall",
"desc": "验证软件包能否通过系统包管理器被完全且正确地卸载,并清理相关文件。"
},
{
"name": "test_vo-amrwbenc_function_version",
"desc": "测试查询vo-amrwbenc软件包的版本信息验证是否能正确获取并显示版本号。"
},
{
"name": "test_vo-amrwbenc_function_encode",
"desc": "测试vo-amrwbenc库的基本编码功能验证其能否将音频文件编码为AMR-WB格式。"
},
{
"name": "test_vo-amrwbenc_function_decode",
"desc": "测试vo-amrwbenc库的基本解码功能验证其能否将AMR-WB格式文件解码为原始音频格式。"
}
]
}

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-04-03
# @License : Mulan PSL v2
# @Desc : 测试vo-amrwbenc库的基本解码功能验证其能否将AMR-WB格式文件解码为原始音频格式。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试vo-amrwbenc库的基本解码功能"
LOG_INFO "步骤1检查vo-amrwbenc软件包是否在yum源中"
dnf list available vo-amrwbenc 2>/dev/null | grep -q vo-amrwbenc
if [ $? -ne 0 ]; then
LOG_ERROR "yum源中未找到vo-amrwbenc软件包"
exit 255
fi
LOG_INFO "步骤2检查是否已安装vo-amrwbenc"
if rpm -q vo-amrwbenc >/dev/null 2>&1; then
LOG_INFO "vo-amrwbenc已安装测试后保持安装状态"
INSTALLED=true
else
LOG_INFO "vo-amrwbenc未安装将作为测试步骤安装"
INSTALLED=false
fi
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤3安装vo-amrwbenc软件包"
dnf install -y vo-amrwbenc
CHECK_RESULT $? 0 0 "安装vo-amrwbenc失败"
fi
LOG_INFO "步骤4验证vo-amrwbenc命令参数支持"
vo-amrwbenc --help 2>&1 | grep -q "decode"
if [ $? -ne 0 ]; then
LOG_ERROR "vo-amrwbenc命令不支持decode参数"
exit 255
fi
LOG_INFO "步骤5准备测试用的AMR-WB格式文件"
TEST_FILE="test.amrwb"
if [ ! -f "$TEST_FILE" ]; then
LOG_INFO "未找到测试文件使用vo-amrwbenc生成一个简单的AMR-WB文件"
echo "test audio data" | vo-amrwbenc - - > "$TEST_FILE" 2>/dev/null
CHECK_RESULT $? 0 0 "生成测试AMR-WB文件失败"
fi
LOG_INFO "步骤6执行解码测试"
OUTPUT_FILE="test_decoded.pcm"
vo-amrwbenc --decode "$TEST_FILE" "$OUTPUT_FILE"
CHECK_RESULT $? 0 0 "AMR-WB文件解码失败"
LOG_INFO "步骤7验证解码输出文件"
if [ -s "$OUTPUT_FILE" ]; then
LOG_INFO "解码成功,输出文件非空"
else
LOG_ERROR "解码输出文件为空"
exit 1
fi
LOG_INFO "步骤8清理测试生成的文件"
rm -f "$TEST_FILE" "$OUTPUT_FILE"
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "步骤9卸载vo-amrwbenc软件包"
dnf remove -y vo-amrwbenc
CHECK_RESULT $? 0 0 "卸载vo-amrwbenc失败"
fi
LOG_INFO "测试完成,环境已恢复"
}
main "$@"

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-04-03
# @License : Mulan PSL v2
# @Desc : 测试vo-amrwbenc库的基本编码功能验证其能否将音频文件编码为AMR-WB格式。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
LOG_INFO "开始测试vo-amrwbenc库的基本编码功能验证其能否将音频文件编码为AMR-WB格式"
LOG_INFO "检查是否已安装vo-amrwbenc软件包"
if dnf list installed vo-amrwbenc &>/dev/null; then
LOG_INFO "vo-amrwbenc已安装测试结束后将保持安装状态"
INSTALLED=true
else
LOG_INFO "vo-amrwbenc未安装将在测试过程中安装并在测试结束后卸载"
INSTALLED=false
fi
LOG_INFO "检查yum源中是否有vo-amrwbenc软件包"
if ! dnf list available vo-amrwbenc &>/dev/null; then
LOG_ERROR "yum源中未找到vo-amrwbenc软件包"
exit 255
fi
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "安装vo-amrwbenc软件包"
dnf install -y vo-amrwbenc
CHECK_RESULT $? 0 0 "安装vo-amrwbenc软件包失败"
fi
LOG_INFO "创建一个测试音频文件用于编码"
echo "创建测试音频文件..."
cat > /tmp/test_audio.wav << "EOF"
RIFFXXXXWAVEfmt XXXXXXXXdataXXXX
EOF
CHECK_RESULT $? 0 0 "创建测试音频文件失败"
LOG_INFO "检查vo-amrwbenc命令是否支持编码参数"
vo-amrwbenc --help 2>&1 | grep -q "\-\-help"
CHECK_RESULT $? 0 0 "vo-amrwbenc命令不支持--help参数可能参数不存在或不支持"
LOG_INFO "使用vo-amrwbenc将WAV音频文件编码为AMR-WB格式"
vo-amrwbenc /tmp/test_audio.wav /tmp/test_audio.amr 2>&1
CHECK_RESULT $? 0 0 "vo-amrwbenc编码音频文件失败"
LOG_INFO "检查编码后的AMR-WB文件是否生成"
if [ -f /tmp/test_audio.amr ]; then
LOG_INFO "成功生成AMR-WB格式文件"
else
LOG_ERROR "未生成AMR-WB格式文件"
exit 1
fi
LOG_INFO "清理测试过程中生成的文件"
rm -f /tmp/test_audio.wav /tmp/test_audio.amr
CHECK_RESULT $? 0 0 "清理测试文件失败"
if [ "$INSTALLED" = "false" ]; then
LOG_INFO "卸载vo-amrwbenc软件包"
dnf remove -y vo-amrwbenc
CHECK_RESULT $? 0 0 "卸载vo-amrwbenc软件包失败"
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-04-03
# @License : Mulan PSL v2
# @Desc : 测试查询vo-amrwbenc软件包的版本信息验证是否能正确获取并显示版本号。
# ############################################
source "$OET_PATH/libs/locallibs/common_lib.sh"
function run_test() {
# 检查是否已安装vo-amrwbenc软件包
LOG_INFO "检查vo-amrwbenc软件包是否已安装"
rpm -q vo-amrwbenc > /dev/null 2>&1
if [ $? -eq 0 ]; then
LOG_INFO "vo-amrwbenc软件包已安装测试后保持安装状态"
installed_before=true
else
LOG_INFO "vo-amrwbenc软件包未安装将在测试前安装"
installed_before=false
fi
# 检查yum源中是否有vo-amrwbenc软件包
LOG_INFO "检查yum源中是否有vo-amrwbenc软件包"
dnf list available vo-amrwbenc > /dev/null 2>&1
CHECK_RESULT $? 0 255 "yum源中没有vo-amrwbenc软件包"
# 如果未安装,则安装软件包
if [ "$installed_before" = false ]; then
LOG_INFO "安装vo-amrwbenc软件包"
dnf install -y vo-amrwbenc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "安装vo-amrwbenc软件包失败"
fi
# 测试查询vo-amrwbenc软件包的版本信息
LOG_INFO "测试查询vo-amrwbenc软件包的版本信息"
vo-amrwbenc --version > /dev/null 2>&1
CHECK_RESULT $? 0 255 "vo-amrwbenc命令不支持--version参数"
# 获取版本号并验证
LOG_INFO "获取vo-amrwbenc版本号并验证"
version_output=$(vo-amrwbenc --version 2>&1)
if echo "$version_output" | grep -q "[0-9]\+\.[0-9]\+"; then
LOG_INFO "成功获取版本号: $(echo $version_output | head -1)"
CHECK_RESULT $? 0 0 "版本号格式不正确"
else
LOG_ERROR "未能正确获取版本号"
CHECK_RESULT $? 1 0 "版本号获取失败"
fi
# 环境恢复
LOG_INFO "恢复测试环境"
if [ "$installed_before" = false ]; then
LOG_INFO "卸载测试安装的vo-amrwbenc软件包"
dnf remove -y vo-amrwbenc > /dev/null 2>&1
CHECK_RESULT $? 0 0 "卸载vo-amrwbenc软件包失败"
else
LOG_INFO "保持vo-amrwbenc软件包安装状态"
fi
LOG_INFO "测试完成"
}
main "$@"