#!/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. global test_description := ''git cvsimport testing for correct patchset estimation'' source ./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 actual-master expect-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 actual-A expect-A ' test_done (CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <"git cvsimport testing for correct patchset estimation">)} spids: [35] ) ] spids: [35] ) (C {(.)} {(./lib-cvs.sh)}) (C {(setup_cvs_test_repository)} {(t9603)}) (C {(test_expect_failure)} {(PERL)} {(SQ <"import with criss cross times on revisions">)} { (SQ <"\n"> <"\n"> <" git cvsimport -p\"-x\" -C module-git module &&\n"> <" (cd module-git &&\n"> <" git log --pretty=format:%s > ../actual-master &&\n"> <" git log A~2..A --pretty=\"format:%s %ad\" -- > ../actual-A &&\n"> <" echo \"\" >> ../actual-master &&\n"> <"\techo \"\" >> ../actual-A\n"> <" ) &&\n"> <" echo \"Rev 4\n"> <"Rev 3\n"> <"Rev 2\n"> <"Rev 1\" > expect-master &&\n"> <" test_cmp actual-master expect-master &&\n"> <"\n"> <" echo \"Rev 5 Branch A Wed Mar 11 19:09:10 2009 +0000\n"> <"Rev 4 Branch A Wed Mar 11 19:03:52 2009 +0000\" > expect-A &&\n"> <" test_cmp actual-A expect-A\n"> ) } ) (C {(test_done)}) ] )