-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path25log.t
102 lines (93 loc) · 3.28 KB
/
25log.t
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#!/usr/bin/perl -w
use strict;
use SVK::Test;
plan tests => 20;
our $output;
my ($xd, $svk) = build_test('test');
my ($copath, $corpath) = get_copath ('log');
my ($repospath, undef, $repos) = $xd->find_repos ('//', 1);
$svk->checkout ('//', $copath);
chdir ($copath);
mkdir ('A');
overwrite_file ("A/foo", "foobar\nfnord\n");
overwrite_file ("A/bar", "foobar\n");
$svk->add ('A');
$svk->commit ('-m', 'init');
$svk->cp ('//A/foo', 'foo-cp');
$svk->cp ('//A/bar', 'bar-cp');
overwrite_file ("foo-cp", "foobar\nfnord\nnewline");
$svk->ps ('mmm', 'xxx', 'A/foo');
$svk->commit ('-m', 'cp and ps');
is_output_like ($svk, 'log', [],
qr|r2.*cp and ps.*r1.*init|s);
is_output ($svk, 'log', ['--quiet'],
[qr|-+|, qr|r2:.*|, qr|-+|, qr|r1:.*|, qr|-+|]);
$svk->pd ('--revprop', '-r' => 2 , 'svn:author');
is_output_like ($svk, 'log', ['-v'],
qr|
r2.*\QChanged paths:
M /A/foo
A /bar-cp (from /A/bar:1)
M /foo-cp (from /A/foo:1)\E.*
r1.*\Q A /A
A /A/bar
A /A/foo\E|s);
$svk->mirror ('/test/A', uri("$repospath/A"));
$svk->sync ('/test/A');
is_output_like ($svk, 'log', ['-v', '-l1', '/test/'],
qr/\Qr3 (orig r2): (no author)\E/);
is_output_like ($svk, 'log', ['-v', '-l1', '/test/A/'],
qr/\Qr3 (orig r2): (no author)\E/);
is_output ($svk, 'log', ['-q', '--verbose', '--limit', '1' ,'/test/A/'],
[qr|-+|,
qr|\Qr3 (orig r2): (no author)\E|,
'Changed paths:',
' M /A/foo',
qr|-+|]);
is_output_like ($svk, 'log', ['-v', '-r2@', '/test/A/'],
qr/\Qr3 (orig r2): (no author)\E/);
is_output ($svk, 'log', ['-v', '-r5@', '/test/A/'],
["Can't find local revision for 5 on /A."]);
is_output ($svk, 'log', [-r => 16384, -l1 =>'/test/A'],
['Revision too large, show log from 3.',
qr|-+|, qr|r3.*orig r2|, '',
qr|cp and ps|,
qr|-+|]);
is_output ($svk, 'log', [-r => 'asdf', '/test/A'],
['asdf is not a number.']);
$svk->update ('A');
$svk->rm (-m => 'bye', '//A');
is_output_like ($svk, 'log', [-l1 => 'A'],
qr|r2.*cp and ps|s);
is_output_like ($svk, 'desc', [], qr'SYNOPSIS');
is_output_like ($svk, 'desc', [2],
qr|r2.*cp and ps.*Property changes on: A/foo.*--- foo-cp\t\(revision 1\)|s);
is_output_like ($svk, 'desc', ['r2'],
qr|r2.*cp and ps.*Property changes on: A/foo.*--- foo-cp\t\(revision 1\)|s);
is_output_like ($svk, 'desc', ['r2@', '/test/A'],
qr|r3 \(orig r2\).*cp and ps.*Property changes on: A/foo|s);
$svk->mv (-m => 'mv', '//foo-cp', '//foo-mv');
$svk->rm (-m => 'rm', '//bar-cp');
$svk->cp (-m => 'cp', '//bar-cp@4', '//bar-notmv');
is_output ($svk, 'log', ['//foo-mv'],
[qr|-+|, qr|r4.*|, '', qr|mv|,
qr|-+|, qr|r2.*|, '', qr|cp and ps|s,
qr|-+|]);
is_output ($svk, 'log', ['//bar-notmv'],
[qr|-+|, qr|r6.*|, '', qr|cp|,
qr|-+|]);
is_output ($svk, 'log', ['//bar-notmv', '--cross'],
[qr|-+|, qr|r6.*|, '', qr|cp|,
qr|-+|, qr|r2.*|, '', qr|cp and ps|,
qr|-+|, qr|r1.*|, '', qr|init|,
qr|-+|]);
# If you specify a copath (or implicitly specify . ) to svk desc which
# happens to be of an older revision than the revision you specify, it
# should work anyway.
$svk->up('-r1');
is_output_like ($svk, 'desc', ['r2'],
qr|r2.*cp and ps.*Property changes on: A/foo.*--- foo-cp\t\(revision 1\)|s);
is_output($svk, 'desc', ['r7'],
[
"Depot // has no revision 7",
]);