t / t3703-add-magic-pathspec.shon commit t3903: abstract away SHA-1-specific constants (c784815)
   1#!/bin/sh
   2
   3test_description='magic pathspec tests using git-add'
   4
   5. ./test-lib.sh
   6
   7test_expect_success 'setup' '
   8        mkdir sub anothersub &&
   9        : >sub/foo &&
  10        : >anothersub/foo
  11'
  12
  13test_expect_success 'add :/' "
  14        cat >expected <<-EOF &&
  15        add 'anothersub/foo'
  16        add 'expected'
  17        add 'sub/actual'
  18        add 'sub/foo'
  19        EOF
  20        (cd sub && git add -n :/ >actual) &&
  21        test_cmp expected sub/actual
  22"
  23
  24cat >expected <<EOF
  25add 'anothersub/foo'
  26EOF
  27
  28test_expect_success 'add :/anothersub' '
  29        (cd sub && git add -n :/anothersub >actual) &&
  30        test_cmp expected sub/actual
  31'
  32
  33test_expect_success 'add :/non-existent' '
  34        (cd sub && test_must_fail git add -n :/non-existent)
  35'
  36
  37cat >expected <<EOF
  38add 'sub/foo'
  39EOF
  40
  41if test_have_prereq !MINGW && mkdir ":" 2>/dev/null
  42then
  43        test_set_prereq COLON_DIR
  44fi
  45
  46test_expect_success COLON_DIR 'a file with the same (long) magic name exists' '
  47        : >":(icase)ha" &&
  48        test_must_fail git add -n ":(icase)ha" &&
  49        git add -n "./:(icase)ha"
  50'
  51
  52test_expect_success COLON_DIR 'a file with the same (short) magic name exists' '
  53        : >":/bar" &&
  54        test_must_fail git add -n :/bar &&
  55        git add -n "./:/bar"
  56'
  57
  58test_done