about summary refs log tree commit diff
path: root/third_party/git/t/t9603-cvsimport-patchsets.sh
blob: 3e64b11eac5ebb7b0c01487c5f11bf39cd9855c0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/sh

# Structure of the test cvs repository
#
# Message   File:Content         Commit Time
# Rev 1     a: 1.1               2009-02-21 19:11:43 +0100
# Rev 2     a: 1.2    b: 1.1     2009-02-21 19:11:14 +0100
# Rev 3               b: 1.2     2009-02-21 19:11:43 +0100
#
# As you can see the commit of Rev 3 has the same time as
# Rev 1 this leads to a broken import because of a cvsps
# bug.

test_description='git cvsimport testing for correct patchset estimation'
. ./lib-cvs.sh

setup_cvs_test_repository t9603

test_expect_failure PERL 'import with criss cross times on revisions' '

    git cvsimport -p"-x" -C module-git module &&
    (cd module-git &&
        git log --pretty=format:%s > ../actual-master &&
        git log A~2..A --pretty="format:%s %ad" -- > ../actual-A &&
        echo "" >> ../actual-master &&
	echo "" >> ../actual-A
    ) &&
    echo "Rev 4
Rev 3
Rev 2
Rev 1" > expect-master &&
    test_cmp expect-master actual-master &&

    echo "Rev 5 Branch A Wed Mar 11 19:09:10 2009 +0000
Rev 4 Branch A Wed Mar 11 19:03:52 2009 +0000" > expect-A &&
    test_cmp expect-A actual-A
'

test_done