Set initial commit timestamp to be constant.
[git-darcs-import.git] / tests / mark-conflicts.pl
blob4872822e3b2c21ca6bb0e8df46a97c432b798f01
1 #!/usr/bin/env perl
3 # Automated tests for "darcs mark-conflicts".
5 use lib 'lib/perl';
6 use Test::More 'no_plan';
7 use strict;
8 use Test::Darcs;
9 use Shell::Command;
10 use File::Temp 'tempdir';
12 my $work_dir = tempdir( CLEANUP => 1 );
13 chdir $work_dir;
15 mkpath 'temp1';
16 chdir 'temp1';
18 like( darcs('init'), qr/^$/i, 'initialized repo');
19 open(F, ">_darcs/prefs/author") || die;
20 print F "Tester";
21 close(F);
23 open(F, ">child_of_conflict") || die;
24 print F "Conflict, Base .";
25 close(F);
27 darcs("add child_of_conflict");
28 like( darcs("record -am 'Conflict Base'"), qr/finished/i);
29 like( darcs("get . ../temp2"), qr/finished/i);
31 chdir '../';
33 # Add and record differing lines to both repos
34 for my $repo (1,2) {
35 chdir "temp".$repo;
37 open(F, ">child_of_conflict") || die;
38 print F "Conflict, Part $repo.";
39 close(F);
41 like( darcs("record -A author -am 'Conflict Part $repo'"), qr/finished/i);
43 chdir '../';
46 chdir './temp1';
47 my $pull_out = darcs("pull -a ../temp2");
48 like($pull_out, qr/conflict/i);
49 like($pull_out, qr/finished/i);
52 open(F, "<child_of_conflict") || die;
53 my $line = <F>;
54 close(F);
55 like($line, qr/v v/, 'found conflict markers');
58 like( darcs("revert -a"), qr/finished/i, 'conflicts reverted');
61 open(F, "<child_of_conflict") || die;
62 my $line = <F>;
63 close(F);
64 unlike($line, qr/v v/, 'conflict markers are gone');
67 darcs("mark-conflicts");
70 open(F, "<child_of_conflict") || die;
71 my $line = <F>;
72 close(F);
73 like($line, qr/v v/, 'found conflict markers after revert and mark-conflicts');