t / t7604-merge-custom-message.shon commit Merge branch 'nd/pack-objects-parseopt' (84f3d64)
   1#!/bin/sh
   2
   3test_description='git merge
   4
   5Testing merge when using a custom message for the merge commit.'
   6
   7. ./test-lib.sh
   8
   9create_merge_msgs() {
  10        echo >exp.subject "custom message"
  11
  12        cp exp.subject exp.log &&
  13        echo >>exp.log "" &&
  14        echo >>exp.log "* tag 'c2':" &&
  15        echo >>exp.log "  c2"
  16}
  17
  18test_expect_success 'setup' '
  19        echo c0 > c0.c &&
  20        git add c0.c &&
  21        git commit -m c0 &&
  22        git tag c0 &&
  23        echo c1 > c1.c &&
  24        git add c1.c &&
  25        git commit -m c1 &&
  26        git tag c1 &&
  27        git reset --hard c0 &&
  28        echo c2 > c2.c &&
  29        git add c2.c &&
  30        git commit -m c2 &&
  31        git tag c2 &&
  32        create_merge_msgs
  33'
  34
  35
  36test_expect_success 'merge c2 with a custom message' '
  37        git reset --hard c1 &&
  38        git merge -m "$(cat exp.subject)" c2 &&
  39        git cat-file commit HEAD | sed -e "1,/^$/d" >actual &&
  40        test_cmp exp.subject actual
  41'
  42
  43test_expect_success 'merge --log appends to custom message' '
  44        git reset --hard c1 &&
  45        git merge --log -m "$(cat exp.subject)" c2 &&
  46        git cat-file commit HEAD | sed -e "1,/^$/d" >actual &&
  47        test_cmp exp.log actual
  48'
  49
  50test_done