t / t9122-git-svn-author.shon commit git-svn: add test for --add-author-from and --use-log-author (27554e9)
   1#!/bin/sh
   2
   3test_description='git svn authorship'
   4. ./lib-git-svn.sh
   5
   6test_expect_success 'setup svn repository' '
   7        svn checkout "$svnrepo" work.svn &&
   8        (
   9                cd work.svn &&
  10                echo >file
  11                svn add file
  12                svn commit -m "first commit" file
  13        )
  14'
  15
  16test_expect_success 'interact with it via git-svn' '
  17        mkdir work.git &&
  18        (
  19                cd work.git &&
  20                git svn init "$svnrepo"
  21                git svn fetch &&
  22
  23                echo modification >file &&
  24                test_tick &&
  25                git commit -a -m second &&
  26
  27                test_tick &&
  28                git svn dcommit &&
  29
  30                echo "further modification" >file &&
  31                test_tick &&
  32                git commit -a -m third &&
  33
  34                test_tick &&
  35                git svn --add-author-from dcommit &&
  36
  37                echo "yet further modification" >file &&
  38                test_tick &&
  39                git commit -a -m fourth &&
  40
  41                test_tick &&
  42                git svn --add-author-from --use-log-author dcommit &&
  43
  44                git log &&
  45
  46                git show -s HEAD^^ >../actual.2 &&
  47                git show -s HEAD^  >../actual.3 &&
  48                git show -s HEAD   >../actual.4
  49
  50        ) &&
  51
  52        # Make sure that --add-author-from without --use-log-author
  53        # did not affect the authorship information
  54        myself=$(grep "^Author: " actual.2) &&
  55        unaffected=$(grep "^Author: " actual.3) &&
  56        test "z$myself" = "z$unaffected" &&
  57
  58        # Make sure lack of --add-author-from did not add cruft
  59        ! grep "^    From: A U Thor " actual.2 &&
  60
  61        # Make sure --add-author-from added cruft
  62        grep "^    From: A U Thor " actual.3 &&
  63        grep "^    From: A U Thor " actual.4 &&
  64
  65        # Make sure --add-author-from with --use-log-author affected
  66        # the authorship information
  67        grep "^Author: A U Thor " actual.4
  68'
  69
  70test_done