t1400: test one mistake at a time
[gitweb.git] / t / t1400-update-ref.sh
index 15f5bfd1682b16a4df276b73c28cf65a09d45f61..6b21e459e6f4a96b0073576633522fb19c95c273 100755 (executable)
@@ -724,16 +724,23 @@ test_expect_success 'stdin -z fails update with no ref' '
        grep "fatal: update line missing <ref>" err
 '
 
+test_expect_success 'stdin -z fails update with too few args' '
+       printf $F "update $a" "$m" >stdin &&
+       test_must_fail git update-ref -z --stdin <stdin 2>err &&
+       grep "fatal: update $a missing <oldvalue>" err
+'
+
 test_expect_success 'stdin -z fails update with bad ref name' '
-       printf $F "update ~a" "$m" >stdin &&
+       printf $F "update ~a" "$m" "" >stdin &&
        test_must_fail git update-ref -z --stdin <stdin 2>err &&
        grep "fatal: invalid ref format: ~a" err
 '
 
-test_expect_success 'stdin -z treats empty new value as zeros' '
+test_expect_success 'stdin -z emits warning with empty new value' '
        git update-ref $a $m &&
        printf $F "update $a" "" "" >stdin &&
-       git update-ref -z --stdin <stdin &&
+       git update-ref -z --stdin <stdin 2>err &&
+       grep "warning: update $a: missing <newvalue>, treating as zero" err &&
        test_must_fail git rev-parse --verify -q $a
 '