X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;ds=sidebyside;f=tests%2Ftest-imagex;h=9c92715b1fca95a100939f7066088a632e535bf4;hb=HEAD;hp=d36bf82f343fd15d5261b7db913d2c5f02c8bfb9;hpb=dd836fd8710e130711935003e386de6755eb84ba;p=wimlib diff --git a/tests/test-imagex b/tests/test-imagex index d36bf82f..c5e273f2 100755 --- a/tests/test-imagex +++ b/tests/test-imagex @@ -65,6 +65,32 @@ for comp_type in None LZX XPRESS; do rm -rf dir.wim tmp done +# Test wimverify and the SHA-1 code +WIMLIB_DISABLE_CPU_FEATURES='*' wimcapture dir dir.wim --compress=none +disabled='' +for cpu_feature in '' sha1 bmi2 avx sse4.2 sse4.1 ssse3; do + [ -n "$disabled" ] && disabled+=',' + disabled+="$cpu_feature" + if ! WIMLIB_DISABLE_CPU_FEATURES=$disabled wimverify dir.wim; then + error "wimverify failed (cpu_features_disabled=$disabled)" + fi +done + +# Test wimappend --create +rm -f dir.wim +if wimappend dir dir.wim; then + error "wimappend to nonexisting file unexpectedly succeeded" +fi +if ! wimappend dir dir.wim --create; then + error "wimappend --create to nonexisting file failed" +fi +if ! wimappend dir dir.wim --create; then + error "wimappend --create to existing file failed" +fi +if ! test "`wiminfo dir.wim | grep 'Image Count' | awk '{print $3}'`" = 2; then + error "Incorrect WIM image count after wimappend --create" +fi + # Capturing and modifying name, description, and bootable flag echo "Testing capture of WIM with default name and description" @@ -105,16 +131,26 @@ if ! test "`wiminfo dir.wim | grep '^Boot Index' | awk '{print $3}'`" = "0"; the fi rm -rf dir.wim tmp +name_desc_test() { + local name=$1 + local desc=$2 + if ! wimcapture dir dir.wim "$name" "$desc"; then + error "Failed to capture WIM with specified name and description" + fi + if ! test "`wiminfo dir.wim | grep Name | awk '{print $2}'`" = "$name"; then + error "WIM name not set correctly" + fi + if ! test "`wiminfo dir.wim | grep Description | awk '{print $2}'`" = "$desc"; then + error "WIM description not set correctly" + fi +} + echo "Testing capture of WIM with name and description" -if ! wimcapture dir dir.wim "myname" "mydesc"; then - error "Failed to capture WIM with specified name and description" -fi -if ! test "`wiminfo dir.wim | grep Name | awk '{print $2}'`" = "myname"; then - error "WIM name not set correctly" -fi -if ! test "`wiminfo dir.wim | grep Description | awk '{print $2}'`" = "mydesc"; then - error "WIM name not set correctly" -fi +name_desc_test "myname" "mydesc" + +echo "Testing capture of WIM with non-ASCII name and description" +name_desc_test "áéíóú" "¿?" + echo "Testing printing WIM lookup table" if ! wiminfo --lookup-table dir.wim > /dev/null; then error "Failed to print WIM lookup table"