#!/bin/bash # Functional test: binutils - objcopy # Beakerlib-based test with lifecycle management # Shared suite setup/cleanup via ../lib.sh (install once, uninstall once) . /usr/share/beakerlib/beakerlib.sh || exit 1 . "$(dirname "$0")/../lib.sh" rlJournalStart rlPhaseStartSetup "环境准备" binutilsSetup TmpDir=$(mktemp -d) rlRun "cd $TmpDir" 0 "进入临时测试目录" rlPhaseEnd rlPhaseStartTest "objcopy" rlRun "TmpDir=$(mktemp -d)" 0 "错误处理ʱĿ¼" rlRun "cd $TmpDir" 0 "错误处理�Ŀ¼" rlRun "cp /usr/bin/ls ." 0 "���Ʋ����ļ�" rlRun "objcopy --help 2>&1 | head -10" 0 "objcopy ����" rlRun "strip --help 2>&1 | head -10" 0 "strip ����" rlRun "strip ls 2>&1 | grep -qiE \"error|Error|not found|No such|无法\" || echo expected-error" 1 "strip �ļ�" rlPhaseEnd rlPhaseStartCleanup "清理测试环境" rlRun "cd /" 0 "离开测试目录" if [ -n "$TmpDir" ] && [ -d "$TmpDir" ]; then rlRun "rm -rf $TmpDir" 0 "清理临时测试目录" fi # binutils 软件包由 lib.sh 的引用计数机制自动管理卸载 rlPhaseEnd rlJournalPrintText rlJournalEnd