annotate tests/test-summary.py @ 145:f3c430afa598

hglib: abstract out use of cStringIO.StringIO (issue4520) The cStringIO module does not exist in Python 3, but io.BytesIO does. This change prepares for the use of io.BytesIO when available by replacing all uses of cStringIO.StringIO with an object named BytesIO.
author Brett Cannon <brett@python.org>
date Fri, 13 Mar 2015 11:31:54 -0400
parents 4359cabcb0cc
children c1b966866ed7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
1 import common
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
2 import hglib
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
3 from hglib.util import b
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
4
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
5 class test_summary(common.basetest):
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
6 def test_empty(self):
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
7 d = {b('parent') : [(-1, b('000000000000'), b('tip'), None)],
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
8 b('branch') : b('default'),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
9 b('commit') : True,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
10 b('update') : 0}
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
11
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
12 self.assertEquals(self.client.summary(), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
13
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
14 def test_basic(self):
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
15 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
16 rev, node = self.client.commit(b('first'), addremove=True)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
17
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
18 d = {b('parent') : [(0, node[:12], b('tip'), b('first'))],
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
19 b('branch') : b('default'),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
20 b('commit') : True,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
21 b('update') : 0}
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
22
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
23 self.assertEquals(self.client.summary(), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
24
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
25 def test_commit_dirty(self):
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
26 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
27 rev, node = self.client.commit(b('first'), addremove=True)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
28 self.append('a', 'a')
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
29
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
30 d = {b('parent') : [(0, node[:12], b('tip'), b('first'))],
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
31 b('branch') : b('default'),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
32 b('commit') : False,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
33 b('update') : 0}
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
34
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
35 self.assertEquals(self.client.summary(), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
36
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
37 def test_update(self):
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
38 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
39 rev, node = self.client.commit(b('first'), addremove=True)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
40 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
41 self.client.commit(b('second'))
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
42 self.client.update(0)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
43
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
44 d = {b('parent') : [(0, node[:12], None, b('first'))],
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
45 b('branch') : b('default'),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
46 b('commit') : True,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
47 b('update') : 1}
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
48
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
49 self.assertEquals(self.client.summary(), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
50
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
51 def test_remote(self):
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
52 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
53 rev, node = self.client.commit(b('first'), addremove=True)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
54
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
55 self.client.clone(dest=b('other'))
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
56 other = hglib.open('other')
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
57
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
58 d = {b('parent') : [(0, node[:12], b('tip'), b('first'))],
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
59 b('branch') : b('default'),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
60 b('commit') : True,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
61 b('update') : 0,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
62 b('remote') : (0, 0, 0, 0)}
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
63
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
64 self.assertEquals(other.summary(remote=True), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
65
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
66 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
67 self.client.commit(b('second'))
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
68
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
69 d[b('remote')] = (1, 0, 0, 0)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
70 self.assertEquals(other.summary(remote=True), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
71
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
72 self.client.bookmark(b('bm'))
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
73 d[b('remote')] = (1, 1, 0, 0)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
74 self.assertEquals(other.summary(remote=True), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
75
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
76 other.bookmark(b('bmother'))
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
77 d[b('remote')] = (1, 1, 0, 1)
88
3bbf6a3266f4 test-summary: fix test due to bookmarks being separated from tags in hg >= 2.0
Idan Kamara <idankk86@gmail.com>
parents: 51
diff changeset
78 if self.client.version < (2, 0, 0):
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
79 d[b('parent')] = [(0, node[:12], b('tip bmother'), b('first'))]
88
3bbf6a3266f4 test-summary: fix test due to bookmarks being separated from tags in hg >= 2.0
Idan Kamara <idankk86@gmail.com>
parents: 51
diff changeset
80 else:
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
81 d[b('bookmarks')] = b('*bmother')
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
82 self.assertEquals(other.summary(remote=True), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
83
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
84 self.append('other/a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
85 rev, node = other.commit(b('second in other'))
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
86
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
87 d[b('remote')] = (1, 1, 1, 1)
88
3bbf6a3266f4 test-summary: fix test due to bookmarks being separated from tags in hg >= 2.0
Idan Kamara <idankk86@gmail.com>
parents: 51
diff changeset
88 if self.client.version < (2, 0, 0):
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
89 tags = b('tip bmother')
88
3bbf6a3266f4 test-summary: fix test due to bookmarks being separated from tags in hg >= 2.0
Idan Kamara <idankk86@gmail.com>
parents: 51
diff changeset
90 else:
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
91 tags = b('tip')
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
92 d[b('parent')] = [(1, node[:12], tags, b('second in other'))]
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
93
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
94 self.assertEquals(other.summary(remote=True), d)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
95
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
96 def test_two_parents(self):
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
97 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
98 rev0, node = self.client.commit(b('first'), addremove=True)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
99
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
100 self.append('a', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
101 rev1, node1 = self.client.commit(b('second'))
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
102
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
103 self.client.update(rev0)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
104 self.append('b', 'a')
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
105 rev2, node2 = self.client.commit(b('third'), addremove=True)
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
106
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
107 self.client.merge(rev1)
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
108
143
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
109 d = {b('parent') : [(2, node2[:12], b('tip'), b('third')),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
110 (1, node1[:12], None, b('second'))],
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
111 b('branch') : b('default'),
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
112 b('commit') : False,
4359cabcb0cc hglib: move string literals in the test code to util.b() (issue4520)
Brett Cannon <brett@python.org>
parents: 88
diff changeset
113 b('update') : 0}
51
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
114
c52383a550fb client: add summary command
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
115 self.assertEquals(self.client.summary(), d)