t / t9105-git-svn-commit-diff.shon commit t5532: use write_script (ca386ee)
   1#!/bin/sh
   2#
   3# Copyright (c) 2006 Eric Wong
   4test_description='git svn commit-diff'
   5. ./lib-git-svn.sh
   6
   7test_expect_success 'initialize repo' '
   8        mkdir import &&
   9        (
  10                cd import &&
  11                echo hello >readme &&
  12                svn_cmd import -m "initial" . "$svnrepo"
  13        ) &&
  14        echo hello > readme &&
  15        git update-index --add readme &&
  16        git commit -a -m "initial" &&
  17        echo world >> readme &&
  18        git commit -a -m "another"
  19        '
  20
  21head=$(git rev-parse --verify HEAD^0)
  22prev=$(git rev-parse --verify HEAD^1)
  23
  24# the internals of the commit-diff command are the same as the regular
  25# commit, so only a basic test of functionality is needed since we've
  26# already tested commit extensively elsewhere
  27
  28test_expect_success 'test the commit-diff command' '
  29        test -n "$prev" && test -n "$head" &&
  30        git svn commit-diff -r1 "$prev" "$head" "$svnrepo" &&
  31        svn_cmd co "$svnrepo" wc &&
  32        cmp readme wc/readme
  33        '
  34
  35test_expect_success 'commit-diff to a sub-directory (with git svn config)' '
  36        svn_cmd import -m "sub-directory" import "$svnrepo"/subdir &&
  37        git svn init --minimize-url "$svnrepo"/subdir &&
  38        git svn fetch &&
  39        git svn commit-diff -r3 "$prev" "$head" &&
  40        svn_cmd cat "$svnrepo"/subdir/readme > readme.2 &&
  41        cmp readme readme.2
  42        '
  43
  44test_done