Status: | Merged |
---|---|
Merged at revision: | 6996 |
Proposed branch: | lp:~jelmer/brz/python3-e |
Merge into: | lp:brz |
Prerequisite: | lp:~jelmer/brz/python3-d |
Diff against target: |
4031 lines (+893/-566) (has conflicts) 70 files modified
breezy/branch.py (+1/-1) breezy/bundle/serializer/v08.py (+2/-1) breezy/bzr/branch.py (+1/-1) breezy/bzr/bzrdir.py (+1/-1) breezy/bzr/smart/request.py (+2/-1) breezy/config.py (+2/-2) breezy/conflicts.py (+3/-0) breezy/diff.py (+1/-1) breezy/email_message.py (+2/-2) breezy/gpg.py (+2/-2) breezy/log.py (+1/-1) breezy/merge.py (+2/-1) breezy/mergetools.py (+3/-1) breezy/osutils.py (+9/-5) breezy/plugins/git/branch.py (+3/-2) breezy/plugins/git/dir.py (+1/-1) breezy/plugins/git/fetch.py (+2/-1) breezy/plugins/git/mapping.py (+3/-2) breezy/plugins/git/remote.py (+2/-1) breezy/plugins/git/tests/test_memorytree.py (+30/-35) breezy/plugins/git/tree.py (+3/-2) breezy/revisionspec.py (+1/-1) breezy/shelf.py (+1/-1) breezy/status.py (+2/-1) breezy/tag.py (+2/-1) breezy/testament.py (+10/-4) breezy/tests/blackbox/test_reconcile.py (+2/-2) breezy/tests/per_branch/test_branch.py (+7/-7) breezy/tests/per_branch/test_check.py (+1/-1) breezy/tests/per_branch/test_commit.py (+4/-4) breezy/tests/per_branch/test_iter_merge_sorted_revisions.py (+18/-18) breezy/tests/per_branch/test_revision_id_to_dotted_revno.py (+2/-2) breezy/tests/per_foreign_vcs/test_branch.py (+1/-1) breezy/tests/per_interbranch/test_push.py (+2/-2) breezy/tests/per_interrepository/test_fetch.py (+10/-6) breezy/tests/per_intertree/test_compare.py (+8/-8) breezy/tests/per_pack_repository.py (+3/-3) breezy/tests/per_repository/test_commit_builder.py (+1/-1) breezy/tests/per_repository/test_repository.py (+2/-1) breezy/tests/per_repository_reference/test_fetch.py (+19/-19) breezy/tests/per_repository_reference/test_graph.py (+8/-8) breezy/tests/per_repository_reference/test_unlock.py (+8/-8) breezy/tests/per_repository_vf/test_check_reconcile.py (+219/-227) breezy/tests/per_repository_vf/test_fileid_involved.py (+11/-11) breezy/tests/per_repository_vf/test_repository.py (+6/-9) breezy/tests/per_transport.py (+47/-47) breezy/tests/per_tree/test_test_trees.py (+3/-2) breezy/tests/per_workingtree/test_put_file.py (+5/-5) breezy/tests/test_cache_utf8.py (+2/-1) breezy/tests/test_config.py (+3/-2) breezy/tests/test_conflicts.py (+9/-8) breezy/tests/test_dirstate.py (+2/-2) breezy/tests/test_fetch.py (+5/-5) breezy/tests/test_inv.py (+10/-9) breezy/tests/test_mail_client.py (+9/-7) breezy/tests/test_memorytree.py (+14/-13) breezy/tests/test_osutils.py (+10/-9) breezy/tests/test_read_bundle.py (+3/-2) breezy/tests/test_repository.py (+5/-4) breezy/tests/test_transform.py (+2/-1) breezy/tests/test_urlutils.py (+5/-4) breezy/tests/test_workingtree_4.py (+22/-22) breezy/transform.py (+6/-5) breezy/transport/gio_transport.py (+2/-1) breezy/tree.py (+3/-2) breezy/urlutils.py (+1/-1) breezy/utextwrap.py (+3/-2) breezy/version.py (+2/-1) breezy/win32utils.py (+1/-1) python3.passing (+295/-0) Text conflict in breezy/tests/per_interrepository/test_fetch.py |
To merge this branch: | bzr merge lp:~jelmer/brz/python3-e |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Martin Packman | Approve | ||
Review via email:
|
Commit message
Add more bees.
Description of the change
Fix more python3 tests.
% wc -l python3.passing
13351 python3.passing
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'breezy/branch.py' | |||
2 | --- breezy/branch.py 2018-06-21 08:27:34 +0000 | |||
3 | +++ breezy/branch.py 2018-06-21 23:03:57 +0000 | |||
4 | @@ -2124,7 +2124,7 @@ | |||
5 | 2124 | try: | 2124 | try: |
6 | 2125 | parent = self.source.get_parent() | 2125 | parent = self.source.get_parent() |
7 | 2126 | except errors.InaccessibleParent as e: | 2126 | except errors.InaccessibleParent as e: |
9 | 2127 | mutter('parent was not accessible to copy: %s', e) | 2127 | mutter('parent was not accessible to copy: %s', str(e)) |
10 | 2128 | else: | 2128 | else: |
11 | 2129 | if parent: | 2129 | if parent: |
12 | 2130 | self.target.set_parent(parent) | 2130 | self.target.set_parent(parent) |
13 | 2131 | 2131 | ||
14 | === modified file 'breezy/bundle/serializer/v08.py' | |||
15 | --- breezy/bundle/serializer/v08.py 2018-06-15 13:10:28 +0000 | |||
16 | +++ breezy/bundle/serializer/v08.py 2018-06-21 23:03:57 +0000 | |||
17 | @@ -30,6 +30,7 @@ | |||
18 | 30 | from breezy.bundle.bundle_data import (RevisionInfo, BundleInfo) | 30 | from breezy.bundle.bundle_data import (RevisionInfo, BundleInfo) |
19 | 31 | from breezy.diff import internal_diff | 31 | from breezy.diff import internal_diff |
20 | 32 | from breezy.revision import NULL_REVISION | 32 | from breezy.revision import NULL_REVISION |
21 | 33 | from breezy.sixish import text_type | ||
22 | 33 | from breezy.testament import StrictTestament | 34 | from breezy.testament import StrictTestament |
23 | 34 | from breezy.timestamp import ( | 35 | from breezy.timestamp import ( |
24 | 35 | format_highres_date, | 36 | format_highres_date, |
25 | @@ -152,7 +153,7 @@ | |||
26 | 152 | f.write(b': ') | 153 | f.write(b': ') |
27 | 153 | f.write(value) | 154 | f.write(value) |
28 | 154 | f.write(b'\n') | 155 | f.write(b'\n') |
30 | 155 | elif isinstance(value, unicode): | 156 | elif isinstance(value, text_type): |
31 | 156 | f.write(b': ') | 157 | f.write(b': ') |
32 | 157 | f.write(value.encode('utf-8')) | 158 | f.write(value.encode('utf-8')) |
33 | 158 | f.write(b'\n') | 159 | f.write(b'\n') |
34 | 159 | 160 | ||
35 | === modified file 'breezy/bzr/branch.py' | |||
36 | --- breezy/bzr/branch.py 2018-06-21 19:00:42 +0000 | |||
37 | +++ breezy/bzr/branch.py 2018-06-21 23:03:57 +0000 | |||
38 | @@ -263,7 +263,7 @@ | |||
39 | 263 | _locs = ['parent', 'pull', 'x-pull'] | 263 | _locs = ['parent', 'pull', 'x-pull'] |
40 | 264 | for l in _locs: | 264 | for l in _locs: |
41 | 265 | try: | 265 | try: |
43 | 266 | return self._transport.get_bytes(l).strip(b'\n') | 266 | return self._transport.get_bytes(l).strip(b'\n').decode('utf-8') |
44 | 267 | except errors.NoSuchFile: | 267 | except errors.NoSuchFile: |
45 | 268 | pass | 268 | pass |
46 | 269 | return None | 269 | return None |
47 | 270 | 270 | ||
48 | === modified file 'breezy/bzr/bzrdir.py' | |||
49 | --- breezy/bzr/bzrdir.py 2018-05-07 14:35:05 +0000 | |||
50 | +++ breezy/bzr/bzrdir.py 2018-06-21 23:03:57 +0000 | |||
51 | @@ -833,7 +833,7 @@ | |||
52 | 833 | """ | 833 | """ |
53 | 834 | if name == "": | 834 | if name == "": |
54 | 835 | return 'branch' | 835 | return 'branch' |
56 | 836 | return urlutils.join('branches', name.encode("utf-8")) | 836 | return urlutils.join('branches', urlutils.escape(name)) |
57 | 837 | 837 | ||
58 | 838 | def _read_branch_list(self): | 838 | def _read_branch_list(self): |
59 | 839 | """Read the branch list. | 839 | """Read the branch list. |
60 | 840 | 840 | ||
61 | === modified file 'breezy/bzr/smart/request.py' | |||
62 | --- breezy/bzr/smart/request.py 2018-06-21 22:26:54 +0000 | |||
63 | +++ breezy/bzr/smart/request.py 2018-06-21 23:03:57 +0000 | |||
64 | @@ -45,6 +45,7 @@ | |||
65 | 45 | trace, | 45 | trace, |
66 | 46 | urlutils, | 46 | urlutils, |
67 | 47 | ) | 47 | ) |
68 | 48 | from ...sixish import text_type | ||
69 | 48 | from ...lazy_import import lazy_import | 49 | from ...lazy_import import lazy_import |
70 | 49 | lazy_import(globals(), """ | 50 | lazy_import(globals(), """ |
71 | 50 | from breezy.bzr import bzrdir | 51 | from breezy.bzr import bzrdir |
72 | @@ -445,7 +446,7 @@ | |||
73 | 445 | # If it is a DecodeError, than most likely we are starting | 446 | # If it is a DecodeError, than most likely we are starting |
74 | 446 | # with a plain string | 447 | # with a plain string |
75 | 447 | str_or_unicode = err.object | 448 | str_or_unicode = err.object |
77 | 448 | if isinstance(str_or_unicode, unicode): | 449 | if isinstance(str_or_unicode, text_type): |
78 | 449 | # XXX: UTF-8 might have \x01 (our protocol v1 and v2 seperator | 450 | # XXX: UTF-8 might have \x01 (our protocol v1 and v2 seperator |
79 | 450 | # byte) in it, so this encoding could cause broken responses. | 451 | # byte) in it, so this encoding could cause broken responses. |
80 | 451 | # Newer clients use protocol v3, so will be fine. | 452 | # Newer clients use protocol v3, so will be fine. |
81 | 452 | 453 | ||
82 | === modified file 'breezy/config.py' | |||
83 | --- breezy/config.py 2018-03-10 13:52:14 +0000 | |||
84 | +++ breezy/config.py 2018-06-21 23:03:57 +0000 | |||
85 | @@ -119,8 +119,8 @@ | |||
86 | 119 | binary_type, | 119 | binary_type, |
87 | 120 | BytesIO, | 120 | BytesIO, |
88 | 121 | PY3, | 121 | PY3, |
89 | 122 | string_types, | ||
90 | 122 | text_type, | 123 | text_type, |
91 | 123 | string_types, | ||
92 | 124 | ) | 124 | ) |
93 | 125 | 125 | ||
94 | 126 | 126 | ||
95 | @@ -2558,7 +2558,7 @@ | |||
96 | 2558 | can take quoting into account. | 2558 | can take quoting into account. |
97 | 2559 | """ | 2559 | """ |
98 | 2560 | super(RegistryOption, self).__init__( | 2560 | super(RegistryOption, self).__init__( |
100 | 2561 | name, default=lambda: unicode(registry.default_key), | 2561 | name, default=lambda: registry.default_key.decode('utf-8'), |
101 | 2562 | default_from_env=default_from_env, | 2562 | default_from_env=default_from_env, |
102 | 2563 | from_unicode=self.from_unicode, help=help, | 2563 | from_unicode=self.from_unicode, help=help, |
103 | 2564 | invalid=invalid, unquote=False) | 2564 | invalid=invalid, unquote=False) |
104 | 2565 | 2565 | ||
105 | === modified file 'breezy/conflicts.py' | |||
106 | --- breezy/conflicts.py 2018-05-27 18:00:21 +0000 | |||
107 | +++ breezy/conflicts.py 2018-06-21 23:03:57 +0000 | |||
108 | @@ -400,6 +400,9 @@ | |||
109 | 400 | return not self.__eq__(other) | 400 | return not self.__eq__(other) |
110 | 401 | 401 | ||
111 | 402 | def __unicode__(self): | 402 | def __unicode__(self): |
112 | 403 | return self.describe() | ||
113 | 404 | |||
114 | 405 | def describe(self): | ||
115 | 403 | return self.format % self.__dict__ | 406 | return self.format % self.__dict__ |
116 | 404 | 407 | ||
117 | 405 | def __repr__(self): | 408 | def __repr__(self): |
118 | 406 | 409 | ||
119 | === modified file 'breezy/diff.py' | |||
120 | --- breezy/diff.py 2018-02-18 19:18:40 +0000 | |||
121 | +++ breezy/diff.py 2018-06-21 23:03:57 +0000 | |||
122 | @@ -738,7 +738,7 @@ | |||
123 | 738 | if sys.platform == 'win32': # Popen doesn't accept unicode on win32 | 738 | if sys.platform == 'win32': # Popen doesn't accept unicode on win32 |
124 | 739 | command_encoded = [] | 739 | command_encoded = [] |
125 | 740 | for c in command: | 740 | for c in command: |
127 | 741 | if isinstance(c, unicode): | 741 | if isinstance(c, text_type): |
128 | 742 | command_encoded.append(c.encode('mbcs')) | 742 | command_encoded.append(c.encode('mbcs')) |
129 | 743 | else: | 743 | else: |
130 | 744 | command_encoded.append(c) | 744 | command_encoded.append(c) |
131 | 745 | 745 | ||
132 | === modified file 'breezy/email_message.py' | |||
133 | --- breezy/email_message.py 2017-10-26 11:10:38 +0000 | |||
134 | +++ breezy/email_message.py 2018-06-21 23:03:57 +0000 | |||
135 | @@ -69,7 +69,7 @@ | |||
136 | 69 | self._body = body | 69 | self._body = body |
137 | 70 | self._parts = [] | 70 | self._parts = [] |
138 | 71 | 71 | ||
140 | 72 | if isinstance(to_address, (str, text_type)): | 72 | if isinstance(to_address, (bytes, text_type)): |
141 | 73 | to_address = [ to_address ] | 73 | to_address = [ to_address ] |
142 | 74 | 74 | ||
143 | 75 | to_addresses = [] | 75 | to_addresses = [] |
144 | @@ -201,7 +201,7 @@ | |||
145 | 201 | # avoid base64 when it's not necessary in order to be most compatible | 201 | # avoid base64 when it's not necessary in order to be most compatible |
146 | 202 | # with the capabilities of the receiving side, we check with encode() | 202 | # with the capabilities of the receiving side, we check with encode() |
147 | 203 | # and decode() whether the body is actually ascii-only. | 203 | # and decode() whether the body is actually ascii-only. |
149 | 204 | if isinstance(string_, unicode): | 204 | if isinstance(string_, text_type): |
150 | 205 | try: | 205 | try: |
151 | 206 | return (string_.encode('ascii'), 'ascii') | 206 | return (string_.encode('ascii'), 'ascii') |
152 | 207 | except UnicodeEncodeError: | 207 | except UnicodeEncodeError: |
153 | 208 | 208 | ||
154 | === modified file 'breezy/gpg.py' | |||
155 | --- breezy/gpg.py 2018-06-15 13:10:28 +0000 | |||
156 | +++ breezy/gpg.py 2018-06-21 23:03:57 +0000 | |||
157 | @@ -42,7 +42,7 @@ | |||
158 | 42 | errors, | 42 | errors, |
159 | 43 | ) | 43 | ) |
160 | 44 | from .sixish import ( | 44 | from .sixish import ( |
162 | 45 | BytesIO, | 45 | text_type, |
163 | 46 | ) | 46 | ) |
164 | 47 | 47 | ||
165 | 48 | #verification results | 48 | #verification results |
166 | @@ -232,7 +232,7 @@ | |||
167 | 232 | 232 | ||
168 | 233 | def sign(self, content, mode): | 233 | def sign(self, content, mode): |
169 | 234 | import gpg | 234 | import gpg |
171 | 235 | if isinstance(content, unicode): | 235 | if isinstance(content, text_type): |
172 | 236 | raise errors.BzrBadParameterUnicode('content') | 236 | raise errors.BzrBadParameterUnicode('content') |
173 | 237 | 237 | ||
174 | 238 | plain_text = gpg.Data(content) | 238 | plain_text = gpg.Data(content) |
175 | 239 | 239 | ||
176 | === modified file 'breezy/log.py' | |||
177 | --- breezy/log.py 2018-05-21 00:30:32 +0000 | |||
178 | +++ breezy/log.py 2018-06-21 23:03:57 +0000 | |||
179 | @@ -1523,7 +1523,7 @@ | |||
180 | 1523 | rev.mapping.vcs.show_foreign_revid(rev.foreign_revid)) | 1523 | rev.mapping.vcs.show_foreign_revid(rev.foreign_revid)) |
181 | 1524 | 1524 | ||
182 | 1525 | # Imported foreign revision revision ids always contain : | 1525 | # Imported foreign revision revision ids always contain : |
184 | 1526 | if not ":" in rev.revision_id: | 1526 | if not b":" in rev.revision_id: |
185 | 1527 | return [] | 1527 | return [] |
186 | 1528 | 1528 | ||
187 | 1529 | # Revision was once imported from a foreign repository | 1529 | # Revision was once imported from a foreign repository |
188 | 1530 | 1530 | ||
189 | === modified file 'breezy/merge.py' | |||
190 | --- breezy/merge.py 2018-06-04 11:35:48 +0000 | |||
191 | +++ breezy/merge.py 2018-06-21 23:03:57 +0000 | |||
192 | @@ -51,6 +51,7 @@ | |||
193 | 51 | registry, | 51 | registry, |
194 | 52 | ) | 52 | ) |
195 | 53 | from .sixish import ( | 53 | from .sixish import ( |
196 | 54 | text_type, | ||
197 | 54 | viewitems, | 55 | viewitems, |
198 | 55 | ) | 56 | ) |
199 | 56 | # TODO: Report back as changes are merged in | 57 | # TODO: Report back as changes are merged in |
200 | @@ -841,7 +842,7 @@ | |||
201 | 841 | self.tt.iter_changes(), self.change_reporter) | 842 | self.tt.iter_changes(), self.change_reporter) |
202 | 842 | self.cook_conflicts(fs_conflicts) | 843 | self.cook_conflicts(fs_conflicts) |
203 | 843 | for conflict in self.cooked_conflicts: | 844 | for conflict in self.cooked_conflicts: |
205 | 844 | trace.warning(unicode(conflict)) | 845 | trace.warning('%s', conflict.describe()) |
206 | 845 | 846 | ||
207 | 846 | def _entries3(self): | 847 | def _entries3(self): |
208 | 847 | """Gather data about files modified between three trees. | 848 | """Gather data about files modified between three trees. |
209 | 848 | 849 | ||
210 | === modified file 'breezy/mergetools.py' | |||
211 | --- breezy/mergetools.py 2017-05-22 00:56:52 +0000 | |||
212 | +++ breezy/mergetools.py 2018-06-21 23:03:57 +0000 | |||
213 | @@ -33,6 +33,8 @@ | |||
214 | 33 | ) | 33 | ) |
215 | 34 | """) | 34 | """) |
216 | 35 | 35 | ||
217 | 36 | from .sixish import text_type | ||
218 | 37 | |||
219 | 36 | 38 | ||
220 | 37 | known_merge_tools = { | 39 | known_merge_tools = { |
221 | 38 | 'bcompare': 'bcompare {this} {other} {base} {result}', | 40 | 'bcompare': 'bcompare {this} {other} {base} {result}', |
222 | @@ -52,7 +54,7 @@ | |||
223 | 52 | if exe is None: | 54 | if exe is None: |
224 | 53 | return False | 55 | return False |
225 | 54 | base, ext = os.path.splitext(exe) | 56 | base, ext = os.path.splitext(exe) |
227 | 55 | path_ext = [unicode(s.lower()) | 57 | path_ext = [s.lower() |
228 | 56 | for s in os.getenv('PATHEXT', '').split(os.pathsep)] | 58 | for s in os.getenv('PATHEXT', '').split(os.pathsep)] |
229 | 57 | return os.path.exists(exe) and ext in path_ext | 59 | return os.path.exists(exe) and ext in path_ext |
230 | 58 | else: | 60 | else: |
231 | 59 | 61 | ||
232 | === modified file 'breezy/osutils.py' | |||
233 | --- breezy/osutils.py 2018-05-13 02:18:13 +0000 | |||
234 | +++ breezy/osutils.py 2018-06-21 23:03:57 +0000 | |||
235 | @@ -384,12 +384,12 @@ | |||
236 | 384 | 384 | ||
237 | 385 | def _win32_abspath(path): | 385 | def _win32_abspath(path): |
238 | 386 | # Real ntpath.abspath doesn't have a problem with a unicode cwd | 386 | # Real ntpath.abspath doesn't have a problem with a unicode cwd |
240 | 387 | return _win32_fixdrive(ntpath.abspath(unicode(path)).replace('\\', '/')) | 387 | return _win32_fixdrive(ntpath.abspath(path).replace('\\', '/')) |
241 | 388 | 388 | ||
242 | 389 | 389 | ||
243 | 390 | def _win32_realpath(path): | 390 | def _win32_realpath(path): |
244 | 391 | # Real ntpath.realpath doesn't have a problem with a unicode cwd | 391 | # Real ntpath.realpath doesn't have a problem with a unicode cwd |
246 | 392 | return _win32_fixdrive(ntpath.realpath(unicode(path)).replace('\\', '/')) | 392 | return _win32_fixdrive(ntpath.realpath(path).replace('\\', '/')) |
247 | 393 | 393 | ||
248 | 394 | 394 | ||
249 | 395 | def _win32_pathjoin(*args): | 395 | def _win32_pathjoin(*args): |
250 | @@ -397,7 +397,7 @@ | |||
251 | 397 | 397 | ||
252 | 398 | 398 | ||
253 | 399 | def _win32_normpath(path): | 399 | def _win32_normpath(path): |
255 | 400 | return _win32_fixdrive(ntpath.normpath(unicode(path)).replace('\\', '/')) | 400 | return _win32_fixdrive(ntpath.normpath(path).replace('\\', '/')) |
256 | 401 | 401 | ||
257 | 402 | 402 | ||
258 | 403 | def _win32_getcwd(): | 403 | def _win32_getcwd(): |
259 | @@ -1454,13 +1454,17 @@ | |||
260 | 1454 | can be accessed by that path. | 1454 | can be accessed by that path. |
261 | 1455 | """ | 1455 | """ |
262 | 1456 | 1456 | ||
264 | 1457 | return unicodedata.normalize('NFC', text_type(path)), True | 1457 | if isinstance(path, bytes): |
265 | 1458 | path = path.decode(sys.getfilesystemencoding()) | ||
266 | 1459 | return unicodedata.normalize('NFC', path), True | ||
267 | 1458 | 1460 | ||
268 | 1459 | 1461 | ||
269 | 1460 | def _inaccessible_normalized_filename(path): | 1462 | def _inaccessible_normalized_filename(path): |
270 | 1461 | __doc__ = _accessible_normalized_filename.__doc__ | 1463 | __doc__ = _accessible_normalized_filename.__doc__ |
271 | 1462 | 1464 | ||
273 | 1463 | normalized = unicodedata.normalize('NFC', text_type(path)) | 1465 | if isinstance(path, bytes): |
274 | 1466 | path = path.decode(sys.getfilesystemencoding()) | ||
275 | 1467 | normalized = unicodedata.normalize('NFC', path) | ||
276 | 1464 | return normalized, normalized == path | 1468 | return normalized, normalized == path |
277 | 1465 | 1469 | ||
278 | 1466 | 1470 | ||
279 | 1467 | 1471 | ||
280 | === modified file 'breezy/plugins/git/branch.py' | |||
281 | --- breezy/plugins/git/branch.py 2018-05-15 19:46:32 +0000 | |||
282 | +++ breezy/plugins/git/branch.py 2018-06-21 23:03:57 +0000 | |||
283 | @@ -44,6 +44,7 @@ | |||
284 | 44 | from ...revision import ( | 44 | from ...revision import ( |
285 | 45 | NULL_REVISION, | 45 | NULL_REVISION, |
286 | 46 | ) | 46 | ) |
287 | 47 | from ...sixish import text_type | ||
288 | 47 | from ...trace import ( | 48 | from ...trace import ( |
289 | 48 | is_quiet, | 49 | is_quiet, |
290 | 49 | mutter, | 50 | mutter, |
291 | @@ -263,7 +264,7 @@ | |||
292 | 263 | class GitBranchFormat(branch.BranchFormat): | 264 | class GitBranchFormat(branch.BranchFormat): |
293 | 264 | 265 | ||
294 | 265 | def network_name(self): | 266 | def network_name(self): |
296 | 266 | return "git" | 267 | return b"git" |
297 | 267 | 268 | ||
298 | 268 | def supports_tags(self): | 269 | def supports_tags(self): |
299 | 269 | return True | 270 | return True |
300 | @@ -695,7 +696,7 @@ | |||
301 | 695 | peeled = refs.get_peeled(ref_name) | 696 | peeled = refs.get_peeled(ref_name) |
302 | 696 | if peeled is None: | 697 | if peeled is None: |
303 | 697 | peeled = unpeeled | 698 | peeled = unpeeled |
305 | 698 | if type(tag_name) is not unicode: | 699 | if not isinstance(tag_name, text_type): |
306 | 699 | raise TypeError(tag_name) | 700 | raise TypeError(tag_name) |
307 | 700 | yield (ref_name, tag_name, peeled, unpeeled) | 701 | yield (ref_name, tag_name, peeled, unpeeled) |
308 | 701 | 702 | ||
309 | 702 | 703 | ||
310 | === modified file 'breezy/plugins/git/dir.py' | |||
311 | --- breezy/plugins/git/dir.py 2018-05-13 22:54:28 +0000 | |||
312 | +++ breezy/plugins/git/dir.py 2018-06-21 23:03:57 +0000 | |||
313 | @@ -689,5 +689,5 @@ | |||
314 | 689 | except bzr_errors.NoSuchFile: | 689 | except bzr_errors.NoSuchFile: |
315 | 690 | return self | 690 | return self |
316 | 691 | else: | 691 | else: |
318 | 692 | commondir = commondir.rstrip('/.git/') | 692 | commondir = commondir.rstrip(b'/.git/') |
319 | 693 | return ControlDir.open_from_transport(get_transport_from_path(commondir)) | 693 | return ControlDir.open_from_transport(get_transport_from_path(commondir)) |
320 | 694 | 694 | ||
321 | === modified file 'breezy/plugins/git/fetch.py' | |||
322 | --- breezy/plugins/git/fetch.py 2018-06-17 13:07:22 +0000 | |||
323 | +++ breezy/plugins/git/fetch.py 2018-06-21 23:03:57 +0000 | |||
324 | @@ -55,6 +55,7 @@ | |||
325 | 55 | from ...revision import ( | 55 | from ...revision import ( |
326 | 56 | NULL_REVISION, | 56 | NULL_REVISION, |
327 | 57 | ) | 57 | ) |
328 | 58 | from ...sixish import text_type | ||
329 | 58 | from ...bzr.inventorytree import InventoryRevisionTree | 59 | from ...bzr.inventorytree import InventoryRevisionTree |
330 | 59 | from ...testament import ( | 60 | from ...testament import ( |
331 | 60 | StrictTestament3, | 61 | StrictTestament3, |
332 | @@ -223,7 +224,7 @@ | |||
333 | 223 | :param lookup_object: Lookup a git object by its SHA1 | 224 | :param lookup_object: Lookup a git object by its SHA1 |
334 | 224 | :return: Inventory delta, as list | 225 | :return: Inventory delta, as list |
335 | 225 | """ | 226 | """ |
337 | 226 | if type(path) is not unicode: | 227 | if not isinstance(path, text_type): |
338 | 227 | raise TypeError(path) | 228 | raise TypeError(path) |
339 | 228 | ret = [] | 229 | ret = [] |
340 | 229 | for name, mode, hexsha in base_tree.iteritems(): | 230 | for name, mode, hexsha in base_tree.iteritems(): |
341 | 230 | 231 | ||
342 | === modified file 'breezy/plugins/git/mapping.py' | |||
343 | --- breezy/plugins/git/mapping.py 2018-05-15 01:20:00 +0000 | |||
344 | +++ breezy/plugins/git/mapping.py 2018-06-21 23:03:57 +0000 | |||
345 | @@ -40,6 +40,7 @@ | |||
346 | 40 | from ...revision import ( | 40 | from ...revision import ( |
347 | 41 | NULL_REVISION, | 41 | NULL_REVISION, |
348 | 42 | ) | 42 | ) |
349 | 43 | from ...sixish import text_type | ||
350 | 43 | from .errors import ( | 44 | from .errors import ( |
351 | 44 | NoPushSupport, | 45 | NoPushSupport, |
352 | 45 | UnknownCommitExtra, | 46 | UnknownCommitExtra, |
353 | @@ -159,7 +160,7 @@ | |||
354 | 159 | # We must just hope they are valid UTF-8.. | 160 | # We must just hope they are valid UTF-8.. |
355 | 160 | if path == "": | 161 | if path == "": |
356 | 161 | return ROOT_ID | 162 | return ROOT_ID |
358 | 162 | if type(path) is unicode: | 163 | if isinstance(path, text_type): |
359 | 163 | path = path.encode("utf-8") | 164 | path = path.encode("utf-8") |
360 | 164 | return FILE_ID_PREFIX + escape_file_id(path) | 165 | return FILE_ID_PREFIX + escape_file_id(path) |
361 | 165 | 166 | ||
362 | @@ -553,7 +554,7 @@ | |||
363 | 553 | def symlink_to_blob(symlink_target): | 554 | def symlink_to_blob(symlink_target): |
364 | 554 | from dulwich.objects import Blob | 555 | from dulwich.objects import Blob |
365 | 555 | blob = Blob() | 556 | blob = Blob() |
367 | 556 | if type(symlink_target) == unicode: | 557 | if isinstance(symlink_target, text_type): |
368 | 557 | symlink_target = symlink_target.encode('utf-8') | 558 | symlink_target = symlink_target.encode('utf-8') |
369 | 558 | blob.data = symlink_target | 559 | blob.data = symlink_target |
370 | 559 | return blob | 560 | return blob |
371 | 560 | 561 | ||
372 | === modified file 'breezy/plugins/git/remote.py' | |||
373 | --- breezy/plugins/git/remote.py 2018-05-20 16:08:36 +0000 | |||
374 | +++ breezy/plugins/git/remote.py 2018-06-21 23:03:57 +0000 | |||
375 | @@ -48,6 +48,7 @@ | |||
376 | 48 | UninitializableFormat, | 48 | UninitializableFormat, |
377 | 49 | ) | 49 | ) |
378 | 50 | from ...revisiontree import RevisionTree | 50 | from ...revisiontree import RevisionTree |
379 | 51 | from ...sixish import text_type | ||
380 | 51 | from ...transport import ( | 52 | from ...transport import ( |
381 | 52 | Transport, | 53 | Transport, |
382 | 53 | register_urlparse_netloc_protocol, | 54 | register_urlparse_netloc_protocol, |
383 | @@ -902,7 +903,7 @@ | |||
384 | 902 | except KeyError: | 903 | except KeyError: |
385 | 903 | # Let's just hope it's a commit | 904 | # Let's just hope it's a commit |
386 | 904 | peeled = unpeeled | 905 | peeled = unpeeled |
388 | 905 | if type(tag_name) is not unicode: | 906 | if not isinstance(tag_name, text_type): |
389 | 906 | raise TypeError(tag_name) | 907 | raise TypeError(tag_name) |
390 | 907 | yield (ref_name, tag_name, peeled, unpeeled) | 908 | yield (ref_name, tag_name, peeled, unpeeled) |
391 | 908 | 909 | ||
392 | 909 | 910 | ||
393 | === modified file 'breezy/plugins/git/tests/test_memorytree.py' | |||
394 | --- breezy/plugins/git/tests/test_memorytree.py 2018-05-22 02:05:12 +0000 | |||
395 | +++ breezy/plugins/git/tests/test_memorytree.py 2018-06-21 23:03:57 +0000 | |||
396 | @@ -96,33 +96,30 @@ | |||
397 | 96 | def test_put_new_file(self): | 96 | def test_put_new_file(self): |
398 | 97 | branch = self.make_branch('branch') | 97 | branch = self.make_branch('branch') |
399 | 98 | tree = branch.create_memorytree() | 98 | tree = branch.create_memorytree() |
405 | 99 | tree.lock_write() | 99 | with tree.lock_write(): |
406 | 100 | tree.add(['', 'foo'], kinds=['directory', 'file']) | 100 | tree.add(['', 'foo'], kinds=['directory', 'file']) |
407 | 101 | tree.put_file_bytes_non_atomic('foo', 'barshoom') | 101 | tree.put_file_bytes_non_atomic('foo', b'barshoom') |
408 | 102 | self.assertEqual('barshoom', tree.get_file('foo').read()) | 102 | self.assertEqual(b'barshoom', tree.get_file('foo').read()) |
404 | 103 | tree.unlock() | ||
409 | 104 | 103 | ||
410 | 105 | def test_put_existing_file(self): | 104 | def test_put_existing_file(self): |
411 | 106 | branch = self.make_branch('branch') | 105 | branch = self.make_branch('branch') |
412 | 107 | tree = branch.create_memorytree() | 106 | tree = branch.create_memorytree() |
419 | 108 | tree.lock_write() | 107 | with tree.lock_write(): |
420 | 109 | tree.add(['', 'foo'], kinds=['directory', 'file']) | 108 | tree.add(['', 'foo'], kinds=['directory', 'file']) |
421 | 110 | tree.put_file_bytes_non_atomic('foo', 'first-content') | 109 | tree.put_file_bytes_non_atomic('foo', b'first-content') |
422 | 111 | tree.put_file_bytes_non_atomic('foo', 'barshoom') | 110 | tree.put_file_bytes_non_atomic('foo', b'barshoom') |
423 | 112 | self.assertEqual('barshoom', tree.get_file('foo').read()) | 111 | self.assertEqual(b'barshoom', tree.get_file('foo').read()) |
418 | 113 | tree.unlock() | ||
424 | 114 | 112 | ||
425 | 115 | def test_add_in_subdir(self): | 113 | def test_add_in_subdir(self): |
426 | 116 | branch = self.make_branch('branch') | 114 | branch = self.make_branch('branch') |
427 | 117 | tree = branch.create_memorytree() | 115 | tree = branch.create_memorytree() |
436 | 118 | tree.lock_write() | 116 | with tree.lock_write(): |
437 | 119 | self.addCleanup(tree.unlock) | 117 | tree.add([''], None, ['directory']) |
438 | 120 | tree.add([''], None, ['directory']) | 118 | tree.mkdir('adir') |
439 | 121 | tree.mkdir('adir') | 119 | tree.put_file_bytes_non_atomic('adir/afile', b'barshoom') |
440 | 122 | tree.put_file_bytes_non_atomic('adir/afile', 'barshoom') | 120 | tree.add(['adir/afile'], None, ['file']) |
441 | 123 | tree.add(['adir/afile'], None, ['file']) | 121 | self.assertTrue(tree.is_versioned('adir/afile')) |
442 | 124 | self.assertTrue(tree.is_versioned('adir/afile')) | 122 | self.assertTrue(tree.is_versioned('adir')) |
435 | 125 | self.assertTrue(tree.is_versioned('adir')) | ||
443 | 126 | 123 | ||
444 | 127 | def test_commit_trivial(self): | 124 | def test_commit_trivial(self): |
445 | 128 | """Smoke test for commit on a MemoryTree. | 125 | """Smoke test for commit on a MemoryTree. |
446 | @@ -132,18 +129,16 @@ | |||
447 | 132 | """ | 129 | """ |
448 | 133 | branch = self.make_branch('branch') | 130 | branch = self.make_branch('branch') |
449 | 134 | tree = branch.create_memorytree() | 131 | tree = branch.create_memorytree() |
457 | 135 | tree.lock_write() | 132 | with tree.lock_write(): |
458 | 136 | tree.add(['', 'foo'], kinds=['directory', 'file']) | 133 | tree.add(['', 'foo'], kinds=['directory', 'file']) |
459 | 137 | tree.put_file_bytes_non_atomic('foo', 'barshoom') | 134 | tree.put_file_bytes_non_atomic('foo', b'barshoom') |
460 | 138 | revision_id = tree.commit('message baby') | 135 | revision_id = tree.commit('message baby') |
461 | 139 | # the parents list for the tree should have changed. | 136 | # the parents list for the tree should have changed. |
462 | 140 | self.assertEqual([revision_id], tree.get_parent_ids()) | 137 | self.assertEqual([revision_id], tree.get_parent_ids()) |
456 | 141 | tree.unlock() | ||
463 | 142 | # and we should have a revision that is accessible outside the tree lock | 138 | # and we should have a revision that is accessible outside the tree lock |
464 | 143 | revtree = tree.branch.repository.revision_tree(revision_id) | 139 | revtree = tree.branch.repository.revision_tree(revision_id) |
468 | 144 | revtree.lock_read() | 140 | with revtree.lock_read(): |
469 | 145 | self.addCleanup(revtree.unlock) | 141 | self.assertEqual(b'barshoom', revtree.get_file('foo').read()) |
467 | 146 | self.assertEqual('barshoom', revtree.get_file('foo').read()) | ||
470 | 147 | 142 | ||
471 | 148 | def test_unversion(self): | 143 | def test_unversion(self): |
472 | 149 | """Some test for unversion of a memory tree.""" | 144 | """Some test for unversion of a memory tree.""" |
473 | @@ -168,22 +163,22 @@ | |||
474 | 168 | tree = self.make_branch_and_memory_tree('branch') | 163 | tree = self.make_branch_and_memory_tree('branch') |
475 | 169 | tree.lock_write() | 164 | tree.lock_write() |
476 | 170 | self.addCleanup(tree.unlock) | 165 | self.addCleanup(tree.unlock) |
479 | 171 | tree.add(['', 'foo'], ['root-id', 'foo-id'], ['directory', 'file']) | 166 | tree.add(['', 'foo'], [b'root-id', b'foo-id'], ['directory', 'file']) |
480 | 172 | tree.put_file_bytes_non_atomic('foo', 'content\n') | 167 | tree.put_file_bytes_non_atomic('foo', b'content\n') |
481 | 173 | tree.commit('one', rev_id=b'rev-one') | 168 | tree.commit('one', rev_id=b'rev-one') |
482 | 174 | tree.rename_one('foo', 'bar') | 169 | tree.rename_one('foo', 'bar') |
484 | 175 | self.assertEqual('bar', tree.id2path('foo-id')) | 170 | self.assertEqual('bar', tree.id2path(b'foo-id')) |
485 | 176 | self.assertEqual('content\n', tree._file_transport.get_bytes('bar')) | 171 | self.assertEqual('content\n', tree._file_transport.get_bytes('bar')) |
486 | 177 | self.assertRaises(errors.NoSuchFile, | 172 | self.assertRaises(errors.NoSuchFile, |
487 | 178 | tree._file_transport.get_bytes, 'foo') | 173 | tree._file_transport.get_bytes, 'foo') |
488 | 179 | tree.commit('two', rev_id=b'rev-two') | 174 | tree.commit('two', rev_id=b'rev-two') |
490 | 180 | self.assertEqual('content\n', tree._file_transport.get_bytes('bar')) | 175 | self.assertEqual(b'content\n', tree._file_transport.get_bytes('bar')) |
491 | 181 | self.assertRaises(errors.NoSuchFile, | 176 | self.assertRaises(errors.NoSuchFile, |
492 | 182 | tree._file_transport.get_bytes, 'foo') | 177 | tree._file_transport.get_bytes, 'foo') |
493 | 183 | 178 | ||
494 | 184 | rev_tree2 = tree.branch.repository.revision_tree(b'rev-two') | 179 | rev_tree2 = tree.branch.repository.revision_tree(b'rev-two') |
497 | 185 | self.assertEqual('bar', rev_tree2.id2path('foo-id')) | 180 | self.assertEqual('bar', rev_tree2.id2path(b'foo-id')) |
498 | 186 | self.assertEqual('content\n', rev_tree2.get_file_text('bar')) | 181 | self.assertEqual(b'content\n', rev_tree2.get_file_text('bar')) |
499 | 187 | 182 | ||
500 | 188 | def test_rename_file_to_subdir(self): | 183 | def test_rename_file_to_subdir(self): |
501 | 189 | tree = self.make_branch_and_memory_tree('branch') | 184 | tree = self.make_branch_and_memory_tree('branch') |
502 | 190 | 185 | ||
503 | === modified file 'breezy/plugins/git/tree.py' | |||
504 | --- breezy/plugins/git/tree.py 2018-06-21 08:03:55 +0000 | |||
505 | +++ breezy/plugins/git/tree.py 2018-06-21 23:03:57 +0000 | |||
506 | @@ -59,6 +59,7 @@ | |||
507 | 59 | CURRENT_REVISION, | 59 | CURRENT_REVISION, |
508 | 60 | NULL_REVISION, | 60 | NULL_REVISION, |
509 | 61 | ) | 61 | ) |
510 | 62 | from ...sixish import text_type | ||
511 | 62 | 63 | ||
512 | 63 | from .mapping import ( | 64 | from .mapping import ( |
513 | 64 | mode_is_executable, | 65 | mode_is_executable, |
514 | @@ -1034,9 +1035,9 @@ | |||
515 | 1034 | posixpath.basename(path).strip("/"), parent_id) | 1035 | posixpath.basename(path).strip("/"), parent_id) |
516 | 1035 | 1036 | ||
517 | 1036 | def _get_file_ie(self, name, path, value, parent_id): | 1037 | def _get_file_ie(self, name, path, value, parent_id): |
519 | 1037 | if type(name) is not unicode: | 1038 | if not isinstance(name, text_type): |
520 | 1038 | raise TypeError(name) | 1039 | raise TypeError(name) |
522 | 1039 | if type(path) is not unicode: | 1040 | if not isinstance(path, text_type): |
523 | 1040 | raise TypeError(path) | 1041 | raise TypeError(path) |
524 | 1041 | if not isinstance(value, tuple) or len(value) != 10: | 1042 | if not isinstance(value, tuple) or len(value) != 10: |
525 | 1042 | raise TypeError(value) | 1043 | raise TypeError(value) |
526 | 1043 | 1044 | ||
527 | === modified file 'breezy/revisionspec.py' | |||
528 | --- breezy/revisionspec.py 2017-11-12 17:53:47 +0000 | |||
529 | +++ breezy/revisionspec.py 2018-06-21 23:03:57 +0000 | |||
530 | @@ -468,7 +468,7 @@ | |||
531 | 468 | # self.spec comes straight from parsing the command line arguments, | 468 | # self.spec comes straight from parsing the command line arguments, |
532 | 469 | # so we expect it to be a Unicode string. Switch it to the internal | 469 | # so we expect it to be a Unicode string. Switch it to the internal |
533 | 470 | # representation. | 470 | # representation. |
535 | 471 | if isinstance(self.spec, unicode): | 471 | if isinstance(self.spec, text_type): |
536 | 472 | return cache_utf8.encode(self.spec) | 472 | return cache_utf8.encode(self.spec) |
537 | 473 | return self.spec | 473 | return self.spec |
538 | 474 | 474 | ||
539 | 475 | 475 | ||
540 | === modified file 'breezy/shelf.py' | |||
541 | --- breezy/shelf.py 2018-02-18 19:18:40 +0000 | |||
542 | +++ breezy/shelf.py 2018-06-21 23:03:57 +0000 | |||
543 | @@ -297,7 +297,7 @@ | |||
544 | 297 | if message is not None: | 297 | if message is not None: |
545 | 298 | metadata[b'message'] = message.encode('utf-8') | 298 | metadata[b'message'] = message.encode('utf-8') |
546 | 299 | return serializer.bytes_record( | 299 | return serializer.bytes_record( |
548 | 300 | bencode.bencode(metadata), (('metadata',),)) | 300 | bencode.bencode(metadata), ((b'metadata',),)) |
549 | 301 | 301 | ||
550 | 302 | def write_shelf(self, shelf_file, message=None): | 302 | def write_shelf(self, shelf_file, message=None): |
551 | 303 | """Serialize the shelved changes to a file. | 303 | """Serialize the shelved changes to a file. |
552 | 304 | 304 | ||
553 | === modified file 'breezy/status.py' | |||
554 | --- breezy/status.py 2017-12-11 01:58:37 +0000 | |||
555 | +++ breezy/status.py 2018-06-21 23:03:57 +0000 | |||
556 | @@ -27,6 +27,7 @@ | |||
557 | 27 | revision as _mod_revision, | 27 | revision as _mod_revision, |
558 | 28 | ) | 28 | ) |
559 | 29 | from . import errors as errors | 29 | from . import errors as errors |
560 | 30 | from .sixish import text_type | ||
561 | 30 | from .trace import mutter, warning | 31 | from .trace import mutter, warning |
562 | 31 | from .workingtree import ShelvingUnsupported | 32 | from .workingtree import ShelvingUnsupported |
563 | 32 | 33 | ||
564 | @@ -195,7 +196,7 @@ | |||
565 | 195 | prefix = 'C ' | 196 | prefix = 'C ' |
566 | 196 | else: | 197 | else: |
567 | 197 | prefix = ' ' | 198 | prefix = ' ' |
569 | 198 | to_file.write("%s %s\n" % (prefix, unicode(conflict))) | 199 | to_file.write("%s %s\n" % (prefix, conflict)) |
570 | 199 | # Show files that were requested but don't exist (and are | 200 | # Show files that were requested but don't exist (and are |
571 | 200 | # not versioned). We don't involve delta in this; these | 201 | # not versioned). We don't involve delta in this; these |
572 | 201 | # paths are really the province of just the status | 202 | # paths are really the province of just the status |
573 | 202 | 203 | ||
574 | === modified file 'breezy/tag.py' | |||
575 | --- breezy/tag.py 2018-05-13 02:18:13 +0000 | |||
576 | +++ breezy/tag.py 2018-06-21 23:03:57 +0000 | |||
577 | @@ -28,6 +28,7 @@ | |||
578 | 28 | # called tags* are ctags files... mbp 20070220. | 28 | # called tags* are ctags files... mbp 20070220. |
579 | 29 | 29 | ||
580 | 30 | from .registry import Registry | 30 | from .registry import Registry |
581 | 31 | from .sixish import text_type | ||
582 | 31 | from .lazy_import import lazy_import | 32 | from .lazy_import import lazy_import |
583 | 32 | lazy_import(globals(), """ | 33 | lazy_import(globals(), """ |
584 | 33 | import itertools | 34 | import itertools |
585 | @@ -360,7 +361,7 @@ | |||
586 | 360 | """ | 361 | """ |
587 | 361 | def natural_sort_key(tag): | 362 | def natural_sort_key(tag): |
588 | 362 | return [f(s) for f, s in | 363 | return [f(s) for f, s in |
590 | 363 | zip(itertools.cycle((unicode.lower, int)), | 364 | zip(itertools.cycle((text_type.lower, int)), |
591 | 364 | re.split('([0-9]+)', tag[0]))] | 365 | re.split('([0-9]+)', tag[0]))] |
592 | 365 | tags.sort(key=natural_sort_key) | 366 | tags.sort(key=natural_sort_key) |
593 | 366 | 367 | ||
594 | 367 | 368 | ||
595 | === modified file 'breezy/testament.py' | |||
596 | --- breezy/testament.py 2017-10-27 00:18:42 +0000 | |||
597 | +++ breezy/testament.py 2018-06-21 23:03:57 +0000 | |||
598 | @@ -78,6 +78,7 @@ | |||
599 | 78 | contains_linebreaks, | 78 | contains_linebreaks, |
600 | 79 | sha_strings, | 79 | sha_strings, |
601 | 80 | ) | 80 | ) |
602 | 81 | from .sixish import text_type | ||
603 | 81 | from .tree import Tree | 82 | from .tree import Tree |
604 | 82 | 83 | ||
605 | 83 | 84 | ||
606 | @@ -162,7 +163,9 @@ | |||
607 | 162 | def _escape_path(self, path): | 163 | def _escape_path(self, path): |
608 | 163 | if contains_linebreaks(path): | 164 | if contains_linebreaks(path): |
609 | 164 | raise ValueError(path) | 165 | raise ValueError(path) |
611 | 165 | return unicode(path.replace('\\', '/').replace(' ', '\\ ')) | 166 | if not isinstance(path, text_type): |
612 | 167 | raise TypeError(path) | ||
613 | 168 | return path.replace(u'\\', u'/').replace(u' ', u'\\ ') | ||
614 | 166 | 169 | ||
615 | 167 | def _entry_to_line(self, path, ie): | 170 | def _entry_to_line(self, path, ie): |
616 | 168 | """Turn an inventory entry into a testament line""" | 171 | """Turn an inventory entry into a testament line""" |
617 | @@ -240,6 +243,9 @@ | |||
618 | 240 | def _escape_path(self, path): | 243 | def _escape_path(self, path): |
619 | 241 | if contains_linebreaks(path): | 244 | if contains_linebreaks(path): |
620 | 242 | raise ValueError(path) | 245 | raise ValueError(path) |
624 | 243 | if path == '': | 246 | if not isinstance(path, text_type): |
625 | 244 | path = '.' | 247 | # TODO(jelmer): Clean this up for pad.lv/1696545 |
626 | 245 | return unicode(path.replace('\\', '/').replace(' ', '\\ ')) | 248 | path = path.decode('ascii') |
627 | 249 | if path == u'': | ||
628 | 250 | path = u'.' | ||
629 | 251 | return path.replace(u'\\', u'/').replace(u' ', u'\\ ') | ||
630 | 246 | 252 | ||
631 | === modified file 'breezy/tests/blackbox/test_reconcile.py' | |||
632 | --- breezy/tests/blackbox/test_reconcile.py 2018-02-18 15:21:06 +0000 | |||
633 | +++ breezy/tests/blackbox/test_reconcile.py 2018-06-21 23:03:57 +0000 | |||
634 | @@ -51,10 +51,10 @@ | |||
635 | 51 | # an empty inventory with no revision will trigger reconciliation. | 51 | # an empty inventory with no revision will trigger reconciliation. |
636 | 52 | repo = t.branch.repository | 52 | repo = t.branch.repository |
637 | 53 | inv = inventory.Inventory(revision_id=b'missing') | 53 | inv = inventory.Inventory(revision_id=b'missing') |
639 | 54 | inv.root.revision='missing' | 54 | inv.root.revision=b'missing' |
640 | 55 | repo.lock_write() | 55 | repo.lock_write() |
641 | 56 | repo.start_write_group() | 56 | repo.start_write_group() |
643 | 57 | repo.add_inventory('missing', inv, []) | 57 | repo.add_inventory(b'missing', inv, []) |
644 | 58 | repo.commit_write_group() | 58 | repo.commit_write_group() |
645 | 59 | repo.unlock() | 59 | repo.unlock() |
646 | 60 | (out, err) = self.run_bzr('reconcile') | 60 | (out, err) = self.run_bzr('reconcile') |
647 | 61 | 61 | ||
648 | === modified file 'breezy/tests/per_branch/test_branch.py' | |||
649 | --- breezy/tests/per_branch/test_branch.py 2018-06-15 13:10:28 +0000 | |||
650 | +++ breezy/tests/per_branch/test_branch.py 2018-06-21 23:03:57 +0000 | |||
651 | @@ -74,7 +74,7 @@ | |||
652 | 74 | graph = tree.branch.repository.get_graph() | 74 | graph = tree.branch.repository.get_graph() |
653 | 75 | ancestry_graph = graph.get_parent_map( | 75 | ancestry_graph = graph.get_parent_map( |
654 | 76 | tree.branch.repository.all_revision_ids()) | 76 | tree.branch.repository.all_revision_ids()) |
656 | 77 | self.assertEqual({revmap['1']: ('null:',), | 77 | self.assertEqual({revmap['1']: (b'null:',), |
657 | 78 | revmap['2']: (revmap['1'], ), | 78 | revmap['2']: (revmap['1'], ), |
658 | 79 | revmap['1.1.1']: (revmap['1'], ), | 79 | revmap['1.1.1']: (revmap['1'], ), |
659 | 80 | revmap['3']: (revmap['2'], revmap['1.1.1'], ), | 80 | revmap['3']: (revmap['2'], revmap['1.1.1'], ), |
660 | @@ -213,9 +213,9 @@ | |||
661 | 213 | if not wt.branch.repository._format.supports_ghosts: | 213 | if not wt.branch.repository._format.supports_ghosts: |
662 | 214 | raise tests.TestNotApplicable("repository format does not " | 214 | raise tests.TestNotApplicable("repository format does not " |
663 | 215 | "support ghosts") | 215 | "support ghosts") |
665 | 216 | wt.set_parent_ids(['non:existent@rev--ision--0--2'], | 216 | wt.set_parent_ids([b'non:existent@rev--ision--0--2'], |
666 | 217 | allow_leftmost_as_ghost=True) | 217 | allow_leftmost_as_ghost=True) |
668 | 218 | self.assertEqual(['non:existent@rev--ision--0--2'], | 218 | self.assertEqual([b'non:existent@rev--ision--0--2'], |
669 | 219 | wt.get_parent_ids()) | 219 | wt.get_parent_ids()) |
670 | 220 | rev_id = wt.commit('commit against a ghost first parent.') | 220 | rev_id = wt.commit('commit against a ghost first parent.') |
671 | 221 | rev = wt.branch.repository.get_revision(rev_id) | 221 | rev = wt.branch.repository.get_revision(rev_id) |
672 | @@ -230,15 +230,15 @@ | |||
673 | 230 | raise tests.TestNotApplicable("repository format does not " | 230 | raise tests.TestNotApplicable("repository format does not " |
674 | 231 | "support ghosts") | 231 | "support ghosts") |
675 | 232 | wt.set_parent_ids([ | 232 | wt.set_parent_ids([ |
678 | 233 | 'foo@azkhazan-123123-abcabc', | 233 | b'foo@azkhazan-123123-abcabc', |
679 | 234 | 'wibble@fofof--20050401--1928390812', | 234 | b'wibble@fofof--20050401--1928390812', |
680 | 235 | ], | 235 | ], |
681 | 236 | allow_leftmost_as_ghost=True) | 236 | allow_leftmost_as_ghost=True) |
682 | 237 | rev_id = wt.commit("commit from ghost base with one merge") | 237 | rev_id = wt.commit("commit from ghost base with one merge") |
683 | 238 | # the revision should have been committed with two parents | 238 | # the revision should have been committed with two parents |
684 | 239 | rev = wt.branch.repository.get_revision(rev_id) | 239 | rev = wt.branch.repository.get_revision(rev_id) |
687 | 240 | self.assertEqual(['foo@azkhazan-123123-abcabc', | 240 | self.assertEqual([b'foo@azkhazan-123123-abcabc', |
688 | 241 | 'wibble@fofof--20050401--1928390812'], | 241 | b'wibble@fofof--20050401--1928390812'], |
689 | 242 | rev.parent_ids) | 242 | rev.parent_ids) |
690 | 243 | 243 | ||
691 | 244 | def test_bad_revision(self): | 244 | def test_bad_revision(self): |
692 | 245 | 245 | ||
693 | === modified file 'breezy/tests/per_branch/test_check.py' | |||
694 | --- breezy/tests/per_branch/test_check.py 2017-06-05 20:48:31 +0000 | |||
695 | +++ breezy/tests/per_branch/test_check.py 2018-06-21 23:03:57 +0000 | |||
696 | @@ -60,7 +60,7 @@ | |||
697 | 60 | result = tree.branch.check(refs) | 60 | result = tree.branch.check(refs) |
698 | 61 | ui.ui_factory = tests.TestUIFactory(stdout=BytesIO()) | 61 | ui.ui_factory = tests.TestUIFactory(stdout=BytesIO()) |
699 | 62 | result.report_results(True) | 62 | result.report_results(True) |
701 | 63 | self.assertContainsRe('revno does not match len', | 63 | self.assertContainsRe(b'revno does not match len', |
702 | 64 | ui.ui_factory.stdout.getvalue()) | 64 | ui.ui_factory.stdout.getvalue()) |
703 | 65 | 65 | ||
704 | 66 | def test_check_branch_report_results(self): | 66 | def test_check_branch_report_results(self): |
705 | 67 | 67 | ||
706 | === modified file 'breezy/tests/per_branch/test_commit.py' | |||
707 | --- breezy/tests/per_branch/test_commit.py 2018-03-20 07:41:20 +0000 | |||
708 | +++ breezy/tests/per_branch/test_commit.py 2018-06-21 23:03:57 +0000 | |||
709 | @@ -189,20 +189,20 @@ | |||
710 | 189 | # setting up a playground | 189 | # setting up a playground |
711 | 190 | tree.add('rootfile') | 190 | tree.add('rootfile') |
712 | 191 | rootfile_id = tree.path2id('rootfile') | 191 | rootfile_id = tree.path2id('rootfile') |
714 | 192 | tree.put_file_bytes_non_atomic('rootfile', 'abc') | 192 | tree.put_file_bytes_non_atomic('rootfile', b'abc') |
715 | 193 | tree.add('dir') | 193 | tree.add('dir') |
716 | 194 | dir_id = tree.path2id('dir') | 194 | dir_id = tree.path2id('dir') |
717 | 195 | tree.add('dir/subfile') | 195 | tree.add('dir/subfile') |
718 | 196 | dir_subfile_id = tree.path2id('dir/subfile') | 196 | dir_subfile_id = tree.path2id('dir/subfile') |
720 | 197 | tree.put_file_bytes_non_atomic('to_be_unversioned', 'blah') | 197 | tree.put_file_bytes_non_atomic('to_be_unversioned', b'blah') |
721 | 198 | tree.add(['to_be_unversioned']) | 198 | tree.add(['to_be_unversioned']) |
722 | 199 | to_be_unversioned_id = tree.path2id('to_be_unversioned') | 199 | to_be_unversioned_id = tree.path2id('to_be_unversioned') |
724 | 200 | tree.put_file_bytes_non_atomic('dir/subfile', 'def') | 200 | tree.put_file_bytes_non_atomic('dir/subfile', b'def') |
725 | 201 | revid1 = tree.commit('first revision') | 201 | revid1 = tree.commit('first revision') |
726 | 202 | 202 | ||
727 | 203 | with tree.lock_write(): | 203 | with tree.lock_write(): |
728 | 204 | # making changes | 204 | # making changes |
730 | 205 | tree.put_file_bytes_non_atomic('rootfile', 'jkl') | 205 | tree.put_file_bytes_non_atomic('rootfile', b'jkl') |
731 | 206 | tree.rename_one('dir/subfile', 'dir/subfile_renamed') | 206 | tree.rename_one('dir/subfile', 'dir/subfile_renamed') |
732 | 207 | tree.unversion(['to_be_unversioned']) | 207 | tree.unversion(['to_be_unversioned']) |
733 | 208 | tree.mkdir('added_dir') | 208 | tree.mkdir('added_dir') |
734 | 209 | 209 | ||
735 | === modified file 'breezy/tests/per_branch/test_iter_merge_sorted_revisions.py' | |||
736 | --- breezy/tests/per_branch/test_iter_merge_sorted_revisions.py 2018-03-27 00:51:45 +0000 | |||
737 | +++ breezy/tests/per_branch/test_iter_merge_sorted_revisions.py 2018-06-21 23:03:57 +0000 | |||
738 | @@ -81,47 +81,47 @@ | |||
739 | 81 | 81 | ||
740 | 82 | def test_merge_sorted_range(self): | 82 | def test_merge_sorted_range(self): |
741 | 83 | self.assertIterRevids(['1.1.1'], | 83 | self.assertIterRevids(['1.1.1'], |
743 | 84 | start_revision_id=b'1.1.1', stop_revision_id=b'1') | 84 | start_revision_id='1.1.1', stop_revision_id='1') |
744 | 85 | 85 | ||
745 | 86 | def test_merge_sorted_range_start_only(self): | 86 | def test_merge_sorted_range_start_only(self): |
746 | 87 | self.assertIterRevids(['1.1.1', '1'], | 87 | self.assertIterRevids(['1.1.1', '1'], |
748 | 88 | start_revision_id=b'1.1.1') | 88 | start_revision_id='1.1.1') |
749 | 89 | 89 | ||
750 | 90 | def test_merge_sorted_range_stop_exclude(self): | 90 | def test_merge_sorted_range_stop_exclude(self): |
751 | 91 | self.assertIterRevids(['3', '1.1.1', '2'], stop_revision_id=b'1') | 91 | self.assertIterRevids(['3', '1.1.1', '2'], stop_revision_id=b'1') |
752 | 92 | 92 | ||
753 | 93 | def test_merge_sorted_range_stop_include(self): | 93 | def test_merge_sorted_range_stop_include(self): |
754 | 94 | self.assertIterRevids(['3', '1.1.1', '2'], | 94 | self.assertIterRevids(['3', '1.1.1', '2'], |
756 | 95 | stop_revision_id=b'2', stop_rule='include') | 95 | stop_revision_id='2', stop_rule='include') |
757 | 96 | 96 | ||
758 | 97 | def test_merge_sorted_range_stop_with_merges(self): | 97 | def test_merge_sorted_range_stop_with_merges(self): |
759 | 98 | self.assertIterRevids(['3', '1.1.1'], | 98 | self.assertIterRevids(['3', '1.1.1'], |
761 | 99 | stop_revision_id=b'3', stop_rule='with-merges') | 99 | stop_revision_id='3', stop_rule='with-merges') |
762 | 100 | 100 | ||
763 | 101 | def test_merge_sorted_range_stop_with_merges_can_show_non_parents(self): | 101 | def test_merge_sorted_range_stop_with_merges_can_show_non_parents(self): |
764 | 102 | # 1.1.1 gets logged before the end revision is reached. | 102 | # 1.1.1 gets logged before the end revision is reached. |
765 | 103 | # so it is returned even though 1.1.1 is not a parent of 2. | 103 | # so it is returned even though 1.1.1 is not a parent of 2. |
766 | 104 | self.assertIterRevids(['3', '1.1.1', '2'], | 104 | self.assertIterRevids(['3', '1.1.1', '2'], |
768 | 105 | stop_revision_id=b'2', stop_rule='with-merges') | 105 | stop_revision_id='2', stop_rule='with-merges') |
769 | 106 | 106 | ||
770 | 107 | def test_merge_sorted_range_stop_with_merges_ignore_non_parents(self): | 107 | def test_merge_sorted_range_stop_with_merges_ignore_non_parents(self): |
771 | 108 | # 2 is not a parent of 1.1.1 so it must not be returned | 108 | # 2 is not a parent of 1.1.1 so it must not be returned |
772 | 109 | self.assertIterRevids(['3', '1.1.1'], | 109 | self.assertIterRevids(['3', '1.1.1'], |
774 | 110 | stop_revision_id=b'1.1.1', stop_rule='with-merges') | 110 | stop_revision_id='1.1.1', stop_rule='with-merges') |
775 | 111 | 111 | ||
776 | 112 | def test_merge_sorted_single_stop_exclude(self): | 112 | def test_merge_sorted_single_stop_exclude(self): |
777 | 113 | # from X..X exclusive is an empty result | 113 | # from X..X exclusive is an empty result |
779 | 114 | self.assertIterRevids([], start_revision_id=b'3', stop_revision_id=b'3') | 114 | self.assertIterRevids([], start_revision_id='3', stop_revision_id='3') |
780 | 115 | 115 | ||
781 | 116 | def test_merge_sorted_single_stop_include(self): | 116 | def test_merge_sorted_single_stop_include(self): |
782 | 117 | # from X..X inclusive is [X] | 117 | # from X..X inclusive is [X] |
783 | 118 | self.assertIterRevids(['3'], | 118 | self.assertIterRevids(['3'], |
785 | 119 | start_revision_id=b'3', stop_revision_id=b'3', | 119 | start_revision_id='3', stop_revision_id='3', |
786 | 120 | stop_rule='include') | 120 | stop_rule='include') |
787 | 121 | 121 | ||
788 | 122 | def test_merge_sorted_single_stop_with_merges(self): | 122 | def test_merge_sorted_single_stop_with_merges(self): |
789 | 123 | self.assertIterRevids(['3', '1.1.1'], | 123 | self.assertIterRevids(['3', '1.1.1'], |
791 | 124 | start_revision_id=b'3', stop_revision_id=b'3', | 124 | start_revision_id='3', stop_revision_id='3', |
792 | 125 | stop_rule='with-merges') | 125 | stop_rule='with-merges') |
793 | 126 | 126 | ||
794 | 127 | def test_merge_sorted_forward(self): | 127 | def test_merge_sorted_forward(self): |
795 | @@ -129,25 +129,25 @@ | |||
796 | 129 | 129 | ||
797 | 130 | def test_merge_sorted_range_forward(self): | 130 | def test_merge_sorted_range_forward(self): |
798 | 131 | self.assertIterRevids(['1.1.1'], | 131 | self.assertIterRevids(['1.1.1'], |
800 | 132 | start_revision_id=b'1.1.1', stop_revision_id=b'1', | 132 | start_revision_id='1.1.1', stop_revision_id='1', |
801 | 133 | direction='forward') | 133 | direction='forward') |
802 | 134 | 134 | ||
803 | 135 | def test_merge_sorted_range_start_only_forward(self): | 135 | def test_merge_sorted_range_start_only_forward(self): |
804 | 136 | self.assertIterRevids(['1', '1.1.1'], | 136 | self.assertIterRevids(['1', '1.1.1'], |
806 | 137 | start_revision_id=b'1.1.1', direction='forward') | 137 | start_revision_id='1.1.1', direction='forward') |
807 | 138 | 138 | ||
808 | 139 | def test_merge_sorted_range_stop_exclude_forward(self): | 139 | def test_merge_sorted_range_stop_exclude_forward(self): |
809 | 140 | self.assertIterRevids(['2', '1.1.1', '3'], | 140 | self.assertIterRevids(['2', '1.1.1', '3'], |
811 | 141 | stop_revision_id=b'1', direction='forward') | 141 | stop_revision_id='1', direction='forward') |
812 | 142 | 142 | ||
813 | 143 | def test_merge_sorted_range_stop_include_forward(self): | 143 | def test_merge_sorted_range_stop_include_forward(self): |
814 | 144 | self.assertIterRevids(['2', '1.1.1', '3'], | 144 | self.assertIterRevids(['2', '1.1.1', '3'], |
816 | 145 | stop_revision_id=b'2', stop_rule='include', | 145 | stop_revision_id='2', stop_rule='include', |
817 | 146 | direction='forward') | 146 | direction='forward') |
818 | 147 | 147 | ||
819 | 148 | def test_merge_sorted_range_stop_with_merges_forward(self): | 148 | def test_merge_sorted_range_stop_with_merges_forward(self): |
820 | 149 | self.assertIterRevids(['1.1.1', '3'], | 149 | self.assertIterRevids(['1.1.1', '3'], |
822 | 150 | stop_revision_id=b'3', stop_rule='with-merges', | 150 | stop_revision_id='3', stop_rule='with-merges', |
823 | 151 | direction='forward') | 151 | direction='forward') |
824 | 152 | 152 | ||
825 | 153 | 153 | ||
826 | @@ -303,7 +303,7 @@ | |||
827 | 303 | branch) | 303 | branch) |
828 | 304 | # 3 and 2.1.2 are not part of 2.2.1 ancestry and should not appear | 304 | # 3 and 2.1.2 are not part of 2.2.1 ancestry and should not appear |
829 | 305 | self.assertIterRevids(['2.2.1', '2.1.1', '2', '1.1.1', '1'], | 305 | self.assertIterRevids(['2.2.1', '2.1.1', '2', '1.1.1', '1'], |
831 | 306 | branch, start_revision_id=b'2.2.1', | 306 | branch, start_revision_id='2.2.1', |
832 | 307 | stop_rule='with-merges') | 307 | stop_rule='with-merges') |
833 | 308 | 308 | ||
834 | 309 | def test_merge_sorted_with_different_depths_merge(self): | 309 | def test_merge_sorted_with_different_depths_merge(self): |
835 | @@ -317,7 +317,7 @@ | |||
836 | 317 | # 3 (and its descendants) and 2.1.2 are not part of 2.2.1 ancestry and | 317 | # 3 (and its descendants) and 2.1.2 are not part of 2.2.1 ancestry and |
837 | 318 | # should not appear | 318 | # should not appear |
838 | 319 | self.assertIterRevids(['2.2.1', '2.1.1', '2', '1'], | 319 | self.assertIterRevids(['2.2.1', '2.1.1', '2', '1'], |
840 | 320 | branch, start_revision_id=b'2.2.1', | 320 | branch, start_revision_id='2.2.1', |
841 | 321 | stop_rule='with-merges') | 321 | stop_rule='with-merges') |
842 | 322 | 322 | ||
843 | 323 | def test_merge_sorted_exclude_ancestry(self): | 323 | def test_merge_sorted_exclude_ancestry(self): |
844 | @@ -329,6 +329,6 @@ | |||
845 | 329 | self.assertIterRevids(['1.1.2', '1.2.1'], | 329 | self.assertIterRevids(['1.1.2', '1.2.1'], |
846 | 330 | branch, | 330 | branch, |
847 | 331 | stop_rule='with-merges-without-common-ancestry', | 331 | stop_rule='with-merges-without-common-ancestry', |
850 | 332 | start_revision_id=b'1.1.2', | 332 | start_revision_id='1.1.2', |
851 | 333 | stop_revision_id=b'1.1.1') | 333 | stop_revision_id='1.1.1') |
852 | 334 | 334 | ||
853 | 335 | 335 | ||
854 | === modified file 'breezy/tests/per_branch/test_revision_id_to_dotted_revno.py' | |||
855 | --- breezy/tests/per_branch/test_revision_id_to_dotted_revno.py 2017-08-07 21:14:18 +0000 | |||
856 | +++ breezy/tests/per_branch/test_revision_id_to_dotted_revno.py 2018-06-21 23:03:57 +0000 | |||
857 | @@ -26,11 +26,11 @@ | |||
858 | 26 | def test_lookup_dotted_revno(self): | 26 | def test_lookup_dotted_revno(self): |
859 | 27 | tree, revmap = self.create_tree_with_merge() | 27 | tree, revmap = self.create_tree_with_merge() |
860 | 28 | the_branch = tree.branch | 28 | the_branch = tree.branch |
862 | 29 | self.assertEqual((0,), the_branch.revision_id_to_dotted_revno('null:')) | 29 | self.assertEqual((0,), the_branch.revision_id_to_dotted_revno(b'null:')) |
863 | 30 | self.assertEqual((1,), the_branch.revision_id_to_dotted_revno(revmap['1'])) | 30 | self.assertEqual((1,), the_branch.revision_id_to_dotted_revno(revmap['1'])) |
864 | 31 | self.assertEqual((2,), the_branch.revision_id_to_dotted_revno(revmap['2'])) | 31 | self.assertEqual((2,), the_branch.revision_id_to_dotted_revno(revmap['2'])) |
865 | 32 | self.assertEqual((3,), the_branch.revision_id_to_dotted_revno(revmap['3'])) | 32 | self.assertEqual((3,), the_branch.revision_id_to_dotted_revno(revmap['3'])) |
866 | 33 | self.assertEqual((1, 1, 1), the_branch.revision_id_to_dotted_revno( | 33 | self.assertEqual((1, 1, 1), the_branch.revision_id_to_dotted_revno( |
867 | 34 | revmap['1.1.1'])) | 34 | revmap['1.1.1'])) |
868 | 35 | self.assertRaises(errors.NoSuchRevision, | 35 | self.assertRaises(errors.NoSuchRevision, |
870 | 36 | the_branch.revision_id_to_dotted_revno, 'rev-1.0.2') | 36 | the_branch.revision_id_to_dotted_revno, b'rev-1.0.2') |
871 | 37 | 37 | ||
872 | === modified file 'breezy/tests/per_foreign_vcs/test_branch.py' | |||
873 | --- breezy/tests/per_foreign_vcs/test_branch.py 2017-11-19 18:55:26 +0000 | |||
874 | +++ breezy/tests/per_foreign_vcs/test_branch.py 2018-06-21 23:03:57 +0000 | |||
875 | @@ -146,4 +146,4 @@ | |||
876 | 146 | self.assertIsInstance(self.branch_format.get_format_description(), str) | 146 | self.assertIsInstance(self.branch_format.get_format_description(), str) |
877 | 147 | 147 | ||
878 | 148 | def test_network_name(self): | 148 | def test_network_name(self): |
880 | 149 | self.assertIsInstance(self.branch_format.network_name(), str) | 149 | self.assertIsInstance(self.branch_format.network_name(), bytes) |
881 | 150 | 150 | ||
882 | === modified file 'breezy/tests/per_interbranch/test_push.py' | |||
883 | --- breezy/tests/per_interbranch/test_push.py 2018-03-27 00:51:45 +0000 | |||
884 | +++ breezy/tests/per_interbranch/test_push.py 2018-06-21 23:03:57 +0000 | |||
885 | @@ -267,10 +267,10 @@ | |||
886 | 267 | builder.start_series() | 267 | builder.start_series() |
887 | 268 | revid1 = builder.build_snapshot(None, [ | 268 | revid1 = builder.build_snapshot(None, [ |
888 | 269 | ('add', ('', None, 'directory', '')), | 269 | ('add', ('', None, 'directory', '')), |
890 | 270 | ('add', ('filename', None, 'file', 'content\n'))]) | 270 | ('add', ('filename', None, 'file', b'content\n'))]) |
891 | 271 | revid2 = builder.build_snapshot([revid1], []) | 271 | revid2 = builder.build_snapshot([revid1], []) |
892 | 272 | revid3 = builder.build_snapshot([revid2], | 272 | revid3 = builder.build_snapshot([revid2], |
894 | 273 | [('modify', ('filename', 'new-content\n'))]) | 273 | [('modify', ('filename', b'new-content\n'))]) |
895 | 274 | builder.finish_series() | 274 | builder.finish_series() |
896 | 275 | trunk = builder.get_branch() | 275 | trunk = builder.get_branch() |
897 | 276 | # Sprout rev-1 to "trunk", so that we can stack on it. | 276 | # Sprout rev-1 to "trunk", so that we can stack on it. |
898 | 277 | 277 | ||
899 | === modified file 'breezy/tests/per_interrepository/test_fetch.py' | |||
900 | --- breezy/tests/per_interrepository/test_fetch.py 2018-06-21 17:53:38 +0000 | |||
901 | +++ breezy/tests/per_interrepository/test_fetch.py 2018-06-21 23:03:57 +0000 | |||
902 | @@ -161,10 +161,10 @@ | |||
903 | 161 | builder = self.make_branch_builder('full-branch') | 161 | builder = self.make_branch_builder('full-branch') |
904 | 162 | builder.start_series() | 162 | builder.start_series() |
905 | 163 | builder.build_snapshot(None, [ | 163 | builder.build_snapshot(None, [ |
908 | 164 | ('add', ('', 'root-id', 'directory', '')), | 164 | ('add', ('', b'root-id', 'directory', '')), |
909 | 165 | ('add', ('file', 'file-id', 'file', 'content\n'))], | 165 | ('add', ('file', b'file-id', 'file', b'content\n'))], |
910 | 166 | revision_id=b'first') | 166 | revision_id=b'first') |
912 | 167 | builder.build_snapshot(['first'], [ | 167 | builder.build_snapshot([b'first'], [ |
913 | 168 | ('modify', ('file', b'second content\n'))], | 168 | ('modify', ('file', b'second content\n'))], |
914 | 169 | revision_id=b'second') | 169 | revision_id=b'second') |
915 | 170 | builder.build_snapshot([b'second'], [ | 170 | builder.build_snapshot([b'second'], [ |
916 | @@ -174,19 +174,23 @@ | |||
917 | 174 | branch = builder.get_branch() | 174 | branch = builder.get_branch() |
918 | 175 | repo = self.make_repository('stacking-base') | 175 | repo = self.make_repository('stacking-base') |
919 | 176 | trunk = repo.controldir.create_branch() | 176 | trunk = repo.controldir.create_branch() |
921 | 177 | trunk.repository.fetch(branch.repository, 'second') | 177 | trunk.repository.fetch(branch.repository, b'second') |
922 | 178 | repo = self.make_repository('stacked') | 178 | repo = self.make_repository('stacked') |
923 | 179 | stacked_branch = repo.controldir.create_branch() | 179 | stacked_branch = repo.controldir.create_branch() |
924 | 180 | stacked_branch.set_stacked_on_url(trunk.base) | 180 | stacked_branch.set_stacked_on_url(trunk.base) |
926 | 181 | stacked_branch.repository.fetch(branch.repository, 'third') | 181 | stacked_branch.repository.fetch(branch.repository, b'third') |
927 | 182 | target = self.make_to_repository('target') | 182 | target = self.make_to_repository('target') |
928 | 183 | <<<<<<< TREE | ||
929 | 183 | try: | 184 | try: |
930 | 184 | target.fetch(stacked_branch.repository, 'third') | 185 | target.fetch(stacked_branch.repository, 'third') |
931 | 185 | except errors.NoRoundtrippingSupport: | 186 | except errors.NoRoundtrippingSupport: |
932 | 186 | raise TestNotApplicable('roundtripping not supported') | 187 | raise TestNotApplicable('roundtripping not supported') |
933 | 188 | ======= | ||
934 | 189 | target.fetch(stacked_branch.repository, b'third') | ||
935 | 190 | >>>>>>> MERGE-SOURCE | ||
936 | 187 | target.lock_read() | 191 | target.lock_read() |
937 | 188 | self.addCleanup(target.unlock) | 192 | self.addCleanup(target.unlock) |
939 | 189 | all_revs = {'first', 'second', 'third'} | 193 | all_revs = {b'first', b'second', b'third'} |
940 | 190 | self.assertEqual(all_revs, set(target.get_parent_map(all_revs))) | 194 | self.assertEqual(all_revs, set(target.get_parent_map(all_revs))) |
941 | 191 | 195 | ||
942 | 192 | def test_fetch_parent_inventories_at_stacking_boundary_smart(self): | 196 | def test_fetch_parent_inventories_at_stacking_boundary_smart(self): |
943 | 193 | 197 | ||
944 | === modified file 'breezy/tests/per_intertree/test_compare.py' | |||
945 | --- breezy/tests/per_intertree/test_compare.py 2018-05-13 02:18:13 +0000 | |||
946 | +++ breezy/tests/per_intertree/test_compare.py 2018-06-21 23:03:57 +0000 | |||
947 | @@ -793,14 +793,14 @@ | |||
948 | 793 | tree1.mkdir('changing/unchanging', b'mid-id') | 793 | tree1.mkdir('changing/unchanging', b'mid-id') |
949 | 794 | tree1.add(['changing/unchanging/file'], [b'file-id'], ['file']) | 794 | tree1.add(['changing/unchanging/file'], [b'file-id'], ['file']) |
950 | 795 | tree1.put_file_bytes_non_atomic( | 795 | tree1.put_file_bytes_non_atomic( |
952 | 796 | 'changing/unchanging/file', 'a file', file_id='file-id') | 796 | 'changing/unchanging/file', b'a file', file_id=b'file-id') |
953 | 797 | tree2 = self.make_to_branch_and_tree('2') | 797 | tree2 = self.make_to_branch_and_tree('2') |
954 | 798 | tree2.set_root_id(tree1.get_root_id()) | 798 | tree2.set_root_id(tree1.get_root_id()) |
955 | 799 | tree2.mkdir('changed', b'parent-id') | 799 | tree2.mkdir('changed', b'parent-id') |
956 | 800 | tree2.mkdir('changed/unchanging', b'mid-id') | 800 | tree2.mkdir('changed/unchanging', b'mid-id') |
957 | 801 | tree2.add(['changed/unchanging/file'], [b'file-id'], ['file']) | 801 | tree2.add(['changed/unchanging/file'], [b'file-id'], ['file']) |
958 | 802 | tree2.put_file_bytes_non_atomic( | 802 | tree2.put_file_bytes_non_atomic( |
960 | 803 | 'changed/unchanging/file', 'changed content', file_id=b'file-id') | 803 | 'changed/unchanging/file', b'changed content', file_id=b'file-id') |
961 | 804 | tree1, tree2 = self.mutable_trees_to_test_trees(self, tree1, tree2) | 804 | tree1, tree2 = self.mutable_trees_to_test_trees(self, tree1, tree2) |
962 | 805 | # parent-id has changed, as has file-id | 805 | # parent-id has changed, as has file-id |
963 | 806 | root_id = tree1.path2id('') | 806 | root_id = tree1.path2id('') |
964 | @@ -820,15 +820,15 @@ | |||
965 | 820 | tree1.mkdir('changed/unchanging', b'mid-id') | 820 | tree1.mkdir('changed/unchanging', b'mid-id') |
966 | 821 | tree1.add(['changed/unchanging/file'], [b'file-id'], ['file']) | 821 | tree1.add(['changed/unchanging/file'], [b'file-id'], ['file']) |
967 | 822 | tree1.put_file_bytes_non_atomic( | 822 | tree1.put_file_bytes_non_atomic( |
970 | 823 | 'changed/unchanging/file', 'a file', | 823 | 'changed/unchanging/file', b'a file', |
971 | 824 | 'file-id') | 824 | b'file-id') |
972 | 825 | tree2 = self.make_to_branch_and_tree('2') | 825 | tree2 = self.make_to_branch_and_tree('2') |
973 | 826 | tree2.set_root_id(b'new') | 826 | tree2.set_root_id(b'new') |
974 | 827 | tree2.mkdir('changed', b'parent-id') | 827 | tree2.mkdir('changed', b'parent-id') |
975 | 828 | tree2.mkdir('changed/unchanging', b'mid-id') | 828 | tree2.mkdir('changed/unchanging', b'mid-id') |
976 | 829 | tree2.add(['changed/unchanging/file'], [b'file-id'], ['file']) | 829 | tree2.add(['changed/unchanging/file'], [b'file-id'], ['file']) |
977 | 830 | tree2.put_file_bytes_non_atomic( | 830 | tree2.put_file_bytes_non_atomic( |
979 | 831 | 'changed/unchanging/file', 'changed content', file_id=b'file-id') | 831 | 'changed/unchanging/file', b'changed content', file_id=b'file-id') |
980 | 832 | tree1, tree2 = self.mutable_trees_to_locked_test_trees(tree1, tree2) | 832 | tree1, tree2 = self.mutable_trees_to_locked_test_trees(tree1, tree2) |
981 | 833 | # old is gone, new is added, parent-id has changed(reparented), as has | 833 | # old is gone, new is added, parent-id has changed(reparented), as has |
982 | 834 | # file-id(content) | 834 | # file-id(content) |
983 | @@ -874,12 +874,12 @@ | |||
984 | 874 | # it must be emitted as a change. | 874 | # it must be emitted as a change. |
985 | 875 | tree1 = self.make_branch_and_tree('1') | 875 | tree1 = self.make_branch_and_tree('1') |
986 | 876 | tree1.add(['a'], [b'a-id'], ['file']) | 876 | tree1.add(['a'], [b'a-id'], ['file']) |
988 | 877 | tree1.put_file_bytes_non_atomic('a', 'a file') | 877 | tree1.put_file_bytes_non_atomic('a', b'a file') |
989 | 878 | tree2 = self.make_to_branch_and_tree('2') | 878 | tree2 = self.make_to_branch_and_tree('2') |
990 | 879 | tree2.set_root_id(tree1.get_root_id()) | 879 | tree2.set_root_id(tree1.get_root_id()) |
991 | 880 | tree2.mkdir('a', b'b-id') | 880 | tree2.mkdir('a', b'b-id') |
992 | 881 | tree2.add(['a/c'], [b'c-id'], ['file']) | 881 | tree2.add(['a/c'], [b'c-id'], ['file']) |
994 | 882 | tree2.put_file_bytes_non_atomic('a/c', 'another file') | 882 | tree2.put_file_bytes_non_atomic('a/c', b'another file') |
995 | 883 | tree1, tree2 = self.mutable_trees_to_locked_test_trees(tree1, tree2) | 883 | tree1, tree2 = self.mutable_trees_to_locked_test_trees(tree1, tree2) |
996 | 884 | # a-id is gone, b-id and c-id are added. | 884 | # a-id is gone, b-id and c-id are added. |
997 | 885 | self.assertEqualIterChanges( | 885 | self.assertEqualIterChanges( |
998 | @@ -900,7 +900,7 @@ | |||
999 | 900 | tree2.mkdir('a', b'a-new-id') | 900 | tree2.mkdir('a', b'a-new-id') |
1000 | 901 | tree2.mkdir('a/reparented', b'reparented-id') | 901 | tree2.mkdir('a/reparented', b'reparented-id') |
1001 | 902 | tree2.add(['b'], [b'a-old-id'], ['file']) | 902 | tree2.add(['b'], [b'a-old-id'], ['file']) |
1003 | 903 | tree2.put_file_bytes_non_atomic('b', '') | 903 | tree2.put_file_bytes_non_atomic('b', b'') |
1004 | 904 | tree1, tree2 = self.mutable_trees_to_locked_test_trees(tree1, tree2) | 904 | tree1, tree2 = self.mutable_trees_to_locked_test_trees(tree1, tree2) |
1005 | 905 | # a-old-id is kind-changed, a-new-id is added, reparented-id is renamed, | 905 | # a-old-id is kind-changed, a-new-id is added, reparented-id is renamed, |
1006 | 906 | # deleted-id is gone | 906 | # deleted-id is gone |
1007 | 907 | 907 | ||
1008 | === modified file 'breezy/tests/per_pack_repository.py' | |||
1009 | --- breezy/tests/per_pack_repository.py 2018-05-27 18:00:21 +0000 | |||
1010 | +++ breezy/tests/per_pack_repository.py 2018-06-21 23:03:57 +0000 | |||
1011 | @@ -199,8 +199,8 @@ | |||
1012 | 199 | index = self.index_class(trans, 'pack-names', None) | 199 | index = self.index_class(trans, 'pack-names', None) |
1013 | 200 | self.assertEqual(9, len(list(index.iter_all_entries()))) | 200 | self.assertEqual(9, len(list(index.iter_all_entries()))) |
1014 | 201 | # insert some files in obsolete_packs which should be removed by pack. | 201 | # insert some files in obsolete_packs which should be removed by pack. |
1017 | 202 | trans.put_bytes('obsolete_packs/foo', '123') | 202 | trans.put_bytes('obsolete_packs/foo', b'123') |
1018 | 203 | trans.put_bytes('obsolete_packs/bar', '321') | 203 | trans.put_bytes('obsolete_packs/bar', b'321') |
1019 | 204 | # committing one more should coalesce to 1 of 10. | 204 | # committing one more should coalesce to 1 of 10. |
1020 | 205 | tree.commit('commit triggering pack') | 205 | tree.commit('commit triggering pack') |
1021 | 206 | index = self.index_class(trans, 'pack-names', None) | 206 | index = self.index_class(trans, 'pack-names', None) |
1022 | @@ -275,7 +275,7 @@ | |||
1023 | 275 | repo_transport = bzrdir.get_repository_transport(None) | 275 | repo_transport = bzrdir.get_repository_transport(None) |
1024 | 276 | self.assertTrue(repo_transport.has('obsolete_packs')) | 276 | self.assertTrue(repo_transport.has('obsolete_packs')) |
1025 | 277 | # these files are in use by another client and typically can't be deleted | 277 | # these files are in use by another client and typically can't be deleted |
1027 | 278 | repo_transport.put_bytes('obsolete_packs/.nfsblahblah', 'contents') | 278 | repo_transport.put_bytes('obsolete_packs/.nfsblahblah', b'contents') |
1028 | 279 | repo._pack_collection._clear_obsolete_packs() | 279 | repo._pack_collection._clear_obsolete_packs() |
1029 | 280 | self.assertTrue(repo_transport.has('obsolete_packs/.nfsblahblah')) | 280 | self.assertTrue(repo_transport.has('obsolete_packs/.nfsblahblah')) |
1030 | 281 | 281 | ||
1031 | 282 | 282 | ||
1032 | === modified file 'breezy/tests/per_repository/test_commit_builder.py' | |||
1033 | --- breezy/tests/per_repository/test_commit_builder.py 2018-05-05 15:49:41 +0000 | |||
1034 | +++ breezy/tests/per_repository/test_commit_builder.py 2018-06-21 23:03:57 +0000 | |||
1035 | @@ -556,7 +556,7 @@ | |||
1036 | 556 | tree = self.make_branch_and_tree('.') | 556 | tree = self.make_branch_and_tree('.') |
1037 | 557 | self.build_tree(['file']) | 557 | self.build_tree(['file']) |
1038 | 558 | def change_file(): | 558 | def change_file(): |
1040 | 559 | tree.put_file_bytes_non_atomic('file', 'new content') | 559 | tree.put_file_bytes_non_atomic('file', b'new content') |
1041 | 560 | self._add_commit_change_check_changed(tree, ('file', 'file'), change_file, | 560 | self._add_commit_change_check_changed(tree, ('file', 'file'), change_file, |
1042 | 561 | expect_fs_hash=True) | 561 | expect_fs_hash=True) |
1043 | 562 | 562 | ||
1044 | 563 | 563 | ||
1045 | === modified file 'breezy/tests/per_repository/test_repository.py' | |||
1046 | --- breezy/tests/per_repository/test_repository.py 2018-06-15 13:10:28 +0000 | |||
1047 | +++ breezy/tests/per_repository/test_repository.py 2018-06-21 23:03:57 +0000 | |||
1048 | @@ -44,6 +44,7 @@ | |||
1049 | 44 | ) | 44 | ) |
1050 | 45 | from ...sixish import ( | 45 | from ...sixish import ( |
1051 | 46 | BytesIO, | 46 | BytesIO, |
1052 | 47 | text_type, | ||
1053 | 47 | ) | 48 | ) |
1054 | 48 | from .. import ( | 49 | from .. import ( |
1055 | 49 | per_repository, | 50 | per_repository, |
1056 | @@ -416,7 +417,7 @@ | |||
1057 | 416 | self.assertEqual(rev.message, message) | 417 | self.assertEqual(rev.message, message) |
1058 | 417 | # insist the class is unicode no matter what came in for | 418 | # insist the class is unicode no matter what came in for |
1059 | 418 | # consistency. | 419 | # consistency. |
1061 | 419 | self.assertIsInstance(rev.message, unicode) | 420 | self.assertIsInstance(rev.message, text_type) |
1062 | 420 | 421 | ||
1063 | 421 | def test_commit_unicode_message(self): | 422 | def test_commit_unicode_message(self): |
1064 | 422 | # a siple unicode message should be preserved | 423 | # a siple unicode message should be preserved |
1065 | 423 | 424 | ||
1066 | === modified file 'breezy/tests/per_repository_reference/test_fetch.py' | |||
1067 | --- breezy/tests/per_repository_reference/test_fetch.py 2018-05-22 02:05:12 +0000 | |||
1068 | +++ breezy/tests/per_repository_reference/test_fetch.py 2018-06-21 23:03:57 +0000 | |||
1069 | @@ -61,25 +61,25 @@ | |||
1070 | 61 | # Use 'make_branch' which gives us a bzr:// branch when appropriate, | 61 | # Use 'make_branch' which gives us a bzr:// branch when appropriate, |
1071 | 62 | # rather than creating a branch-on-disk | 62 | # rather than creating a branch-on-disk |
1072 | 63 | stack_b = self.make_branch('stack-on') | 63 | stack_b = self.make_branch('stack-on') |
1074 | 64 | stack_b.pull(source_b, stop_revision='B-id') | 64 | stack_b.pull(source_b, stop_revision=b'B-id') |
1075 | 65 | target_b = self.make_branch('target') | 65 | target_b = self.make_branch('target') |
1076 | 66 | target_b.set_stacked_on_url('../stack-on') | 66 | target_b.set_stacked_on_url('../stack-on') |
1078 | 67 | target_b.pull(source_b, stop_revision='C-id') | 67 | target_b.pull(source_b, stop_revision=b'C-id') |
1079 | 68 | # At this point, we should have a target branch, with 1 revision, on | 68 | # At this point, we should have a target branch, with 1 revision, on |
1080 | 69 | # top of the source. | 69 | # top of the source. |
1081 | 70 | final_b = self.make_branch('final') | 70 | final_b = self.make_branch('final') |
1082 | 71 | final_b.pull(target_b) | 71 | final_b.pull(target_b) |
1083 | 72 | final_b.lock_read() | 72 | final_b.lock_read() |
1084 | 73 | self.addCleanup(final_b.unlock) | 73 | self.addCleanup(final_b.unlock) |
1087 | 74 | self.assertEqual('C-id', final_b.last_revision()) | 74 | self.assertEqual(b'C-id', final_b.last_revision()) |
1088 | 75 | text_keys = [('a-id', 'A-id'), ('a-id', 'B-id'), ('a-id', 'C-id')] | 75 | text_keys = [(b'a-id', b'A-id'), (b'a-id', b'B-id'), (b'a-id', b'C-id')] |
1089 | 76 | stream = final_b.repository.texts.get_record_stream(text_keys, | 76 | stream = final_b.repository.texts.get_record_stream(text_keys, |
1090 | 77 | 'unordered', True) | 77 | 'unordered', True) |
1091 | 78 | records = sorted([(r.key, r.get_bytes_as('fulltext')) for r in stream]) | 78 | records = sorted([(r.key, r.get_bytes_as('fulltext')) for r in stream]) |
1092 | 79 | self.assertEqual([ | 79 | self.assertEqual([ |
1096 | 80 | (('a-id', 'A-id'), ''.join(content[:-2])), | 80 | ((b'a-id', b'A-id'), b''.join(content[:-2])), |
1097 | 81 | (('a-id', 'B-id'), ''.join(content[:-1])), | 81 | ((b'a-id', b'B-id'), b''.join(content[:-1])), |
1098 | 82 | (('a-id', 'C-id'), ''.join(content)), | 82 | ((b'a-id', b'C-id'), b''.join(content)), |
1099 | 83 | ], records) | 83 | ], records) |
1100 | 84 | 84 | ||
1101 | 85 | def test_sprout_from_smart_stacked_with_short_history(self): | 85 | def test_sprout_from_smart_stacked_with_short_history(self): |
1102 | @@ -97,7 +97,7 @@ | |||
1103 | 97 | target_bzrdir.create_repository() | 97 | target_bzrdir.create_repository() |
1104 | 98 | target_b = target_bzrdir.create_branch() | 98 | target_b = target_bzrdir.create_branch() |
1105 | 99 | target_b.set_stacked_on_url('../stack-on') | 99 | target_b.set_stacked_on_url('../stack-on') |
1107 | 100 | target_b.pull(source_b, stop_revision='C-id') | 100 | target_b.pull(source_b, stop_revision=b'C-id') |
1108 | 101 | # Now we should be able to branch from the remote location to a local | 101 | # Now we should be able to branch from the remote location to a local |
1109 | 102 | # location | 102 | # location |
1110 | 103 | final_b = target_b.controldir.sprout('final').open_branch() | 103 | final_b = target_b.controldir.sprout('final').open_branch() |
1111 | @@ -114,16 +114,16 @@ | |||
1112 | 114 | builder = self.make_branch_builder('source') | 114 | builder = self.make_branch_builder('source') |
1113 | 115 | builder.start_series() | 115 | builder.start_series() |
1114 | 116 | builder.build_snapshot(None, [ | 116 | builder.build_snapshot(None, [ |
1117 | 117 | ('add', ('', 'root-id', 'directory', None)), | 117 | ('add', ('', b'root-id', 'directory', None)), |
1118 | 118 | ('add', ('file', 'file-id', 'file', 'content\n'))], | 118 | ('add', ('file', b'file-id', 'file', b'content\n'))], |
1119 | 119 | revision_id=b'A-id') | 119 | revision_id=b'A-id') |
1121 | 120 | builder.build_snapshot(['A-id', 'ghost-id'], [], revision_id=b'B-id') | 120 | builder.build_snapshot([b'A-id', b'ghost-id'], [], revision_id=b'B-id') |
1122 | 121 | builder.finish_series() | 121 | builder.finish_series() |
1123 | 122 | source_b = builder.get_branch() | 122 | source_b = builder.get_branch() |
1124 | 123 | source_b.lock_read() | 123 | source_b.lock_read() |
1125 | 124 | self.addCleanup(source_b.unlock) | 124 | self.addCleanup(source_b.unlock) |
1126 | 125 | base = self.make_branch('base') | 125 | base = self.make_branch('base') |
1128 | 126 | base.pull(source_b, stop_revision='A-id') | 126 | base.pull(source_b, stop_revision=b'A-id') |
1129 | 127 | stacked = self.make_branch('stacked') | 127 | stacked = self.make_branch('stacked') |
1130 | 128 | stacked.set_stacked_on_url('../base') | 128 | stacked.set_stacked_on_url('../base') |
1131 | 129 | return source_b, base, stacked | 129 | return source_b, base, stacked |
1132 | @@ -131,7 +131,7 @@ | |||
1133 | 131 | def test_fetch_with_ghost_stacked(self): | 131 | def test_fetch_with_ghost_stacked(self): |
1134 | 132 | (source_b, base, | 132 | (source_b, base, |
1135 | 133 | stacked) = self.make_source_with_ghost_and_stacked_target() | 133 | stacked) = self.make_source_with_ghost_and_stacked_target() |
1137 | 134 | stacked.pull(source_b, stop_revision='B-id') | 134 | stacked.pull(source_b, stop_revision=b'B-id') |
1138 | 135 | 135 | ||
1139 | 136 | def test_fetch_into_smart_stacked_with_ghost(self): | 136 | def test_fetch_into_smart_stacked_with_ghost(self): |
1140 | 137 | (source_b, base, | 137 | (source_b, base, |
1141 | @@ -142,7 +142,7 @@ | |||
1142 | 142 | stacked = branch.Branch.open(trans.base) | 142 | stacked = branch.Branch.open(trans.base) |
1143 | 143 | stacked.lock_write() | 143 | stacked.lock_write() |
1144 | 144 | self.addCleanup(stacked.unlock) | 144 | self.addCleanup(stacked.unlock) |
1146 | 145 | stacked.pull(source_b, stop_revision='B-id') | 145 | stacked.pull(source_b, stop_revision=b'B-id') |
1147 | 146 | 146 | ||
1148 | 147 | def test_fetch_to_stacked_from_smart_with_ghost(self): | 147 | def test_fetch_to_stacked_from_smart_with_ghost(self): |
1149 | 148 | (source_b, base, | 148 | (source_b, base, |
1150 | @@ -153,7 +153,7 @@ | |||
1151 | 153 | source_b = branch.Branch.open(trans.base) | 153 | source_b = branch.Branch.open(trans.base) |
1152 | 154 | source_b.lock_read() | 154 | source_b.lock_read() |
1153 | 155 | self.addCleanup(source_b.unlock) | 155 | self.addCleanup(source_b.unlock) |
1155 | 156 | stacked.pull(source_b, stop_revision='B-id') | 156 | stacked.pull(source_b, stop_revision=b'B-id') |
1156 | 157 | 157 | ||
1157 | 158 | 158 | ||
1158 | 159 | class TestFetchFromRepoWithUnconfiguredFallbacks(TestFetchBase): | 159 | class TestFetchFromRepoWithUnconfiguredFallbacks(TestFetchBase): |
1159 | @@ -163,10 +163,10 @@ | |||
1160 | 163 | # Use 'make_branch' which gives us a bzr:// branch when appropriate, | 163 | # Use 'make_branch' which gives us a bzr:// branch when appropriate, |
1161 | 164 | # rather than creating a branch-on-disk | 164 | # rather than creating a branch-on-disk |
1162 | 165 | stack_b = self.make_branch('stack-on') | 165 | stack_b = self.make_branch('stack-on') |
1164 | 166 | stack_b.pull(source_b, stop_revision='B-id') | 166 | stack_b.pull(source_b, stop_revision=b'B-id') |
1165 | 167 | stacked_b = self.make_branch('stacked') | 167 | stacked_b = self.make_branch('stacked') |
1166 | 168 | stacked_b.set_stacked_on_url('../stack-on') | 168 | stacked_b.set_stacked_on_url('../stack-on') |
1168 | 169 | stacked_b.pull(source_b, stop_revision='C-id') | 169 | stacked_b.pull(source_b, stop_revision=b'C-id') |
1169 | 170 | return stacked_b.repository | 170 | return stacked_b.repository |
1170 | 171 | 171 | ||
1171 | 172 | def test_fetch_everything_includes_parent_invs(self): | 172 | def test_fetch_everything_includes_parent_invs(self): |
1172 | @@ -182,9 +182,9 @@ | |||
1173 | 182 | target.revisions.keys()) | 182 | target.revisions.keys()) |
1174 | 183 | self.assertEqual(repo_missing_fallbacks.inventories.keys(), | 183 | self.assertEqual(repo_missing_fallbacks.inventories.keys(), |
1175 | 184 | target.inventories.keys()) | 184 | target.inventories.keys()) |
1177 | 185 | self.assertEqual(['C-id'], | 185 | self.assertEqual([b'C-id'], |
1178 | 186 | sorted(k[-1] for k in target.revisions.keys())) | 186 | sorted(k[-1] for k in target.revisions.keys())) |
1180 | 187 | self.assertEqual(['B-id', 'C-id'], | 187 | self.assertEqual([b'B-id', b'C-id'], |
1181 | 188 | sorted(k[-1] for k in target.inventories.keys())) | 188 | sorted(k[-1] for k in target.inventories.keys())) |
1182 | 189 | 189 | ||
1183 | 190 | 190 | ||
1184 | 191 | 191 | ||
1185 | === modified file 'breezy/tests/per_repository_reference/test_graph.py' | |||
1186 | --- breezy/tests/per_repository_reference/test_graph.py 2018-05-22 02:05:12 +0000 | |||
1187 | +++ breezy/tests/per_repository_reference/test_graph.py 2018-06-21 23:03:57 +0000 | |||
1188 | @@ -57,19 +57,19 @@ | |||
1189 | 57 | builder = self.make_branch_builder('source') | 57 | builder = self.make_branch_builder('source') |
1190 | 58 | builder.start_series() | 58 | builder.start_series() |
1191 | 59 | builder.build_snapshot(None, [ | 59 | builder.build_snapshot(None, [ |
1193 | 60 | ('add', ('', 'directory', 'root-id', None))], | 60 | ('add', ('', 'directory', b'root-id', None))], |
1194 | 61 | revision_id=b'A') | 61 | revision_id=b'A') |
1200 | 62 | builder.build_snapshot(['A'], [], revision_id=b'B') | 62 | builder.build_snapshot([b'A'], [], revision_id=b'B') |
1201 | 63 | builder.build_snapshot(['B'], [], revision_id=b'C') | 63 | builder.build_snapshot([b'B'], [], revision_id=b'C') |
1202 | 64 | builder.build_snapshot(['C'], [], revision_id=b'D') | 64 | builder.build_snapshot([b'C'], [], revision_id=b'D') |
1203 | 65 | builder.build_snapshot(['D'], [], revision_id=b'E') | 65 | builder.build_snapshot([b'D'], [], revision_id=b'E') |
1204 | 66 | builder.build_snapshot(['E'], [], revision_id=b'F') | 66 | builder.build_snapshot([b'E'], [], revision_id=b'F') |
1205 | 67 | source_b = builder.get_branch() | 67 | source_b = builder.get_branch() |
1206 | 68 | master_b = self.make_branch('master') | 68 | master_b = self.make_branch('master') |
1208 | 69 | master_b.pull(source_b, stop_revision='E') | 69 | master_b.pull(source_b, stop_revision=b'E') |
1209 | 70 | stacked_b = self.make_branch('stacked') | 70 | stacked_b = self.make_branch('stacked') |
1210 | 71 | stacked_b.set_stacked_on_url('../master') | 71 | stacked_b.set_stacked_on_url('../master') |
1212 | 72 | stacked_b.pull(source_b, stop_revision='F') | 72 | stacked_b.pull(source_b, stop_revision=b'F') |
1213 | 73 | builder.finish_series() | 73 | builder.finish_series() |
1214 | 74 | return master_b, stacked_b | 74 | return master_b, stacked_b |
1215 | 75 | 75 | ||
1216 | 76 | 76 | ||
1217 | === modified file 'breezy/tests/per_repository_reference/test_unlock.py' | |||
1218 | --- breezy/tests/per_repository_reference/test_unlock.py 2018-05-22 02:05:12 +0000 | |||
1219 | +++ breezy/tests/per_repository_reference/test_unlock.py 2018-06-21 23:03:57 +0000 | |||
1220 | @@ -35,24 +35,24 @@ | |||
1221 | 35 | if not repo._format.supports_external_lookups: | 35 | if not repo._format.supports_external_lookups: |
1222 | 36 | raise tests.TestNotApplicable('format does not support stacking') | 36 | raise tests.TestNotApplicable('format does not support stacking') |
1223 | 37 | builder.build_snapshot(None, [ | 37 | builder.build_snapshot(None, [ |
1226 | 38 | ('add', ('', 'root-id', 'directory', None)), | 38 | ('add', ('', b'root-id', 'directory', None)), |
1227 | 39 | ('add', ('file', 'file-id', 'file', 'contents\n'))], | 39 | ('add', ('file', b'file-id', 'file', b'contents\n'))], |
1228 | 40 | revision_id=b'A-id') | 40 | revision_id=b'A-id') |
1231 | 41 | builder.build_snapshot(['A-id'], [ | 41 | builder.build_snapshot([b'A-id'], [ |
1232 | 42 | ('modify', ('file', 'new-content\n'))], | 42 | ('modify', ('file', b'new-content\n'))], |
1233 | 43 | revision_id=b'B-id') | 43 | revision_id=b'B-id') |
1236 | 44 | builder.build_snapshot(['B-id'], [ | 44 | builder.build_snapshot([b'B-id'], [ |
1237 | 45 | ('modify', ('file', 'yet more content\n'))], | 45 | ('modify', ('file', b'yet more content\n'))], |
1238 | 46 | revision_id=b'C-id') | 46 | revision_id=b'C-id') |
1239 | 47 | builder.finish_series() | 47 | builder.finish_series() |
1240 | 48 | source_b = builder.get_branch() | 48 | source_b = builder.get_branch() |
1241 | 49 | source_b.lock_read() | 49 | source_b.lock_read() |
1242 | 50 | self.addCleanup(source_b.unlock) | 50 | self.addCleanup(source_b.unlock) |
1243 | 51 | base = self.make_branch('base') | 51 | base = self.make_branch('base') |
1245 | 52 | base.pull(source_b, stop_revision='B-id') | 52 | base.pull(source_b, stop_revision=b'B-id') |
1246 | 53 | stacked = self.make_branch('stacked') | 53 | stacked = self.make_branch('stacked') |
1247 | 54 | stacked.set_stacked_on_url('../base') | 54 | stacked.set_stacked_on_url('../base') |
1249 | 55 | stacked.pull(source_b, stop_revision='C-id') | 55 | stacked.pull(source_b, stop_revision=b'C-id') |
1250 | 56 | 56 | ||
1251 | 57 | return base, stacked | 57 | return base, stacked |
1252 | 58 | 58 | ||
1253 | 59 | 59 | ||
1254 | === modified file 'breezy/tests/per_repository_vf/test_check_reconcile.py' | |||
1255 | --- breezy/tests/per_repository_vf/test_check_reconcile.py 2017-06-08 23:30:31 +0000 | |||
1256 | +++ breezy/tests/per_repository_vf/test_check_reconcile.py 2018-06-21 23:03:57 +0000 | |||
1257 | @@ -99,10 +99,10 @@ | |||
1258 | 99 | """ | 99 | """ |
1259 | 100 | 100 | ||
1260 | 101 | def all_versions_after_reconcile(self): | 101 | def all_versions_after_reconcile(self): |
1262 | 102 | return ('rev1a', ) | 102 | return (b'rev1a', ) |
1263 | 103 | 103 | ||
1264 | 104 | def populated_parents(self): | 104 | def populated_parents(self): |
1266 | 105 | return (((), 'rev1a'), ) | 105 | return (((), b'rev1a'), ) |
1267 | 106 | 106 | ||
1268 | 107 | def corrected_parents(self): | 107 | def corrected_parents(self): |
1269 | 108 | # Same as the populated parents, because there was nothing wrong. | 108 | # Same as the populated parents, because there was nothing wrong. |
1270 | @@ -114,22 +114,22 @@ | |||
1271 | 114 | def populate_repository(self, repo): | 114 | def populate_repository(self, repo): |
1272 | 115 | # make rev1a: A well-formed revision, containing 'a-file' | 115 | # make rev1a: A well-formed revision, containing 'a-file' |
1273 | 116 | inv = self.make_one_file_inventory( | 116 | inv = self.make_one_file_inventory( |
1276 | 117 | repo, 'rev1a', [], root_revision='rev1a') | 117 | repo, b'rev1a', [], root_revision=b'rev1a') |
1277 | 118 | self.add_revision(repo, 'rev1a', inv, []) | 118 | self.add_revision(repo, b'rev1a', inv, []) |
1278 | 119 | self.versioned_root = repo.supports_rich_root() | 119 | self.versioned_root = repo.supports_rich_root() |
1279 | 120 | 120 | ||
1280 | 121 | def repository_text_key_references(self): | 121 | def repository_text_key_references(self): |
1281 | 122 | result = {} | 122 | result = {} |
1282 | 123 | if self.versioned_root: | 123 | if self.versioned_root: |
1285 | 124 | result.update({('TREE_ROOT', 'rev1a'): True}) | 124 | result.update({(b'TREE_ROOT', b'rev1a'): True}) |
1286 | 125 | result.update({('a-file-id', 'rev1a'): True}) | 125 | result.update({(b'a-file-id', b'rev1a'): True}) |
1287 | 126 | return result | 126 | return result |
1288 | 127 | 127 | ||
1289 | 128 | def repository_text_keys(self): | 128 | def repository_text_keys(self): |
1291 | 129 | return {('a-file-id', 'rev1a'):[NULL_REVISION]} | 129 | return {(b'a-file-id', b'rev1a'):[NULL_REVISION]} |
1292 | 130 | 130 | ||
1293 | 131 | def versioned_repository_text_keys(self): | 131 | def versioned_repository_text_keys(self): |
1295 | 132 | return {('TREE_ROOT', 'rev1a'):[NULL_REVISION]} | 132 | return {(b'TREE_ROOT', b'rev1a'):[NULL_REVISION]} |
1296 | 133 | 133 | ||
1297 | 134 | 134 | ||
1298 | 135 | class FileParentIsNotInRevisionAncestryScenario(BrokenRepoScenario): | 135 | class FileParentIsNotInRevisionAncestryScenario(BrokenRepoScenario): |
1299 | @@ -164,39 +164,39 @@ | |||
1300 | 164 | def populate_repository(self, repo): | 164 | def populate_repository(self, repo): |
1301 | 165 | # make rev1a: A well-formed revision, containing 'a-file' | 165 | # make rev1a: A well-formed revision, containing 'a-file' |
1302 | 166 | inv = self.make_one_file_inventory( | 166 | inv = self.make_one_file_inventory( |
1305 | 167 | repo, 'rev1a', [], root_revision='rev1a') | 167 | repo, b'rev1a', [], root_revision=b'rev1a') |
1306 | 168 | self.add_revision(repo, 'rev1a', inv, []) | 168 | self.add_revision(repo, b'rev1a', inv, []) |
1307 | 169 | 169 | ||
1308 | 170 | # make rev1b, which has no Revision, but has an Inventory, and | 170 | # make rev1b, which has no Revision, but has an Inventory, and |
1309 | 171 | # a-file | 171 | # a-file |
1310 | 172 | inv = self.make_one_file_inventory( | 172 | inv = self.make_one_file_inventory( |
1313 | 173 | repo, 'rev1b', [], root_revision='rev1b') | 173 | repo, b'rev1b', [], root_revision=b'rev1b') |
1314 | 174 | repo.add_inventory('rev1b', inv, []) | 174 | repo.add_inventory(b'rev1b', inv, []) |
1315 | 175 | 175 | ||
1316 | 176 | # make rev2, with a-file. | 176 | # make rev2, with a-file. |
1317 | 177 | # a-file has 'rev1b' as an ancestor, even though this is not | 177 | # a-file has 'rev1b' as an ancestor, even though this is not |
1318 | 178 | # mentioned by 'rev1a', making it an unreferenced ancestor | 178 | # mentioned by 'rev1a', making it an unreferenced ancestor |
1319 | 179 | inv = self.make_one_file_inventory( | 179 | inv = self.make_one_file_inventory( |
1322 | 180 | repo, 'rev2', ['rev1a', 'rev1b']) | 180 | repo, b'rev2', [b'rev1a', b'rev1b']) |
1323 | 181 | self.add_revision(repo, 'rev2', inv, ['rev1a']) | 181 | self.add_revision(repo, b'rev2', inv, [b'rev1a']) |
1324 | 182 | self.versioned_root = repo.supports_rich_root() | 182 | self.versioned_root = repo.supports_rich_root() |
1325 | 183 | 183 | ||
1326 | 184 | def repository_text_key_references(self): | 184 | def repository_text_key_references(self): |
1327 | 185 | result = {} | 185 | result = {} |
1328 | 186 | if self.versioned_root: | 186 | if self.versioned_root: |
1333 | 187 | result.update({('TREE_ROOT', 'rev1a'): True, | 187 | result.update({(b'TREE_ROOT', b'rev1a'): True, |
1334 | 188 | ('TREE_ROOT', 'rev2'): True}) | 188 | (b'TREE_ROOT', b'rev2'): True}) |
1335 | 189 | result.update({('a-file-id', 'rev1a'): True, | 189 | result.update({(b'a-file-id', b'rev1a'): True, |
1336 | 190 | ('a-file-id', 'rev2'): True}) | 190 | (b'a-file-id', b'rev2'): True}) |
1337 | 191 | return result | 191 | return result |
1338 | 192 | 192 | ||
1339 | 193 | def repository_text_keys(self): | 193 | def repository_text_keys(self): |
1342 | 194 | return {('a-file-id', 'rev1a'):[NULL_REVISION], | 194 | return {(b'a-file-id', b'rev1a'):[NULL_REVISION], |
1343 | 195 | ('a-file-id', 'rev2'):[('a-file-id', 'rev1a')]} | 195 | (b'a-file-id', b'rev2'):[(b'a-file-id', b'rev1a')]} |
1344 | 196 | 196 | ||
1345 | 197 | def versioned_repository_text_keys(self): | 197 | def versioned_repository_text_keys(self): |
1348 | 198 | return {('TREE_ROOT', 'rev1a'):[NULL_REVISION], | 198 | return {(b'TREE_ROOT', b'rev1a'):[NULL_REVISION], |
1349 | 199 | ('TREE_ROOT', 'rev2'):[('TREE_ROOT', 'rev1a')]} | 199 | (b'TREE_ROOT', b'rev2'):[(b'TREE_ROOT', b'rev1a')]} |
1350 | 200 | 200 | ||
1351 | 201 | 201 | ||
1352 | 202 | class FileParentHasInaccessibleInventoryScenario(BrokenRepoScenario): | 202 | class FileParentHasInaccessibleInventoryScenario(BrokenRepoScenario): |
1353 | @@ -327,15 +327,15 @@ | |||
1354 | 327 | def populate_repository(self, repo): | 327 | def populate_repository(self, repo): |
1355 | 328 | # make rev1a: A well-formed revision, containing 'a-file' | 328 | # make rev1a: A well-formed revision, containing 'a-file' |
1356 | 329 | inv = self.make_one_file_inventory( | 329 | inv = self.make_one_file_inventory( |
1359 | 330 | repo, 'rev1a', [], root_revision='rev1a') | 330 | repo, b'rev1a', [], root_revision=b'rev1a') |
1360 | 331 | self.add_revision(repo, 'rev1a', inv, []) | 331 | self.add_revision(repo, b'rev1a', inv, []) |
1361 | 332 | 332 | ||
1362 | 333 | # make rev2, with a-file. | 333 | # make rev2, with a-file. |
1363 | 334 | # a-file is unmodified from rev1a, and an unreferenced rev2 file | 334 | # a-file is unmodified from rev1a, and an unreferenced rev2 file |
1364 | 335 | # version is present in the repository. | 335 | # version is present in the repository. |
1365 | 336 | self.make_one_file_inventory( | 336 | self.make_one_file_inventory( |
1368 | 337 | repo, 'rev2', ['rev1a'], inv_revision='rev1a') | 337 | repo, b'rev2', [b'rev1a'], inv_revision=b'rev1a') |
1369 | 338 | self.add_revision(repo, 'rev2', inv, ['rev1a']) | 338 | self.add_revision(repo, b'rev2', inv, [b'rev1a']) |
1370 | 339 | 339 | ||
1371 | 340 | # make rev3 with a-file | 340 | # make rev3 with a-file |
1372 | 341 | # a-file has 'rev2' as its ancestor, but the revision in 'rev2' was | 341 | # a-file has 'rev2' as its ancestor, but the revision in 'rev2' was |
1373 | @@ -344,8 +344,8 @@ | |||
1374 | 344 | # ghost, so only the details from rev1a are available for | 344 | # ghost, so only the details from rev1a are available for |
1375 | 345 | # determining whether a delta is acceptable, or a full is needed, | 345 | # determining whether a delta is acceptable, or a full is needed, |
1376 | 346 | # and what the correct parents are. | 346 | # and what the correct parents are. |
1379 | 347 | inv = self.make_one_file_inventory(repo, 'rev3', ['rev2']) | 347 | inv = self.make_one_file_inventory(repo, b'rev3', [b'rev2']) |
1380 | 348 | self.add_revision(repo, 'rev3', inv, ['rev1c', 'rev1a']) | 348 | self.add_revision(repo, b'rev3', inv, [b'rev1c', b'rev1a']) |
1381 | 349 | 349 | ||
1382 | 350 | # In rev2b, the true last-modifying-revision of a-file is rev1a, | 350 | # In rev2b, the true last-modifying-revision of a-file is rev1a, |
1383 | 351 | # inherited from rev2, but there is a version rev2b of the file, which | 351 | # inherited from rev2, but there is a version rev2b of the file, which |
1384 | @@ -354,8 +354,8 @@ | |||
1385 | 354 | # a-file-rev2b. | 354 | # a-file-rev2b. |
1386 | 355 | # ??? This is to test deduplication in fixing rev4 | 355 | # ??? This is to test deduplication in fixing rev4 |
1387 | 356 | inv = self.make_one_file_inventory( | 356 | inv = self.make_one_file_inventory( |
1390 | 357 | repo, 'rev2b', ['rev1a'], inv_revision='rev1a') | 357 | repo, b'rev2b', [b'rev1a'], inv_revision=b'rev1a') |
1391 | 358 | self.add_revision(repo, 'rev2b', inv, ['rev1a']) | 358 | self.add_revision(repo, b'rev2b', inv, [b'rev1a']) |
1392 | 359 | 359 | ||
1393 | 360 | # rev4 is for testing that when the last modified of a file in | 360 | # rev4 is for testing that when the last modified of a file in |
1394 | 361 | # multiple parent revisions is the same, that it only appears once | 361 | # multiple parent revisions is the same, that it only appears once |
1395 | @@ -365,13 +365,13 @@ | |||
1396 | 365 | # a-file, and is a merge of rev2 and rev2b, so it should end up with | 365 | # a-file, and is a merge of rev2 and rev2b, so it should end up with |
1397 | 366 | # a parent of just rev1a - the starting file parents list is simply | 366 | # a parent of just rev1a - the starting file parents list is simply |
1398 | 367 | # completely wrong. | 367 | # completely wrong. |
1401 | 368 | inv = self.make_one_file_inventory(repo, 'rev4', ['rev2']) | 368 | inv = self.make_one_file_inventory(repo, b'rev4', [b'rev2']) |
1402 | 369 | self.add_revision(repo, 'rev4', inv, ['rev2', 'rev2b']) | 369 | self.add_revision(repo, b'rev4', inv, [b'rev2', b'rev2b']) |
1403 | 370 | 370 | ||
1404 | 371 | # rev2c changes a-file from rev1a, so the version it of a-file it | 371 | # rev2c changes a-file from rev1a, so the version it of a-file it |
1405 | 372 | # introduces is a head revision when rev5 is checked. | 372 | # introduces is a head revision when rev5 is checked. |
1408 | 373 | inv = self.make_one_file_inventory(repo, 'rev2c', ['rev1a']) | 373 | inv = self.make_one_file_inventory(repo, b'rev2c', [b'rev1a']) |
1409 | 374 | self.add_revision(repo, 'rev2c', inv, ['rev1a']) | 374 | self.add_revision(repo, b'rev2c', inv, [b'rev1a']) |
1410 | 375 | 375 | ||
1411 | 376 | # rev5 descends from rev2 and rev2c; as rev2 does not alter a-file, | 376 | # rev5 descends from rev2 and rev2c; as rev2 does not alter a-file, |
1412 | 377 | # but rev2c does, this should use rev2c as the parent for the per | 377 | # but rev2c does, this should use rev2c as the parent for the per |
1413 | @@ -379,44 +379,44 @@ | |||
1414 | 379 | # available, because we use the heads of the revision parents for | 379 | # available, because we use the heads of the revision parents for |
1415 | 380 | # the inventory modification revisions of the file to determine the | 380 | # the inventory modification revisions of the file to determine the |
1416 | 381 | # parents for the per file graph. | 381 | # parents for the per file graph. |
1419 | 382 | inv = self.make_one_file_inventory(repo, 'rev5', ['rev2', 'rev2c']) | 382 | inv = self.make_one_file_inventory(repo, b'rev5', [b'rev2', b'rev2c']) |
1420 | 383 | self.add_revision(repo, 'rev5', inv, ['rev2', 'rev2c']) | 383 | self.add_revision(repo, b'rev5', inv, [b'rev2', b'rev2c']) |
1421 | 384 | self.versioned_root = repo.supports_rich_root() | 384 | self.versioned_root = repo.supports_rich_root() |
1422 | 385 | 385 | ||
1423 | 386 | def repository_text_key_references(self): | 386 | def repository_text_key_references(self): |
1424 | 387 | result = {} | 387 | result = {} |
1425 | 388 | if self.versioned_root: | 388 | if self.versioned_root: |
1438 | 389 | result.update({('TREE_ROOT', 'rev1a'): True, | 389 | result.update({(b'TREE_ROOT', b'rev1a'): True, |
1439 | 390 | ('TREE_ROOT', 'rev2'): True, | 390 | (b'TREE_ROOT', b'rev2'): True, |
1440 | 391 | ('TREE_ROOT', 'rev2b'): True, | 391 | (b'TREE_ROOT', b'rev2b'): True, |
1441 | 392 | ('TREE_ROOT', 'rev2c'): True, | 392 | (b'TREE_ROOT', b'rev2c'): True, |
1442 | 393 | ('TREE_ROOT', 'rev3'): True, | 393 | (b'TREE_ROOT', b'rev3'): True, |
1443 | 394 | ('TREE_ROOT', 'rev4'): True, | 394 | (b'TREE_ROOT', b'rev4'): True, |
1444 | 395 | ('TREE_ROOT', 'rev5'): True}) | 395 | (b'TREE_ROOT', b'rev5'): True}) |
1445 | 396 | result.update({('a-file-id', 'rev1a'): True, | 396 | result.update({(b'a-file-id', b'rev1a'): True, |
1446 | 397 | ('a-file-id', 'rev2c'): True, | 397 | (b'a-file-id', b'rev2c'): True, |
1447 | 398 | ('a-file-id', 'rev3'): True, | 398 | (b'a-file-id', b'rev3'): True, |
1448 | 399 | ('a-file-id', 'rev4'): True, | 399 | (b'a-file-id', b'rev4'): True, |
1449 | 400 | ('a-file-id', 'rev5'): True}) | 400 | (b'a-file-id', b'rev5'): True}) |
1450 | 401 | return result | 401 | return result |
1451 | 402 | 402 | ||
1452 | 403 | def repository_text_keys(self): | 403 | def repository_text_keys(self): |
1458 | 404 | return {('a-file-id', 'rev1a'): [NULL_REVISION], | 404 | return {(b'a-file-id', b'rev1a'): [NULL_REVISION], |
1459 | 405 | ('a-file-id', 'rev2c'): [('a-file-id', 'rev1a')], | 405 | (b'a-file-id', b'rev2c'): [(b'a-file-id', b'rev1a')], |
1460 | 406 | ('a-file-id', 'rev3'): [('a-file-id', 'rev1a')], | 406 | (b'a-file-id', b'rev3'): [(b'a-file-id', b'rev1a')], |
1461 | 407 | ('a-file-id', 'rev4'): [('a-file-id', 'rev1a')], | 407 | (b'a-file-id', b'rev4'): [(b'a-file-id', b'rev1a')], |
1462 | 408 | ('a-file-id', 'rev5'): [('a-file-id', 'rev2c')]} | 408 | (b'a-file-id', b'rev5'): [(b'a-file-id', b'rev2c')]} |
1463 | 409 | 409 | ||
1464 | 410 | def versioned_repository_text_keys(self): | 410 | def versioned_repository_text_keys(self): |
1474 | 411 | return {('TREE_ROOT', 'rev1a'): [NULL_REVISION], | 411 | return {(b'TREE_ROOT', b'rev1a'): [NULL_REVISION], |
1475 | 412 | ('TREE_ROOT', 'rev2'): [('TREE_ROOT', 'rev1a')], | 412 | (b'TREE_ROOT', b'rev2'): [(b'TREE_ROOT', b'rev1a')], |
1476 | 413 | ('TREE_ROOT', 'rev2b'): [('TREE_ROOT', 'rev1a')], | 413 | (b'TREE_ROOT', b'rev2b'): [(b'TREE_ROOT', b'rev1a')], |
1477 | 414 | ('TREE_ROOT', 'rev2c'): [('TREE_ROOT', 'rev1a')], | 414 | (b'TREE_ROOT', b'rev2c'): [(b'TREE_ROOT', b'rev1a')], |
1478 | 415 | ('TREE_ROOT', 'rev3'): [('TREE_ROOT', 'rev1a')], | 415 | (b'TREE_ROOT', b'rev3'): [(b'TREE_ROOT', b'rev1a')], |
1479 | 416 | ('TREE_ROOT', 'rev4'): | 416 | (b'TREE_ROOT', b'rev4'): |
1480 | 417 | [('TREE_ROOT', 'rev2'), ('TREE_ROOT', 'rev2b')], | 417 | [(b'TREE_ROOT', b'rev2'), (b'TREE_ROOT', b'rev2b')], |
1481 | 418 | ('TREE_ROOT', 'rev5'): | 418 | (b'TREE_ROOT', b'rev5'): |
1482 | 419 | [('TREE_ROOT', 'rev2'), ('TREE_ROOT', 'rev2c')]} | 419 | [(b'TREE_ROOT', b'rev2'), (b'TREE_ROOT', b'rev2c')]} |
1483 | 420 | 420 | ||
1484 | 421 | 421 | ||
1485 | 422 | class UnreferencedFileParentsFromNoOpMergeScenario(BrokenRepoScenario): | 422 | class UnreferencedFileParentsFromNoOpMergeScenario(BrokenRepoScenario): |
1486 | @@ -427,28 +427,28 @@ | |||
1487 | 427 | """ | 427 | """ |
1488 | 428 | 428 | ||
1489 | 429 | def all_versions_after_reconcile(self): | 429 | def all_versions_after_reconcile(self): |
1491 | 430 | return ('rev1a', 'rev1b', 'rev2', 'rev4') | 430 | return (b'rev1a', b'rev1b', b'rev2', b'rev4') |
1492 | 431 | 431 | ||
1493 | 432 | def populated_parents(self): | 432 | def populated_parents(self): |
1494 | 433 | return ( | 433 | return ( |
1500 | 434 | ((), 'rev1a'), | 434 | ((), b'rev1a'), |
1501 | 435 | ((), 'rev1b'), | 435 | ((), b'rev1b'), |
1502 | 436 | (('rev1a', 'rev1b'), 'rev2'), | 436 | ((b'rev1a', b'rev1b'), b'rev2'), |
1503 | 437 | (None, 'rev3'), | 437 | (None, b'rev3'), |
1504 | 438 | (('rev2',), 'rev4'), | 438 | ((b'rev2',), b'rev4'), |
1505 | 439 | ) | 439 | ) |
1506 | 440 | 440 | ||
1507 | 441 | def corrected_parents(self): | 441 | def corrected_parents(self): |
1508 | 442 | return ( | 442 | return ( |
1514 | 443 | ((), 'rev1a'), | 443 | ((), b'rev1a'), |
1515 | 444 | ((), 'rev1b'), | 444 | ((), b'rev1b'), |
1516 | 445 | ((), 'rev2'), | 445 | ((), b'rev2'), |
1517 | 446 | (None, 'rev3'), | 446 | (None, b'rev3'), |
1518 | 447 | (('rev2',), 'rev4'), | 447 | ((b'rev2',), b'rev4'), |
1519 | 448 | ) | 448 | ) |
1520 | 449 | 449 | ||
1521 | 450 | def corrected_fulltexts(self): | 450 | def corrected_fulltexts(self): |
1523 | 451 | return ['rev2'] | 451 | return [b'rev2'] |
1524 | 452 | 452 | ||
1525 | 453 | def check_regexes(self, repo): | 453 | def check_regexes(self, repo): |
1526 | 454 | return [] | 454 | return [] |
1527 | @@ -456,65 +456,66 @@ | |||
1528 | 456 | def populate_repository(self, repo): | 456 | def populate_repository(self, repo): |
1529 | 457 | # make rev1a: A well-formed revision, containing 'a-file' | 457 | # make rev1a: A well-formed revision, containing 'a-file' |
1530 | 458 | inv1a = self.make_one_file_inventory( | 458 | inv1a = self.make_one_file_inventory( |
1533 | 459 | repo, 'rev1a', [], root_revision='rev1a') | 459 | repo, b'rev1a', [], root_revision=b'rev1a') |
1534 | 460 | self.add_revision(repo, 'rev1a', inv1a, []) | 460 | self.add_revision(repo, b'rev1a', inv1a, []) |
1535 | 461 | 461 | ||
1536 | 462 | # make rev1b: A well-formed revision, containing 'a-file' | 462 | # make rev1b: A well-formed revision, containing 'a-file' |
1537 | 463 | # rev1b of a-file has the exact same contents as rev1a. | 463 | # rev1b of a-file has the exact same contents as rev1a. |
1540 | 464 | file_contents = repo.texts.get_record_stream([('a-file-id', 'rev1a')], | 464 | file_contents = next( |
1541 | 465 | "unordered", False).next().get_bytes_as('fulltext') | 465 | repo.texts.get_record_stream([(b'a-file-id', b'rev1a')], |
1542 | 466 | "unordered", False)).get_bytes_as('fulltext') | ||
1543 | 466 | inv = self.make_one_file_inventory( | 467 | inv = self.make_one_file_inventory( |
1545 | 467 | repo, 'rev1b', [], root_revision='rev1b', | 468 | repo, b'rev1b', [], root_revision=b'rev1b', |
1546 | 468 | file_contents=file_contents) | 469 | file_contents=file_contents) |
1548 | 469 | self.add_revision(repo, 'rev1b', inv, []) | 470 | self.add_revision(repo, b'rev1b', inv, []) |
1549 | 470 | 471 | ||
1550 | 471 | # make rev2, a merge of rev1a and rev1b, with a-file. | 472 | # make rev2, a merge of rev1a and rev1b, with a-file. |
1551 | 472 | # a-file is unmodified from rev1a and rev1b, but a new version is | 473 | # a-file is unmodified from rev1a and rev1b, but a new version is |
1552 | 473 | # wrongly present anyway. | 474 | # wrongly present anyway. |
1553 | 474 | inv = self.make_one_file_inventory( | 475 | inv = self.make_one_file_inventory( |
1555 | 475 | repo, 'rev2', ['rev1a', 'rev1b'], inv_revision='rev1a', | 476 | repo, b'rev2', [b'rev1a', b'rev1b'], inv_revision=b'rev1a', |
1556 | 476 | file_contents=file_contents) | 477 | file_contents=file_contents) |
1558 | 477 | self.add_revision(repo, 'rev2', inv, ['rev1a', 'rev1b']) | 478 | self.add_revision(repo, b'rev2', inv, [b'rev1a', b'rev1b']) |
1559 | 478 | 479 | ||
1560 | 479 | # rev3: a-file unchanged from rev2, but wrongly referencing rev2 of the | 480 | # rev3: a-file unchanged from rev2, but wrongly referencing rev2 of the |
1561 | 480 | # file in its inventory. | 481 | # file in its inventory. |
1562 | 481 | inv = self.make_one_file_inventory( | 482 | inv = self.make_one_file_inventory( |
1564 | 482 | repo, 'rev3', ['rev2'], inv_revision='rev2', | 483 | repo, b'rev3', [b'rev2'], inv_revision=b'rev2', |
1565 | 483 | file_contents=file_contents, make_file_version=False) | 484 | file_contents=file_contents, make_file_version=False) |
1567 | 484 | self.add_revision(repo, 'rev3', inv, ['rev2']) | 485 | self.add_revision(repo, b'rev3', inv, [b'rev2']) |
1568 | 485 | 486 | ||
1569 | 486 | # rev4: a modification of a-file on top of rev3. | 487 | # rev4: a modification of a-file on top of rev3. |
1572 | 487 | inv = self.make_one_file_inventory(repo, 'rev4', ['rev2']) | 488 | inv = self.make_one_file_inventory(repo, b'rev4', [b'rev2']) |
1573 | 488 | self.add_revision(repo, 'rev4', inv, ['rev3']) | 489 | self.add_revision(repo, b'rev4', inv, [b'rev3']) |
1574 | 489 | self.versioned_root = repo.supports_rich_root() | 490 | self.versioned_root = repo.supports_rich_root() |
1575 | 490 | 491 | ||
1576 | 491 | def repository_text_key_references(self): | 492 | def repository_text_key_references(self): |
1577 | 492 | result = {} | 493 | result = {} |
1578 | 493 | if self.versioned_root: | 494 | if self.versioned_root: |
1588 | 494 | result.update({('TREE_ROOT', 'rev1a'): True, | 495 | result.update({(b'TREE_ROOT', b'rev1a'): True, |
1589 | 495 | ('TREE_ROOT', 'rev1b'): True, | 496 | (b'TREE_ROOT', b'rev1b'): True, |
1590 | 496 | ('TREE_ROOT', 'rev2'): True, | 497 | (b'TREE_ROOT', b'rev2'): True, |
1591 | 497 | ('TREE_ROOT', 'rev3'): True, | 498 | (b'TREE_ROOT', b'rev3'): True, |
1592 | 498 | ('TREE_ROOT', 'rev4'): True}) | 499 | (b'TREE_ROOT', b'rev4'): True}) |
1593 | 499 | result.update({('a-file-id', 'rev1a'): True, | 500 | result.update({(b'a-file-id', b'rev1a'): True, |
1594 | 500 | ('a-file-id', 'rev1b'): True, | 501 | (b'a-file-id', b'rev1b'): True, |
1595 | 501 | ('a-file-id', 'rev2'): False, | 502 | (b'a-file-id', b'rev2'): False, |
1596 | 502 | ('a-file-id', 'rev4'): True}) | 503 | (b'a-file-id', b'rev4'): True}) |
1597 | 503 | return result | 504 | return result |
1598 | 504 | 505 | ||
1599 | 505 | def repository_text_keys(self): | 506 | def repository_text_keys(self): |
1604 | 506 | return {('a-file-id', 'rev1a'): [NULL_REVISION], | 507 | return {(b'a-file-id', b'rev1a'): [NULL_REVISION], |
1605 | 507 | ('a-file-id', 'rev1b'): [NULL_REVISION], | 508 | (b'a-file-id', b'rev1b'): [NULL_REVISION], |
1606 | 508 | ('a-file-id', 'rev2'): [NULL_REVISION], | 509 | (b'a-file-id', b'rev2'): [NULL_REVISION], |
1607 | 509 | ('a-file-id', 'rev4'): [('a-file-id', 'rev2')]} | 510 | (b'a-file-id', b'rev4'): [(b'a-file-id', b'rev2')]} |
1608 | 510 | 511 | ||
1609 | 511 | def versioned_repository_text_keys(self): | 512 | def versioned_repository_text_keys(self): |
1616 | 512 | return {('TREE_ROOT', 'rev1a'): [NULL_REVISION], | 513 | return {(b'TREE_ROOT', b'rev1a'): [NULL_REVISION], |
1617 | 513 | ('TREE_ROOT', 'rev1b'): [NULL_REVISION], | 514 | (b'TREE_ROOT', b'rev1b'): [NULL_REVISION], |
1618 | 514 | ('TREE_ROOT', 'rev2'): | 515 | (b'TREE_ROOT', b'rev2'): |
1619 | 515 | [('TREE_ROOT', 'rev1a'), ('TREE_ROOT', 'rev1b')], | 516 | [(b'TREE_ROOT', b'rev1a'), (b'TREE_ROOT', b'rev1b')], |
1620 | 516 | ('TREE_ROOT', 'rev3'): [('TREE_ROOT', 'rev2')], | 517 | (b'TREE_ROOT', b'rev3'): [(b'TREE_ROOT', b'rev2')], |
1621 | 517 | ('TREE_ROOT', 'rev4'): [('TREE_ROOT', 'rev3')]} | 518 | (b'TREE_ROOT', b'rev4'): [(b'TREE_ROOT', b'rev3')]} |
1622 | 518 | 519 | ||
1623 | 519 | 520 | ||
1624 | 520 | class TooManyParentsScenario(BrokenRepoScenario): | 521 | class TooManyParentsScenario(BrokenRepoScenario): |
1625 | @@ -525,19 +526,19 @@ | |||
1626 | 525 | """ | 526 | """ |
1627 | 526 | 527 | ||
1628 | 527 | def all_versions_after_reconcile(self): | 528 | def all_versions_after_reconcile(self): |
1630 | 528 | return ('bad-parent', 'good-parent', 'broken-revision') | 529 | return (b'bad-parent', b'good-parent', b'broken-revision') |
1631 | 529 | 530 | ||
1632 | 530 | def populated_parents(self): | 531 | def populated_parents(self): |
1633 | 531 | return ( | 532 | return ( |
1637 | 532 | ((), 'bad-parent'), | 533 | ((), b'bad-parent'), |
1638 | 533 | (('bad-parent',), 'good-parent'), | 534 | ((b'bad-parent',), b'good-parent'), |
1639 | 534 | (('good-parent', 'bad-parent'), 'broken-revision')) | 535 | ((b'good-parent', b'bad-parent'), b'broken-revision')) |
1640 | 535 | 536 | ||
1641 | 536 | def corrected_parents(self): | 537 | def corrected_parents(self): |
1642 | 537 | return ( | 538 | return ( |
1646 | 538 | ((), 'bad-parent'), | 539 | ((), b'bad-parent'), |
1647 | 539 | (('bad-parent',), 'good-parent'), | 540 | ((b'bad-parent',), b'good-parent'), |
1648 | 540 | (('good-parent',), 'broken-revision')) | 541 | ((b'good-parent',), b'broken-revision')) |
1649 | 541 | 542 | ||
1650 | 542 | def check_regexes(self, repo): | 543 | def check_regexes(self, repo): |
1651 | 543 | if repo.supports_rich_root(): | 544 | if repo.supports_rich_root(): |
1652 | @@ -554,40 +555,40 @@ | |||
1653 | 554 | 555 | ||
1654 | 555 | def populate_repository(self, repo): | 556 | def populate_repository(self, repo): |
1655 | 556 | inv = self.make_one_file_inventory( | 557 | inv = self.make_one_file_inventory( |
1666 | 557 | repo, 'bad-parent', (), root_revision='bad-parent') | 558 | repo, b'bad-parent', (), root_revision=b'bad-parent') |
1667 | 558 | self.add_revision(repo, 'bad-parent', inv, ()) | 559 | self.add_revision(repo, b'bad-parent', inv, ()) |
1668 | 559 | 560 | ||
1669 | 560 | inv = self.make_one_file_inventory( | 561 | inv = self.make_one_file_inventory( |
1670 | 561 | repo, 'good-parent', ('bad-parent',)) | 562 | repo, b'good-parent', (b'bad-parent',)) |
1671 | 562 | self.add_revision(repo, 'good-parent', inv, ('bad-parent',)) | 563 | self.add_revision(repo, b'good-parent', inv, (b'bad-parent',)) |
1672 | 563 | 564 | ||
1673 | 564 | inv = self.make_one_file_inventory( | 565 | inv = self.make_one_file_inventory( |
1674 | 565 | repo, 'broken-revision', ('good-parent', 'bad-parent')) | 566 | repo, b'broken-revision', (b'good-parent', b'bad-parent')) |
1675 | 566 | self.add_revision(repo, 'broken-revision', inv, ('good-parent',)) | 567 | self.add_revision(repo, b'broken-revision', inv, (b'good-parent',)) |
1676 | 567 | self.versioned_root = repo.supports_rich_root() | 568 | self.versioned_root = repo.supports_rich_root() |
1677 | 568 | 569 | ||
1678 | 569 | def repository_text_key_references(self): | 570 | def repository_text_key_references(self): |
1679 | 570 | result = {} | 571 | result = {} |
1680 | 571 | if self.versioned_root: | 572 | if self.versioned_root: |
1687 | 572 | result.update({('TREE_ROOT', 'bad-parent'): True, | 573 | result.update({(b'TREE_ROOT', b'bad-parent'): True, |
1688 | 573 | ('TREE_ROOT', 'broken-revision'): True, | 574 | (b'TREE_ROOT', b'broken-revision'): True, |
1689 | 574 | ('TREE_ROOT', 'good-parent'): True}) | 575 | (b'TREE_ROOT', b'good-parent'): True}) |
1690 | 575 | result.update({('a-file-id', 'bad-parent'): True, | 576 | result.update({(b'a-file-id', b'bad-parent'): True, |
1691 | 576 | ('a-file-id', 'broken-revision'): True, | 577 | (b'a-file-id', b'broken-revision'): True, |
1692 | 577 | ('a-file-id', 'good-parent'): True}) | 578 | (b'a-file-id', b'good-parent'): True}) |
1693 | 578 | return result | 579 | return result |
1694 | 579 | 580 | ||
1695 | 580 | def repository_text_keys(self): | 581 | def repository_text_keys(self): |
1700 | 581 | return {('a-file-id', 'bad-parent'): [NULL_REVISION], | 582 | return {(b'a-file-id', b'bad-parent'): [NULL_REVISION], |
1701 | 582 | ('a-file-id', 'broken-revision'): | 583 | (b'a-file-id', b'broken-revision'): |
1702 | 583 | [('a-file-id', 'good-parent')], | 584 | [(b'a-file-id', b'good-parent')], |
1703 | 584 | ('a-file-id', 'good-parent'): [('a-file-id', 'bad-parent')]} | 585 | (b'a-file-id', b'good-parent'): [('a-file-id', 'bad-parent')]} |
1704 | 585 | 586 | ||
1705 | 586 | def versioned_repository_text_keys(self): | 587 | def versioned_repository_text_keys(self): |
1710 | 587 | return {('TREE_ROOT', 'bad-parent'): [NULL_REVISION], | 588 | return {(b'TREE_ROOT', b'bad-parent'): [NULL_REVISION], |
1711 | 588 | ('TREE_ROOT', 'broken-revision'): | 589 | (b'TREE_ROOT', b'broken-revision'): |
1712 | 589 | [('TREE_ROOT', 'good-parent')], | 590 | [(b'TREE_ROOT', 'good-parent')], |
1713 | 590 | ('TREE_ROOT', 'good-parent'): [('TREE_ROOT', 'bad-parent')]} | 591 | (b'TREE_ROOT', b'good-parent'): [(b'TREE_ROOT', b'bad-parent')]} |
1714 | 591 | 592 | ||
1715 | 592 | 593 | ||
1716 | 593 | class ClaimedFileParentDidNotModifyFileScenario(BrokenRepoScenario): | 594 | class ClaimedFileParentDidNotModifyFileScenario(BrokenRepoScenario): |
1717 | @@ -601,19 +602,19 @@ | |||
1718 | 601 | """ | 602 | """ |
1719 | 602 | 603 | ||
1720 | 603 | def all_versions_after_reconcile(self): | 604 | def all_versions_after_reconcile(self): |
1722 | 604 | return ('basis', 'current') | 605 | return (b'basis', b'current') |
1723 | 605 | 606 | ||
1724 | 606 | def populated_parents(self): | 607 | def populated_parents(self): |
1725 | 607 | return ( | 608 | return ( |
1729 | 608 | ((), 'basis'), | 609 | ((), b'basis'), |
1730 | 609 | (('basis',), 'modified-something-else'), | 610 | ((b'basis',), b'modified-something-else'), |
1731 | 610 | (('modified-something-else',), 'current')) | 611 | ((b'modified-something-else',), b'current')) |
1732 | 611 | 612 | ||
1733 | 612 | def corrected_parents(self): | 613 | def corrected_parents(self): |
1734 | 613 | return ( | 614 | return ( |
1738 | 614 | ((), 'basis'), | 615 | ((), b'basis'), |
1739 | 615 | (None, 'modified-something-else'), | 616 | (None, b'modified-something-else'), |
1740 | 616 | (('basis',), 'current')) | 617 | ((b'basis',), b'current')) |
1741 | 617 | 618 | ||
1742 | 618 | def check_regexes(self, repo): | 619 | def check_regexes(self, repo): |
1743 | 619 | if repo.supports_rich_root(): | 620 | if repo.supports_rich_root(): |
1744 | @@ -629,44 +630,44 @@ | |||
1745 | 629 | ) | 630 | ) |
1746 | 630 | 631 | ||
1747 | 631 | def populate_repository(self, repo): | 632 | def populate_repository(self, repo): |
1750 | 632 | inv = self.make_one_file_inventory(repo, 'basis', ()) | 633 | inv = self.make_one_file_inventory(repo, b'basis', ()) |
1751 | 633 | self.add_revision(repo, 'basis', inv, ()) | 634 | self.add_revision(repo, b'basis', inv, ()) |
1752 | 634 | 635 | ||
1753 | 635 | # 'modified-something-else' is a correctly recorded revision, but it | 636 | # 'modified-something-else' is a correctly recorded revision, but it |
1754 | 636 | # does not modify the file we are looking at, so the inventory for that | 637 | # does not modify the file we are looking at, so the inventory for that |
1755 | 637 | # file in this revision points to 'basis'. | 638 | # file in this revision points to 'basis'. |
1756 | 638 | inv = self.make_one_file_inventory( | 639 | inv = self.make_one_file_inventory( |
1759 | 639 | repo, 'modified-something-else', ('basis',), inv_revision='basis') | 640 | repo, b'modified-something-else', (b'basis',), inv_revision=b'basis') |
1760 | 640 | self.add_revision(repo, 'modified-something-else', inv, ('basis',)) | 641 | self.add_revision(repo, b'modified-something-else', inv, (b'basis',)) |
1761 | 641 | 642 | ||
1762 | 642 | # The 'current' revision has 'modified-something-else' as its parent, | 643 | # The 'current' revision has 'modified-something-else' as its parent, |
1763 | 643 | # but the 'current' version of 'a-file' should have 'basis' as its | 644 | # but the 'current' version of 'a-file' should have 'basis' as its |
1764 | 644 | # parent. | 645 | # parent. |
1765 | 645 | inv = self.make_one_file_inventory( | 646 | inv = self.make_one_file_inventory( |
1768 | 646 | repo, 'current', ('modified-something-else',)) | 647 | repo, b'current', (b'modified-something-else',)) |
1769 | 647 | self.add_revision(repo, 'current', inv, ('modified-something-else',)) | 648 | self.add_revision(repo, b'current', inv, (b'modified-something-else',)) |
1770 | 648 | self.versioned_root = repo.supports_rich_root() | 649 | self.versioned_root = repo.supports_rich_root() |
1771 | 649 | 650 | ||
1772 | 650 | def repository_text_key_references(self): | 651 | def repository_text_key_references(self): |
1773 | 651 | result = {} | 652 | result = {} |
1774 | 652 | if self.versioned_root: | 653 | if self.versioned_root: |
1780 | 653 | result.update({('TREE_ROOT', 'basis'): True, | 654 | result.update({(b'TREE_ROOT', b'basis'): True, |
1781 | 654 | ('TREE_ROOT', 'current'): True, | 655 | (b'TREE_ROOT', b'current'): True, |
1782 | 655 | ('TREE_ROOT', 'modified-something-else'): True}) | 656 | (b'TREE_ROOT', b'modified-something-else'): True}) |
1783 | 656 | result.update({('a-file-id', 'basis'): True, | 657 | result.update({(b'a-file-id', b'basis'): True, |
1784 | 657 | ('a-file-id', 'current'): True}) | 658 | (b'a-file-id', b'current'): True}) |
1785 | 658 | return result | 659 | return result |
1786 | 659 | 660 | ||
1787 | 660 | def repository_text_keys(self): | 661 | def repository_text_keys(self): |
1790 | 661 | return {('a-file-id', 'basis'): [NULL_REVISION], | 662 | return {(b'a-file-id', b'basis'): [NULL_REVISION], |
1791 | 662 | ('a-file-id', 'current'): [('a-file-id', 'basis')]} | 663 | (b'a-file-id', b'current'): [(b'a-file-id', b'basis')]} |
1792 | 663 | 664 | ||
1793 | 664 | def versioned_repository_text_keys(self): | 665 | def versioned_repository_text_keys(self): |
1799 | 665 | return {('TREE_ROOT', 'basis'): ['null:'], | 666 | return {(b'TREE_ROOT', b'basis'): [b'null:'], |
1800 | 666 | ('TREE_ROOT', 'current'): | 667 | (b'TREE_ROOT', b'current'): |
1801 | 667 | [('TREE_ROOT', 'modified-something-else')], | 668 | [(b'TREE_ROOT', b'modified-something-else')], |
1802 | 668 | ('TREE_ROOT', 'modified-something-else'): | 669 | (b'TREE_ROOT', b'modified-something-else'): |
1803 | 669 | [('TREE_ROOT', 'basis')]} | 670 | [(b'TREE_ROOT', b'basis')]} |
1804 | 670 | 671 | ||
1805 | 671 | 672 | ||
1806 | 672 | class IncorrectlyOrderedParentsScenario(BrokenRepoScenario): | 673 | class IncorrectlyOrderedParentsScenario(BrokenRepoScenario): |
1807 | @@ -682,22 +683,22 @@ | |||
1808 | 682 | """ | 683 | """ |
1809 | 683 | 684 | ||
1810 | 684 | def all_versions_after_reconcile(self): | 685 | def all_versions_after_reconcile(self): |
1813 | 685 | return ['parent-1', 'parent-2', 'broken-revision-1-2', | 686 | return [b'parent-1', b'parent-2', b'broken-revision-1-2', |
1814 | 686 | 'broken-revision-2-1'] | 687 | b'broken-revision-2-1'] |
1815 | 687 | 688 | ||
1816 | 688 | def populated_parents(self): | 689 | def populated_parents(self): |
1817 | 689 | return ( | 690 | return ( |
1822 | 690 | ((), 'parent-1'), | 691 | ((), b'parent-1'), |
1823 | 691 | ((), 'parent-2'), | 692 | ((), b'parent-2'), |
1824 | 692 | (('parent-2', 'parent-1'), 'broken-revision-1-2'), | 693 | ((b'parent-2', b'parent-1'), b'broken-revision-1-2'), |
1825 | 693 | (('parent-1', 'parent-2'), 'broken-revision-2-1')) | 694 | ((b'parent-1', b'parent-2'), b'broken-revision-2-1')) |
1826 | 694 | 695 | ||
1827 | 695 | def corrected_parents(self): | 696 | def corrected_parents(self): |
1828 | 696 | return ( | 697 | return ( |
1833 | 697 | ((), 'parent-1'), | 698 | ((), b'parent-1'), |
1834 | 698 | ((), 'parent-2'), | 699 | ((), b'parent-2'), |
1835 | 699 | (('parent-1', 'parent-2'), 'broken-revision-1-2'), | 700 | ((b'parent-1', b'parent-2'), b'broken-revision-1-2'), |
1836 | 700 | (('parent-2', 'parent-1'), 'broken-revision-2-1')) | 701 | ((b'parent-2', b'parent-1'), b'broken-revision-2-1')) |
1837 | 701 | 702 | ||
1838 | 702 | def check_regexes(self, repo): | 703 | def check_regexes(self, repo): |
1839 | 703 | if repo.supports_rich_root(): | 704 | if repo.supports_rich_root(): |
1840 | @@ -716,51 +717,51 @@ | |||
1841 | 716 | r"\('parent-2', 'parent-1'\)") | 717 | r"\('parent-2', 'parent-1'\)") |
1842 | 717 | 718 | ||
1843 | 718 | def populate_repository(self, repo): | 719 | def populate_repository(self, repo): |
1859 | 719 | inv = self.make_one_file_inventory(repo, 'parent-1', []) | 720 | inv = self.make_one_file_inventory(repo, b'parent-1', []) |
1860 | 720 | self.add_revision(repo, 'parent-1', inv, []) | 721 | self.add_revision(repo, b'parent-1', inv, []) |
1861 | 721 | 722 | ||
1862 | 722 | inv = self.make_one_file_inventory(repo, 'parent-2', []) | 723 | inv = self.make_one_file_inventory(repo, b'parent-2', []) |
1863 | 723 | self.add_revision(repo, 'parent-2', inv, []) | 724 | self.add_revision(repo, b'parent-2', inv, []) |
1864 | 724 | 725 | ||
1865 | 725 | inv = self.make_one_file_inventory( | 726 | inv = self.make_one_file_inventory( |
1866 | 726 | repo, 'broken-revision-1-2', ['parent-2', 'parent-1']) | 727 | repo, b'broken-revision-1-2', [b'parent-2', b'parent-1']) |
1867 | 727 | self.add_revision( | 728 | self.add_revision( |
1868 | 728 | repo, 'broken-revision-1-2', inv, ['parent-1', 'parent-2']) | 729 | repo, b'broken-revision-1-2', inv, [b'parent-1', b'parent-2']) |
1869 | 729 | 730 | ||
1870 | 730 | inv = self.make_one_file_inventory( | 731 | inv = self.make_one_file_inventory( |
1871 | 731 | repo, 'broken-revision-2-1', ['parent-1', 'parent-2']) | 732 | repo, b'broken-revision-2-1', [b'parent-1', b'parent-2']) |
1872 | 732 | self.add_revision( | 733 | self.add_revision( |
1873 | 733 | repo, 'broken-revision-2-1', inv, ['parent-2', 'parent-1']) | 734 | repo, b'broken-revision-2-1', inv, [b'parent-2', b'parent-1']) |
1874 | 734 | self.versioned_root = repo.supports_rich_root() | 735 | self.versioned_root = repo.supports_rich_root() |
1875 | 735 | 736 | ||
1876 | 736 | def repository_text_key_references(self): | 737 | def repository_text_key_references(self): |
1877 | 737 | result = {} | 738 | result = {} |
1878 | 738 | if self.versioned_root: | 739 | if self.versioned_root: |
1887 | 739 | result.update({('TREE_ROOT', 'broken-revision-1-2'): True, | 740 | result.update({(b'TREE_ROOT', b'broken-revision-1-2'): True, |
1888 | 740 | ('TREE_ROOT', 'broken-revision-2-1'): True, | 741 | (b'TREE_ROOT', b'broken-revision-2-1'): True, |
1889 | 741 | ('TREE_ROOT', 'parent-1'): True, | 742 | (b'TREE_ROOT', b'parent-1'): True, |
1890 | 742 | ('TREE_ROOT', 'parent-2'): True}) | 743 | (b'TREE_ROOT', b'parent-2'): True}) |
1891 | 743 | result.update({('a-file-id', 'broken-revision-1-2'): True, | 744 | result.update({(b'a-file-id', b'broken-revision-1-2'): True, |
1892 | 744 | ('a-file-id', 'broken-revision-2-1'): True, | 745 | (b'a-file-id', b'broken-revision-2-1'): True, |
1893 | 745 | ('a-file-id', 'parent-1'): True, | 746 | (b'a-file-id', b'parent-1'): True, |
1894 | 746 | ('a-file-id', 'parent-2'): True}) | 747 | (b'a-file-id', b'parent-2'): True}) |
1895 | 747 | return result | 748 | return result |
1896 | 748 | 749 | ||
1897 | 749 | def repository_text_keys(self): | 750 | def repository_text_keys(self): |
1904 | 750 | return {('a-file-id', 'broken-revision-1-2'): | 751 | return {(b'a-file-id', b'broken-revision-1-2'): |
1905 | 751 | [('a-file-id', 'parent-1'), ('a-file-id', 'parent-2')], | 752 | [(b'a-file-id', b'parent-1'), (b'a-file-id', b'parent-2')], |
1906 | 752 | ('a-file-id', 'broken-revision-2-1'): | 753 | (b'a-file-id', b'broken-revision-2-1'): |
1907 | 753 | [('a-file-id', 'parent-2'), ('a-file-id', 'parent-1')], | 754 | [(b'a-file-id', b'parent-2'), (b'a-file-id', b'parent-1')], |
1908 | 754 | ('a-file-id', 'parent-1'): [NULL_REVISION], | 755 | (b'a-file-id', b'parent-1'): [NULL_REVISION], |
1909 | 755 | ('a-file-id', 'parent-2'): [NULL_REVISION]} | 756 | (b'a-file-id', b'parent-2'): [NULL_REVISION]} |
1910 | 756 | 757 | ||
1911 | 757 | def versioned_repository_text_keys(self): | 758 | def versioned_repository_text_keys(self): |
1918 | 758 | return {('TREE_ROOT', 'broken-revision-1-2'): | 759 | return {(b'TREE_ROOT', b'broken-revision-1-2'): |
1919 | 759 | [('TREE_ROOT', 'parent-1'), ('TREE_ROOT', 'parent-2')], | 760 | [(b'TREE_ROOT', b'parent-1'), (b'TREE_ROOT', b'parent-2')], |
1920 | 760 | ('TREE_ROOT', 'broken-revision-2-1'): | 761 | (b'TREE_ROOT', b'broken-revision-2-1'): |
1921 | 761 | [('TREE_ROOT', 'parent-2'), ('TREE_ROOT', 'parent-1')], | 762 | [(b'TREE_ROOT', b'parent-2'), (b'TREE_ROOT', b'parent-1')], |
1922 | 762 | ('TREE_ROOT', 'parent-1'): [NULL_REVISION], | 763 | (b'TREE_ROOT', b'parent-1'): [NULL_REVISION], |
1923 | 763 | ('TREE_ROOT', 'parent-2'): [NULL_REVISION]} | 764 | (b'TREE_ROOT', b'parent-2'): [NULL_REVISION]} |
1924 | 764 | 765 | ||
1925 | 765 | 766 | ||
1926 | 766 | all_broken_scenario_classes = [ | 767 | all_broken_scenario_classes = [ |
1927 | @@ -792,8 +793,7 @@ | |||
1928 | 792 | def make_populated_repository(self, factory): | 793 | def make_populated_repository(self, factory): |
1929 | 793 | """Create a new repository populated by the given factory.""" | 794 | """Create a new repository populated by the given factory.""" |
1930 | 794 | repo = self.make_repository('broken-repo') | 795 | repo = self.make_repository('broken-repo') |
1933 | 795 | repo.lock_write() | 796 | with repo.lock_write(): |
1932 | 796 | try: | ||
1934 | 797 | repo.start_write_group() | 797 | repo.start_write_group() |
1935 | 798 | try: | 798 | try: |
1936 | 799 | factory(repo) | 799 | factory(repo) |
1937 | @@ -802,8 +802,6 @@ | |||
1938 | 802 | except: | 802 | except: |
1939 | 803 | repo.abort_write_group() | 803 | repo.abort_write_group() |
1940 | 804 | raise | 804 | raise |
1941 | 805 | finally: | ||
1942 | 806 | repo.unlock() | ||
1943 | 807 | 805 | ||
1944 | 808 | def add_revision(self, repo, revision_id, inv, parent_ids): | 806 | def add_revision(self, repo, revision_id, inv, parent_ids): |
1945 | 809 | """Add a revision with a given inventory and parents to a repository. | 807 | """Add a revision with a given inventory and parents to a repository. |
1946 | @@ -847,15 +845,15 @@ | |||
1947 | 847 | inv = Inventory(revision_id=revision) | 845 | inv = Inventory(revision_id=revision) |
1948 | 848 | if root_revision is not None: | 846 | if root_revision is not None: |
1949 | 849 | inv.root.revision = root_revision | 847 | inv.root.revision = root_revision |
1952 | 850 | file_id = 'a-file-id' | 848 | file_id = b'a-file-id' |
1953 | 851 | entry = InventoryFile(file_id, 'a file name', 'TREE_ROOT') | 849 | entry = InventoryFile(file_id, 'a file name', b'TREE_ROOT') |
1954 | 852 | if inv_revision is not None: | 850 | if inv_revision is not None: |
1955 | 853 | entry.revision = inv_revision | 851 | entry.revision = inv_revision |
1956 | 854 | else: | 852 | else: |
1957 | 855 | entry.revision = revision | 853 | entry.revision = revision |
1958 | 856 | entry.text_size = 0 | 854 | entry.text_size = 0 |
1959 | 857 | if file_contents is None: | 855 | if file_contents is None: |
1961 | 858 | file_contents = '%sline\n' % entry.revision | 856 | file_contents = b'%sline\n' % entry.revision |
1962 | 859 | entry.text_sha1 = osutils.sha_string(file_contents) | 857 | entry.text_sha1 = osutils.sha_string(file_contents) |
1963 | 860 | inv.add(entry) | 858 | inv.add(entry) |
1964 | 861 | if make_file_version: | 859 | if make_file_version: |
1965 | @@ -869,13 +867,13 @@ | |||
1966 | 869 | "Format does not support text parent reconciliation") | 867 | "Format does not support text parent reconciliation") |
1967 | 870 | 868 | ||
1968 | 871 | def file_parents(self, repo, revision_id): | 869 | def file_parents(self, repo, revision_id): |
1970 | 872 | key = ('a-file-id', revision_id) | 870 | key = (b'a-file-id', revision_id) |
1971 | 873 | parent_map = repo.texts.get_parent_map([key]) | 871 | parent_map = repo.texts.get_parent_map([key]) |
1972 | 874 | return tuple(parent[-1] for parent in parent_map[key]) | 872 | return tuple(parent[-1] for parent in parent_map[key]) |
1973 | 875 | 873 | ||
1974 | 876 | def assertFileVersionAbsent(self, repo, revision_id): | 874 | def assertFileVersionAbsent(self, repo, revision_id): |
1975 | 877 | self.assertEqual({}, | 875 | self.assertEqual({}, |
1977 | 878 | repo.texts.get_parent_map([('a-file-id', revision_id)])) | 876 | repo.texts.get_parent_map([(b'a-file-id', revision_id)])) |
1978 | 879 | 877 | ||
1979 | 880 | def assertParentsMatch(self, expected_parents_for_versions, repo, | 878 | def assertParentsMatch(self, expected_parents_for_versions, repo, |
1980 | 881 | when_description): | 879 | when_description): |
1981 | @@ -907,7 +905,7 @@ | |||
1982 | 907 | 905 | ||
1983 | 908 | :returns: A dict of `{version: hash}`. | 906 | :returns: A dict of `{version: hash}`. |
1984 | 909 | """ | 907 | """ |
1986 | 910 | keys = [('a-file-id', version) for version in versions] | 908 | keys = [(b'a-file-id', version) for version in versions] |
1987 | 911 | return repo.texts.get_sha1s(keys) | 909 | return repo.texts.get_sha1s(keys) |
1988 | 912 | 910 | ||
1989 | 913 | def test_reconcile_behaviour(self): | 911 | def test_reconcile_behaviour(self): |
1990 | @@ -915,19 +913,15 @@ | |||
1991 | 915 | and after. | 913 | and after. |
1992 | 916 | """ | 914 | """ |
1993 | 917 | repo, scenario = self.prepare_test_repository() | 915 | repo, scenario = self.prepare_test_repository() |
1996 | 918 | repo.lock_read() | 916 | with repo.lock_read(): |
1995 | 919 | try: | ||
1997 | 920 | self.assertParentsMatch(scenario.populated_parents(), repo, | 917 | self.assertParentsMatch(scenario.populated_parents(), repo, |
1999 | 921 | 'before') | 918 | b'before') |
2000 | 922 | vf_shas = self.shas_for_versions_of_file( | 919 | vf_shas = self.shas_for_versions_of_file( |
2001 | 923 | repo, scenario.all_versions_after_reconcile()) | 920 | repo, scenario.all_versions_after_reconcile()) |
2002 | 924 | finally: | ||
2003 | 925 | repo.unlock() | ||
2004 | 926 | result = repo.reconcile(thorough=True) | 921 | result = repo.reconcile(thorough=True) |
2007 | 927 | repo.lock_read() | 922 | with repo.lock_read(): |
2006 | 928 | try: | ||
2008 | 929 | self.assertParentsMatch(scenario.corrected_parents(), repo, | 923 | self.assertParentsMatch(scenario.corrected_parents(), repo, |
2010 | 930 | 'after') | 924 | b'after') |
2011 | 931 | # The contents of the versions in the versionedfile should be the | 925 | # The contents of the versions in the versionedfile should be the |
2012 | 932 | # same after the reconcile. | 926 | # same after the reconcile. |
2013 | 933 | self.assertEqual( | 927 | self.assertEqual( |
2014 | @@ -943,14 +937,12 @@ | |||
2015 | 943 | # (we specify it this way because a store can use arbitrary | 937 | # (we specify it this way because a store can use arbitrary |
2016 | 944 | # compression pointers in principle. | 938 | # compression pointers in principle. |
2017 | 945 | for file_version in scenario.corrected_fulltexts(): | 939 | for file_version in scenario.corrected_fulltexts(): |
2019 | 946 | key = ('a-file-id', file_version) | 940 | key = (b'a-file-id', file_version) |
2020 | 947 | self.assertEqual({key:()}, repo.texts.get_parent_map([key])) | 941 | self.assertEqual({key:()}, repo.texts.get_parent_map([key])) |
2021 | 948 | self.assertIsInstance( | 942 | self.assertIsInstance( |
2022 | 949 | repo.texts.get_record_stream([key], 'unordered', | 943 | repo.texts.get_record_stream([key], 'unordered', |
2023 | 950 | True).next().get_bytes_as('fulltext'), | 944 | True).next().get_bytes_as('fulltext'), |
2024 | 951 | str) | 945 | str) |
2025 | 952 | finally: | ||
2026 | 953 | repo.unlock() | ||
2027 | 954 | 946 | ||
2028 | 955 | def test_check_behaviour(self): | 947 | def test_check_behaviour(self): |
2029 | 956 | """Populate a repository and check it, and verify the output.""" | 948 | """Populate a repository and check it, and verify the output.""" |
2030 | 957 | 949 | ||
2031 | === modified file 'breezy/tests/per_repository_vf/test_fileid_involved.py' | |||
2032 | --- breezy/tests/per_repository_vf/test_fileid_involved.py 2018-05-22 02:05:12 +0000 | |||
2033 | +++ breezy/tests/per_repository_vf/test_fileid_involved.py 2018-06-21 23:03:57 +0000 | |||
2034 | @@ -96,32 +96,32 @@ | |||
2035 | 96 | raise tests.TestNotApplicable('format does not support stacking') | 96 | raise tests.TestNotApplicable('format does not support stacking') |
2036 | 97 | builder.start_series() | 97 | builder.start_series() |
2037 | 98 | builder.build_snapshot(None, [ | 98 | builder.build_snapshot(None, [ |
2040 | 99 | ('add', ('', 'root-id', 'directory', None)), | 99 | ('add', ('', b'root-id', 'directory', None)), |
2041 | 100 | ('add', ('file', 'file-id', 'file', 'contents\n'))], | 100 | ('add', ('file', b'file-id', 'file', b'contents\n'))], |
2042 | 101 | revision_id=b'A-id') | 101 | revision_id=b'A-id') |
2045 | 102 | builder.build_snapshot(['A-id'], [ | 102 | builder.build_snapshot([b'A-id'], [ |
2046 | 103 | ('modify', ('file', 'new-content\n'))], | 103 | ('modify', ('file', b'new-content\n'))], |
2047 | 104 | revision_id=b'B-id') | 104 | revision_id=b'B-id') |
2050 | 105 | builder.build_snapshot(['B-id'], [ | 105 | builder.build_snapshot([b'B-id'], [ |
2051 | 106 | ('modify', ('file', 'yet more content\n'))], | 106 | ('modify', ('file', b'yet more content\n'))], |
2052 | 107 | revision_id=b'C-id') | 107 | revision_id=b'C-id') |
2053 | 108 | builder.finish_series() | 108 | builder.finish_series() |
2054 | 109 | source_b = builder.get_branch() | 109 | source_b = builder.get_branch() |
2055 | 110 | source_b.lock_read() | 110 | source_b.lock_read() |
2056 | 111 | self.addCleanup(source_b.unlock) | 111 | self.addCleanup(source_b.unlock) |
2057 | 112 | base = self.make_branch('base') | 112 | base = self.make_branch('base') |
2059 | 113 | base.pull(source_b, stop_revision='B-id') | 113 | base.pull(source_b, stop_revision=b'B-id') |
2060 | 114 | stacked = self.make_branch('stacked') | 114 | stacked = self.make_branch('stacked') |
2061 | 115 | stacked.set_stacked_on_url('../base') | 115 | stacked.set_stacked_on_url('../base') |
2063 | 116 | stacked.pull(source_b, stop_revision='C-id') | 116 | stacked.pull(source_b, stop_revision=b'C-id') |
2064 | 117 | 117 | ||
2065 | 118 | stacked.lock_read() | 118 | stacked.lock_read() |
2066 | 119 | self.addCleanup(stacked.unlock) | 119 | self.addCleanup(stacked.unlock) |
2067 | 120 | repo = stacked.repository | 120 | repo = stacked.repository |
2069 | 121 | keys = {'file-id': {'A-id'}} | 121 | keys = {'file-id': {b'A-id'}} |
2070 | 122 | if stacked.repository.supports_rich_root(): | 122 | if stacked.repository.supports_rich_root(): |
2073 | 123 | keys['root-id'] = {'A-id'} | 123 | keys['root-id'] = {b'A-id'} |
2074 | 124 | self.assertEqual(keys, repo.fileids_altered_by_revision_ids(['A-id'])) | 124 | self.assertEqual(keys, repo.fileids_altered_by_revision_ids([b'A-id'])) |
2075 | 125 | 125 | ||
2076 | 126 | 126 | ||
2077 | 127 | class FileIdInvolvedBase(TestCaseWithRepository): | 127 | class FileIdInvolvedBase(TestCaseWithRepository): |
2078 | 128 | 128 | ||
2079 | === modified file 'breezy/tests/per_repository_vf/test_repository.py' | |||
2080 | --- breezy/tests/per_repository_vf/test_repository.py 2018-05-22 02:05:12 +0000 | |||
2081 | +++ breezy/tests/per_repository_vf/test_repository.py 2018-06-21 23:03:57 +0000 | |||
2082 | @@ -265,13 +265,12 @@ | |||
2083 | 265 | """Test the basic behaviour of the text store.""" | 265 | """Test the basic behaviour of the text store.""" |
2084 | 266 | tree = self.make_branch_and_tree('tree') | 266 | tree = self.make_branch_and_tree('tree') |
2085 | 267 | repo = tree.branch.repository | 267 | repo = tree.branch.repository |
2087 | 268 | file_id = "Foo:Bar" | 268 | file_id = b"Foo:Bar" |
2088 | 269 | file_key = (file_id,) | 269 | file_key = (file_id,) |
2091 | 270 | tree.lock_write() | 270 | with tree.lock_write(): |
2090 | 271 | try: | ||
2092 | 272 | self.assertEqual(set(), set(repo.texts.keys())) | 271 | self.assertEqual(set(), set(repo.texts.keys())) |
2093 | 273 | tree.add(['foo'], [file_id], ['file']) | 272 | tree.add(['foo'], [file_id], ['file']) |
2095 | 274 | tree.put_file_bytes_non_atomic('foo', 'content\n', file_id=file_id) | 273 | tree.put_file_bytes_non_atomic('foo', b'content\n', file_id=file_id) |
2096 | 275 | try: | 274 | try: |
2097 | 276 | rev_key = (tree.commit("foo"),) | 275 | rev_key = (tree.commit("foo"),) |
2098 | 277 | except errors.IllegalPath: | 276 | except errors.IllegalPath: |
2099 | @@ -290,20 +289,18 @@ | |||
2100 | 290 | self.assertEqual(keys, set(repo.texts.keys())) | 289 | self.assertEqual(keys, set(repo.texts.keys())) |
2101 | 291 | self.assertEqual(parents, | 290 | self.assertEqual(parents, |
2102 | 292 | repo.texts.get_parent_map(repo.texts.keys())) | 291 | repo.texts.get_parent_map(repo.texts.keys())) |
2103 | 293 | finally: | ||
2104 | 294 | tree.unlock() | ||
2105 | 295 | tree2 = self.make_branch_and_tree('tree2') | 292 | tree2 = self.make_branch_and_tree('tree2') |
2106 | 296 | tree2.pull(tree.branch) | 293 | tree2.pull(tree.branch) |
2108 | 297 | tree2.put_file_bytes_non_atomic('foo', 'right\n', file_id='Foo:Bar') | 294 | tree2.put_file_bytes_non_atomic('foo', b'right\n', file_id=b'Foo:Bar') |
2109 | 298 | right_key = (tree2.commit('right'),) | 295 | right_key = (tree2.commit('right'),) |
2110 | 299 | keys.add(file_key + right_key) | 296 | keys.add(file_key + right_key) |
2111 | 300 | parents[file_key + right_key] = (file_key + rev_key,) | 297 | parents[file_key + right_key] = (file_key + rev_key,) |
2113 | 301 | tree.put_file_bytes_non_atomic('foo', 'left\n', file_id='Foo:Bar') | 298 | tree.put_file_bytes_non_atomic('foo', b'left\n', file_id=b'Foo:Bar') |
2114 | 302 | left_key = (tree.commit('left'),) | 299 | left_key = (tree.commit('left'),) |
2115 | 303 | keys.add(file_key + left_key) | 300 | keys.add(file_key + left_key) |
2116 | 304 | parents[file_key + left_key] = (file_key + rev_key,) | 301 | parents[file_key + left_key] = (file_key + rev_key,) |
2117 | 305 | tree.merge_from_branch(tree2.branch) | 302 | tree.merge_from_branch(tree2.branch) |
2119 | 306 | tree.put_file_bytes_non_atomic('foo', 'merged\n', file_id='Foo:Bar') | 303 | tree.put_file_bytes_non_atomic('foo', b'merged\n', file_id=b'Foo:Bar') |
2120 | 307 | try: | 304 | try: |
2121 | 308 | tree.auto_resolve() | 305 | tree.auto_resolve() |
2122 | 309 | except errors.UnsupportedOperation: | 306 | except errors.UnsupportedOperation: |
2123 | 310 | 307 | ||
2124 | === modified file 'breezy/tests/per_transport.py' | |||
2125 | --- breezy/tests/per_transport.py 2018-04-01 18:29:09 +0000 | |||
2126 | +++ breezy/tests/per_transport.py 2018-06-21 23:03:57 +0000 | |||
2127 | @@ -174,9 +174,9 @@ | |||
2128 | 174 | t = self.get_transport() | 174 | t = self.get_transport() |
2129 | 175 | 175 | ||
2130 | 176 | files = ['a'] | 176 | files = ['a'] |
2132 | 177 | content = 'contents of a\n' | 177 | content = b'contents of a\n' |
2133 | 178 | self.build_tree(['a'], transport=t, line_endings='binary') | 178 | self.build_tree(['a'], transport=t, line_endings='binary') |
2135 | 179 | self.check_transport_contents('contents of a\n', t, 'a') | 179 | self.check_transport_contents(b'contents of a\n', t, 'a') |
2136 | 180 | f = t.get('a') | 180 | f = t.get('a') |
2137 | 181 | self.assertEqual(content, f.read()) | 181 | self.assertEqual(content, f.read()) |
2138 | 182 | 182 | ||
2139 | @@ -220,13 +220,13 @@ | |||
2140 | 220 | t = self.get_transport() | 220 | t = self.get_transport() |
2141 | 221 | 221 | ||
2142 | 222 | files = ['a', 'b', 'e', 'g'] | 222 | files = ['a', 'b', 'e', 'g'] |
2147 | 223 | contents = ['contents of a\n', | 223 | contents = [b'contents of a\n', |
2148 | 224 | 'contents of b\n', | 224 | b'contents of b\n', |
2149 | 225 | 'contents of e\n', | 225 | b'contents of e\n', |
2150 | 226 | 'contents of g\n', | 226 | b'contents of g\n', |
2151 | 227 | ] | 227 | ] |
2152 | 228 | self.build_tree(files, transport=t, line_endings='binary') | 228 | self.build_tree(files, transport=t, line_endings='binary') |
2154 | 229 | self.check_transport_contents('contents of a\n', t, 'a') | 229 | self.check_transport_contents(b'contents of a\n', t, 'a') |
2155 | 230 | 230 | ||
2156 | 231 | for content, fname in zip(contents, files): | 231 | for content, fname in zip(contents, files): |
2157 | 232 | self.assertEqual(content, t.get_bytes(fname)) | 232 | self.assertEqual(content, t.get_bytes(fname)) |
2158 | @@ -272,11 +272,11 @@ | |||
2159 | 272 | 272 | ||
2160 | 273 | t.put_bytes('a', b'some text for a\n') | 273 | t.put_bytes('a', b'some text for a\n') |
2161 | 274 | self.assertTrue(t.has('a')) | 274 | self.assertTrue(t.has('a')) |
2163 | 275 | self.check_transport_contents('some text for a\n', t, 'a') | 275 | self.check_transport_contents(b'some text for a\n', t, 'a') |
2164 | 276 | 276 | ||
2165 | 277 | # The contents should be overwritten | 277 | # The contents should be overwritten |
2166 | 278 | t.put_bytes('a', b'new text for a\n') | 278 | t.put_bytes('a', b'new text for a\n') |
2168 | 279 | self.check_transport_contents('new text for a\n', t, 'a') | 279 | self.check_transport_contents(b'new text for a\n', t, 'a') |
2169 | 280 | 280 | ||
2170 | 281 | self.assertRaises(NoSuchFile, | 281 | self.assertRaises(NoSuchFile, |
2171 | 282 | t.put_bytes, 'path/doesnt/exist/c', b'contents') | 282 | t.put_bytes, 'path/doesnt/exist/c', b'contents') |
2172 | @@ -286,37 +286,37 @@ | |||
2173 | 286 | 286 | ||
2174 | 287 | if t.is_readonly(): | 287 | if t.is_readonly(): |
2175 | 288 | self.assertRaises(TransportNotPossible, | 288 | self.assertRaises(TransportNotPossible, |
2177 | 289 | t.put_bytes_non_atomic, 'a', 'some text for a\n') | 289 | t.put_bytes_non_atomic, 'a', b'some text for a\n') |
2178 | 290 | return | 290 | return |
2179 | 291 | 291 | ||
2180 | 292 | self.assertFalse(t.has('a')) | 292 | self.assertFalse(t.has('a')) |
2182 | 293 | t.put_bytes_non_atomic('a', 'some text for a\n') | 293 | t.put_bytes_non_atomic('a', b'some text for a\n') |
2183 | 294 | self.assertTrue(t.has('a')) | 294 | self.assertTrue(t.has('a')) |
2185 | 295 | self.check_transport_contents('some text for a\n', t, 'a') | 295 | self.check_transport_contents(b'some text for a\n', t, 'a') |
2186 | 296 | # Put also replaces contents | 296 | # Put also replaces contents |
2189 | 297 | t.put_bytes_non_atomic('a', 'new\ncontents for\na\n') | 297 | t.put_bytes_non_atomic('a', b'new\ncontents for\na\n') |
2190 | 298 | self.check_transport_contents('new\ncontents for\na\n', t, 'a') | 298 | self.check_transport_contents(b'new\ncontents for\na\n', t, 'a') |
2191 | 299 | 299 | ||
2192 | 300 | # Make sure we can create another file | 300 | # Make sure we can create another file |
2194 | 301 | t.put_bytes_non_atomic('d', 'contents for\nd\n') | 301 | t.put_bytes_non_atomic('d', b'contents for\nd\n') |
2195 | 302 | # And overwrite 'a' with empty contents | 302 | # And overwrite 'a' with empty contents |
2199 | 303 | t.put_bytes_non_atomic('a', '') | 303 | t.put_bytes_non_atomic('a', b'') |
2200 | 304 | self.check_transport_contents('contents for\nd\n', t, 'd') | 304 | self.check_transport_contents(b'contents for\nd\n', t, 'd') |
2201 | 305 | self.check_transport_contents('', t, 'a') | 305 | self.check_transport_contents(b'', t, 'a') |
2202 | 306 | 306 | ||
2203 | 307 | self.assertRaises(NoSuchFile, t.put_bytes_non_atomic, 'no/such/path', | 307 | self.assertRaises(NoSuchFile, t.put_bytes_non_atomic, 'no/such/path', |
2205 | 308 | 'contents\n') | 308 | b'contents\n') |
2206 | 309 | # Now test the create_parent flag | 309 | # Now test the create_parent flag |
2207 | 310 | self.assertRaises(NoSuchFile, t.put_bytes_non_atomic, 'dir/a', | 310 | self.assertRaises(NoSuchFile, t.put_bytes_non_atomic, 'dir/a', |
2209 | 311 | 'contents\n') | 311 | b'contents\n') |
2210 | 312 | self.assertFalse(t.has('dir/a')) | 312 | self.assertFalse(t.has('dir/a')) |
2212 | 313 | t.put_bytes_non_atomic('dir/a', 'contents for dir/a\n', | 313 | t.put_bytes_non_atomic('dir/a', b'contents for dir/a\n', |
2213 | 314 | create_parent_dir=True) | 314 | create_parent_dir=True) |
2215 | 315 | self.check_transport_contents('contents for dir/a\n', t, 'dir/a') | 315 | self.check_transport_contents(b'contents for dir/a\n', t, 'dir/a') |
2216 | 316 | 316 | ||
2217 | 317 | # But we still get NoSuchFile if we can't make the parent dir | 317 | # But we still get NoSuchFile if we can't make the parent dir |
2218 | 318 | self.assertRaises(NoSuchFile, t.put_bytes_non_atomic, 'not/there/a', | 318 | self.assertRaises(NoSuchFile, t.put_bytes_non_atomic, 'not/there/a', |
2220 | 319 | 'contents\n', | 319 | b'contents\n', |
2221 | 320 | create_parent_dir=True) | 320 | create_parent_dir=True) |
2222 | 321 | 321 | ||
2223 | 322 | def test_put_bytes_permissions(self): | 322 | def test_put_bytes_permissions(self): |
2224 | @@ -350,29 +350,29 @@ | |||
2225 | 350 | if not t._can_roundtrip_unix_modebits(): | 350 | if not t._can_roundtrip_unix_modebits(): |
2226 | 351 | # Can't roundtrip, so no need to run this test | 351 | # Can't roundtrip, so no need to run this test |
2227 | 352 | return | 352 | return |
2229 | 353 | t.put_bytes_non_atomic('mode644', 'test text\n', mode=0o644) | 353 | t.put_bytes_non_atomic('mode644', b'test text\n', mode=0o644) |
2230 | 354 | self.assertTransportMode(t, 'mode644', 0o644) | 354 | self.assertTransportMode(t, 'mode644', 0o644) |
2232 | 355 | t.put_bytes_non_atomic('mode666', 'test text\n', mode=0o666) | 355 | t.put_bytes_non_atomic('mode666', b'test text\n', mode=0o666) |
2233 | 356 | self.assertTransportMode(t, 'mode666', 0o666) | 356 | self.assertTransportMode(t, 'mode666', 0o666) |
2235 | 357 | t.put_bytes_non_atomic('mode600', 'test text\n', mode=0o600) | 357 | t.put_bytes_non_atomic('mode600', b'test text\n', mode=0o600) |
2236 | 358 | self.assertTransportMode(t, 'mode600', 0o600) | 358 | self.assertTransportMode(t, 'mode600', 0o600) |
2238 | 359 | t.put_bytes_non_atomic('mode400', 'test text\n', mode=0o400) | 359 | t.put_bytes_non_atomic('mode400', b'test text\n', mode=0o400) |
2239 | 360 | self.assertTransportMode(t, 'mode400', 0o400) | 360 | self.assertTransportMode(t, 'mode400', 0o400) |
2240 | 361 | 361 | ||
2241 | 362 | # The default permissions should be based on the current umask | 362 | # The default permissions should be based on the current umask |
2242 | 363 | umask = osutils.get_umask() | 363 | umask = osutils.get_umask() |
2244 | 364 | t.put_bytes_non_atomic('nomode', 'test text\n', mode=None) | 364 | t.put_bytes_non_atomic('nomode', b'test text\n', mode=None) |
2245 | 365 | self.assertTransportMode(t, 'nomode', 0o666 & ~umask) | 365 | self.assertTransportMode(t, 'nomode', 0o666 & ~umask) |
2246 | 366 | 366 | ||
2247 | 367 | # We should also be able to set the mode for a parent directory | 367 | # We should also be able to set the mode for a parent directory |
2248 | 368 | # when it is created | 368 | # when it is created |
2250 | 369 | t.put_bytes_non_atomic('dir700/mode664', 'test text\n', mode=0o664, | 369 | t.put_bytes_non_atomic('dir700/mode664', b'test text\n', mode=0o664, |
2251 | 370 | dir_mode=0o700, create_parent_dir=True) | 370 | dir_mode=0o700, create_parent_dir=True) |
2252 | 371 | self.assertTransportMode(t, 'dir700', 0o700) | 371 | self.assertTransportMode(t, 'dir700', 0o700) |
2254 | 372 | t.put_bytes_non_atomic('dir770/mode664', 'test text\n', mode=0o664, | 372 | t.put_bytes_non_atomic('dir770/mode664', b'test text\n', mode=0o664, |
2255 | 373 | dir_mode=0o770, create_parent_dir=True) | 373 | dir_mode=0o770, create_parent_dir=True) |
2256 | 374 | self.assertTransportMode(t, 'dir770', 0o770) | 374 | self.assertTransportMode(t, 'dir770', 0o770) |
2258 | 375 | t.put_bytes_non_atomic('dir777/mode664', 'test text\n', mode=0o664, | 375 | t.put_bytes_non_atomic('dir777/mode664', b'test text\n', mode=0o664, |
2259 | 376 | dir_mode=0o777, create_parent_dir=True) | 376 | dir_mode=0o777, create_parent_dir=True) |
2260 | 377 | self.assertTransportMode(t, 'dir777', 0o777) | 377 | self.assertTransportMode(t, 'dir777', 0o777) |
2261 | 378 | 378 | ||
2262 | @@ -388,11 +388,11 @@ | |||
2263 | 388 | # put_file returns the length of the data written | 388 | # put_file returns the length of the data written |
2264 | 389 | self.assertEqual(16, result) | 389 | self.assertEqual(16, result) |
2265 | 390 | self.assertTrue(t.has('a')) | 390 | self.assertTrue(t.has('a')) |
2267 | 391 | self.check_transport_contents('some text for a\n', t, 'a') | 391 | self.check_transport_contents(b'some text for a\n', t, 'a') |
2268 | 392 | # Put also replaces contents | 392 | # Put also replaces contents |
2269 | 393 | result = t.put_file('a', BytesIO(b'new\ncontents for\na\n')) | 393 | result = t.put_file('a', BytesIO(b'new\ncontents for\na\n')) |
2270 | 394 | self.assertEqual(19, result) | 394 | self.assertEqual(19, result) |
2272 | 395 | self.check_transport_contents('new\ncontents for\na\n', t, 'a') | 395 | self.check_transport_contents(b'new\ncontents for\na\n', t, 'a') |
2273 | 396 | self.assertRaises(NoSuchFile, | 396 | self.assertRaises(NoSuchFile, |
2274 | 397 | t.put_file, 'path/doesnt/exist/c', | 397 | t.put_file, 'path/doesnt/exist/c', |
2275 | 398 | BytesIO(b'contents')) | 398 | BytesIO(b'contents')) |
2276 | @@ -408,17 +408,17 @@ | |||
2277 | 408 | self.assertFalse(t.has('a')) | 408 | self.assertFalse(t.has('a')) |
2278 | 409 | t.put_file_non_atomic('a', BytesIO(b'some text for a\n')) | 409 | t.put_file_non_atomic('a', BytesIO(b'some text for a\n')) |
2279 | 410 | self.assertTrue(t.has('a')) | 410 | self.assertTrue(t.has('a')) |
2281 | 411 | self.check_transport_contents('some text for a\n', t, 'a') | 411 | self.check_transport_contents(b'some text for a\n', t, 'a') |
2282 | 412 | # Put also replaces contents | 412 | # Put also replaces contents |
2283 | 413 | t.put_file_non_atomic('a', BytesIO(b'new\ncontents for\na\n')) | 413 | t.put_file_non_atomic('a', BytesIO(b'new\ncontents for\na\n')) |
2285 | 414 | self.check_transport_contents('new\ncontents for\na\n', t, 'a') | 414 | self.check_transport_contents(b'new\ncontents for\na\n', t, 'a') |
2286 | 415 | 415 | ||
2287 | 416 | # Make sure we can create another file | 416 | # Make sure we can create another file |
2288 | 417 | t.put_file_non_atomic('d', BytesIO(b'contents for\nd\n')) | 417 | t.put_file_non_atomic('d', BytesIO(b'contents for\nd\n')) |
2289 | 418 | # And overwrite 'a' with empty contents | 418 | # And overwrite 'a' with empty contents |
2290 | 419 | t.put_file_non_atomic('a', BytesIO(b'')) | 419 | t.put_file_non_atomic('a', BytesIO(b'')) |
2293 | 420 | self.check_transport_contents('contents for\nd\n', t, 'd') | 420 | self.check_transport_contents(b'contents for\nd\n', t, 'd') |
2294 | 421 | self.check_transport_contents('', t, 'a') | 421 | self.check_transport_contents(b'', t, 'a') |
2295 | 422 | 422 | ||
2296 | 423 | self.assertRaises(NoSuchFile, t.put_file_non_atomic, 'no/such/path', | 423 | self.assertRaises(NoSuchFile, t.put_file_non_atomic, 'no/such/path', |
2297 | 424 | BytesIO(b'contents\n')) | 424 | BytesIO(b'contents\n')) |
2298 | @@ -428,7 +428,7 @@ | |||
2299 | 428 | self.assertFalse(t.has('dir/a')) | 428 | self.assertFalse(t.has('dir/a')) |
2300 | 429 | t.put_file_non_atomic('dir/a', BytesIO(b'contents for dir/a\n'), | 429 | t.put_file_non_atomic('dir/a', BytesIO(b'contents for dir/a\n'), |
2301 | 430 | create_parent_dir=True) | 430 | create_parent_dir=True) |
2303 | 431 | self.check_transport_contents('contents for dir/a\n', t, 'dir/a') | 431 | self.check_transport_contents(b'contents for dir/a\n', t, 'dir/a') |
2304 | 432 | 432 | ||
2305 | 433 | # But we still get NoSuchFile if we can't make the parent dir | 433 | # But we still get NoSuchFile if we can't make the parent dir |
2306 | 434 | self.assertRaises(NoSuchFile, t.put_file_non_atomic, 'not/there/a', | 434 | self.assertRaises(NoSuchFile, t.put_file_non_atomic, 'not/there/a', |
2307 | @@ -535,8 +535,8 @@ | |||
2308 | 535 | # Test get/put in sub-directories | 535 | # Test get/put in sub-directories |
2309 | 536 | t.put_bytes('dir_a/a', b'contents of dir_a/a') | 536 | t.put_bytes('dir_a/a', b'contents of dir_a/a') |
2310 | 537 | t.put_file('dir_b/b', BytesIO(b'contents of dir_b/b')) | 537 | t.put_file('dir_b/b', BytesIO(b'contents of dir_b/b')) |
2313 | 538 | self.check_transport_contents('contents of dir_a/a', t, 'dir_a/a') | 538 | self.check_transport_contents(b'contents of dir_a/a', t, 'dir_a/a') |
2314 | 539 | self.check_transport_contents('contents of dir_b/b', t, 'dir_b/b') | 539 | self.check_transport_contents(b'contents of dir_b/b', t, 'dir_b/b') |
2315 | 540 | 540 | ||
2316 | 541 | # mkdir of a dir with an absent parent | 541 | # mkdir of a dir with an absent parent |
2317 | 542 | self.assertRaises(NoSuchFile, t.mkdir, 'missing/dir') | 542 | self.assertRaises(NoSuchFile, t.mkdir, 'missing/dir') |
2318 | @@ -681,7 +681,7 @@ | |||
2319 | 681 | # And we can create new files, too | 681 | # And we can create new files, too |
2320 | 682 | self.assertEqual(0, | 682 | self.assertEqual(0, |
2321 | 683 | t.append_file('c', BytesIO(b'some text\nfor a missing file\n'))) | 683 | t.append_file('c', BytesIO(b'some text\nfor a missing file\n'))) |
2323 | 684 | self.check_transport_contents('some text\nfor a missing file\n', | 684 | self.check_transport_contents(b'some text\nfor a missing file\n', |
2324 | 685 | t, 'c') | 685 | t, 'c') |
2325 | 686 | 686 | ||
2326 | 687 | def test_append_bytes(self): | 687 | def test_append_bytes(self): |
2327 | @@ -908,14 +908,14 @@ | |||
2328 | 908 | self.assertTrue(t.has('b')) | 908 | self.assertTrue(t.has('b')) |
2329 | 909 | self.assertFalse(t.has('a')) | 909 | self.assertFalse(t.has('a')) |
2330 | 910 | 910 | ||
2332 | 911 | self.check_transport_contents('a first file\n', t, 'b') | 911 | self.check_transport_contents(b'a first file\n', t, 'b') |
2333 | 912 | self.assertEqual([False, True], [t.has(n) for n in ['a', 'b']]) | 912 | self.assertEqual([False, True], [t.has(n) for n in ['a', 'b']]) |
2334 | 913 | 913 | ||
2335 | 914 | # Overwrite a file | 914 | # Overwrite a file |
2336 | 915 | t.put_bytes('c', b'c this file\n') | 915 | t.put_bytes('c', b'c this file\n') |
2337 | 916 | t.move('c', 'b') | 916 | t.move('c', 'b') |
2338 | 917 | self.assertFalse(t.has('c')) | 917 | self.assertFalse(t.has('c')) |
2340 | 918 | self.check_transport_contents('c this file\n', t, 'b') | 918 | self.check_transport_contents(b'c this file\n', t, 'b') |
2341 | 919 | 919 | ||
2342 | 920 | # TODO: Try to write a test for atomicity | 920 | # TODO: Try to write a test for atomicity |
2343 | 921 | # TODO: Test moving into a non-existent subdirectory | 921 | # TODO: Test moving into a non-existent subdirectory |
2344 | @@ -928,7 +928,7 @@ | |||
2345 | 928 | 928 | ||
2346 | 929 | t.put_bytes('a', b'a file\n') | 929 | t.put_bytes('a', b'a file\n') |
2347 | 930 | t.copy('a', 'b') | 930 | t.copy('a', 'b') |
2349 | 931 | self.check_transport_contents('a file\n', t, 'b') | 931 | self.check_transport_contents(b'a file\n', t, 'b') |
2350 | 932 | 932 | ||
2351 | 933 | self.assertRaises(NoSuchFile, t.copy, 'c', 'd') | 933 | self.assertRaises(NoSuchFile, t.copy, 'c', 'd') |
2352 | 934 | os.mkdir('c') | 934 | os.mkdir('c') |
2353 | @@ -937,7 +937,7 @@ | |||
2354 | 937 | #self.assertRaises(Something, t.copy, 'a', 'c') | 937 | #self.assertRaises(Something, t.copy, 'a', 'c') |
2355 | 938 | t.put_bytes('d', b'text in d\n') | 938 | t.put_bytes('d', b'text in d\n') |
2356 | 939 | t.copy('d', 'b') | 939 | t.copy('d', 'b') |
2358 | 940 | self.check_transport_contents('text in d\n', t, 'b') | 940 | self.check_transport_contents(b'text in d\n', t, 'b') |
2359 | 941 | 941 | ||
2360 | 942 | def test_connection_error(self): | 942 | def test_connection_error(self): |
2361 | 943 | """ConnectionError is raised when connection is impossible. | 943 | """ConnectionError is raised when connection is impossible. |
2362 | @@ -1472,13 +1472,13 @@ | |||
2363 | 1472 | return | 1472 | return |
2364 | 1473 | transport.put_bytes('foo', b'bar') | 1473 | transport.put_bytes('foo', b'bar') |
2365 | 1474 | transport3 = self.get_transport() | 1474 | transport3 = self.get_transport() |
2367 | 1475 | self.check_transport_contents('bar', transport3, 'foo') | 1475 | self.check_transport_contents(b'bar', transport3, 'foo') |
2368 | 1476 | 1476 | ||
2369 | 1477 | # now opening at a relative url should give use a sane result: | 1477 | # now opening at a relative url should give use a sane result: |
2370 | 1478 | transport.mkdir('newdir') | 1478 | transport.mkdir('newdir') |
2371 | 1479 | transport5 = self.get_transport('newdir') | 1479 | transport5 = self.get_transport('newdir') |
2372 | 1480 | transport6 = transport5.clone('..') | 1480 | transport6 = transport5.clone('..') |
2374 | 1481 | self.check_transport_contents('bar', transport6, 'foo') | 1481 | self.check_transport_contents(b'bar', transport6, 'foo') |
2375 | 1482 | 1482 | ||
2376 | 1483 | def test_lock_write(self): | 1483 | def test_lock_write(self): |
2377 | 1484 | """Test transport-level write locks. | 1484 | """Test transport-level write locks. |
2378 | 1485 | 1485 | ||
2379 | === modified file 'breezy/tests/per_tree/test_test_trees.py' | |||
2380 | --- breezy/tests/per_tree/test_test_trees.py 2018-03-24 15:27:01 +0000 | |||
2381 | +++ breezy/tests/per_tree/test_test_trees.py 2018-06-21 23:03:57 +0000 | |||
2382 | @@ -17,6 +17,7 @@ | |||
2383 | 17 | """Tests for the test trees used by the per_tree tests.""" | 17 | """Tests for the test trees used by the per_tree tests.""" |
2384 | 18 | 18 | ||
2385 | 19 | from breezy import errors | 19 | from breezy import errors |
2386 | 20 | from breezy.sixish import text_type | ||
2387 | 20 | from breezy.tests import per_tree | 21 | from breezy.tests import per_tree |
2388 | 21 | from breezy.tests import ( | 22 | from breezy.tests import ( |
2389 | 22 | TestNotApplicable, | 23 | TestNotApplicable, |
2390 | @@ -318,7 +319,7 @@ | |||
2391 | 318 | 319 | ||
2392 | 319 | for expected, (path, ie) in zip(path_and_ids, path_entries): | 320 | for expected, (path, ie) in zip(path_and_ids, path_entries): |
2393 | 320 | self.assertEqual(expected[0], path) # Paths should match | 321 | self.assertEqual(expected[0], path) # Paths should match |
2395 | 321 | self.assertIsInstance(path, unicode) | 322 | self.assertIsInstance(path, text_type) |
2396 | 322 | self.assertEqual(expected[1], ie.file_id) | 323 | self.assertEqual(expected[1], ie.file_id) |
2397 | 323 | self.assertIsInstance(ie.file_id, str) | 324 | self.assertIsInstance(ie.file_id, str) |
2398 | 324 | self.assertEqual(expected[2], ie.parent_id) | 325 | self.assertEqual(expected[2], ie.parent_id) |
2399 | @@ -387,7 +388,7 @@ | |||
2400 | 387 | for (epath, efid, eparent, erev), (path, ie) in zip(path_and_ids, | 388 | for (epath, efid, eparent, erev), (path, ie) in zip(path_and_ids, |
2401 | 388 | path_entries): | 389 | path_entries): |
2402 | 389 | self.assertEqual(epath, path) # Paths should match | 390 | self.assertEqual(epath, path) # Paths should match |
2404 | 390 | self.assertIsInstance(path, unicode) | 391 | self.assertIsInstance(path, text_type) |
2405 | 391 | self.assertIsInstance(ie.file_id, bytes) | 392 | self.assertIsInstance(ie.file_id, bytes) |
2406 | 392 | if wt.supports_setting_file_ids(): | 393 | if wt.supports_setting_file_ids(): |
2407 | 393 | self.assertEqual(efid, ie.file_id) | 394 | self.assertEqual(efid, ie.file_id) |
2408 | 394 | 395 | ||
2409 | === modified file 'breezy/tests/per_workingtree/test_put_file.py' | |||
2410 | --- breezy/tests/per_workingtree/test_put_file.py 2017-11-12 20:44:54 +0000 | |||
2411 | +++ breezy/tests/per_workingtree/test_put_file.py 2018-06-21 23:03:57 +0000 | |||
2412 | @@ -25,13 +25,13 @@ | |||
2413 | 25 | def test_put_new_file(self): | 25 | def test_put_new_file(self): |
2414 | 26 | t = self.make_branch_and_tree('t1') | 26 | t = self.make_branch_and_tree('t1') |
2415 | 27 | t.add(['foo'], kinds=['file']) | 27 | t.add(['foo'], kinds=['file']) |
2418 | 28 | t.put_file_bytes_non_atomic('foo', 'barshoom') | 28 | t.put_file_bytes_non_atomic('foo', b'barshoom') |
2419 | 29 | self.assertEqual('barshoom', t.get_file('foo').read()) | 29 | self.assertEqual(b'barshoom', t.get_file('foo').read()) |
2420 | 30 | 30 | ||
2421 | 31 | def test_put_existing_file(self): | 31 | def test_put_existing_file(self): |
2422 | 32 | t = self.make_branch_and_tree('t1') | 32 | t = self.make_branch_and_tree('t1') |
2423 | 33 | t.add(['foo'], kinds=['file']) | 33 | t.add(['foo'], kinds=['file']) |
2427 | 34 | t.put_file_bytes_non_atomic('foo', 'first-content') | 34 | t.put_file_bytes_non_atomic('foo', b'first-content') |
2428 | 35 | t.put_file_bytes_non_atomic('foo', 'barshoom') | 35 | t.put_file_bytes_non_atomic('foo', b'barshoom') |
2429 | 36 | self.assertEqual('barshoom', t.get_file('foo').read()) | 36 | self.assertEqual(b'barshoom', t.get_file('foo').read()) |
2430 | 37 | 37 | ||
2431 | 38 | 38 | ||
2432 | === modified file 'breezy/tests/test_cache_utf8.py' | |||
2433 | --- breezy/tests/test_cache_utf8.py 2017-05-22 00:56:52 +0000 | |||
2434 | +++ breezy/tests/test_cache_utf8.py 2018-06-21 23:03:57 +0000 | |||
2435 | @@ -19,6 +19,7 @@ | |||
2436 | 19 | from .. import ( | 19 | from .. import ( |
2437 | 20 | cache_utf8, | 20 | cache_utf8, |
2438 | 21 | ) | 21 | ) |
2439 | 22 | from ..sixish import text_type | ||
2440 | 22 | from . import TestCase | 23 | from . import TestCase |
2441 | 23 | 24 | ||
2442 | 24 | 25 | ||
2443 | @@ -105,7 +106,7 @@ | |||
2444 | 105 | # objects. | 106 | # objects. |
2445 | 106 | uni_x = cache_utf8.decode(x) | 107 | uni_x = cache_utf8.decode(x) |
2446 | 107 | self.assertEqual(u'simple text', uni_x) | 108 | self.assertEqual(u'simple text', uni_x) |
2448 | 108 | self.assertIsInstance(uni_x, unicode) | 109 | self.assertIsInstance(uni_x, text_type) |
2449 | 109 | 110 | ||
2450 | 110 | utf8_x = cache_utf8.encode(uni_x) | 111 | utf8_x = cache_utf8.encode(uni_x) |
2451 | 111 | self.assertIs(utf8_x, x) | 112 | self.assertIs(utf8_x, x) |
2452 | 112 | 113 | ||
2453 | === modified file 'breezy/tests/test_config.py' | |||
2454 | --- breezy/tests/test_config.py 2017-11-12 13:53:51 +0000 | |||
2455 | +++ breezy/tests/test_config.py 2018-06-21 23:03:57 +0000 | |||
2456 | @@ -44,6 +44,7 @@ | |||
2457 | 44 | ) | 44 | ) |
2458 | 45 | from ..sixish import ( | 45 | from ..sixish import ( |
2459 | 46 | BytesIO, | 46 | BytesIO, |
2460 | 47 | text_type, | ||
2461 | 47 | ) | 48 | ) |
2462 | 48 | from ..transport import remote as transport_remote | 49 | from ..transport import remote as transport_remote |
2463 | 49 | from . import ( | 50 | from . import ( |
2464 | @@ -522,7 +523,7 @@ | |||
2465 | 522 | self.assertEqual(config.config_dir(), self.brz_home) | 523 | self.assertEqual(config.config_dir(), self.brz_home) |
2466 | 523 | 524 | ||
2467 | 524 | def test_config_dir_is_unicode(self): | 525 | def test_config_dir_is_unicode(self): |
2469 | 525 | self.assertIsInstance(config.config_dir(), unicode) | 526 | self.assertIsInstance(config.config_dir(), text_type) |
2470 | 526 | 527 | ||
2471 | 527 | def test_config_filename(self): | 528 | def test_config_filename(self): |
2472 | 528 | self.assertEqual(config.config_filename(), | 529 | self.assertEqual(config.config_filename(), |
2473 | @@ -554,7 +555,7 @@ | |||
2474 | 554 | self.assertEqual(config.config_dir(), self.bzr_home) | 555 | self.assertEqual(config.config_dir(), self.bzr_home) |
2475 | 555 | 556 | ||
2476 | 556 | def test_config_dir_is_unicode(self): | 557 | def test_config_dir_is_unicode(self): |
2478 | 557 | self.assertIsInstance(config.config_dir(), unicode) | 558 | self.assertIsInstance(config.config_dir(), text_type) |
2479 | 558 | 559 | ||
2480 | 559 | def test_config_filename(self): | 560 | def test_config_filename(self): |
2481 | 560 | self.assertEqual(config.config_filename(), | 561 | self.assertEqual(config.config_filename(), |
2482 | 561 | 562 | ||
2483 | === modified file 'breezy/tests/test_conflicts.py' | |||
2484 | --- breezy/tests/test_conflicts.py 2018-05-22 02:05:12 +0000 | |||
2485 | +++ breezy/tests/test_conflicts.py 2018-06-21 23:03:57 +0000 | |||
2486 | @@ -24,6 +24,7 @@ | |||
2487 | 24 | osutils, | 24 | osutils, |
2488 | 25 | tests, | 25 | tests, |
2489 | 26 | ) | 26 | ) |
2490 | 27 | from ..sixish import text_type | ||
2491 | 27 | from . import ( | 28 | from . import ( |
2492 | 28 | script, | 29 | script, |
2493 | 29 | scenarios, | 30 | scenarios, |
2494 | @@ -129,7 +130,7 @@ | |||
2495 | 129 | scenarios = scenarios.multiply_scenarios(vary_by_conflicts()) | 130 | scenarios = scenarios.multiply_scenarios(vary_by_conflicts()) |
2496 | 130 | 131 | ||
2497 | 131 | def test_stringification(self): | 132 | def test_stringification(self): |
2499 | 132 | text = unicode(self.conflict) | 133 | text = text_type(self.conflict) |
2500 | 133 | self.assertContainsString(text, self.conflict.path) | 134 | self.assertContainsString(text, self.conflict.path) |
2501 | 134 | self.assertContainsString(text.lower(), "conflict") | 135 | self.assertContainsString(text.lower(), "conflict") |
2502 | 135 | self.assertContainsString(repr(self.conflict), | 136 | self.assertContainsString(repr(self.conflict), |
2503 | @@ -140,14 +141,14 @@ | |||
2504 | 140 | o = conflicts.Conflict.factory(**p.as_stanza().as_dict()) | 141 | o = conflicts.Conflict.factory(**p.as_stanza().as_dict()) |
2505 | 141 | self.assertEqual(o, p) | 142 | self.assertEqual(o, p) |
2506 | 142 | 143 | ||
2508 | 143 | self.assertIsInstance(o.path, unicode) | 144 | self.assertIsInstance(o.path, text_type) |
2509 | 144 | 145 | ||
2510 | 145 | if o.file_id is not None: | 146 | if o.file_id is not None: |
2511 | 146 | self.assertIsInstance(o.file_id, str) | 147 | self.assertIsInstance(o.file_id, str) |
2512 | 147 | 148 | ||
2513 | 148 | conflict_path = getattr(o, 'conflict_path', None) | 149 | conflict_path = getattr(o, 'conflict_path', None) |
2514 | 149 | if conflict_path is not None: | 150 | if conflict_path is not None: |
2516 | 150 | self.assertIsInstance(conflict_path, unicode) | 151 | self.assertIsInstance(conflict_path, text_type) |
2517 | 151 | 152 | ||
2518 | 152 | conflict_file_id = getattr(o, 'conflict_file_id', None) | 153 | conflict_file_id = getattr(o, 'conflict_file_id', None) |
2519 | 153 | if conflict_file_id is not None: | 154 | if conflict_file_id is not None: |
2520 | @@ -174,7 +175,7 @@ | |||
2521 | 174 | 175 | ||
2522 | 175 | def test_stringification(self): | 176 | def test_stringification(self): |
2523 | 176 | for text, o in zip(example_conflicts.to_strings(), example_conflicts): | 177 | for text, o in zip(example_conflicts.to_strings(), example_conflicts): |
2525 | 177 | self.assertEqual(text, unicode(o)) | 178 | self.assertEqual(text, text_type(o)) |
2526 | 178 | 179 | ||
2527 | 179 | 180 | ||
2528 | 180 | # FIXME: The shell-like tests should be converted to real whitebox tests... or | 181 | # FIXME: The shell-like tests should be converted to real whitebox tests... or |
2529 | @@ -303,17 +304,17 @@ | |||
2530 | 303 | 304 | ||
2531 | 304 | # Create an empty trunk | 305 | # Create an empty trunk |
2532 | 305 | builder.build_snapshot(None, [ | 306 | builder.build_snapshot(None, [ |
2534 | 306 | ('add', ('', 'root-id', 'directory', ''))], | 307 | ('add', (u'', b'root-id', 'directory', ''))], |
2535 | 307 | revision_id=b'start') | 308 | revision_id=b'start') |
2536 | 308 | # Add a minimal base content | 309 | # Add a minimal base content |
2537 | 309 | base_actions = self._get_actions(self._base_actions)() | 310 | base_actions = self._get_actions(self._base_actions)() |
2539 | 310 | builder.build_snapshot(['start'], base_actions, revision_id=b'base') | 311 | builder.build_snapshot([b'start'], base_actions, revision_id=b'base') |
2540 | 311 | # Modify the base content in branch | 312 | # Modify the base content in branch |
2541 | 312 | actions_other = self._get_actions(self._other['actions'])() | 313 | actions_other = self._get_actions(self._other['actions'])() |
2543 | 313 | builder.build_snapshot(['base'], actions_other, revision_id=b'other') | 314 | builder.build_snapshot([b'base'], actions_other, revision_id=b'other') |
2544 | 314 | # Modify the base content in trunk | 315 | # Modify the base content in trunk |
2545 | 315 | actions_this = self._get_actions(self._this['actions'])() | 316 | actions_this = self._get_actions(self._this['actions'])() |
2547 | 316 | builder.build_snapshot(['base'], actions_this, revision_id=b'this') | 317 | builder.build_snapshot([b'base'], actions_this, revision_id=b'this') |
2548 | 317 | # builder.get_branch() tip is now 'this' | 318 | # builder.get_branch() tip is now 'this' |
2549 | 318 | 319 | ||
2550 | 319 | builder.finish_series() | 320 | builder.finish_series() |
2551 | 320 | 321 | ||
2552 | === modified file 'breezy/tests/test_dirstate.py' | |||
2553 | --- breezy/tests/test_dirstate.py 2018-05-22 02:05:12 +0000 | |||
2554 | +++ breezy/tests/test_dirstate.py 2018-06-21 23:03:57 +0000 | |||
2555 | @@ -1105,7 +1105,7 @@ | |||
2556 | 1105 | try: | 1105 | try: |
2557 | 1106 | tree1.add('') | 1106 | tree1.add('') |
2558 | 1107 | tree1.add(['a file'], [b'file-id'], ['file']) | 1107 | tree1.add(['a file'], [b'file-id'], ['file']) |
2560 | 1108 | tree1.put_file_bytes_non_atomic('a file', 'file-content') | 1108 | tree1.put_file_bytes_non_atomic('a file', b'file-content') |
2561 | 1109 | revid1 = tree1.commit('foo') | 1109 | revid1 = tree1.commit('foo') |
2562 | 1110 | finally: | 1110 | finally: |
2563 | 1111 | tree1.unlock() | 1111 | tree1.unlock() |
2564 | @@ -1113,7 +1113,7 @@ | |||
2565 | 1113 | tree2 = memorytree.MemoryTree.create_on_branch(branch2) | 1113 | tree2 = memorytree.MemoryTree.create_on_branch(branch2) |
2566 | 1114 | tree2.lock_write() | 1114 | tree2.lock_write() |
2567 | 1115 | try: | 1115 | try: |
2569 | 1116 | tree2.put_file_bytes_non_atomic('a file', 'new file-content') | 1116 | tree2.put_file_bytes_non_atomic('a file', b'new file-content') |
2570 | 1117 | revid2 = tree2.commit('foo') | 1117 | revid2 = tree2.commit('foo') |
2571 | 1118 | root_id = tree2.get_root_id() | 1118 | root_id = tree2.get_root_id() |
2572 | 1119 | finally: | 1119 | finally: |
2573 | 1120 | 1120 | ||
2574 | === modified file 'breezy/tests/test_fetch.py' | |||
2575 | --- breezy/tests/test_fetch.py 2018-05-22 02:05:12 +0000 | |||
2576 | +++ breezy/tests/test_fetch.py 2018-06-21 23:03:57 +0000 | |||
2577 | @@ -149,14 +149,14 @@ | |||
2578 | 149 | Convert(tree.basedir, knit2_format) | 149 | Convert(tree.basedir, knit2_format) |
2579 | 150 | tree = WorkingTree.open(tree.basedir) | 150 | tree = WorkingTree.open(tree.basedir) |
2580 | 151 | branch = self.make_branch('branch', format=knit2_format) | 151 | branch = self.make_branch('branch', format=knit2_format) |
2582 | 152 | branch.pull(tree.branch, stop_revision='rev1') | 152 | branch.pull(tree.branch, stop_revision=b'rev1') |
2583 | 153 | repo = branch.repository | 153 | repo = branch.repository |
2584 | 154 | repo.lock_read() | 154 | repo.lock_read() |
2585 | 155 | try: | 155 | try: |
2586 | 156 | # Make sure fetch retrieved only what we requested | 156 | # Make sure fetch retrieved only what we requested |
2588 | 157 | self.assertEqual({('tree-root', 'rev1'):()}, | 157 | self.assertEqual({(b'tree-root', b'rev1'):()}, |
2589 | 158 | repo.texts.get_parent_map( | 158 | repo.texts.get_parent_map( |
2591 | 159 | [('tree-root', 'rev1'), ('tree-root', 'rev2')])) | 159 | [(b'tree-root', b'rev1'), (b'tree-root', b'rev2')])) |
2592 | 160 | finally: | 160 | finally: |
2593 | 161 | repo.unlock() | 161 | repo.unlock() |
2594 | 162 | branch.pull(tree.branch) | 162 | branch.pull(tree.branch) |
2595 | @@ -165,8 +165,8 @@ | |||
2596 | 165 | repo.lock_read() | 165 | repo.lock_read() |
2597 | 166 | try: | 166 | try: |
2598 | 167 | # Make sure fetch retrieved only what we requested | 167 | # Make sure fetch retrieved only what we requested |
2601 | 168 | self.assertEqual({('tree-root', 'rev2'):(('tree-root', 'rev1'),)}, | 168 | self.assertEqual({(b'tree-root', b'rev2'):((b'tree-root', b'rev1'),)}, |
2602 | 169 | repo.texts.get_parent_map([('tree-root', 'rev2')])) | 169 | repo.texts.get_parent_map([(b'tree-root', b'rev2')])) |
2603 | 170 | finally: | 170 | finally: |
2604 | 171 | repo.unlock() | 171 | repo.unlock() |
2605 | 172 | 172 | ||
2606 | 173 | 173 | ||
2607 | === modified file 'breezy/tests/test_inv.py' | |||
2608 | --- breezy/tests/test_inv.py 2018-05-22 02:05:12 +0000 | |||
2609 | +++ breezy/tests/test_inv.py 2018-06-21 23:03:57 +0000 | |||
2610 | @@ -23,6 +23,7 @@ | |||
2611 | 23 | tests, | 23 | tests, |
2612 | 24 | workingtree, | 24 | workingtree, |
2613 | 25 | ) | 25 | ) |
2614 | 26 | from ..sixish import text_type | ||
2615 | 26 | from ..bzr import ( | 27 | from ..bzr import ( |
2616 | 27 | chk_map, | 28 | chk_map, |
2617 | 28 | groupcompress, | 29 | groupcompress, |
2618 | @@ -1228,7 +1229,7 @@ | |||
2619 | 1228 | b'file-rev-id\nabcdefgh\n100\nY', bytes) | 1229 | b'file-rev-id\nabcdefgh\n100\nY', bytes) |
2620 | 1229 | ie2 = inv._bytes_to_entry(bytes) | 1230 | ie2 = inv._bytes_to_entry(bytes) |
2621 | 1230 | self.assertEqual(ie, ie2) | 1231 | self.assertEqual(ie, ie2) |
2623 | 1231 | self.assertIsInstance(ie2.name, unicode) | 1232 | self.assertIsInstance(ie2.name, text_type) |
2624 | 1232 | self.assertEqual(('filename', b'file-id', b'file-rev-id'), | 1233 | self.assertEqual(('filename', b'file-id', b'file-rev-id'), |
2625 | 1233 | inv._bytes_to_utf8name_key(bytes)) | 1234 | inv._bytes_to_utf8name_key(bytes)) |
2626 | 1234 | 1235 | ||
2627 | @@ -1245,7 +1246,7 @@ | |||
2628 | 1245 | b'file-rev-id\n123456\n25\nN', bytes) | 1246 | b'file-rev-id\n123456\n25\nN', bytes) |
2629 | 1246 | ie2 = inv._bytes_to_entry(bytes) | 1247 | ie2 = inv._bytes_to_entry(bytes) |
2630 | 1247 | self.assertEqual(ie, ie2) | 1248 | self.assertEqual(ie, ie2) |
2632 | 1248 | self.assertIsInstance(ie2.name, unicode) | 1249 | self.assertIsInstance(ie2.name, text_type) |
2633 | 1249 | self.assertEqual((b'\xce\xa9name', b'file-id', b'file-rev-id'), | 1250 | self.assertEqual((b'\xce\xa9name', b'file-id', b'file-rev-id'), |
2634 | 1250 | inv._bytes_to_utf8name_key(bytes)) | 1251 | inv._bytes_to_utf8name_key(bytes)) |
2635 | 1251 | 1252 | ||
2636 | @@ -1257,7 +1258,7 @@ | |||
2637 | 1257 | self.assertEqual(b'dir: dir-id\nparent-id\ndirname\ndir-rev-id', bytes) | 1258 | self.assertEqual(b'dir: dir-id\nparent-id\ndirname\ndir-rev-id', bytes) |
2638 | 1258 | ie2 = inv._bytes_to_entry(bytes) | 1259 | ie2 = inv._bytes_to_entry(bytes) |
2639 | 1259 | self.assertEqual(ie, ie2) | 1260 | self.assertEqual(ie, ie2) |
2641 | 1260 | self.assertIsInstance(ie2.name, unicode) | 1261 | self.assertIsInstance(ie2.name, text_type) |
2642 | 1261 | self.assertEqual(('dirname', b'dir-id', b'dir-rev-id'), | 1262 | self.assertEqual(('dirname', b'dir-id', b'dir-rev-id'), |
2643 | 1262 | inv._bytes_to_utf8name_key(bytes)) | 1263 | inv._bytes_to_utf8name_key(bytes)) |
2644 | 1263 | 1264 | ||
2645 | @@ -1271,7 +1272,7 @@ | |||
2646 | 1271 | b'dir-rev-id', bytes) | 1272 | b'dir-rev-id', bytes) |
2647 | 1272 | ie2 = inv._bytes_to_entry(bytes) | 1273 | ie2 = inv._bytes_to_entry(bytes) |
2648 | 1273 | self.assertEqual(ie, ie2) | 1274 | self.assertEqual(ie, ie2) |
2650 | 1274 | self.assertIsInstance(ie2.name, unicode) | 1275 | self.assertIsInstance(ie2.name, text_type) |
2651 | 1275 | self.assertIs(ie2.parent_id, None) | 1276 | self.assertIs(ie2.parent_id, None) |
2652 | 1276 | self.assertEqual(('dir\xce\xa9name', b'dir-id', b'dir-rev-id'), | 1277 | self.assertEqual(('dir\xce\xa9name', b'dir-id', b'dir-rev-id'), |
2653 | 1277 | inv._bytes_to_utf8name_key(bytes)) | 1278 | inv._bytes_to_utf8name_key(bytes)) |
2654 | @@ -1286,8 +1287,8 @@ | |||
2655 | 1286 | 'link-rev-id\ntarget/path', bytes) | 1287 | 'link-rev-id\ntarget/path', bytes) |
2656 | 1287 | ie2 = inv._bytes_to_entry(bytes) | 1288 | ie2 = inv._bytes_to_entry(bytes) |
2657 | 1288 | self.assertEqual(ie, ie2) | 1289 | self.assertEqual(ie, ie2) |
2660 | 1289 | self.assertIsInstance(ie2.name, unicode) | 1290 | self.assertIsInstance(ie2.name, text_type) |
2661 | 1290 | self.assertIsInstance(ie2.symlink_target, unicode) | 1291 | self.assertIsInstance(ie2.symlink_target, text_type) |
2662 | 1291 | self.assertEqual(('linkname', 'link-id', 'link-rev-id'), | 1292 | self.assertEqual(('linkname', 'link-id', 'link-rev-id'), |
2663 | 1292 | inv._bytes_to_utf8name_key(bytes)) | 1293 | inv._bytes_to_utf8name_key(bytes)) |
2664 | 1293 | 1294 | ||
2665 | @@ -1301,8 +1302,8 @@ | |||
2666 | 1301 | 'link-rev-id\ntarget/\xce\xa9path', bytes) | 1302 | 'link-rev-id\ntarget/\xce\xa9path', bytes) |
2667 | 1302 | ie2 = inv._bytes_to_entry(bytes) | 1303 | ie2 = inv._bytes_to_entry(bytes) |
2668 | 1303 | self.assertEqual(ie, ie2) | 1304 | self.assertEqual(ie, ie2) |
2671 | 1304 | self.assertIsInstance(ie2.name, unicode) | 1305 | self.assertIsInstance(ie2.name, text_type) |
2672 | 1305 | self.assertIsInstance(ie2.symlink_target, unicode) | 1306 | self.assertIsInstance(ie2.symlink_target, text_type) |
2673 | 1306 | self.assertEqual(('link\xce\xa9name', 'link-id', 'link-rev-id'), | 1307 | self.assertEqual(('link\xce\xa9name', 'link-id', 'link-rev-id'), |
2674 | 1307 | inv._bytes_to_utf8name_key(bytes)) | 1308 | inv._bytes_to_utf8name_key(bytes)) |
2675 | 1308 | 1309 | ||
2676 | @@ -1317,7 +1318,7 @@ | |||
2677 | 1317 | 'tree-rev-id\nref-rev-id', bytes) | 1318 | 'tree-rev-id\nref-rev-id', bytes) |
2678 | 1318 | ie2 = inv._bytes_to_entry(bytes) | 1319 | ie2 = inv._bytes_to_entry(bytes) |
2679 | 1319 | self.assertEqual(ie, ie2) | 1320 | self.assertEqual(ie, ie2) |
2681 | 1320 | self.assertIsInstance(ie2.name, unicode) | 1321 | self.assertIsInstance(ie2.name, text_type) |
2682 | 1321 | self.assertEqual(('tree\xce\xa9name', 'tree-root-id', 'tree-rev-id'), | 1322 | self.assertEqual(('tree\xce\xa9name', 'tree-root-id', 'tree-rev-id'), |
2683 | 1322 | inv._bytes_to_utf8name_key(bytes)) | 1323 | inv._bytes_to_utf8name_key(bytes)) |
2684 | 1323 | 1324 | ||
2685 | 1324 | 1325 | ||
2686 | === modified file 'breezy/tests/test_mail_client.py' | |||
2687 | --- breezy/tests/test_mail_client.py 2017-07-16 01:55:39 +0000 | |||
2688 | +++ breezy/tests/test_mail_client.py 2018-06-21 23:03:57 +0000 | |||
2689 | @@ -21,6 +21,8 @@ | |||
2690 | 21 | urlutils, | 21 | urlutils, |
2691 | 22 | osutils, | 22 | osutils, |
2692 | 23 | ) | 23 | ) |
2693 | 24 | from ..sixish import text_type | ||
2694 | 25 | |||
2695 | 24 | 26 | ||
2696 | 25 | class TestMutt(tests.TestCase): | 27 | class TestMutt(tests.TestCase): |
2697 | 26 | 28 | ||
2698 | @@ -43,7 +45,7 @@ | |||
2699 | 43 | ['-s', 'Hi there!', '-a', 'file%', '--', 'jrandom@example.org'], | 45 | ['-s', 'Hi there!', '-a', 'file%', '--', 'jrandom@example.org'], |
2700 | 44 | cmdline) | 46 | cmdline) |
2701 | 45 | for item in cmdline: | 47 | for item in cmdline: |
2703 | 46 | self.assertFalse(isinstance(item, unicode), | 48 | self.assertFalse(isinstance(item, text_type), |
2704 | 47 | 'Command-line item %r is unicode!' % item) | 49 | 'Command-line item %r is unicode!' % item) |
2705 | 48 | 50 | ||
2706 | 49 | 51 | ||
2707 | @@ -73,7 +75,7 @@ | |||
2708 | 73 | "subject='Hi there!',to='jrandom@example.org'", | 75 | "subject='Hi there!',to='jrandom@example.org'", |
2709 | 74 | ], cmdline) | 76 | ], cmdline) |
2710 | 75 | for item in cmdline: | 77 | for item in cmdline: |
2712 | 76 | self.assertFalse(isinstance(item, unicode), | 78 | self.assertFalse(isinstance(item, text_type), |
2713 | 77 | 'Command-line item %r is unicode!' % item) | 79 | 'Command-line item %r is unicode!' % item) |
2714 | 78 | 80 | ||
2715 | 79 | 81 | ||
2716 | @@ -110,7 +112,7 @@ | |||
2717 | 110 | if eclient.elisp_tmp_file is not None: | 112 | if eclient.elisp_tmp_file is not None: |
2718 | 111 | self.addCleanup(osutils.delete_any, eclient.elisp_tmp_file) | 113 | self.addCleanup(osutils.delete_any, eclient.elisp_tmp_file) |
2719 | 112 | for item in commandline: | 114 | for item in commandline: |
2721 | 113 | self.assertFalse(isinstance(item, unicode), | 115 | self.assertFalse(isinstance(item, text_type), |
2722 | 114 | 'Command-line item %r is unicode!' % item) | 116 | 'Command-line item %r is unicode!' % item) |
2723 | 115 | 117 | ||
2724 | 116 | 118 | ||
2725 | @@ -139,7 +141,7 @@ | |||
2726 | 139 | '--attach', 'file%'], | 141 | '--attach', 'file%'], |
2727 | 140 | cmdline) | 142 | cmdline) |
2728 | 141 | for item in cmdline: | 143 | for item in cmdline: |
2730 | 142 | self.assertFalse(isinstance(item, unicode), | 144 | self.assertFalse(isinstance(item, text_type), |
2731 | 143 | 'Command-line item %r is unicode!' % item) | 145 | 'Command-line item %r is unicode!' % item) |
2732 | 144 | 146 | ||
2733 | 145 | 147 | ||
2734 | @@ -163,7 +165,7 @@ | |||
2735 | 163 | ], | 165 | ], |
2736 | 164 | cmdline) | 166 | cmdline) |
2737 | 165 | for item in cmdline: | 167 | for item in cmdline: |
2739 | 166 | self.assertFalse(isinstance(item, unicode), | 168 | self.assertFalse(isinstance(item, text_type), |
2740 | 167 | 'Command-line item %r is unicode!' % item) | 169 | 'Command-line item %r is unicode!' % item) |
2741 | 168 | 170 | ||
2742 | 169 | 171 | ||
2743 | @@ -186,7 +188,7 @@ | |||
2744 | 186 | ['-s', 'Hi there!', '--attach', 'file%', 'jrandom@example.org'], | 188 | ['-s', 'Hi there!', '--attach', 'file%', 'jrandom@example.org'], |
2745 | 187 | cmdline) | 189 | cmdline) |
2746 | 188 | for item in cmdline: | 190 | for item in cmdline: |
2748 | 189 | self.assertFalse(isinstance(item, unicode), | 191 | self.assertFalse(isinstance(item, text_type), |
2749 | 190 | 'Command-line item %r is unicode!' % item) | 192 | 'Command-line item %r is unicode!' % item) |
2750 | 191 | 193 | ||
2751 | 192 | 194 | ||
2752 | @@ -219,7 +221,7 @@ | |||
2753 | 219 | 'file%'], | 221 | 'file%'], |
2754 | 220 | cmdline) | 222 | cmdline) |
2755 | 221 | for item in cmdline: | 223 | for item in cmdline: |
2757 | 222 | self.assertFalse(isinstance(item, unicode), | 224 | self.assertFalse(isinstance(item, text_type), |
2758 | 223 | 'Command-line item %r is unicode!' % item) | 225 | 'Command-line item %r is unicode!' % item) |
2759 | 224 | 226 | ||
2760 | 225 | def test_with_from(self): | 227 | def test_with_from(self): |
2761 | 226 | 228 | ||
2762 | === modified file 'breezy/tests/test_memorytree.py' | |||
2763 | --- breezy/tests/test_memorytree.py 2018-02-18 15:21:06 +0000 | |||
2764 | +++ breezy/tests/test_memorytree.py 2018-06-21 23:03:57 +0000 | |||
2765 | @@ -110,8 +110,8 @@ | |||
2766 | 110 | tree.lock_write() | 110 | tree.lock_write() |
2767 | 111 | tree.add(['', 'foo'], ids=[b'root-id', b'foo-id'], | 111 | tree.add(['', 'foo'], ids=[b'root-id', b'foo-id'], |
2768 | 112 | kinds=['directory', 'file']) | 112 | kinds=['directory', 'file']) |
2771 | 113 | tree.put_file_bytes_non_atomic('foo', 'barshoom') | 113 | tree.put_file_bytes_non_atomic('foo', b'barshoom') |
2772 | 114 | self.assertEqual('barshoom', tree.get_file('foo').read()) | 114 | self.assertEqual(b'barshoom', tree.get_file('foo').read()) |
2773 | 115 | tree.unlock() | 115 | tree.unlock() |
2774 | 116 | 116 | ||
2775 | 117 | def test_put_existing_file(self): | 117 | def test_put_existing_file(self): |
2776 | @@ -120,9 +120,9 @@ | |||
2777 | 120 | tree.lock_write() | 120 | tree.lock_write() |
2778 | 121 | tree.add(['', 'foo'], ids=[b'root-id', b'foo-id'], | 121 | tree.add(['', 'foo'], ids=[b'root-id', b'foo-id'], |
2779 | 122 | kinds=['directory', 'file']) | 122 | kinds=['directory', 'file']) |
2783 | 123 | tree.put_file_bytes_non_atomic('foo', 'first-content') | 123 | tree.put_file_bytes_non_atomic('foo', b'first-content') |
2784 | 124 | tree.put_file_bytes_non_atomic('foo', 'barshoom') | 124 | tree.put_file_bytes_non_atomic('foo', b'barshoom') |
2785 | 125 | self.assertEqual('barshoom', tree.get_file('foo').read()) | 125 | self.assertEqual(b'barshoom', tree.get_file('foo').read()) |
2786 | 126 | tree.unlock() | 126 | tree.unlock() |
2787 | 127 | 127 | ||
2788 | 128 | def test_add_in_subdir(self): | 128 | def test_add_in_subdir(self): |
2789 | @@ -135,11 +135,11 @@ | |||
2790 | 135 | # that *always* adds the directory as well. So if you want to create a | 135 | # that *always* adds the directory as well. So if you want to create a |
2791 | 136 | # file in a subdirectory, you have to split out the 'mkdir()' calls | 136 | # file in a subdirectory, you have to split out the 'mkdir()' calls |
2792 | 137 | # from the add and put_file_bytes_non_atomic calls. :( | 137 | # from the add and put_file_bytes_non_atomic calls. :( |
2794 | 138 | tree.mkdir('adir', 'dir-id') | 138 | tree.mkdir('adir', b'dir-id') |
2795 | 139 | tree.add(['adir/afile'], [b'file-id'], ['file']) | 139 | tree.add(['adir/afile'], [b'file-id'], ['file']) |
2796 | 140 | self.assertEqual('adir/afile', tree.id2path(b'file-id')) | 140 | self.assertEqual('adir/afile', tree.id2path(b'file-id')) |
2797 | 141 | self.assertEqual('adir', tree.id2path(b'dir-id')) | 141 | self.assertEqual('adir', tree.id2path(b'dir-id')) |
2799 | 142 | tree.put_file_bytes_non_atomic('adir/afile', 'barshoom') | 142 | tree.put_file_bytes_non_atomic('adir/afile', b'barshoom') |
2800 | 143 | 143 | ||
2801 | 144 | def test_commit_trivial(self): | 144 | def test_commit_trivial(self): |
2802 | 145 | """Smoke test for commit on a MemoryTree. | 145 | """Smoke test for commit on a MemoryTree. |
2803 | @@ -152,7 +152,7 @@ | |||
2804 | 152 | tree.lock_write() | 152 | tree.lock_write() |
2805 | 153 | tree.add(['', 'foo'], ids=[b'root-id', b'foo-id'], | 153 | tree.add(['', 'foo'], ids=[b'root-id', b'foo-id'], |
2806 | 154 | kinds=['directory', 'file']) | 154 | kinds=['directory', 'file']) |
2808 | 155 | tree.put_file_bytes_non_atomic('foo', 'barshoom') | 155 | tree.put_file_bytes_non_atomic('foo', b'barshoom') |
2809 | 156 | revision_id = tree.commit('message baby') | 156 | revision_id = tree.commit('message baby') |
2810 | 157 | # the parents list for the tree should have changed. | 157 | # the parents list for the tree should have changed. |
2811 | 158 | self.assertEqual([revision_id], tree.get_parent_ids()) | 158 | self.assertEqual([revision_id], tree.get_parent_ids()) |
2812 | @@ -161,7 +161,8 @@ | |||
2813 | 161 | revtree = tree.branch.repository.revision_tree(revision_id) | 161 | revtree = tree.branch.repository.revision_tree(revision_id) |
2814 | 162 | revtree.lock_read() | 162 | revtree.lock_read() |
2815 | 163 | self.addCleanup(revtree.unlock) | 163 | self.addCleanup(revtree.unlock) |
2817 | 164 | self.assertEqual('barshoom', revtree.get_file('foo').read()) | 164 | with revtree.get_file('foo') as f: |
2818 | 165 | self.assertEqual(b'barshoom', f.read()) | ||
2819 | 165 | 166 | ||
2820 | 166 | def test_unversion(self): | 167 | def test_unversion(self): |
2821 | 167 | """Some test for unversion of a memory tree.""" | 168 | """Some test for unversion of a memory tree.""" |
2822 | @@ -189,7 +190,7 @@ | |||
2823 | 189 | tree.lock_write() | 190 | tree.lock_write() |
2824 | 190 | self.addCleanup(tree.unlock) | 191 | self.addCleanup(tree.unlock) |
2825 | 191 | tree.add(['', 'foo'], [b'root-id', b'foo-id'], ['directory', 'file']) | 192 | tree.add(['', 'foo'], [b'root-id', b'foo-id'], ['directory', 'file']) |
2827 | 192 | tree.put_file_bytes_non_atomic('foo', 'content\n') | 193 | tree.put_file_bytes_non_atomic('foo', b'content\n') |
2828 | 193 | tree.commit('one', rev_id=b'rev-one') | 194 | tree.commit('one', rev_id=b'rev-one') |
2829 | 194 | tree.rename_one('foo', 'bar') | 195 | tree.rename_one('foo', 'bar') |
2830 | 195 | self.assertEqual('bar', tree.id2path(b'foo-id')) | 196 | self.assertEqual('bar', tree.id2path(b'foo-id')) |
2831 | @@ -197,13 +198,13 @@ | |||
2832 | 197 | self.assertRaises(errors.NoSuchFile, | 198 | self.assertRaises(errors.NoSuchFile, |
2833 | 198 | tree._file_transport.get_bytes, 'foo') | 199 | tree._file_transport.get_bytes, 'foo') |
2834 | 199 | tree.commit('two', rev_id=b'rev-two') | 200 | tree.commit('two', rev_id=b'rev-two') |
2836 | 200 | self.assertEqual('content\n', tree._file_transport.get_bytes('bar')) | 201 | self.assertEqual(b'content\n', tree._file_transport.get_bytes('bar')) |
2837 | 201 | self.assertRaises(errors.NoSuchFile, | 202 | self.assertRaises(errors.NoSuchFile, |
2838 | 202 | tree._file_transport.get_bytes, 'foo') | 203 | tree._file_transport.get_bytes, 'foo') |
2839 | 203 | 204 | ||
2840 | 204 | rev_tree2 = tree.branch.repository.revision_tree(b'rev-two') | 205 | rev_tree2 = tree.branch.repository.revision_tree(b'rev-two') |
2841 | 205 | self.assertEqual('bar', rev_tree2.id2path(b'foo-id')) | 206 | self.assertEqual('bar', rev_tree2.id2path(b'foo-id')) |
2843 | 206 | self.assertEqual('content\n', rev_tree2.get_file_text('bar')) | 207 | self.assertEqual(b'content\n', rev_tree2.get_file_text('bar')) |
2844 | 207 | 208 | ||
2845 | 208 | def test_rename_file_to_subdir(self): | 209 | def test_rename_file_to_subdir(self): |
2846 | 209 | tree = self.make_branch_and_memory_tree('branch') | 210 | tree = self.make_branch_and_memory_tree('branch') |
2847 | @@ -212,7 +213,7 @@ | |||
2848 | 212 | tree.add('') | 213 | tree.add('') |
2849 | 213 | tree.mkdir('subdir', b'subdir-id') | 214 | tree.mkdir('subdir', b'subdir-id') |
2850 | 214 | tree.add('foo', b'foo-id', 'file') | 215 | tree.add('foo', b'foo-id', 'file') |
2852 | 215 | tree.put_file_bytes_non_atomic('foo', 'content\n') | 216 | tree.put_file_bytes_non_atomic('foo', b'content\n') |
2853 | 216 | tree.commit('one', rev_id=b'rev-one') | 217 | tree.commit('one', rev_id=b'rev-one') |
2854 | 217 | 218 | ||
2855 | 218 | tree.rename_one('foo', 'subdir/bar') | 219 | tree.rename_one('foo', 'subdir/bar') |
2856 | 219 | 220 | ||
2857 | === modified file 'breezy/tests/test_osutils.py' | |||
2858 | --- breezy/tests/test_osutils.py 2018-02-18 15:21:06 +0000 | |||
2859 | +++ breezy/tests/test_osutils.py 2018-06-21 23:03:57 +0000 | |||
2860 | @@ -38,6 +38,7 @@ | |||
2861 | 38 | ) | 38 | ) |
2862 | 39 | from ..sixish import ( | 39 | from ..sixish import ( |
2863 | 40 | BytesIO, | 40 | BytesIO, |
2864 | 41 | text_type, | ||
2865 | 41 | ) | 42 | ) |
2866 | 42 | from . import ( | 43 | from . import ( |
2867 | 43 | features, | 44 | features, |
2868 | @@ -405,7 +406,7 @@ | |||
2869 | 405 | self.assertRaises(osutils.UnsupportedTimezoneFormat, | 406 | self.assertRaises(osutils.UnsupportedTimezoneFormat, |
2870 | 406 | osutils.format_date, 0, timezone='foo') | 407 | osutils.format_date, 0, timezone='foo') |
2871 | 407 | self.assertIsInstance(osutils.format_date(0), str) | 408 | self.assertIsInstance(osutils.format_date(0), str) |
2873 | 408 | self.assertIsInstance(osutils.format_local_date(0), unicode) | 409 | self.assertIsInstance(osutils.format_local_date(0), text_type) |
2874 | 409 | # Testing for the actual value of the local weekday without | 410 | # Testing for the actual value of the local weekday without |
2875 | 410 | # duplicating the code from format_date is difficult. | 411 | # duplicating the code from format_date is difficult. |
2876 | 411 | # Instead blackbox.test_locale should check for localized | 412 | # Instead blackbox.test_locale should check for localized |
2877 | @@ -1397,11 +1398,11 @@ | |||
2878 | 1397 | # all abspaths are Unicode, and encode them back into utf8. | 1398 | # all abspaths are Unicode, and encode them back into utf8. |
2879 | 1398 | for dirdetail, dirblock in osutils._walkdirs_utf8('.'): | 1399 | for dirdetail, dirblock in osutils._walkdirs_utf8('.'): |
2880 | 1399 | self.assertIsInstance(dirdetail[0], str) | 1400 | self.assertIsInstance(dirdetail[0], str) |
2882 | 1400 | if isinstance(dirdetail[1], unicode): | 1401 | if isinstance(dirdetail[1], text_type): |
2883 | 1401 | dirdetail = (dirdetail[0], dirdetail[1].encode('utf8')) | 1402 | dirdetail = (dirdetail[0], dirdetail[1].encode('utf8')) |
2884 | 1402 | dirblock = [list(info) for info in dirblock] | 1403 | dirblock = [list(info) for info in dirblock] |
2885 | 1403 | for info in dirblock: | 1404 | for info in dirblock: |
2887 | 1404 | self.assertIsInstance(info[4], unicode) | 1405 | self.assertIsInstance(info[4], text_type) |
2888 | 1405 | info[4] = info[4].encode('utf8') | 1406 | info[4] = info[4].encode('utf8') |
2889 | 1406 | new_dirblock = [] | 1407 | new_dirblock = [] |
2890 | 1407 | for info in dirblock: | 1408 | for info in dirblock: |
2891 | @@ -2137,13 +2138,13 @@ | |||
2892 | 2137 | def test_is_unicode(self): | 2138 | def test_is_unicode(self): |
2893 | 2138 | self.overrideEnv('BRZ_TEST_PATH', './anywhere at all/') | 2139 | self.overrideEnv('BRZ_TEST_PATH', './anywhere at all/') |
2894 | 2139 | path = osutils.path_from_environ('BRZ_TEST_PATH') | 2140 | path = osutils.path_from_environ('BRZ_TEST_PATH') |
2896 | 2140 | self.assertIsInstance(path, unicode) | 2141 | self.assertIsInstance(path, text_type) |
2897 | 2141 | self.assertEqual(u'./anywhere at all/', path) | 2142 | self.assertEqual(u'./anywhere at all/', path) |
2898 | 2142 | 2143 | ||
2899 | 2143 | def test_posix_path_env_ascii(self): | 2144 | def test_posix_path_env_ascii(self): |
2900 | 2144 | self.overrideEnv('BRZ_TEST_PATH', '/tmp') | 2145 | self.overrideEnv('BRZ_TEST_PATH', '/tmp') |
2901 | 2145 | home = osutils._posix_path_from_environ('BRZ_TEST_PATH') | 2146 | home = osutils._posix_path_from_environ('BRZ_TEST_PATH') |
2903 | 2146 | self.assertIsInstance(home, unicode) | 2147 | self.assertIsInstance(home, text_type) |
2904 | 2147 | self.assertEqual(u'/tmp', home) | 2148 | self.assertEqual(u'/tmp', home) |
2905 | 2148 | 2149 | ||
2906 | 2149 | def test_posix_path_env_unicode(self): | 2150 | def test_posix_path_env_unicode(self): |
2907 | @@ -2164,17 +2165,17 @@ | |||
2908 | 2164 | 2165 | ||
2909 | 2165 | def test_is_unicode(self): | 2166 | def test_is_unicode(self): |
2910 | 2166 | home = osutils._get_home_dir() | 2167 | home = osutils._get_home_dir() |
2912 | 2167 | self.assertIsInstance(home, unicode) | 2168 | self.assertIsInstance(home, text_type) |
2913 | 2168 | 2169 | ||
2914 | 2169 | def test_posix_homeless(self): | 2170 | def test_posix_homeless(self): |
2915 | 2170 | self.overrideEnv('HOME', None) | 2171 | self.overrideEnv('HOME', None) |
2916 | 2171 | home = osutils._get_home_dir() | 2172 | home = osutils._get_home_dir() |
2918 | 2172 | self.assertIsInstance(home, unicode) | 2173 | self.assertIsInstance(home, text_type) |
2919 | 2173 | 2174 | ||
2920 | 2174 | def test_posix_home_ascii(self): | 2175 | def test_posix_home_ascii(self): |
2921 | 2175 | self.overrideEnv('HOME', '/home/test') | 2176 | self.overrideEnv('HOME', '/home/test') |
2922 | 2176 | home = osutils._posix_get_home_dir() | 2177 | home = osutils._posix_get_home_dir() |
2924 | 2177 | self.assertIsInstance(home, unicode) | 2178 | self.assertIsInstance(home, text_type) |
2925 | 2178 | self.assertEqual(u'/home/test', home) | 2179 | self.assertEqual(u'/home/test', home) |
2926 | 2179 | 2180 | ||
2927 | 2180 | def test_posix_home_unicode(self): | 2181 | def test_posix_home_unicode(self): |
2928 | @@ -2193,7 +2194,7 @@ | |||
2929 | 2193 | 2194 | ||
2930 | 2194 | def test_is_unicode(self): | 2195 | def test_is_unicode(self): |
2931 | 2195 | user = osutils.getuser_unicode() | 2196 | user = osutils.getuser_unicode() |
2933 | 2196 | self.assertIsInstance(user, unicode) | 2197 | self.assertIsInstance(user, text_type) |
2934 | 2197 | 2198 | ||
2935 | 2198 | def envvar_to_override(self): | 2199 | def envvar_to_override(self): |
2936 | 2199 | if sys.platform == "win32": | 2200 | if sys.platform == "win32": |
2937 | 2200 | 2201 | ||
2938 | === modified file 'breezy/tests/test_read_bundle.py' | |||
2939 | --- breezy/tests/test_read_bundle.py 2018-02-18 15:21:06 +0000 | |||
2940 | +++ breezy/tests/test_read_bundle.py 2018-06-21 23:03:57 +0000 | |||
2941 | @@ -22,6 +22,7 @@ | |||
2942 | 22 | from .. import errors | 22 | from .. import errors |
2943 | 23 | from ..sixish import ( | 23 | from ..sixish import ( |
2944 | 24 | BytesIO, | 24 | BytesIO, |
2945 | 25 | text_type, | ||
2946 | 25 | ) | 26 | ) |
2947 | 26 | from .. import tests | 27 | from .. import tests |
2948 | 27 | from .test_transport import TestTransportImplementation | 28 | from .test_transport import TestTransportImplementation |
2949 | @@ -88,7 +89,7 @@ | |||
2950 | 88 | 89 | ||
2951 | 89 | def test_read_mergeable_from_url(self): | 90 | def test_read_mergeable_from_url(self): |
2952 | 90 | info = self.read_mergeable_from_url( | 91 | info = self.read_mergeable_from_url( |
2954 | 91 | unicode(self.get_url(self.bundle_name))) | 92 | text_type(self.get_url(self.bundle_name))) |
2955 | 92 | revision = info.real_revisions[-1] | 93 | revision = info.real_revisions[-1] |
2956 | 93 | self.assertEqual('commit-1', revision.revision_id) | 94 | self.assertEqual('commit-1', revision.revision_id) |
2957 | 94 | 95 | ||
2958 | @@ -107,6 +108,6 @@ | |||
2959 | 107 | # transports (the test will fail even). | 108 | # transports (the test will fail even). |
2960 | 108 | raise tests.TestSkipped( | 109 | raise tests.TestSkipped( |
2961 | 109 | 'Need a ConnectedTransport to test transport reuse') | 110 | 'Need a ConnectedTransport to test transport reuse') |
2963 | 110 | url = unicode(self.get_url(self.bundle_name)) | 111 | url = text_type(self.get_url(self.bundle_name)) |
2964 | 111 | info = self.read_mergeable_from_url(url) | 112 | info = self.read_mergeable_from_url(url) |
2965 | 112 | self.assertEqual(1, len(self.possible_transports)) | 113 | self.assertEqual(1, len(self.possible_transports)) |
2966 | 113 | 114 | ||
2967 | === modified file 'breezy/tests/test_repository.py' | |||
2968 | --- breezy/tests/test_repository.py 2018-05-22 02:05:12 +0000 | |||
2969 | +++ breezy/tests/test_repository.py 2018-06-21 23:03:57 +0000 | |||
2970 | @@ -242,8 +242,9 @@ | |||
2971 | 242 | # empty revision-store directory | 242 | # empty revision-store directory |
2972 | 243 | # empty weaves directory | 243 | # empty weaves directory |
2973 | 244 | t = control.get_repository_transport(None) | 244 | t = control.get_repository_transport(None) |
2976 | 245 | self.assertEqualDiff('Bazaar-NG Knit Repository Format 1', | 245 | with t.get('format') as f: |
2977 | 246 | t.get('format').read()) | 246 | self.assertEqualDiff(b'Bazaar-NG Knit Repository Format 1', |
2978 | 247 | f.read()) | ||
2979 | 247 | # XXX: no locks left when unlocked at the moment | 248 | # XXX: no locks left when unlocked at the moment |
2980 | 248 | # self.assertEqualDiff('', t.get('lock').read()) | 249 | # self.assertEqualDiff('', t.get('lock').read()) |
2981 | 249 | self.assertTrue(S_ISDIR(t.stat('knits').st_mode)) | 250 | self.assertTrue(S_ISDIR(t.stat('knits').st_mode)) |
2982 | @@ -251,8 +252,8 @@ | |||
2983 | 251 | # Check per-file knits. | 252 | # Check per-file knits. |
2984 | 252 | branch = control.create_branch() | 253 | branch = control.create_branch() |
2985 | 253 | tree = control.create_workingtree() | 254 | tree = control.create_workingtree() |
2988 | 254 | tree.add(['foo'], ['Nasty-IdC:'], ['file']) | 255 | tree.add(['foo'], [b'Nasty-IdC:'], ['file']) |
2989 | 255 | tree.put_file_bytes_non_atomic('foo', '') | 256 | tree.put_file_bytes_non_atomic('foo', b'') |
2990 | 256 | tree.commit('1st post', rev_id=b'foo') | 257 | tree.commit('1st post', rev_id=b'foo') |
2991 | 257 | self.assertHasKnit(t, 'knits/e8/%254easty-%2549d%2543%253a', | 258 | self.assertHasKnit(t, 'knits/e8/%254easty-%2549d%2543%253a', |
2992 | 258 | '\nfoo fulltext 0 81 :') | 259 | '\nfoo fulltext 0 81 :') |
2993 | 259 | 260 | ||
2994 | === modified file 'breezy/tests/test_transform.py' | |||
2995 | --- breezy/tests/test_transform.py 2018-06-14 12:13:00 +0000 | |||
2996 | +++ breezy/tests/test_transform.py 2018-06-21 23:03:57 +0000 | |||
2997 | @@ -61,6 +61,7 @@ | |||
2998 | 61 | from ..mutabletree import MutableTree | 61 | from ..mutabletree import MutableTree |
2999 | 62 | from ..sixish import ( | 62 | from ..sixish import ( |
3000 | 63 | BytesIO, | 63 | BytesIO, |
3001 | 64 | text_type, | ||
3002 | 64 | ) | 65 | ) |
3003 | 65 | from . import ( | 66 | from . import ( |
3004 | 66 | features, | 67 | features, |
3005 | @@ -877,7 +878,7 @@ | |||
3006 | 877 | raw_conflicts = resolve_conflicts(tt) | 878 | raw_conflicts = resolve_conflicts(tt) |
3007 | 878 | cooked_conflicts = cook_conflicts(raw_conflicts, tt) | 879 | cooked_conflicts = cook_conflicts(raw_conflicts, tt) |
3008 | 879 | tt.finalize() | 880 | tt.finalize() |
3010 | 880 | conflicts_s = [unicode(c) for c in cooked_conflicts] | 881 | conflicts_s = [text_type(c) for c in cooked_conflicts] |
3011 | 881 | self.assertEqual(len(cooked_conflicts), len(conflicts_s)) | 882 | self.assertEqual(len(cooked_conflicts), len(conflicts_s)) |
3012 | 882 | self.assertEqual(conflicts_s[0], 'Conflict adding file dorothy. ' | 883 | self.assertEqual(conflicts_s[0], 'Conflict adding file dorothy. ' |
3013 | 883 | 'Moved existing file to ' | 884 | 'Moved existing file to ' |
3014 | 884 | 885 | ||
3015 | === modified file 'breezy/tests/test_urlutils.py' | |||
3016 | --- breezy/tests/test_urlutils.py 2018-05-27 18:00:21 +0000 | |||
3017 | +++ breezy/tests/test_urlutils.py 2018-06-21 23:03:57 +0000 | |||
3018 | @@ -23,6 +23,7 @@ | |||
3019 | 23 | from ..errors import ( | 23 | from ..errors import ( |
3020 | 24 | PathNotChild, | 24 | PathNotChild, |
3021 | 25 | ) | 25 | ) |
3022 | 26 | from ..sixish import text_type | ||
3023 | 26 | from . import features, TestCaseInTempDir, TestCase, TestSkipped | 27 | from . import features, TestCaseInTempDir, TestCase, TestSkipped |
3024 | 27 | 28 | ||
3025 | 28 | 29 | ||
3026 | @@ -411,7 +412,7 @@ | |||
3027 | 411 | raise TestSkipped("local encoding cannot handle unicode") | 412 | raise TestSkipped("local encoding cannot handle unicode") |
3028 | 412 | 413 | ||
3029 | 413 | self.assertEqual('file:///D:/path/to/r%C3%A4ksm%C3%B6rg%C3%A5s', result) | 414 | self.assertEqual('file:///D:/path/to/r%C3%A4ksm%C3%B6rg%C3%A5s', result) |
3031 | 414 | self.assertFalse(isinstance(result, unicode)) | 415 | self.assertFalse(isinstance(result, text_type)) |
3032 | 415 | 416 | ||
3033 | 416 | def test_win32_unc_path_to_url(self): | 417 | def test_win32_unc_path_to_url(self): |
3034 | 417 | self.requireFeature(features.win32_feature) | 418 | self.requireFeature(features.win32_feature) |
3035 | @@ -427,7 +428,7 @@ | |||
3036 | 427 | raise TestSkipped("local encoding cannot handle unicode") | 428 | raise TestSkipped("local encoding cannot handle unicode") |
3037 | 428 | 429 | ||
3038 | 429 | self.assertEqual('file://HOST/path/to/r%C3%A4ksm%C3%B6rg%C3%A5s', result) | 430 | self.assertEqual('file://HOST/path/to/r%C3%A4ksm%C3%B6rg%C3%A5s', result) |
3040 | 430 | self.assertFalse(isinstance(result, unicode)) | 431 | self.assertFalse(isinstance(result, text_type)) |
3041 | 431 | 432 | ||
3042 | 432 | def test_win32_local_path_from_url(self): | 433 | def test_win32_local_path_from_url(self): |
3043 | 433 | from_url = urlutils._win32_local_path_from_url | 434 | from_url = urlutils._win32_local_path_from_url |
3044 | @@ -610,7 +611,7 @@ | |||
3045 | 610 | # Test that URLs are converted to nice unicode strings for display | 611 | # Test that URLs are converted to nice unicode strings for display |
3046 | 611 | def test(expected, url, encoding='utf-8'): | 612 | def test(expected, url, encoding='utf-8'): |
3047 | 612 | disp_url = urlutils.unescape_for_display(url, encoding=encoding) | 613 | disp_url = urlutils.unescape_for_display(url, encoding=encoding) |
3049 | 613 | self.assertIsInstance(disp_url, unicode) | 614 | self.assertIsInstance(disp_url, text_type) |
3050 | 614 | self.assertEqual(expected, disp_url) | 615 | self.assertEqual(expected, disp_url) |
3051 | 615 | 616 | ||
3052 | 616 | test('http://foo', 'http://foo') | 617 | test('http://foo', 'http://foo') |
3053 | @@ -650,7 +651,7 @@ | |||
3054 | 650 | def test_escape(self): | 651 | def test_escape(self): |
3055 | 651 | self.assertEqual('%25', urlutils.escape('%')) | 652 | self.assertEqual('%25', urlutils.escape('%')) |
3056 | 652 | self.assertEqual('%C3%A5', urlutils.escape(u'\xe5')) | 653 | self.assertEqual('%C3%A5', urlutils.escape(u'\xe5')) |
3058 | 653 | self.assertFalse(isinstance(urlutils.escape(u'\xe5'), unicode)) | 654 | self.assertFalse(isinstance(urlutils.escape(u'\xe5'), text_type)) |
3059 | 654 | 655 | ||
3060 | 655 | def test_escape_tildes(self): | 656 | def test_escape_tildes(self): |
3061 | 656 | self.assertEqual('~foo', urlutils.escape('~foo')) | 657 | self.assertEqual('~foo', urlutils.escape('~foo')) |
3062 | 657 | 658 | ||
3063 | === modified file 'breezy/tests/test_workingtree_4.py' | |||
3064 | --- breezy/tests/test_workingtree_4.py 2018-06-14 12:13:00 +0000 | |||
3065 | +++ breezy/tests/test_workingtree_4.py 2018-06-21 23:03:57 +0000 | |||
3066 | @@ -281,17 +281,17 @@ | |||
3067 | 281 | builder.start_series() | 281 | builder.start_series() |
3068 | 282 | self.addCleanup(builder.finish_series) | 282 | self.addCleanup(builder.finish_series) |
3069 | 283 | builder.build_snapshot([], [ | 283 | builder.build_snapshot([], [ |
3072 | 284 | ('add', ('', 'root-id', 'directory', None)), | 284 | ('add', ('', b'root-id', 'directory', None)), |
3073 | 285 | ('add', ('a', 'a-id', 'file', 'content\n'))], | 285 | ('add', ('a', b'a-id', 'file', b'content\n'))], |
3074 | 286 | revision_id=b'A') | 286 | revision_id=b'A') |
3078 | 287 | builder.build_snapshot(['A'], [ | 287 | builder.build_snapshot([b'A'], [ |
3079 | 288 | ('modify', ('a', 'new content\nfor a\n')), | 288 | ('modify', ('a', b'new content\nfor a\n')), |
3080 | 289 | ('add', ('b', 'b-id', 'file', 'b-content\n'))], | 289 | ('add', ('b', b'b-id', 'file', b'b-content\n'))], |
3081 | 290 | revision_id=b'B') | 290 | revision_id=b'B') |
3082 | 291 | tree = self.make_workingtree('tree') | 291 | tree = self.make_workingtree('tree') |
3083 | 292 | source_branch = builder.get_branch() | 292 | source_branch = builder.get_branch() |
3086 | 293 | tree.branch.repository.fetch(source_branch.repository, 'B') | 293 | tree.branch.repository.fetch(source_branch.repository, b'B') |
3087 | 294 | tree.pull(source_branch, stop_revision='A') | 294 | tree.pull(source_branch, stop_revision=b'A') |
3088 | 295 | tree.lock_write() | 295 | tree.lock_write() |
3089 | 296 | self.addCleanup(tree.unlock) | 296 | self.addCleanup(tree.unlock) |
3090 | 297 | state = tree.current_dirstate() | 297 | state = tree.current_dirstate() |
3091 | @@ -302,37 +302,37 @@ | |||
3092 | 302 | return orig_update(delta, new_revid) | 302 | return orig_update(delta, new_revid) |
3093 | 303 | state.update_basis_by_delta = log_update_basis_by_delta | 303 | state.update_basis_by_delta = log_update_basis_by_delta |
3094 | 304 | basis = tree.basis_tree() | 304 | basis = tree.basis_tree() |
3096 | 305 | self.assertEqual('a-id', basis.path2id('a')) | 305 | self.assertEqual(b'a-id', basis.path2id('a')) |
3097 | 306 | self.assertFalse(basis.is_versioned('b')) | 306 | self.assertFalse(basis.is_versioned('b')) |
3098 | 307 | def fail_set_parent_trees(trees, ghosts): | 307 | def fail_set_parent_trees(trees, ghosts): |
3099 | 308 | raise AssertionError('dirstate.set_parent_trees() was called') | 308 | raise AssertionError('dirstate.set_parent_trees() was called') |
3100 | 309 | state.set_parent_trees = fail_set_parent_trees | 309 | state.set_parent_trees = fail_set_parent_trees |
3101 | 310 | repo = tree.branch.repository | 310 | repo = tree.branch.repository |
3104 | 311 | tree.pull(source_branch, stop_revision='B') | 311 | tree.pull(source_branch, stop_revision=b'B') |
3105 | 312 | self.assertEqual(['B'], called) | 312 | self.assertEqual([b'B'], called) |
3106 | 313 | basis = tree.basis_tree() | 313 | basis = tree.basis_tree() |
3109 | 314 | self.assertEqual('a-id', basis.path2id('a')) | 314 | self.assertEqual(b'a-id', basis.path2id('a')) |
3110 | 315 | self.assertEqual('b-id', basis.path2id('b')) | 315 | self.assertEqual(b'b-id', basis.path2id('b')) |
3111 | 316 | 316 | ||
3112 | 317 | def test_set_parent_trees_handles_missing_basis(self): | 317 | def test_set_parent_trees_handles_missing_basis(self): |
3113 | 318 | builder = self.make_branch_builder('source') | 318 | builder = self.make_branch_builder('source') |
3114 | 319 | builder.start_series() | 319 | builder.start_series() |
3115 | 320 | self.addCleanup(builder.finish_series) | 320 | self.addCleanup(builder.finish_series) |
3116 | 321 | builder.build_snapshot([], [ | 321 | builder.build_snapshot([], [ |
3119 | 322 | ('add', ('', 'root-id', 'directory', None)), | 322 | ('add', ('', b'root-id', 'directory', None)), |
3120 | 323 | ('add', ('a', 'a-id', 'file', 'content\n'))], | 323 | ('add', ('a', b'a-id', 'file', b'content\n'))], |
3121 | 324 | revision_id=b'A') | 324 | revision_id=b'A') |
3125 | 325 | builder.build_snapshot(['A'], [ | 325 | builder.build_snapshot([b'A'], [ |
3126 | 326 | ('modify', ('a', 'new content\nfor a\n')), | 326 | ('modify', ('a', b'new content\nfor a\n')), |
3127 | 327 | ('add', ('b', 'b-id', 'file', 'b-content\n'))], | 327 | ('add', ('b', b'b-id', 'file', b'b-content\n'))], |
3128 | 328 | revision_id=b'B') | 328 | revision_id=b'B') |
3131 | 329 | builder.build_snapshot(['A'], [ | 329 | builder.build_snapshot([b'A'], [ |
3132 | 330 | ('add', ('c', 'c-id', 'file', 'c-content\n'))], | 330 | ('add', ('c', b'c-id', 'file', b'c-content\n'))], |
3133 | 331 | revision_id=b'C') | 331 | revision_id=b'C') |
3134 | 332 | b_c = self.make_branch('branch_with_c') | 332 | b_c = self.make_branch('branch_with_c') |
3136 | 333 | b_c.pull(builder.get_branch(), stop_revision='C') | 333 | b_c.pull(builder.get_branch(), stop_revision=b'C') |
3137 | 334 | b_b = self.make_branch('branch_with_b') | 334 | b_b = self.make_branch('branch_with_b') |
3139 | 335 | b_b.pull(builder.get_branch(), stop_revision='B') | 335 | b_b.pull(builder.get_branch(), stop_revision=b'B') |
3140 | 336 | # This is reproducing some of what 'switch' does, just to isolate the | 336 | # This is reproducing some of what 'switch' does, just to isolate the |
3141 | 337 | # set_parent_trees() step. | 337 | # set_parent_trees() step. |
3142 | 338 | wt = b_b.create_checkout('tree', lightweight=True) | 338 | wt = b_b.create_checkout('tree', lightweight=True) |
3143 | @@ -340,7 +340,7 @@ | |||
3144 | 340 | fmt.set_reference(wt.controldir, None, b_c) | 340 | fmt.set_reference(wt.controldir, None, b_c) |
3145 | 341 | # Re-open with the new reference | 341 | # Re-open with the new reference |
3146 | 342 | wt = wt.controldir.open_workingtree() | 342 | wt = wt.controldir.open_workingtree() |
3148 | 343 | wt.set_parent_trees([('C', b_c.repository.revision_tree(b'C'))]) | 343 | wt.set_parent_trees([(b'C', b_c.repository.revision_tree(b'C'))]) |
3149 | 344 | self.assertFalse(wt.basis_tree().is_versioned('b')) | 344 | self.assertFalse(wt.basis_tree().is_versioned('b')) |
3150 | 345 | 345 | ||
3151 | 346 | def test_new_dirstate_on_new_lock(self): | 346 | def test_new_dirstate_on_new_lock(self): |
3152 | 347 | 347 | ||
3153 | === modified file 'breezy/transform.py' | |||
3154 | --- breezy/transform.py 2018-06-12 23:20:41 +0000 | |||
3155 | +++ breezy/transform.py 2018-06-21 23:03:57 +0000 | |||
3156 | @@ -66,6 +66,7 @@ | |||
3157 | 66 | ) | 66 | ) |
3158 | 67 | from .progress import ProgressPhase | 67 | from .progress import ProgressPhase |
3159 | 68 | from .sixish import ( | 68 | from .sixish import ( |
3160 | 69 | text_type, | ||
3161 | 69 | viewitems, | 70 | viewitems, |
3162 | 70 | viewvalues, | 71 | viewvalues, |
3163 | 71 | ) | 72 | ) |
3164 | @@ -2122,7 +2123,7 @@ | |||
3165 | 2122 | if file_id is None: | 2123 | if file_id is None: |
3166 | 2123 | continue | 2124 | continue |
3167 | 2124 | if (specific_files is not None and | 2125 | if (specific_files is not None and |
3169 | 2125 | unicode(self._final_paths.get_path(trans_id)) not in specific_files): | 2126 | self._final_paths.get_path(trans_id) not in specific_files): |
3170 | 2126 | continue | 2127 | continue |
3171 | 2127 | kind = self._transform.final_kind(trans_id) | 2128 | kind = self._transform.final_kind(trans_id) |
3172 | 2128 | if kind is None: | 2129 | if kind is None: |
3173 | @@ -2167,7 +2168,7 @@ | |||
3174 | 2167 | ordered_ids = self._list_files_by_dir() | 2168 | ordered_ids = self._list_files_by_dir() |
3175 | 2168 | for entry, trans_id in self._make_inv_entries(ordered_ids, | 2169 | for entry, trans_id in self._make_inv_entries(ordered_ids, |
3176 | 2169 | specific_files): | 2170 | specific_files): |
3178 | 2170 | yield unicode(self._final_paths.get_path(trans_id)), entry | 2171 | yield self._final_paths.get_path(trans_id), entry |
3179 | 2171 | 2172 | ||
3180 | 2172 | def _iter_entries_for_dir(self, dir_path): | 2173 | def _iter_entries_for_dir(self, dir_path): |
3181 | 2173 | """Return path, entry for items in a directory without recursing down.""" | 2174 | """Return path, entry for items in a directory without recursing down.""" |
3182 | @@ -2177,7 +2178,7 @@ | |||
3183 | 2177 | for child_trans_id in self._all_children(dir_trans_id): | 2178 | for child_trans_id in self._all_children(dir_trans_id): |
3184 | 2178 | ordered_ids.append((child_trans_id, dir_id)) | 2179 | ordered_ids.append((child_trans_id, dir_id)) |
3185 | 2179 | for entry, trans_id in self._make_inv_entries(ordered_ids): | 2180 | for entry, trans_id in self._make_inv_entries(ordered_ids): |
3187 | 2180 | yield unicode(self._final_paths.get_path(trans_id)), entry | 2181 | yield self._final_paths.get_path(trans_id), entry |
3188 | 2181 | 2182 | ||
3189 | 2182 | def list_files(self, include_root=False, from_dir=None, recursive=True): | 2183 | def list_files(self, include_root=False, from_dir=None, recursive=True): |
3190 | 2183 | """See WorkingTree.list_files.""" | 2184 | """See WorkingTree.list_files.""" |
3191 | @@ -2622,7 +2623,7 @@ | |||
3192 | 2622 | precomputed_delta = None | 2623 | precomputed_delta = None |
3193 | 2623 | conflicts = cook_conflicts(raw_conflicts, tt) | 2624 | conflicts = cook_conflicts(raw_conflicts, tt) |
3194 | 2624 | for conflict in conflicts: | 2625 | for conflict in conflicts: |
3196 | 2625 | trace.warning(unicode(conflict)) | 2626 | trace.warning(text_type(conflict)) |
3197 | 2626 | try: | 2627 | try: |
3198 | 2627 | wt.add_conflicts(conflicts) | 2628 | wt.add_conflicts(conflicts) |
3199 | 2628 | except errors.UnsupportedOperation: | 2629 | except errors.UnsupportedOperation: |
3200 | @@ -2814,7 +2815,7 @@ | |||
3201 | 2814 | unversioned_filter=working_tree.is_ignored) | 2815 | unversioned_filter=working_tree.is_ignored) |
3202 | 2815 | delta.report_changes(tt.iter_changes(), change_reporter) | 2816 | delta.report_changes(tt.iter_changes(), change_reporter) |
3203 | 2816 | for conflict in conflicts: | 2817 | for conflict in conflicts: |
3205 | 2817 | trace.warning(unicode(conflict)) | 2818 | trace.warning(text_type(conflict)) |
3206 | 2818 | pp.next_phase() | 2819 | pp.next_phase() |
3207 | 2819 | tt.apply() | 2820 | tt.apply() |
3208 | 2820 | if working_tree.supports_merge_modified(): | 2821 | if working_tree.supports_merge_modified(): |
3209 | 2821 | 2822 | ||
3210 | === modified file 'breezy/transport/gio_transport.py' | |||
3211 | --- breezy/transport/gio_transport.py 2017-09-26 00:55:04 +0000 | |||
3212 | +++ breezy/transport/gio_transport.py 2018-06-21 23:03:57 +0000 | |||
3213 | @@ -51,6 +51,7 @@ | |||
3214 | 51 | ) | 51 | ) |
3215 | 52 | from ..sixish import ( | 52 | from ..sixish import ( |
3216 | 53 | BytesIO, | 53 | BytesIO, |
3217 | 54 | text_type, | ||
3218 | 54 | ) | 55 | ) |
3219 | 55 | from ..trace import mutter | 56 | from ..trace import mutter |
3220 | 56 | from . import ( | 57 | from . import ( |
3221 | @@ -153,7 +154,7 @@ | |||
3222 | 153 | 154 | ||
3223 | 154 | def _relpath_to_url(self, relpath): | 155 | def _relpath_to_url(self, relpath): |
3224 | 155 | full_url = urlutils.join(self.url, relpath) | 156 | full_url = urlutils.join(self.url, relpath) |
3226 | 156 | if isinstance(full_url, unicode): | 157 | if isinstance(full_url, text_type): |
3227 | 157 | raise urlutils.InvalidURL(full_url) | 158 | raise urlutils.InvalidURL(full_url) |
3228 | 158 | return full_url | 159 | return full_url |
3229 | 159 | 160 | ||
3230 | 160 | 161 | ||
3231 | === modified file 'breezy/tree.py' | |||
3232 | --- breezy/tree.py 2018-06-21 22:57:44 +0000 | |||
3233 | +++ breezy/tree.py 2018-06-21 23:03:57 +0000 | |||
3234 | @@ -44,6 +44,7 @@ | |||
3235 | 44 | ) | 44 | ) |
3236 | 45 | from .inter import InterObject | 45 | from .inter import InterObject |
3237 | 46 | from .sixish import ( | 46 | from .sixish import ( |
3238 | 47 | text_type, | ||
3239 | 47 | viewvalues, | 48 | viewvalues, |
3240 | 48 | ) | 49 | ) |
3241 | 49 | 50 | ||
3242 | @@ -1163,10 +1164,10 @@ | |||
3243 | 1163 | # This is stolen from _dirstate_helpers_py.py, only switching it to | 1164 | # This is stolen from _dirstate_helpers_py.py, only switching it to |
3244 | 1164 | # Unicode objects. Consider using encode_utf8() and then using the | 1165 | # Unicode objects. Consider using encode_utf8() and then using the |
3245 | 1165 | # optimized versions, or maybe writing optimized unicode versions. | 1166 | # optimized versions, or maybe writing optimized unicode versions. |
3247 | 1166 | if not isinstance(path1, unicode): | 1167 | if not isinstance(path1, text_type): |
3248 | 1167 | raise TypeError("'path1' must be a unicode string, not %s: %r" | 1168 | raise TypeError("'path1' must be a unicode string, not %s: %r" |
3249 | 1168 | % (type(path1), path1)) | 1169 | % (type(path1), path1)) |
3251 | 1169 | if not isinstance(path2, unicode): | 1170 | if not isinstance(path2, text_type): |
3252 | 1170 | raise TypeError("'path2' must be a unicode string, not %s: %r" | 1171 | raise TypeError("'path2' must be a unicode string, not %s: %r" |
3253 | 1171 | % (type(path2), path2)) | 1172 | % (type(path2), path2)) |
3254 | 1172 | return cmp(MultiWalker._path_to_key(path1), | 1173 | return cmp(MultiWalker._path_to_key(path1), |
3255 | 1173 | 1174 | ||
3256 | === modified file 'breezy/urlutils.py' | |||
3257 | --- breezy/urlutils.py 2018-06-21 19:00:42 +0000 | |||
3258 | +++ breezy/urlutils.py 2018-06-21 23:03:57 +0000 | |||
3259 | @@ -881,7 +881,7 @@ | |||
3260 | 881 | # pad.lv/1696545: For the moment, accept both native strings and unicode. | 881 | # pad.lv/1696545: For the moment, accept both native strings and unicode. |
3261 | 882 | if isinstance(url, str): | 882 | if isinstance(url, str): |
3262 | 883 | pass | 883 | pass |
3264 | 884 | elif isinstance(url, unicode): | 884 | elif isinstance(url, text_type): |
3265 | 885 | try: | 885 | try: |
3266 | 886 | url = url.encode() | 886 | url = url.encode() |
3267 | 887 | except UnicodeEncodeError: | 887 | except UnicodeEncodeError: |
3268 | 888 | 888 | ||
3269 | === modified file 'breezy/utextwrap.py' | |||
3270 | --- breezy/utextwrap.py 2017-05-22 00:56:52 +0000 | |||
3271 | +++ breezy/utextwrap.py 2018-06-21 23:03:57 +0000 | |||
3272 | @@ -30,6 +30,7 @@ | |||
3273 | 30 | from unicodedata import east_asian_width as _eawidth | 30 | from unicodedata import east_asian_width as _eawidth |
3274 | 31 | 31 | ||
3275 | 32 | from . import osutils | 32 | from . import osutils |
3276 | 33 | from .sixish import text_type | ||
3277 | 33 | 34 | ||
3278 | 34 | __all__ = ["UTextWrapper", "fill", "wrap"] | 35 | __all__ = ["UTextWrapper", "fill", "wrap"] |
3279 | 35 | 36 | ||
3280 | @@ -216,7 +217,7 @@ | |||
3281 | 216 | return lines | 217 | return lines |
3282 | 217 | 218 | ||
3283 | 218 | def _split(self, text): | 219 | def _split(self, text): |
3285 | 219 | chunks = textwrap.TextWrapper._split(self, unicode(text)) | 220 | chunks = textwrap.TextWrapper._split(self, text) |
3286 | 220 | cjk_split_chunks = [] | 221 | cjk_split_chunks = [] |
3287 | 221 | for chunk in chunks: | 222 | for chunk in chunks: |
3288 | 222 | prev_pos = 0 | 223 | prev_pos = 0 |
3289 | @@ -232,7 +233,7 @@ | |||
3290 | 232 | 233 | ||
3291 | 233 | def wrap(self, text): | 234 | def wrap(self, text): |
3292 | 234 | # ensure text is unicode | 235 | # ensure text is unicode |
3294 | 235 | return textwrap.TextWrapper.wrap(self, unicode(text)) | 236 | return textwrap.TextWrapper.wrap(self, text_type(text)) |
3295 | 236 | 237 | ||
3296 | 237 | # -- Convenience interface --------------------------------------------- | 238 | # -- Convenience interface --------------------------------------------- |
3297 | 238 | 239 | ||
3298 | 239 | 240 | ||
3299 | === modified file 'breezy/version.py' | |||
3300 | --- breezy/version.py 2018-05-19 12:57:00 +0000 | |||
3301 | +++ breezy/version.py 2018-06-21 23:03:57 +0000 | |||
3302 | @@ -30,6 +30,7 @@ | |||
3303 | 30 | osutils, | 30 | osutils, |
3304 | 31 | trace, | 31 | trace, |
3305 | 32 | ) | 32 | ) |
3306 | 33 | from .sixish import text_type | ||
3307 | 33 | 34 | ||
3308 | 34 | 35 | ||
3309 | 35 | def show_version(show_config=True, show_copyright=True, to_file=None): | 36 | def show_version(show_config=True, show_copyright=True, to_file=None): |
3310 | @@ -80,7 +81,7 @@ | |||
3311 | 80 | to_file.write(breezy.__path__[0] + '\n') | 81 | to_file.write(breezy.__path__[0] + '\n') |
3312 | 81 | if show_config: | 82 | if show_config: |
3313 | 82 | config_dir = osutils.normpath(config.config_dir()) # use native slashes | 83 | config_dir = osutils.normpath(config.config_dir()) # use native slashes |
3315 | 83 | if not isinstance(config_dir, unicode): | 84 | if not isinstance(config_dir, text_type): |
3316 | 84 | config_dir = config_dir.decode(osutils.get_user_encoding()) | 85 | config_dir = config_dir.decode(osutils.get_user_encoding()) |
3317 | 85 | to_file.write(" Breezy configuration: %s\n" % (config_dir,)) | 86 | to_file.write(" Breezy configuration: %s\n" % (config_dir,)) |
3318 | 86 | to_file.write(" Breezy log file: ") | 87 | to_file.write(" Breezy log file: ") |
3319 | 87 | 88 | ||
3320 | === modified file 'breezy/win32utils.py' | |||
3321 | --- breezy/win32utils.py 2017-11-12 13:53:51 +0000 | |||
3322 | +++ breezy/win32utils.py 2018-06-21 23:03:57 +0000 | |||
3323 | @@ -271,7 +271,7 @@ | |||
3324 | 271 | if windir: | 271 | if windir: |
3325 | 272 | return os.path.splitdrive(windir)[0] + '/' | 272 | return os.path.splitdrive(windir)[0] + '/' |
3326 | 273 | # otherwise C:\ is good enough for 98% users | 273 | # otherwise C:\ is good enough for 98% users |
3328 | 274 | return unicode('C:/') | 274 | return u'C:/' |
3329 | 275 | 275 | ||
3330 | 276 | 276 | ||
3331 | 277 | def get_user_name(): | 277 | def get_user_name(): |
3332 | 278 | 278 | ||
3333 | === modified file 'python3.passing' | |||
3334 | --- python3.passing 2018-06-15 13:10:28 +0000 | |||
3335 | +++ python3.passing 2018-06-21 23:03:57 +0000 | |||
3336 | @@ -142,6 +142,7 @@ | |||
3337 | 142 | breezy.tests.commands.test_init_repository.TestInitRepository.test_init_repository | 142 | breezy.tests.commands.test_init_repository.TestInitRepository.test_init_repository |
3338 | 143 | breezy.tests.commands.test_init.TestInit.test_init | 143 | breezy.tests.commands.test_init.TestInit.test_init |
3339 | 144 | breezy.tests.commands.test_merge.TestMerge.test_merge | 144 | breezy.tests.commands.test_merge.TestMerge.test_merge |
3340 | 145 | breezy.tests.commands.test_missing.TestMissing.test_missing | ||
3341 | 145 | breezy.tests.commands.test_pull.TestPull.test_pull | 146 | breezy.tests.commands.test_pull.TestPull.test_pull |
3342 | 146 | breezy.tests.commands.test_pull.TestPull.test_pull_with_bound_branch | 147 | breezy.tests.commands.test_pull.TestPull.test_pull_with_bound_branch |
3343 | 147 | breezy.tests.commands.test_push.TestPush.test_push | 148 | breezy.tests.commands.test_push.TestPush.test_push |
3344 | @@ -280,6 +281,7 @@ | |||
3345 | 280 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_nickname(RemoteBranchFormat-v2) | 281 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_nickname(RemoteBranchFormat-v2) |
3346 | 281 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_nickname(RemoteGitBranchFormat) | 282 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_nickname(RemoteGitBranchFormat) |
3347 | 282 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BranchReferenceFormat) | 283 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BranchReferenceFormat) |
3348 | 284 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat5) | ||
3349 | 283 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat6) | 285 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat6) |
3350 | 284 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat7) | 286 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat7) |
3351 | 285 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat8) | 287 | breezy.tests.per_branch.test_branch.TestBranch.test_clone_branch_parent(BzrBranchFormat8) |
3352 | @@ -346,6 +348,10 @@ | |||
3353 | 346 | breezy.tests.per_branch.test_branch.TestBranch.test_create_open_branch_uses_repository(RemoteBranchFormat-default) | 348 | breezy.tests.per_branch.test_branch.TestBranch.test_create_open_branch_uses_repository(RemoteBranchFormat-default) |
3354 | 347 | breezy.tests.per_branch.test_branch.TestBranch.test_create_open_branch_uses_repository(RemoteGitBranchFormat) | 349 | breezy.tests.per_branch.test_branch.TestBranch.test_create_open_branch_uses_repository(RemoteGitBranchFormat) |
3355 | 348 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(BranchReferenceFormat) | 350 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(BranchReferenceFormat) |
3356 | 351 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(BzrBranchFormat5) | ||
3357 | 352 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(BzrBranchFormat6) | ||
3358 | 353 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(BzrBranchFormat7) | ||
3359 | 354 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(BzrBranchFormat8) | ||
3360 | 349 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(RemoteGitBranchFormat) | 355 | breezy.tests.per_branch.test_branch.TestBranch.test_create_tree_with_merge(RemoteGitBranchFormat) |
3361 | 350 | breezy.tests.per_branch.test_branch.TestBranch.test_fetch_revisions(BranchReferenceFormat) | 356 | breezy.tests.per_branch.test_branch.TestBranch.test_fetch_revisions(BranchReferenceFormat) |
3362 | 351 | breezy.tests.per_branch.test_branch.TestBranch.test_fetch_revisions(BzrBranchFormat5) | 357 | breezy.tests.per_branch.test_branch.TestBranch.test_fetch_revisions(BzrBranchFormat5) |
3363 | @@ -437,6 +443,10 @@ | |||
3364 | 437 | breezy.tests.per_branch.test_branch.TestBranch.test_record_initial_ghost(RemoteGitBranchFormat) | 443 | breezy.tests.per_branch.test_branch.TestBranch.test_record_initial_ghost(RemoteGitBranchFormat) |
3365 | 438 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BranchReferenceFormat) | 444 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BranchReferenceFormat) |
3366 | 439 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BzrBranchFormat4) | 445 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BzrBranchFormat4) |
3367 | 446 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BzrBranchFormat5) | ||
3368 | 447 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BzrBranchFormat6) | ||
3369 | 448 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BzrBranchFormat7) | ||
3370 | 449 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(BzrBranchFormat8) | ||
3371 | 440 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(LocalGitBranchFormat) | 450 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(LocalGitBranchFormat) |
3372 | 441 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(RemoteBranchFormat-default) | 451 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(RemoteBranchFormat-default) |
3373 | 442 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(RemoteGitBranchFormat) | 452 | breezy.tests.per_branch.test_branch.TestBranch.test_record_two_ghosts(RemoteGitBranchFormat) |
3374 | @@ -778,6 +788,10 @@ | |||
3375 | 778 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_branch_report_results(RemoteBranchFormat-v2) | 788 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_branch_report_results(RemoteBranchFormat-v2) |
3376 | 779 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_branch_report_results(RemoteGitBranchFormat) | 789 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_branch_report_results(RemoteGitBranchFormat) |
3377 | 780 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(BranchReferenceFormat) | 790 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(BranchReferenceFormat) |
3378 | 791 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(BzrBranchFormat5) | ||
3379 | 792 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(BzrBranchFormat6) | ||
3380 | 793 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(BzrBranchFormat7) | ||
3381 | 794 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(BzrBranchFormat8) | ||
3382 | 781 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(RemoteGitBranchFormat) | 795 | breezy.tests.per_branch.test_check.TestBranchCheck.test_check_detects_invalid_revhistory(RemoteGitBranchFormat) |
3383 | 782 | breezy.tests.per_branch.test_check.TestBranchCheck.test__get_check_refs(BranchReferenceFormat) | 796 | breezy.tests.per_branch.test_check.TestBranchCheck.test__get_check_refs(BranchReferenceFormat) |
3384 | 783 | breezy.tests.per_branch.test_check.TestBranchCheck.test__get_check_refs(BzrBranchFormat5) | 797 | breezy.tests.per_branch.test_check.TestBranchCheck.test__get_check_refs(BzrBranchFormat5) |
3385 | @@ -1091,17 +1105,37 @@ | |||
3386 | 1091 | breezy.tests.per_branch.test_hooks.TestPreChangeBranchTip.test_nonempty_history(LocalGitBranchFormat) | 1105 | breezy.tests.per_branch.test_hooks.TestPreChangeBranchTip.test_nonempty_history(LocalGitBranchFormat) |
3387 | 1092 | breezy.tests.per_branch.test_hooks.TestPreChangeBranchTip.test_nonempty_history(RemoteGitBranchFormat) | 1106 | breezy.tests.per_branch.test_hooks.TestPreChangeBranchTip.test_nonempty_history(RemoteGitBranchFormat) |
3388 | 1093 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BranchReferenceFormat) | 1107 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BranchReferenceFormat) |
3389 | 1108 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BzrBranchFormat4) | ||
3390 | 1109 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BzrBranchFormat5) | ||
3391 | 1110 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BzrBranchFormat6) | ||
3392 | 1111 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BzrBranchFormat7) | ||
3393 | 1112 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(BzrBranchFormat8) | ||
3394 | 1094 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(RemoteGitBranchFormat) | 1113 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_clone_invalid_parent(RemoteGitBranchFormat) |
3395 | 1095 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BranchReferenceFormat) | 1114 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BranchReferenceFormat) |
3396 | 1115 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat4) | ||
3397 | 1116 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat5) | ||
3398 | 1096 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat6) | 1117 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat6) |
3399 | 1097 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat7) | 1118 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat7) |
3400 | 1098 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat8) | 1119 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(BzrBranchFormat8) |
3401 | 1099 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(RemoteGitBranchFormat) | 1120 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_get_parent_invalid(RemoteGitBranchFormat) |
3402 | 1100 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BranchReferenceFormat) | 1121 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BranchReferenceFormat) |
3403 | 1122 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BzrBranchFormat4) | ||
3404 | 1123 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BzrBranchFormat5) | ||
3405 | 1124 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BzrBranchFormat6) | ||
3406 | 1125 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BzrBranchFormat7) | ||
3407 | 1126 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(BzrBranchFormat8) | ||
3408 | 1101 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(RemoteGitBranchFormat) | 1127 | breezy.tests.per_branch.test_http.InaccessibleParentTests.test_sprout_invalid_parent(RemoteGitBranchFormat) |
3409 | 1102 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(BranchReferenceFormat) | 1128 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(BranchReferenceFormat) |
3410 | 1129 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(BzrBranchFormat5) | ||
3411 | 1130 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(BzrBranchFormat6) | ||
3412 | 1131 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(BzrBranchFormat7) | ||
3413 | 1132 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(BzrBranchFormat8) | ||
3414 | 1103 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(RemoteGitBranchFormat) | 1133 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_exclude_ancestry(RemoteGitBranchFormat) |
3415 | 1104 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(BranchReferenceFormat) | 1134 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(BranchReferenceFormat) |
3416 | 1135 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(BzrBranchFormat5) | ||
3417 | 1136 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(BzrBranchFormat6) | ||
3418 | 1137 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(BzrBranchFormat7) | ||
3419 | 1138 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(BzrBranchFormat8) | ||
3420 | 1105 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(RemoteGitBranchFormat) | 1139 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_starting_at_embedded_merge(RemoteGitBranchFormat) |
3421 | 1106 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_with_different_depths_merge(BranchReferenceFormat) | 1140 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_with_different_depths_merge(BranchReferenceFormat) |
3422 | 1107 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_with_different_depths_merge(RemoteGitBranchFormat) | 1141 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsBushyGraph.test_merge_sorted_with_different_depths_merge(RemoteGitBranchFormat) |
3423 | @@ -1117,35 +1151,91 @@ | |||
3424 | 1117 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_forward(BzrBranchFormat8) | 1151 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_forward(BzrBranchFormat8) |
3425 | 1118 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_forward(RemoteGitBranchFormat) | 1152 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_forward(RemoteGitBranchFormat) |
3426 | 1119 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(BranchReferenceFormat) | 1153 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(BranchReferenceFormat) |
3427 | 1154 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(BzrBranchFormat5) | ||
3428 | 1155 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(BzrBranchFormat6) | ||
3429 | 1156 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(BzrBranchFormat7) | ||
3430 | 1157 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(BzrBranchFormat8) | ||
3431 | 1120 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(BranchReferenceFormat) | 1158 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(BranchReferenceFormat) |
3432 | 1159 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(BzrBranchFormat5) | ||
3433 | 1160 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(BzrBranchFormat6) | ||
3434 | 1161 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(BzrBranchFormat7) | ||
3435 | 1162 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(BzrBranchFormat8) | ||
3436 | 1121 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(RemoteGitBranchFormat) | 1163 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_forward(RemoteGitBranchFormat) |
3437 | 1122 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(RemoteGitBranchFormat) | 1164 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range(RemoteGitBranchFormat) |
3438 | 1123 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(BranchReferenceFormat) | 1165 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(BranchReferenceFormat) |
3439 | 1166 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(BzrBranchFormat5) | ||
3440 | 1167 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(BzrBranchFormat6) | ||
3441 | 1168 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(BzrBranchFormat7) | ||
3442 | 1169 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(BzrBranchFormat8) | ||
3443 | 1124 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(BranchReferenceFormat) | 1170 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(BranchReferenceFormat) |
3444 | 1171 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(BzrBranchFormat5) | ||
3445 | 1172 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(BzrBranchFormat6) | ||
3446 | 1173 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(BzrBranchFormat7) | ||
3447 | 1174 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(BzrBranchFormat8) | ||
3448 | 1125 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(RemoteGitBranchFormat) | 1175 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only_forward(RemoteGitBranchFormat) |
3449 | 1126 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(RemoteGitBranchFormat) | 1176 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_start_only(RemoteGitBranchFormat) |
3450 | 1127 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude(BranchReferenceFormat) | 1177 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude(BranchReferenceFormat) |
3451 | 1128 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(BranchReferenceFormat) | 1178 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(BranchReferenceFormat) |
3452 | 1179 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(BzrBranchFormat5) | ||
3453 | 1180 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(BzrBranchFormat6) | ||
3454 | 1181 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(BzrBranchFormat7) | ||
3455 | 1182 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(BzrBranchFormat8) | ||
3456 | 1129 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(RemoteGitBranchFormat) | 1183 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude_forward(RemoteGitBranchFormat) |
3457 | 1130 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude(RemoteGitBranchFormat) | 1184 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_exclude(RemoteGitBranchFormat) |
3458 | 1131 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(BranchReferenceFormat) | 1185 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(BranchReferenceFormat) |
3459 | 1186 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(BzrBranchFormat5) | ||
3460 | 1187 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(BzrBranchFormat6) | ||
3461 | 1188 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(BzrBranchFormat7) | ||
3462 | 1189 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(BzrBranchFormat8) | ||
3463 | 1132 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(BranchReferenceFormat) | 1190 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(BranchReferenceFormat) |
3464 | 1191 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(BzrBranchFormat5) | ||
3465 | 1192 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(BzrBranchFormat6) | ||
3466 | 1193 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(BzrBranchFormat7) | ||
3467 | 1194 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(BzrBranchFormat8) | ||
3468 | 1133 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(RemoteGitBranchFormat) | 1195 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include_forward(RemoteGitBranchFormat) |
3469 | 1134 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(RemoteGitBranchFormat) | 1196 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_include(RemoteGitBranchFormat) |
3470 | 1135 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(BranchReferenceFormat) | 1197 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(BranchReferenceFormat) |
3471 | 1198 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(BzrBranchFormat5) | ||
3472 | 1199 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(BzrBranchFormat6) | ||
3473 | 1200 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(BzrBranchFormat7) | ||
3474 | 1201 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(BzrBranchFormat8) | ||
3475 | 1136 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(BranchReferenceFormat) | 1202 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(BranchReferenceFormat) |
3476 | 1203 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(BzrBranchFormat5) | ||
3477 | 1204 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(BzrBranchFormat6) | ||
3478 | 1205 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(BzrBranchFormat7) | ||
3479 | 1206 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(BzrBranchFormat8) | ||
3480 | 1137 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(RemoteGitBranchFormat) | 1207 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_can_show_non_parents(RemoteGitBranchFormat) |
3481 | 1138 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(BranchReferenceFormat) | 1208 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(BranchReferenceFormat) |
3482 | 1209 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(BzrBranchFormat5) | ||
3483 | 1210 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(BzrBranchFormat6) | ||
3484 | 1211 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(BzrBranchFormat7) | ||
3485 | 1212 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(BzrBranchFormat8) | ||
3486 | 1139 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(RemoteGitBranchFormat) | 1213 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_forward(RemoteGitBranchFormat) |
3487 | 1140 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(BranchReferenceFormat) | 1214 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(BranchReferenceFormat) |
3488 | 1215 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(BzrBranchFormat5) | ||
3489 | 1216 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(BzrBranchFormat6) | ||
3490 | 1217 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(BzrBranchFormat7) | ||
3491 | 1218 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(BzrBranchFormat8) | ||
3492 | 1141 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(RemoteGitBranchFormat) | 1219 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges_ignore_non_parents(RemoteGitBranchFormat) |
3493 | 1142 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(RemoteGitBranchFormat) | 1220 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_range_stop_with_merges(RemoteGitBranchFormat) |
3494 | 1143 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted(RemoteGitBranchFormat) | 1221 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted(RemoteGitBranchFormat) |
3495 | 1144 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(BranchReferenceFormat) | 1222 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(BranchReferenceFormat) |
3496 | 1223 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(BzrBranchFormat5) | ||
3497 | 1224 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(BzrBranchFormat6) | ||
3498 | 1225 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(BzrBranchFormat7) | ||
3499 | 1226 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(BzrBranchFormat8) | ||
3500 | 1145 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(RemoteGitBranchFormat) | 1227 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_exclude(RemoteGitBranchFormat) |
3501 | 1146 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(BranchReferenceFormat) | 1228 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(BranchReferenceFormat) |
3502 | 1229 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(BzrBranchFormat5) | ||
3503 | 1230 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(BzrBranchFormat6) | ||
3504 | 1231 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(BzrBranchFormat7) | ||
3505 | 1232 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(BzrBranchFormat8) | ||
3506 | 1147 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(RemoteGitBranchFormat) | 1233 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_include(RemoteGitBranchFormat) |
3507 | 1148 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(BranchReferenceFormat) | 1234 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(BranchReferenceFormat) |
3508 | 1235 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(BzrBranchFormat5) | ||
3509 | 1236 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(BzrBranchFormat6) | ||
3510 | 1237 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(BzrBranchFormat7) | ||
3511 | 1238 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(BzrBranchFormat8) | ||
3512 | 1149 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(RemoteGitBranchFormat) | 1239 | breezy.tests.per_branch.test_iter_merge_sorted_revisions.TestIterMergeSortedRevisionsSimpleGraph.test_merge_sorted_single_stop_with_merges(RemoteGitBranchFormat) |
3513 | 1150 | breezy.tests.per_branch.test_last_revision_info.TestLastRevisionInfo.test_empty_branch(BranchReferenceFormat) | 1240 | breezy.tests.per_branch.test_last_revision_info.TestLastRevisionInfo.test_empty_branch(BranchReferenceFormat) |
3514 | 1151 | breezy.tests.per_branch.test_last_revision_info.TestLastRevisionInfo.test_empty_branch(BzrBranchFormat4) | 1241 | breezy.tests.per_branch.test_last_revision_info.TestLastRevisionInfo.test_empty_branch(BzrBranchFormat4) |
3515 | @@ -1654,6 +1744,10 @@ | |||
3516 | 1654 | breezy.tests.per_branch.test_reconcile.TestBranchReconcile.test_reconcile_supports_thorough(BzrBranchFormat8) | 1744 | breezy.tests.per_branch.test_reconcile.TestBranchReconcile.test_reconcile_supports_thorough(BzrBranchFormat8) |
3517 | 1655 | breezy.tests.per_branch.test_reconcile.TestBranchReconcile.test_reconcile_supports_thorough(RemoteGitBranchFormat) | 1745 | breezy.tests.per_branch.test_reconcile.TestBranchReconcile.test_reconcile_supports_thorough(RemoteGitBranchFormat) |
3518 | 1656 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(BranchReferenceFormat) | 1746 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(BranchReferenceFormat) |
3519 | 1747 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(BzrBranchFormat5) | ||
3520 | 1748 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(BzrBranchFormat6) | ||
3521 | 1749 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(BzrBranchFormat7) | ||
3522 | 1750 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(BzrBranchFormat8) | ||
3523 | 1657 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(RemoteGitBranchFormat) | 1751 | breezy.tests.per_branch.test_revision_id_to_dotted_revno.TestRevisionIdToDottedRevno.test_lookup_dotted_revno(RemoteGitBranchFormat) |
3524 | 1658 | breezy.tests.per_branch.test_revision_id_to_revno.TestRevisionIdToRevno.test_empty(BranchReferenceFormat) | 1752 | breezy.tests.per_branch.test_revision_id_to_revno.TestRevisionIdToRevno.test_empty(BranchReferenceFormat) |
3525 | 1659 | breezy.tests.per_branch.test_revision_id_to_revno.TestRevisionIdToRevno.test_empty(RemoteBranchFormat-default) | 1753 | breezy.tests.per_branch.test_revision_id_to_revno.TestRevisionIdToRevno.test_empty(RemoteBranchFormat-default) |
3526 | @@ -1676,6 +1770,8 @@ | |||
3527 | 1676 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_nickname(RemoteBranchFormat-v2) | 1770 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_nickname(RemoteBranchFormat-v2) |
3528 | 1677 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_nickname(RemoteGitBranchFormat) | 1771 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_nickname(RemoteGitBranchFormat) |
3529 | 1678 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BranchReferenceFormat) | 1772 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BranchReferenceFormat) |
3530 | 1773 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat4) | ||
3531 | 1774 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat5) | ||
3532 | 1679 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat6) | 1775 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat6) |
3533 | 1680 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat7) | 1776 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat7) |
3534 | 1681 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat8) | 1777 | breezy.tests.per_branch.test_sprout.TestSprout.test_sprout_branch_parent(BzrBranchFormat8) |
3535 | @@ -2464,10 +2560,12 @@ | |||
3536 | 2464 | breezy.tests.per_interrepository.test_interrepository.TestInterRepository.test_interrepository_get_returns_correct_optimiser(InterSameDataRepository,RepositoryFormatKnit3,RepositoryFormatKnit3) | 2560 | breezy.tests.per_interrepository.test_interrepository.TestInterRepository.test_interrepository_get_returns_correct_optimiser(InterSameDataRepository,RepositoryFormatKnit3,RepositoryFormatKnit3) |
3537 | 2465 | breezy.tests.per_intertree.test_compare.TestCompare.test_abc_content_to_empty(InterDirStateTree(C)) | 2561 | breezy.tests.per_intertree.test_compare.TestCompare.test_abc_content_to_empty(InterDirStateTree(C)) |
3538 | 2466 | breezy.tests.per_intertree.test_compare.TestCompare.test_abc_content_to_empty(InterTree) | 2562 | breezy.tests.per_intertree.test_compare.TestCompare.test_abc_content_to_empty(InterTree) |
3539 | 2563 | breezy.tests.per_intertree.test_compare.TestCompare.test_abc_content_to_empty(InterTree(PreviewTree)) | ||
3540 | 2467 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterDirStateTree(C)) | 2564 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterDirStateTree(C)) |
3541 | 2468 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterDirStateTree(PY)) | 2565 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterDirStateTree(PY)) |
3542 | 2469 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterTree) | 2566 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterTree) |
3543 | 2470 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterTree(CHKInventory)) | 2567 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterTree(CHKInventory)) |
3544 | 2568 | breezy.tests.per_intertree.test_compare.TestCompare.test_compare_empty_trees(InterTree(PreviewTree)) | ||
3545 | 2471 | breezy.tests.per_intertree.test_compare.TestCompare.test_dangling(InterDirStateTree(C)) | 2569 | breezy.tests.per_intertree.test_compare.TestCompare.test_dangling(InterDirStateTree(C)) |
3546 | 2472 | breezy.tests.per_intertree.test_compare.TestCompare.test_dangling(InterDirStateTree(PY)) | 2570 | breezy.tests.per_intertree.test_compare.TestCompare.test_dangling(InterDirStateTree(PY)) |
3547 | 2473 | breezy.tests.per_intertree.test_compare.TestCompare.test_dangling(InterTree(CHKInventory)) | 2571 | breezy.tests.per_intertree.test_compare.TestCompare.test_dangling(InterTree(CHKInventory)) |
3548 | @@ -2475,18 +2573,23 @@ | |||
3549 | 2475 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterDirStateTree(PY)) | 2573 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterDirStateTree(PY)) |
3550 | 2476 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterTree) | 2574 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterTree) |
3551 | 2477 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterTree(CHKInventory)) | 2575 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterTree(CHKInventory)) |
3552 | 2576 | breezy.tests.per_intertree.test_compare.TestCompare.test_default_ignores_unversioned_files(InterTree(PreviewTree)) | ||
3553 | 2478 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_a_and_c_only(InterDirStateTree(C)) | 2577 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_a_and_c_only(InterDirStateTree(C)) |
3554 | 2479 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_a_only(InterDirStateTree(C)) | 2578 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_a_only(InterDirStateTree(C)) |
3555 | 2480 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_b_only(InterDirStateTree(C)) | 2579 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_b_only(InterDirStateTree(C)) |
3556 | 2481 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_c_only(InterDirStateTree(C)) | 2580 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content_c_only(InterDirStateTree(C)) |
3557 | 2482 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content(InterDirStateTree(C)) | 2581 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content(InterDirStateTree(C)) |
3558 | 2483 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content(InterTree) | 2582 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content(InterTree) |
3559 | 2583 | breezy.tests.per_intertree.test_compare.TestCompare.test_empty_to_abc_content(InterTree(PreviewTree)) | ||
3560 | 2484 | breezy.tests.per_intertree.test_compare.TestCompare.test_extra_trees_finds_ids(InterDirStateTree(C)) | 2584 | breezy.tests.per_intertree.test_compare.TestCompare.test_extra_trees_finds_ids(InterDirStateTree(C)) |
3561 | 2485 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename_and_meta_modification(InterDirStateTree(C)) | 2585 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename_and_meta_modification(InterDirStateTree(C)) |
3562 | 2486 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename_and_meta_modification(InterTree) | 2586 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename_and_meta_modification(InterTree) |
3563 | 2587 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename_and_meta_modification(InterTree(PreviewTree)) | ||
3564 | 2487 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename(InterTree) | 2588 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename(InterTree) |
3565 | 2589 | breezy.tests.per_intertree.test_compare.TestCompare.test_file_rename(InterTree(PreviewTree)) | ||
3566 | 2488 | breezy.tests.per_intertree.test_compare.TestCompare.test_meta_modification(InterDirStateTree(C)) | 2590 | breezy.tests.per_intertree.test_compare.TestCompare.test_meta_modification(InterDirStateTree(C)) |
3567 | 2489 | breezy.tests.per_intertree.test_compare.TestCompare.test_meta_modification(InterTree) | 2591 | breezy.tests.per_intertree.test_compare.TestCompare.test_meta_modification(InterTree) |
3568 | 2592 | breezy.tests.per_intertree.test_compare.TestCompare.test_meta_modification(InterTree(PreviewTree)) | ||
3569 | 2490 | breezy.tests.per_intertree.test_compare.TestCompare.test_require_versioned(InterDirStateTree(C)) | 2593 | breezy.tests.per_intertree.test_compare.TestCompare.test_require_versioned(InterDirStateTree(C)) |
3570 | 2491 | breezy.tests.per_intertree.test_compare.TestCompare.test_require_versioned(InterDirStateTree(PY)) | 2594 | breezy.tests.per_intertree.test_compare.TestCompare.test_require_versioned(InterDirStateTree(PY)) |
3571 | 2492 | breezy.tests.per_intertree.test_compare.TestCompare.test_require_versioned(InterTree) | 2595 | breezy.tests.per_intertree.test_compare.TestCompare.test_require_versioned(InterTree) |
3572 | @@ -2495,16 +2598,21 @@ | |||
3573 | 2495 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterDirStateTree(PY)) | 2598 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterDirStateTree(PY)) |
3574 | 2496 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterTree) | 2599 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterTree) |
3575 | 2497 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterTree(CHKInventory)) | 2600 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterTree(CHKInventory)) |
3576 | 2601 | breezy.tests.per_intertree.test_compare.TestCompare.test_unversioned_paths_in_tree(InterTree(PreviewTree)) | ||
3577 | 2498 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_a_only(InterDirStateTree(C)) | 2602 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_a_only(InterDirStateTree(C)) |
3578 | 2499 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_a_only(InterTree) | 2603 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_a_only(InterTree) |
3579 | 2604 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_a_only(InterTree(PreviewTree)) | ||
3580 | 2500 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_b_only(InterDirStateTree(C)) | 2605 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_b_only(InterDirStateTree(C)) |
3581 | 2501 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_b_only(InterTree) | 2606 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_b_only(InterTree) |
3582 | 2607 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty_b_only(InterTree(PreviewTree)) | ||
3583 | 2502 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty(InterDirStateTree(C)) | 2608 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty(InterDirStateTree(C)) |
3584 | 2503 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty(InterTree) | 2609 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty(InterTree) |
3585 | 2610 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_abc_content_to_empty(InterTree(PreviewTree)) | ||
3586 | 2504 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterDirStateTree(C)) | 2611 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterDirStateTree(C)) |
3587 | 2505 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterDirStateTree(PY)) | 2612 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterDirStateTree(PY)) |
3588 | 2506 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterTree) | 2613 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterTree) |
3589 | 2507 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterTree(CHKInventory)) | 2614 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterTree(CHKInventory)) |
3590 | 2615 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_empty_trees(InterTree(PreviewTree)) | ||
3591 | 2508 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_subtrees(InterDirStateTree(C)) | 2616 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_subtrees(InterDirStateTree(C)) |
3592 | 2509 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_subtrees(InterDirStateTree(PY)) | 2617 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_subtrees(InterDirStateTree(PY)) |
3593 | 2510 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_subtrees(InterTree) | 2618 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_compare_subtrees(InterTree) |
3594 | @@ -2513,6 +2621,7 @@ | |||
3595 | 2513 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterDirStateTree(C)) | 2621 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterDirStateTree(C)) |
3596 | 2514 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterTree) | 2622 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterTree) |
3597 | 2515 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterTree(CHKInventory)) | 2623 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterTree(CHKInventory)) |
3598 | 2624 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_default_ignores_unversioned_files(InterTree(PreviewTree)) | ||
3599 | 2516 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_deleted_and_unknown(InterDirStateTree(C)) | 2625 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_deleted_and_unknown(InterDirStateTree(C)) |
3600 | 2517 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_deleted_and_unknown(InterTree(CHKInventory)) | 2626 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_deleted_and_unknown(InterTree(CHKInventory)) |
3601 | 2518 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_disk_in_subtrees_skipped(InterDirStateTree(C)) | 2627 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_disk_in_subtrees_skipped(InterDirStateTree(C)) |
3602 | @@ -2520,28 +2629,37 @@ | |||
3603 | 2520 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_disk_in_subtrees_skipped(InterTree(CHKInventory)) | 2629 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_disk_in_subtrees_skipped(InterTree(CHKInventory)) |
3604 | 2521 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_disk_in_subtrees_skipped(InterTree(PreviewTree)) | 2630 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_disk_in_subtrees_skipped(InterTree(PreviewTree)) |
3605 | 2522 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_dir(InterTree) | 2631 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_dir(InterTree) |
3606 | 2632 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_dir(InterTree(PreviewTree)) | ||
3607 | 2523 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterDirStateTree(C)) | 2633 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterDirStateTree(C)) |
3608 | 2524 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterDirStateTree(PY)) | 2634 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterDirStateTree(PY)) |
3609 | 2525 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterTree) | 2635 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterTree) |
3610 | 2636 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_specific_files(InterTree(PreviewTree)) | ||
3611 | 2526 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content_a_and_c_only(InterDirStateTree(C)) | 2637 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content_a_and_c_only(InterDirStateTree(C)) |
3612 | 2527 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content_a_only(InterDirStateTree(C)) | 2638 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content_a_only(InterDirStateTree(C)) |
3613 | 2528 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content(InterDirStateTree(C)) | 2639 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content(InterDirStateTree(C)) |
3614 | 2529 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content(InterTree) | 2640 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content(InterTree) |
3615 | 2641 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_empty_to_abc_content(InterTree(PreviewTree)) | ||
3616 | 2530 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterDirStateTree(C)) | 2642 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterDirStateTree(C)) |
3617 | 2531 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterDirStateTree(PY)) | 2643 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterDirStateTree(PY)) |
3618 | 2532 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterTree) | 2644 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterTree) |
3619 | 2533 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterTree(CHKInventory)) | 2645 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterTree(CHKInventory)) |
3620 | 2646 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_becomes_unversionable_bug_438569(InterTree(PreviewTree)) | ||
3621 | 2534 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename_and_meta_modification(InterDirStateTree(C)) | 2647 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename_and_meta_modification(InterDirStateTree(C)) |
3622 | 2535 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename_and_meta_modification(InterTree) | 2648 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename_and_meta_modification(InterTree) |
3623 | 2649 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename_and_meta_modification(InterTree(PreviewTree)) | ||
3624 | 2536 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename(InterTree) | 2650 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename(InterTree) |
3625 | 2651 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_file_rename(InterTree(PreviewTree)) | ||
3626 | 2537 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_meta_modification(InterDirStateTree(C)) | 2652 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_meta_modification(InterDirStateTree(C)) |
3627 | 2538 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_meta_modification(InterTree) | 2653 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_meta_modification(InterTree) |
3628 | 2654 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_meta_modification(InterTree(PreviewTree)) | ||
3629 | 2539 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_and_renamed(InterDirStateTree(C)) | 2655 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_and_renamed(InterDirStateTree(C)) |
3630 | 2540 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_and_renamed(InterTree(CHKInventory)) | 2656 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_and_renamed(InterTree(CHKInventory)) |
3631 | 2541 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_in_target(InterDirStateTree(C)) | 2657 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_in_target(InterDirStateTree(C)) |
3632 | 2542 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_in_target(InterTree) | 2658 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_in_target(InterTree) |
3633 | 2659 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_missing_in_target(InterTree(PreviewTree)) | ||
3634 | 2543 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_no_specific_files(InterDirStateTree(C)) | 2660 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_no_specific_files(InterDirStateTree(C)) |
3635 | 2544 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_no_specific_files(InterTree) | 2661 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_no_specific_files(InterTree) |
3636 | 2662 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_no_specific_files(InterTree(PreviewTree)) | ||
3637 | 2545 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_only_in_source_and_missing(InterDirStateTree(C)) | 2663 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_only_in_source_and_missing(InterDirStateTree(C)) |
3638 | 2546 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_only_in_source_and_missing(InterDirStateTree(PY)) | 2664 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_only_in_source_and_missing(InterDirStateTree(PY)) |
3639 | 2547 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_only_in_source_and_missing(InterTree(CHKInventory)) | 2665 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_only_in_source_and_missing(InterTree(CHKInventory)) |
3640 | @@ -2551,32 +2669,43 @@ | |||
3641 | 2551 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterDirStateTree(C)) | 2669 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterDirStateTree(C)) |
3642 | 2552 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterTree) | 2670 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterTree) |
3643 | 2553 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterTree(CHKInventory)) | 2671 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterTree(CHKInventory)) |
3644 | 2672 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_added(InterTree(PreviewTree)) | ||
3645 | 2554 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_unknown(InterDirStateTree(C)) | 2673 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_unknown(InterDirStateTree(C)) |
3646 | 2555 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_unknown(InterTree(CHKInventory)) | 2674 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_renamed_and_unknown(InterTree(CHKInventory)) |
3647 | 2556 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterDirStateTree(C)) | 2675 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterDirStateTree(C)) |
3648 | 2557 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterTree) | 2676 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterTree) |
3649 | 2558 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterTree(CHKInventory)) | 2677 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterTree(CHKInventory)) |
3650 | 2678 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_rename_over_deleted(InterTree(PreviewTree)) | ||
3651 | 2679 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_content_modification_grabs_parents(InterDirStateTree(C)) | ||
3652 | 2680 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_content_modification_grabs_parents_root_changes(InterDirStateTree(C)) | ||
3653 | 2681 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_old_parent_becomes_file(InterDirStateTree(C)) | ||
3654 | 2559 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_old_parent_child_collides_with_unselected_new(InterDirStateTree(C)) | 2682 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_old_parent_child_collides_with_unselected_new(InterDirStateTree(C)) |
3655 | 2560 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_old_parent_child_dir_stops_being_dir(InterDirStateTree(C)) | 2683 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_old_parent_child_dir_stops_being_dir(InterDirStateTree(C)) |
3656 | 2684 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_old_parent_same_path_new_parent(InterDirStateTree(C)) | ||
3657 | 2561 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_with_rename_under_new_dir_reports_new_dir(InterDirStateTree(C)) | 2685 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_specific_with_rename_under_new_dir_reports_new_dir(InterDirStateTree(C)) |
3658 | 2562 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_deleted_dir(InterDirStateTree(C)) | 2686 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_deleted_dir(InterDirStateTree(C)) |
3659 | 2563 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_deleted_dir(InterTree) | 2687 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_deleted_dir(InterTree) |
3660 | 2688 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_deleted_dir(InterTree(PreviewTree)) | ||
3661 | 2564 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_special_names(InterDirStateTree(C)) | 2689 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_trees_with_special_names(InterDirStateTree(C)) |
3662 | 2565 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unknown_empty_dir(InterDirStateTree(C)) | 2690 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unknown_empty_dir(InterDirStateTree(C)) |
3663 | 2566 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unknown_empty_dir(InterTree) | 2691 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unknown_empty_dir(InterTree) |
3664 | 2692 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unknown_empty_dir(InterTree(PreviewTree)) | ||
3665 | 2567 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_target_matching_source_old_names(InterDirStateTree(C)) | 2693 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_target_matching_source_old_names(InterDirStateTree(C)) |
3666 | 2568 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_target_matching_source_old_names(InterTree(CHKInventory)) | 2694 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_target_matching_source_old_names(InterTree(CHKInventory)) |
3667 | 2569 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterDirStateTree(C)) | 2695 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterDirStateTree(C)) |
3668 | 2570 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterDirStateTree(PY)) | 2696 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterDirStateTree(PY)) |
3669 | 2571 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterTree) | 2697 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterTree) |
3670 | 2572 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterTree(CHKInventory)) | 2698 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterTree(CHKInventory)) |
3671 | 2699 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree(InterTree(PreviewTree)) | ||
3672 | 2573 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterDirStateTree(C)) | 2700 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterDirStateTree(C)) |
3673 | 2574 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterTree) | 2701 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterTree) |
3674 | 2575 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterTree(CHKInventory)) | 2702 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterTree(CHKInventory)) |
3675 | 2703 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_paths_in_tree_specific_files(InterTree(PreviewTree)) | ||
3676 | 2576 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterDirStateTree(C)) | 2704 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterDirStateTree(C)) |
3677 | 2577 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterDirStateTree(PY)) | 2705 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterDirStateTree(PY)) |
3678 | 2578 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterTree) | 2706 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterTree) |
3679 | 2579 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterTree(CHKInventory)) | 2707 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterTree(CHKInventory)) |
3680 | 2708 | breezy.tests.per_intertree.test_compare.TestIterChanges.test_unversioned_subtree_only_emits_root(InterTree(PreviewTree)) | ||
3681 | 2580 | breezy.tests.per_intertree.test_file_content_matches.TestFileContentMatches.test_different_contents_and_same_verifier(InterDirStateTree(C)) | 2709 | breezy.tests.per_intertree.test_file_content_matches.TestFileContentMatches.test_different_contents_and_same_verifier(InterDirStateTree(C)) |
3682 | 2581 | breezy.tests.per_intertree.test_file_content_matches.TestFileContentMatches.test_different_contents_and_same_verifier(InterDirStateTree(PY)) | 2710 | breezy.tests.per_intertree.test_file_content_matches.TestFileContentMatches.test_different_contents_and_same_verifier(InterDirStateTree(PY)) |
3683 | 2582 | breezy.tests.per_intertree.test_file_content_matches.TestFileContentMatches.test_different_contents_and_same_verifier(InterTree) | 2711 | breezy.tests.per_intertree.test_file_content_matches.TestFileContentMatches.test_different_contents_and_same_verifier(InterTree) |
3684 | @@ -2673,6 +2802,13 @@ | |||
3685 | 2673 | breezy.tests.per_pack_repository.TestPackRepository.test_concurrent_pack_during_get_record_reloads(2a) | 2802 | breezy.tests.per_pack_repository.TestPackRepository.test_concurrent_pack_during_get_record_reloads(2a) |
3686 | 2674 | breezy.tests.per_pack_repository.TestPackRepository.test_concurrent_pack_during_get_record_reloads(pack-0.92) | 2803 | breezy.tests.per_pack_repository.TestPackRepository.test_concurrent_pack_during_get_record_reloads(pack-0.92) |
3687 | 2675 | breezy.tests.per_pack_repository.TestPackRepository.test_concurrent_pack_during_get_record_reloads(pack-0.92-subtree) | 2804 | breezy.tests.per_pack_repository.TestPackRepository.test_concurrent_pack_during_get_record_reloads(pack-0.92-subtree) |
3688 | 2805 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(1.6) | ||
3689 | 2806 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(1.6.1-rich-root) | ||
3690 | 2807 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(1.9) | ||
3691 | 2808 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(1.9-rich-root) | ||
3692 | 2809 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(2a) | ||
3693 | 2810 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(pack-0.92) | ||
3694 | 2811 | breezy.tests.per_pack_repository.TestPackRepository.test_fail_obsolete_deletion(pack-0.92-subtree) | ||
3695 | 2676 | breezy.tests.per_pack_repository.TestPackRepository.test_fetch_without_find_ghosts_ignores_ghosts(2a) | 2812 | breezy.tests.per_pack_repository.TestPackRepository.test_fetch_without_find_ghosts_ignores_ghosts(2a) |
3696 | 2677 | breezy.tests.per_pack_repository.TestPackRepository.test_lock_write_does_not_physically_lock(1.6) | 2813 | breezy.tests.per_pack_repository.TestPackRepository.test_lock_write_does_not_physically_lock(1.6) |
3697 | 2678 | breezy.tests.per_pack_repository.TestPackRepository.test_lock_write_does_not_physically_lock(1.6.1-rich-root) | 2814 | breezy.tests.per_pack_repository.TestPackRepository.test_lock_write_does_not_physically_lock(1.6.1-rich-root) |
3698 | @@ -4331,6 +4467,8 @@ | |||
3699 | 4331 | breezy.tests.per_repository.test_repository.TestRepository.test_clone_to_hpss(RepositoryFormat4) | 4467 | breezy.tests.per_repository.test_repository.TestRepository.test_clone_to_hpss(RepositoryFormat4) |
3700 | 4332 | breezy.tests.per_repository.test_repository.TestRepository.test_clone_to_hpss(RepositoryFormat5) | 4468 | breezy.tests.per_repository.test_repository.TestRepository.test_clone_to_hpss(RepositoryFormat5) |
3701 | 4333 | breezy.tests.per_repository.test_repository.TestRepository.test_clone_to_hpss(RepositoryFormat6) | 4469 | breezy.tests.per_repository.test_repository.TestRepository.test_clone_to_hpss(RepositoryFormat6) |
3702 | 4470 | breezy.tests.per_repository.test_repository.TestRepository.test_commit_unicode_message(RepositoryFormat2a) | ||
3703 | 4471 | breezy.tests.per_repository.test_repository.TestRepository.test_commit_unicode_message(RepositoryFormat2aSubtree) | ||
3704 | 4334 | breezy.tests.per_repository.test_repository.TestRepository.test_commit_unicode_message(RepositoryFormat4) | 4472 | breezy.tests.per_repository.test_repository.TestRepository.test_commit_unicode_message(RepositoryFormat4) |
3705 | 4335 | breezy.tests.per_repository.test_repository.TestRepository.test_create_repository(RemoteRepositoryFormat-default) | 4473 | breezy.tests.per_repository.test_repository.TestRepository.test_create_repository(RemoteRepositoryFormat-default) |
3706 | 4336 | breezy.tests.per_repository.test_repository.TestRepository.test_create_repository(RemoteRepositoryFormat-v2) | 4474 | breezy.tests.per_repository.test_repository.TestRepository.test_create_repository(RemoteRepositoryFormat-v2) |
3707 | @@ -5882,18 +6020,42 @@ | |||
3708 | 5882 | breezy.tests.per_transport.TransportTests.test_connection_sharing(TransportLogDecorator,LogDecoratorServer) | 6020 | breezy.tests.per_transport.TransportTests.test_connection_sharing(TransportLogDecorator,LogDecoratorServer) |
3709 | 5883 | breezy.tests.per_transport.TransportTests.test_connection_sharing(TransportTraceDecorator,TraceServer) | 6021 | breezy.tests.per_transport.TransportTests.test_connection_sharing(TransportTraceDecorator,TraceServer) |
3710 | 5884 | breezy.tests.per_transport.TransportTests.test_connection_sharing(UnlistableTransportDecorator,UnlistableServer) | 6022 | breezy.tests.per_transport.TransportTests.test_connection_sharing(UnlistableTransportDecorator,UnlistableServer) |
3711 | 6023 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(ChrootTransport,TestingChrootServer) | ||
3712 | 6024 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(FakeNFSTransportDecorator,FakeNFSServer) | ||
3713 | 6025 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(FakeVFATTransportDecorator,FakeVFATServer) | ||
3714 | 5885 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(FtpTransport,UnavailableFTPTestServer) | 6026 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(FtpTransport,UnavailableFTPTestServer) |
3715 | 5886 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HTTPS_transport,HTTPSServer) | 6027 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HTTPS_transport,HTTPSServer) |
3716 | 5887 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HTTPS_urllib_transport,HTTPSServer_urllib) | 6028 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HTTPS_urllib_transport,HTTPSServer_urllib) |
3717 | 5888 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HttpTransport,HttpServer) | 6029 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HttpTransport,HttpServer) |
3718 | 5889 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HttpTransport_urllib,HttpServer_urllib) | 6030 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(HttpTransport_urllib,HttpServer_urllib) |
3719 | 6031 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(LocalTransport,LocalURLServer) | ||
3720 | 6032 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(MemoryTransport,MemoryServer) | ||
3721 | 6033 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3722 | 6034 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(PathFilteringTransport,TestingPathFilteringServer) | ||
3723 | 5890 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(ReadonlyTransportDecorator,ReadonlyServer) | 6035 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(ReadonlyTransportDecorator,ReadonlyServer) |
3724 | 6036 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3725 | 6037 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(SFTPTransport,SFTPAbsoluteServer) | ||
3726 | 6038 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(SFTPTransport,SFTPHomeDirServer) | ||
3727 | 6039 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3728 | 6040 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(TransportLogDecorator,LogDecoratorServer) | ||
3729 | 6041 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(TransportTraceDecorator,TraceServer) | ||
3730 | 6042 | breezy.tests.per_transport.TransportTests.test_connect_twice_is_same_content(UnlistableTransportDecorator,UnlistableServer) | ||
3731 | 6043 | breezy.tests.per_transport.TransportTests.test_copy(ChrootTransport,TestingChrootServer) | ||
3732 | 6044 | breezy.tests.per_transport.TransportTests.test_copy(FakeNFSTransportDecorator,FakeNFSServer) | ||
3733 | 6045 | breezy.tests.per_transport.TransportTests.test_copy(FakeVFATTransportDecorator,FakeVFATServer) | ||
3734 | 5891 | breezy.tests.per_transport.TransportTests.test_copy(FtpTransport,UnavailableFTPTestServer) | 6046 | breezy.tests.per_transport.TransportTests.test_copy(FtpTransport,UnavailableFTPTestServer) |
3735 | 5892 | breezy.tests.per_transport.TransportTests.test_copy(HTTPS_transport,HTTPSServer) | 6047 | breezy.tests.per_transport.TransportTests.test_copy(HTTPS_transport,HTTPSServer) |
3736 | 5893 | breezy.tests.per_transport.TransportTests.test_copy(HTTPS_urllib_transport,HTTPSServer_urllib) | 6048 | breezy.tests.per_transport.TransportTests.test_copy(HTTPS_urllib_transport,HTTPSServer_urllib) |
3737 | 5894 | breezy.tests.per_transport.TransportTests.test_copy(HttpTransport,HttpServer) | 6049 | breezy.tests.per_transport.TransportTests.test_copy(HttpTransport,HttpServer) |
3738 | 5895 | breezy.tests.per_transport.TransportTests.test_copy(HttpTransport_urllib,HttpServer_urllib) | 6050 | breezy.tests.per_transport.TransportTests.test_copy(HttpTransport_urllib,HttpServer_urllib) |
3739 | 6051 | breezy.tests.per_transport.TransportTests.test_copy(LocalTransport,LocalURLServer) | ||
3740 | 6052 | breezy.tests.per_transport.TransportTests.test_copy(MemoryTransport,MemoryServer) | ||
3741 | 6053 | breezy.tests.per_transport.TransportTests.test_copy(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3742 | 6054 | breezy.tests.per_transport.TransportTests.test_copy(PathFilteringTransport,TestingPathFilteringServer) | ||
3743 | 5896 | breezy.tests.per_transport.TransportTests.test_copy(ReadonlyTransportDecorator,ReadonlyServer) | 6055 | breezy.tests.per_transport.TransportTests.test_copy(ReadonlyTransportDecorator,ReadonlyServer) |
3744 | 6056 | breezy.tests.per_transport.TransportTests.test_copy(SFTPTransport,SFTPAbsoluteServer) | ||
3745 | 6057 | breezy.tests.per_transport.TransportTests.test_copy(SFTPTransport,SFTPHomeDirServer) | ||
3746 | 6058 | breezy.tests.per_transport.TransportTests.test_copy(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3747 | 5897 | breezy.tests.per_transport.TransportTests.test_copy_to(ChrootTransport,TestingChrootServer) | 6059 | breezy.tests.per_transport.TransportTests.test_copy_to(ChrootTransport,TestingChrootServer) |
3748 | 5898 | breezy.tests.per_transport.TransportTests.test_copy_to(FakeNFSTransportDecorator,FakeNFSServer) | 6060 | breezy.tests.per_transport.TransportTests.test_copy_to(FakeNFSTransportDecorator,FakeNFSServer) |
3749 | 5899 | breezy.tests.per_transport.TransportTests.test_copy_to(FakeVFATTransportDecorator,FakeVFATServer) | 6061 | breezy.tests.per_transport.TransportTests.test_copy_to(FakeVFATTransportDecorator,FakeVFATServer) |
3750 | @@ -5910,6 +6072,8 @@ | |||
3751 | 5910 | breezy.tests.per_transport.TransportTests.test_copy_to(TransportLogDecorator,LogDecoratorServer) | 6072 | breezy.tests.per_transport.TransportTests.test_copy_to(TransportLogDecorator,LogDecoratorServer) |
3752 | 5911 | breezy.tests.per_transport.TransportTests.test_copy_to(TransportTraceDecorator,TraceServer) | 6073 | breezy.tests.per_transport.TransportTests.test_copy_to(TransportTraceDecorator,TraceServer) |
3753 | 5912 | breezy.tests.per_transport.TransportTests.test_copy_to(UnlistableTransportDecorator,UnlistableServer) | 6074 | breezy.tests.per_transport.TransportTests.test_copy_to(UnlistableTransportDecorator,UnlistableServer) |
3754 | 6075 | breezy.tests.per_transport.TransportTests.test_copy(TransportLogDecorator,LogDecoratorServer) | ||
3755 | 6076 | breezy.tests.per_transport.TransportTests.test_copy(TransportTraceDecorator,TraceServer) | ||
3756 | 5913 | breezy.tests.per_transport.TransportTests.test_copy_tree(ChrootTransport,TestingChrootServer) | 6077 | breezy.tests.per_transport.TransportTests.test_copy_tree(ChrootTransport,TestingChrootServer) |
3757 | 5914 | breezy.tests.per_transport.TransportTests.test_copy_tree(FakeNFSTransportDecorator,FakeNFSServer) | 6078 | breezy.tests.per_transport.TransportTests.test_copy_tree(FakeNFSTransportDecorator,FakeNFSServer) |
3758 | 5915 | breezy.tests.per_transport.TransportTests.test_copy_tree(FakeVFATTransportDecorator,FakeVFATServer) | 6079 | breezy.tests.per_transport.TransportTests.test_copy_tree(FakeVFATTransportDecorator,FakeVFATServer) |
3759 | @@ -5948,6 +6112,7 @@ | |||
3760 | 5948 | breezy.tests.per_transport.TransportTests.test_copy_tree(TransportLogDecorator,LogDecoratorServer) | 6112 | breezy.tests.per_transport.TransportTests.test_copy_tree(TransportLogDecorator,LogDecoratorServer) |
3761 | 5949 | breezy.tests.per_transport.TransportTests.test_copy_tree(TransportTraceDecorator,TraceServer) | 6113 | breezy.tests.per_transport.TransportTests.test_copy_tree(TransportTraceDecorator,TraceServer) |
3762 | 5950 | breezy.tests.per_transport.TransportTests.test_copy_tree(UnlistableTransportDecorator,UnlistableServer) | 6114 | breezy.tests.per_transport.TransportTests.test_copy_tree(UnlistableTransportDecorator,UnlistableServer) |
3763 | 6115 | breezy.tests.per_transport.TransportTests.test_copy(UnlistableTransportDecorator,UnlistableServer) | ||
3764 | 5951 | breezy.tests.per_transport.TransportTests.test_create_prefix(ChrootTransport,TestingChrootServer) | 6116 | breezy.tests.per_transport.TransportTests.test_create_prefix(ChrootTransport,TestingChrootServer) |
3765 | 5952 | breezy.tests.per_transport.TransportTests.test_create_prefix(FakeNFSTransportDecorator,FakeNFSServer) | 6117 | breezy.tests.per_transport.TransportTests.test_create_prefix(FakeNFSTransportDecorator,FakeNFSServer) |
3766 | 5953 | breezy.tests.per_transport.TransportTests.test_create_prefix(FakeVFATTransportDecorator,FakeVFATServer) | 6118 | breezy.tests.per_transport.TransportTests.test_create_prefix(FakeVFATTransportDecorator,FakeVFATServer) |
3767 | @@ -6081,7 +6246,21 @@ | |||
3768 | 6081 | breezy.tests.per_transport.TransportTests.test_external_url(TransportLogDecorator,LogDecoratorServer) | 6246 | breezy.tests.per_transport.TransportTests.test_external_url(TransportLogDecorator,LogDecoratorServer) |
3769 | 6082 | breezy.tests.per_transport.TransportTests.test_external_url(TransportTraceDecorator,TraceServer) | 6247 | breezy.tests.per_transport.TransportTests.test_external_url(TransportTraceDecorator,TraceServer) |
3770 | 6083 | breezy.tests.per_transport.TransportTests.test_external_url(UnlistableTransportDecorator,UnlistableServer) | 6248 | breezy.tests.per_transport.TransportTests.test_external_url(UnlistableTransportDecorator,UnlistableServer) |
3771 | 6249 | breezy.tests.per_transport.TransportTests.test_get_bytes(ChrootTransport,TestingChrootServer) | ||
3772 | 6250 | breezy.tests.per_transport.TransportTests.test_get_bytes(FakeNFSTransportDecorator,FakeNFSServer) | ||
3773 | 6251 | breezy.tests.per_transport.TransportTests.test_get_bytes(FakeVFATTransportDecorator,FakeVFATServer) | ||
3774 | 6084 | breezy.tests.per_transport.TransportTests.test_get_bytes(FtpTransport,UnavailableFTPTestServer) | 6252 | breezy.tests.per_transport.TransportTests.test_get_bytes(FtpTransport,UnavailableFTPTestServer) |
3775 | 6253 | breezy.tests.per_transport.TransportTests.test_get_bytes(LocalTransport,LocalURLServer) | ||
3776 | 6254 | breezy.tests.per_transport.TransportTests.test_get_bytes(MemoryTransport,MemoryServer) | ||
3777 | 6255 | breezy.tests.per_transport.TransportTests.test_get_bytes(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3778 | 6256 | breezy.tests.per_transport.TransportTests.test_get_bytes(PathFilteringTransport,TestingPathFilteringServer) | ||
3779 | 6257 | breezy.tests.per_transport.TransportTests.test_get_bytes(ReadonlyTransportDecorator,ReadonlyServer) | ||
3780 | 6258 | breezy.tests.per_transport.TransportTests.test_get_bytes(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3781 | 6259 | breezy.tests.per_transport.TransportTests.test_get_bytes(SFTPTransport,SFTPAbsoluteServer) | ||
3782 | 6260 | breezy.tests.per_transport.TransportTests.test_get_bytes(SFTPTransport,SFTPHomeDirServer) | ||
3783 | 6261 | breezy.tests.per_transport.TransportTests.test_get_bytes(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3784 | 6262 | breezy.tests.per_transport.TransportTests.test_get_bytes(TransportLogDecorator,LogDecoratorServer) | ||
3785 | 6263 | breezy.tests.per_transport.TransportTests.test_get_bytes(TransportTraceDecorator,TraceServer) | ||
3786 | 6085 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(ChrootTransport,TestingChrootServer) | 6264 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(ChrootTransport,TestingChrootServer) |
3787 | 6086 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(FakeNFSTransportDecorator,FakeNFSServer) | 6265 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(FakeNFSTransportDecorator,FakeNFSServer) |
3788 | 6087 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(FakeVFATTransportDecorator,FakeVFATServer) | 6266 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(FakeVFATTransportDecorator,FakeVFATServer) |
3789 | @@ -6097,12 +6276,14 @@ | |||
3790 | 6097 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(TransportLogDecorator,LogDecoratorServer) | 6276 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(TransportLogDecorator,LogDecoratorServer) |
3791 | 6098 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(TransportTraceDecorator,TraceServer) | 6277 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(TransportTraceDecorator,TraceServer) |
3792 | 6099 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(UnlistableTransportDecorator,UnlistableServer) | 6278 | breezy.tests.per_transport.TransportTests.test_get_bytes_unknown_file(UnlistableTransportDecorator,UnlistableServer) |
3793 | 6279 | breezy.tests.per_transport.TransportTests.test_get_bytes(UnlistableTransportDecorator,UnlistableServer) | ||
3794 | 6100 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(FtpTransport,UnavailableFTPTestServer) | 6280 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(FtpTransport,UnavailableFTPTestServer) |
3795 | 6101 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HTTPS_transport,HTTPSServer) | 6281 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HTTPS_transport,HTTPSServer) |
3796 | 6102 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HTTPS_urllib_transport,HTTPSServer_urllib) | 6282 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HTTPS_urllib_transport,HTTPSServer_urllib) |
3797 | 6103 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HttpTransport,HttpServer) | 6283 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HttpTransport,HttpServer) |
3798 | 6104 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HttpTransport_urllib,HttpServer_urllib) | 6284 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(HttpTransport_urllib,HttpServer_urllib) |
3799 | 6105 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(ReadonlyTransportDecorator,ReadonlyServer) | 6285 | breezy.tests.per_transport.TransportTests.test_get_bytes_with_open_write_stream_sees_all_content(ReadonlyTransportDecorator,ReadonlyServer) |
3800 | 6286 | breezy.tests.per_transport.TransportTests.test_get(ChrootTransport,TestingChrootServer) | ||
3801 | 6106 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(ChrootTransport,TestingChrootServer) | 6287 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(ChrootTransport,TestingChrootServer) |
3802 | 6107 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(FakeNFSTransportDecorator,FakeNFSServer) | 6288 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(FakeNFSTransportDecorator,FakeNFSServer) |
3803 | 6108 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(FakeVFATTransportDecorator,FakeVFATServer) | 6289 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(FakeVFATTransportDecorator,FakeVFATServer) |
3804 | @@ -6120,7 +6301,18 @@ | |||
3805 | 6120 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(TransportLogDecorator,LogDecoratorServer) | 6301 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(TransportLogDecorator,LogDecoratorServer) |
3806 | 6121 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(TransportTraceDecorator,TraceServer) | 6302 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(TransportTraceDecorator,TraceServer) |
3807 | 6122 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(UnlistableTransportDecorator,UnlistableServer) | 6303 | breezy.tests.per_transport.TransportTests.test_get_directory_read_gives_ReadError(UnlistableTransportDecorator,UnlistableServer) |
3808 | 6304 | breezy.tests.per_transport.TransportTests.test_get(FakeNFSTransportDecorator,FakeNFSServer) | ||
3809 | 6305 | breezy.tests.per_transport.TransportTests.test_get(FakeVFATTransportDecorator,FakeVFATServer) | ||
3810 | 6123 | breezy.tests.per_transport.TransportTests.test_get(FtpTransport,UnavailableFTPTestServer) | 6306 | breezy.tests.per_transport.TransportTests.test_get(FtpTransport,UnavailableFTPTestServer) |
3811 | 6307 | breezy.tests.per_transport.TransportTests.test_get(LocalTransport,LocalURLServer) | ||
3812 | 6308 | breezy.tests.per_transport.TransportTests.test_get(MemoryTransport,MemoryServer) | ||
3813 | 6309 | breezy.tests.per_transport.TransportTests.test_get(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3814 | 6310 | breezy.tests.per_transport.TransportTests.test_get(PathFilteringTransport,TestingPathFilteringServer) | ||
3815 | 6311 | breezy.tests.per_transport.TransportTests.test_get(ReadonlyTransportDecorator,ReadonlyServer) | ||
3816 | 6312 | breezy.tests.per_transport.TransportTests.test_get(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3817 | 6313 | breezy.tests.per_transport.TransportTests.test_get(SFTPTransport,SFTPAbsoluteServer) | ||
3818 | 6314 | breezy.tests.per_transport.TransportTests.test_get(SFTPTransport,SFTPHomeDirServer) | ||
3819 | 6315 | breezy.tests.per_transport.TransportTests.test_get(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3820 | 6124 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(ChrootTransport,TestingChrootServer) | 6316 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(ChrootTransport,TestingChrootServer) |
3821 | 6125 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(FakeNFSTransportDecorator,FakeNFSServer) | 6317 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(FakeNFSTransportDecorator,FakeNFSServer) |
3822 | 6126 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(FakeVFATTransportDecorator,FakeVFATServer) | 6318 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(FakeVFATTransportDecorator,FakeVFATServer) |
3823 | @@ -6141,6 +6333,8 @@ | |||
3824 | 6141 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(TransportLogDecorator,LogDecoratorServer) | 6333 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(TransportLogDecorator,LogDecoratorServer) |
3825 | 6142 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(TransportTraceDecorator,TraceServer) | 6334 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(TransportTraceDecorator,TraceServer) |
3826 | 6143 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(UnlistableTransportDecorator,UnlistableServer) | 6335 | breezy.tests.per_transport.TransportTests.test_get_smart_medium(UnlistableTransportDecorator,UnlistableServer) |
3827 | 6336 | breezy.tests.per_transport.TransportTests.test_get(TransportLogDecorator,LogDecoratorServer) | ||
3828 | 6337 | breezy.tests.per_transport.TransportTests.test_get(TransportTraceDecorator,TraceServer) | ||
3829 | 6144 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(ChrootTransport,TestingChrootServer) | 6338 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(ChrootTransport,TestingChrootServer) |
3830 | 6145 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(FakeNFSTransportDecorator,FakeNFSServer) | 6339 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(FakeNFSTransportDecorator,FakeNFSServer) |
3831 | 6146 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(FakeVFATTransportDecorator,FakeVFATServer) | 6340 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(FakeVFATTransportDecorator,FakeVFATServer) |
3832 | @@ -6156,6 +6350,7 @@ | |||
3833 | 6156 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(TransportLogDecorator,LogDecoratorServer) | 6350 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(TransportLogDecorator,LogDecoratorServer) |
3834 | 6157 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(TransportTraceDecorator,TraceServer) | 6351 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(TransportTraceDecorator,TraceServer) |
3835 | 6158 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(UnlistableTransportDecorator,UnlistableServer) | 6352 | breezy.tests.per_transport.TransportTests.test_get_unknown_file(UnlistableTransportDecorator,UnlistableServer) |
3836 | 6353 | breezy.tests.per_transport.TransportTests.test_get(UnlistableTransportDecorator,UnlistableServer) | ||
3837 | 6159 | breezy.tests.per_transport.TransportTests.test_get_with_open_write_stream_sees_all_content(FtpTransport,UnavailableFTPTestServer) | 6354 | breezy.tests.per_transport.TransportTests.test_get_with_open_write_stream_sees_all_content(FtpTransport,UnavailableFTPTestServer) |
3838 | 6160 | breezy.tests.per_transport.TransportTests.test_get_with_open_write_stream_sees_all_content(HTTPS_transport,HTTPSServer) | 6355 | breezy.tests.per_transport.TransportTests.test_get_with_open_write_stream_sees_all_content(HTTPS_transport,HTTPSServer) |
3839 | 6161 | breezy.tests.per_transport.TransportTests.test_get_with_open_write_stream_sees_all_content(HTTPS_urllib_transport,HTTPSServer_urllib) | 6356 | breezy.tests.per_transport.TransportTests.test_get_with_open_write_stream_sees_all_content(HTTPS_urllib_transport,HTTPSServer_urllib) |
3840 | @@ -6356,11 +6551,18 @@ | |||
3841 | 6356 | breezy.tests.per_transport.TransportTests.test_lock_write(TransportLogDecorator,LogDecoratorServer) | 6551 | breezy.tests.per_transport.TransportTests.test_lock_write(TransportLogDecorator,LogDecoratorServer) |
3842 | 6357 | breezy.tests.per_transport.TransportTests.test_lock_write(TransportTraceDecorator,TraceServer) | 6552 | breezy.tests.per_transport.TransportTests.test_lock_write(TransportTraceDecorator,TraceServer) |
3843 | 6358 | breezy.tests.per_transport.TransportTests.test_lock_write(UnlistableTransportDecorator,UnlistableServer) | 6553 | breezy.tests.per_transport.TransportTests.test_lock_write(UnlistableTransportDecorator,UnlistableServer) |
3844 | 6554 | breezy.tests.per_transport.TransportTests.test_mkdir(ChrootTransport,TestingChrootServer) | ||
3845 | 6555 | breezy.tests.per_transport.TransportTests.test_mkdir(FakeNFSTransportDecorator,FakeNFSServer) | ||
3846 | 6556 | breezy.tests.per_transport.TransportTests.test_mkdir(FakeVFATTransportDecorator,FakeVFATServer) | ||
3847 | 6359 | breezy.tests.per_transport.TransportTests.test_mkdir(FtpTransport,UnavailableFTPTestServer) | 6557 | breezy.tests.per_transport.TransportTests.test_mkdir(FtpTransport,UnavailableFTPTestServer) |
3848 | 6360 | breezy.tests.per_transport.TransportTests.test_mkdir(HTTPS_transport,HTTPSServer) | 6558 | breezy.tests.per_transport.TransportTests.test_mkdir(HTTPS_transport,HTTPSServer) |
3849 | 6361 | breezy.tests.per_transport.TransportTests.test_mkdir(HTTPS_urllib_transport,HTTPSServer_urllib) | 6559 | breezy.tests.per_transport.TransportTests.test_mkdir(HTTPS_urllib_transport,HTTPSServer_urllib) |
3850 | 6362 | breezy.tests.per_transport.TransportTests.test_mkdir(HttpTransport,HttpServer) | 6560 | breezy.tests.per_transport.TransportTests.test_mkdir(HttpTransport,HttpServer) |
3851 | 6363 | breezy.tests.per_transport.TransportTests.test_mkdir(HttpTransport_urllib,HttpServer_urllib) | 6561 | breezy.tests.per_transport.TransportTests.test_mkdir(HttpTransport_urllib,HttpServer_urllib) |
3852 | 6562 | breezy.tests.per_transport.TransportTests.test_mkdir(LocalTransport,LocalURLServer) | ||
3853 | 6563 | breezy.tests.per_transport.TransportTests.test_mkdir(MemoryTransport,MemoryServer) | ||
3854 | 6564 | breezy.tests.per_transport.TransportTests.test_mkdir(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3855 | 6565 | breezy.tests.per_transport.TransportTests.test_mkdir(PathFilteringTransport,TestingPathFilteringServer) | ||
3856 | 6364 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(ChrootTransport,TestingChrootServer) | 6566 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(ChrootTransport,TestingChrootServer) |
3857 | 6365 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(FakeNFSTransportDecorator,FakeNFSServer) | 6567 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(FakeNFSTransportDecorator,FakeNFSServer) |
3858 | 6366 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(FakeVFATTransportDecorator,FakeVFATServer) | 6568 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(FakeVFATTransportDecorator,FakeVFATServer) |
3859 | @@ -6382,12 +6584,33 @@ | |||
3860 | 6382 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(TransportTraceDecorator,TraceServer) | 6584 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(TransportTraceDecorator,TraceServer) |
3861 | 6383 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(UnlistableTransportDecorator,UnlistableServer) | 6585 | breezy.tests.per_transport.TransportTests.test_mkdir_permissions(UnlistableTransportDecorator,UnlistableServer) |
3862 | 6384 | breezy.tests.per_transport.TransportTests.test_mkdir(ReadonlyTransportDecorator,ReadonlyServer) | 6586 | breezy.tests.per_transport.TransportTests.test_mkdir(ReadonlyTransportDecorator,ReadonlyServer) |
3863 | 6587 | breezy.tests.per_transport.TransportTests.test_mkdir(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3864 | 6588 | breezy.tests.per_transport.TransportTests.test_mkdir(SFTPTransport,SFTPAbsoluteServer) | ||
3865 | 6589 | breezy.tests.per_transport.TransportTests.test_mkdir(SFTPTransport,SFTPHomeDirServer) | ||
3866 | 6590 | breezy.tests.per_transport.TransportTests.test_mkdir(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3867 | 6591 | breezy.tests.per_transport.TransportTests.test_mkdir(TransportLogDecorator,LogDecoratorServer) | ||
3868 | 6592 | breezy.tests.per_transport.TransportTests.test_mkdir(TransportTraceDecorator,TraceServer) | ||
3869 | 6593 | breezy.tests.per_transport.TransportTests.test_mkdir(UnlistableTransportDecorator,UnlistableServer) | ||
3870 | 6594 | breezy.tests.per_transport.TransportTests.test_move(ChrootTransport,TestingChrootServer) | ||
3871 | 6595 | breezy.tests.per_transport.TransportTests.test_move(FakeNFSTransportDecorator,FakeNFSServer) | ||
3872 | 6596 | breezy.tests.per_transport.TransportTests.test_move(FakeVFATTransportDecorator,FakeVFATServer) | ||
3873 | 6385 | breezy.tests.per_transport.TransportTests.test_move(FtpTransport,UnavailableFTPTestServer) | 6597 | breezy.tests.per_transport.TransportTests.test_move(FtpTransport,UnavailableFTPTestServer) |
3874 | 6386 | breezy.tests.per_transport.TransportTests.test_move(HTTPS_transport,HTTPSServer) | 6598 | breezy.tests.per_transport.TransportTests.test_move(HTTPS_transport,HTTPSServer) |
3875 | 6387 | breezy.tests.per_transport.TransportTests.test_move(HTTPS_urllib_transport,HTTPSServer_urllib) | 6599 | breezy.tests.per_transport.TransportTests.test_move(HTTPS_urllib_transport,HTTPSServer_urllib) |
3876 | 6388 | breezy.tests.per_transport.TransportTests.test_move(HttpTransport,HttpServer) | 6600 | breezy.tests.per_transport.TransportTests.test_move(HttpTransport,HttpServer) |
3877 | 6389 | breezy.tests.per_transport.TransportTests.test_move(HttpTransport_urllib,HttpServer_urllib) | 6601 | breezy.tests.per_transport.TransportTests.test_move(HttpTransport_urllib,HttpServer_urllib) |
3878 | 6602 | breezy.tests.per_transport.TransportTests.test_move(LocalTransport,LocalURLServer) | ||
3879 | 6603 | breezy.tests.per_transport.TransportTests.test_move(MemoryTransport,MemoryServer) | ||
3880 | 6604 | breezy.tests.per_transport.TransportTests.test_move(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3881 | 6605 | breezy.tests.per_transport.TransportTests.test_move(PathFilteringTransport,TestingPathFilteringServer) | ||
3882 | 6390 | breezy.tests.per_transport.TransportTests.test_move(ReadonlyTransportDecorator,ReadonlyServer) | 6606 | breezy.tests.per_transport.TransportTests.test_move(ReadonlyTransportDecorator,ReadonlyServer) |
3883 | 6607 | breezy.tests.per_transport.TransportTests.test_move(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3884 | 6608 | breezy.tests.per_transport.TransportTests.test_move(SFTPTransport,SFTPAbsoluteServer) | ||
3885 | 6609 | breezy.tests.per_transport.TransportTests.test_move(SFTPTransport,SFTPHomeDirServer) | ||
3886 | 6610 | breezy.tests.per_transport.TransportTests.test_move(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3887 | 6611 | breezy.tests.per_transport.TransportTests.test_move(TransportLogDecorator,LogDecoratorServer) | ||
3888 | 6612 | breezy.tests.per_transport.TransportTests.test_move(TransportTraceDecorator,TraceServer) | ||
3889 | 6613 | breezy.tests.per_transport.TransportTests.test_move(UnlistableTransportDecorator,UnlistableServer) | ||
3890 | 6391 | breezy.tests.per_transport.TransportTests.test_no_segment_parameters(ChrootTransport,TestingChrootServer) | 6614 | breezy.tests.per_transport.TransportTests.test_no_segment_parameters(ChrootTransport,TestingChrootServer) |
3891 | 6392 | breezy.tests.per_transport.TransportTests.test_no_segment_parameters(FakeNFSTransportDecorator,FakeNFSServer) | 6615 | breezy.tests.per_transport.TransportTests.test_no_segment_parameters(FakeNFSTransportDecorator,FakeNFSServer) |
3892 | 6393 | breezy.tests.per_transport.TransportTests.test_no_segment_parameters(FakeVFATTransportDecorator,FakeVFATServer) | 6616 | breezy.tests.per_transport.TransportTests.test_no_segment_parameters(FakeVFATTransportDecorator,FakeVFATServer) |
3893 | @@ -6434,21 +6657,56 @@ | |||
3894 | 6434 | breezy.tests.per_transport.TransportTests.test_opening_a_file_stream_creates_file(HttpTransport,HttpServer) | 6657 | breezy.tests.per_transport.TransportTests.test_opening_a_file_stream_creates_file(HttpTransport,HttpServer) |
3895 | 6435 | breezy.tests.per_transport.TransportTests.test_opening_a_file_stream_creates_file(HttpTransport_urllib,HttpServer_urllib) | 6658 | breezy.tests.per_transport.TransportTests.test_opening_a_file_stream_creates_file(HttpTransport_urllib,HttpServer_urllib) |
3896 | 6436 | breezy.tests.per_transport.TransportTests.test_opening_a_file_stream_creates_file(ReadonlyTransportDecorator,ReadonlyServer) | 6659 | breezy.tests.per_transport.TransportTests.test_opening_a_file_stream_creates_file(ReadonlyTransportDecorator,ReadonlyServer) |
3897 | 6660 | breezy.tests.per_transport.TransportTests.test_put_bytes(ChrootTransport,TestingChrootServer) | ||
3898 | 6661 | breezy.tests.per_transport.TransportTests.test_put_bytes(FakeNFSTransportDecorator,FakeNFSServer) | ||
3899 | 6662 | breezy.tests.per_transport.TransportTests.test_put_bytes(FakeVFATTransportDecorator,FakeVFATServer) | ||
3900 | 6437 | breezy.tests.per_transport.TransportTests.test_put_bytes(FtpTransport,UnavailableFTPTestServer) | 6663 | breezy.tests.per_transport.TransportTests.test_put_bytes(FtpTransport,UnavailableFTPTestServer) |
3901 | 6438 | breezy.tests.per_transport.TransportTests.test_put_bytes(HTTPS_transport,HTTPSServer) | 6664 | breezy.tests.per_transport.TransportTests.test_put_bytes(HTTPS_transport,HTTPSServer) |
3902 | 6439 | breezy.tests.per_transport.TransportTests.test_put_bytes(HTTPS_urllib_transport,HTTPSServer_urllib) | 6665 | breezy.tests.per_transport.TransportTests.test_put_bytes(HTTPS_urllib_transport,HTTPSServer_urllib) |
3903 | 6440 | breezy.tests.per_transport.TransportTests.test_put_bytes(HttpTransport,HttpServer) | 6666 | breezy.tests.per_transport.TransportTests.test_put_bytes(HttpTransport,HttpServer) |
3904 | 6441 | breezy.tests.per_transport.TransportTests.test_put_bytes(HttpTransport_urllib,HttpServer_urllib) | 6667 | breezy.tests.per_transport.TransportTests.test_put_bytes(HttpTransport_urllib,HttpServer_urllib) |
3905 | 6668 | breezy.tests.per_transport.TransportTests.test_put_bytes(LocalTransport,LocalURLServer) | ||
3906 | 6669 | breezy.tests.per_transport.TransportTests.test_put_bytes(MemoryTransport,MemoryServer) | ||
3907 | 6670 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(ChrootTransport,TestingChrootServer) | ||
3908 | 6671 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(FakeNFSTransportDecorator,FakeNFSServer) | ||
3909 | 6672 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(FakeVFATTransportDecorator,FakeVFATServer) | ||
3910 | 6442 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(FtpTransport,UnavailableFTPTestServer) | 6673 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(FtpTransport,UnavailableFTPTestServer) |
3911 | 6674 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(HTTPS_transport,HTTPSServer) | ||
3912 | 6675 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(HttpTransport,HttpServer) | ||
3913 | 6676 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(LocalTransport,LocalURLServer) | ||
3914 | 6677 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(MemoryTransport,MemoryServer) | ||
3915 | 6678 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3916 | 6679 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(PathFilteringTransport,TestingPathFilteringServer) | ||
3917 | 6680 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(ChrootTransport,TestingChrootServer) | ||
3918 | 6681 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(FakeNFSTransportDecorator,FakeNFSServer) | ||
3919 | 6443 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(FakeVFATTransportDecorator,FakeVFATServer) | 6682 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(FakeVFATTransportDecorator,FakeVFATServer) |
3920 | 6444 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(FtpTransport,UnavailableFTPTestServer) | 6683 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(FtpTransport,UnavailableFTPTestServer) |
3921 | 6445 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HTTPS_transport,HTTPSServer) | 6684 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HTTPS_transport,HTTPSServer) |
3922 | 6446 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HTTPS_urllib_transport,HTTPSServer_urllib) | 6685 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HTTPS_urllib_transport,HTTPSServer_urllib) |
3923 | 6447 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HttpTransport,HttpServer) | 6686 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HttpTransport,HttpServer) |
3924 | 6448 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HttpTransport_urllib,HttpServer_urllib) | 6687 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(HttpTransport_urllib,HttpServer_urllib) |
3925 | 6688 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(LocalTransport,LocalURLServer) | ||
3926 | 6449 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(MemoryTransport,MemoryServer) | 6689 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(MemoryTransport,MemoryServer) |
3927 | 6690 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3928 | 6691 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(PathFilteringTransport,TestingPathFilteringServer) | ||
3929 | 6450 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(ReadonlyTransportDecorator,ReadonlyServer) | 6692 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(ReadonlyTransportDecorator,ReadonlyServer) |
3930 | 6451 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(RemoteTCPTransport,SmartTCPServer_for_testing) | 6693 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(RemoteTCPTransport,SmartTCPServer_for_testing) |
3931 | 6694 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(SFTPTransport,SFTPAbsoluteServer) | ||
3932 | 6695 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(SFTPTransport,SFTPHomeDirServer) | ||
3933 | 6696 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3934 | 6697 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(TransportLogDecorator,LogDecoratorServer) | ||
3935 | 6698 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(TransportTraceDecorator,TraceServer) | ||
3936 | 6699 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic_permissions(UnlistableTransportDecorator,UnlistableServer) | ||
3937 | 6700 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(ReadonlyTransportDecorator,ReadonlyServer) | ||
3938 | 6701 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3939 | 6702 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(SFTPTransport,SFTPAbsoluteServer) | ||
3940 | 6703 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(SFTPTransport,SFTPHomeDirServer) | ||
3941 | 6704 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3942 | 6705 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(TransportLogDecorator,LogDecoratorServer) | ||
3943 | 6706 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(TransportTraceDecorator,TraceServer) | ||
3944 | 6707 | breezy.tests.per_transport.TransportTests.test_put_bytes_non_atomic(UnlistableTransportDecorator,UnlistableServer) | ||
3945 | 6708 | breezy.tests.per_transport.TransportTests.test_put_bytes(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3946 | 6709 | breezy.tests.per_transport.TransportTests.test_put_bytes(PathFilteringTransport,TestingPathFilteringServer) | ||
3947 | 6452 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(ChrootTransport,TestingChrootServer) | 6710 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(ChrootTransport,TestingChrootServer) |
3948 | 6453 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(FakeNFSTransportDecorator,FakeNFSServer) | 6711 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(FakeNFSTransportDecorator,FakeNFSServer) |
3949 | 6454 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(FakeVFATTransportDecorator,FakeVFATServer) | 6712 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(FakeVFATTransportDecorator,FakeVFATServer) |
3950 | @@ -6470,6 +6728,12 @@ | |||
3951 | 6470 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(TransportTraceDecorator,TraceServer) | 6728 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(TransportTraceDecorator,TraceServer) |
3952 | 6471 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(UnlistableTransportDecorator,UnlistableServer) | 6729 | breezy.tests.per_transport.TransportTests.test_put_bytes_permissions(UnlistableTransportDecorator,UnlistableServer) |
3953 | 6472 | breezy.tests.per_transport.TransportTests.test_put_bytes(ReadonlyTransportDecorator,ReadonlyServer) | 6730 | breezy.tests.per_transport.TransportTests.test_put_bytes(ReadonlyTransportDecorator,ReadonlyServer) |
3954 | 6731 | breezy.tests.per_transport.TransportTests.test_put_bytes(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3955 | 6732 | breezy.tests.per_transport.TransportTests.test_put_bytes(SFTPTransport,SFTPAbsoluteServer) | ||
3956 | 6733 | breezy.tests.per_transport.TransportTests.test_put_bytes(SFTPTransport,SFTPHomeDirServer) | ||
3957 | 6734 | breezy.tests.per_transport.TransportTests.test_put_bytes(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
3958 | 6735 | breezy.tests.per_transport.TransportTests.test_put_bytes(TransportLogDecorator,LogDecoratorServer) | ||
3959 | 6736 | breezy.tests.per_transport.TransportTests.test_put_bytes(TransportTraceDecorator,TraceServer) | ||
3960 | 6473 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(ChrootTransport,TestingChrootServer) | 6737 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(ChrootTransport,TestingChrootServer) |
3961 | 6474 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(FakeNFSTransportDecorator,FakeNFSServer) | 6738 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(FakeNFSTransportDecorator,FakeNFSServer) |
3962 | 6475 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(FakeVFATTransportDecorator,FakeVFATServer) | 6739 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(FakeVFATTransportDecorator,FakeVFATServer) |
3963 | @@ -6490,16 +6754,29 @@ | |||
3964 | 6490 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(TransportLogDecorator,LogDecoratorServer) | 6754 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(TransportLogDecorator,LogDecoratorServer) |
3965 | 6491 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(TransportTraceDecorator,TraceServer) | 6755 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(TransportTraceDecorator,TraceServer) |
3966 | 6492 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(UnlistableTransportDecorator,UnlistableServer) | 6756 | breezy.tests.per_transport.TransportTests.test_put_bytes_unicode(UnlistableTransportDecorator,UnlistableServer) |
3967 | 6757 | breezy.tests.per_transport.TransportTests.test_put_bytes(UnlistableTransportDecorator,UnlistableServer) | ||
3968 | 6758 | breezy.tests.per_transport.TransportTests.test_put_file(ChrootTransport,TestingChrootServer) | ||
3969 | 6759 | breezy.tests.per_transport.TransportTests.test_put_file(FakeNFSTransportDecorator,FakeNFSServer) | ||
3970 | 6760 | breezy.tests.per_transport.TransportTests.test_put_file(FakeVFATTransportDecorator,FakeVFATServer) | ||
3971 | 6493 | breezy.tests.per_transport.TransportTests.test_put_file(FtpTransport,UnavailableFTPTestServer) | 6761 | breezy.tests.per_transport.TransportTests.test_put_file(FtpTransport,UnavailableFTPTestServer) |
3972 | 6494 | breezy.tests.per_transport.TransportTests.test_put_file(HTTPS_transport,HTTPSServer) | 6762 | breezy.tests.per_transport.TransportTests.test_put_file(HTTPS_transport,HTTPSServer) |
3973 | 6495 | breezy.tests.per_transport.TransportTests.test_put_file(HTTPS_urllib_transport,HTTPSServer_urllib) | 6763 | breezy.tests.per_transport.TransportTests.test_put_file(HTTPS_urllib_transport,HTTPSServer_urllib) |
3974 | 6496 | breezy.tests.per_transport.TransportTests.test_put_file(HttpTransport,HttpServer) | 6764 | breezy.tests.per_transport.TransportTests.test_put_file(HttpTransport,HttpServer) |
3975 | 6497 | breezy.tests.per_transport.TransportTests.test_put_file(HttpTransport_urllib,HttpServer_urllib) | 6765 | breezy.tests.per_transport.TransportTests.test_put_file(HttpTransport_urllib,HttpServer_urllib) |
3976 | 6766 | breezy.tests.per_transport.TransportTests.test_put_file(LocalTransport,LocalURLServer) | ||
3977 | 6767 | breezy.tests.per_transport.TransportTests.test_put_file(MemoryTransport,MemoryServer) | ||
3978 | 6768 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(ChrootTransport,TestingChrootServer) | ||
3979 | 6769 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(FakeNFSTransportDecorator,FakeNFSServer) | ||
3980 | 6770 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(FakeVFATTransportDecorator,FakeVFATServer) | ||
3981 | 6498 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(FtpTransport,UnavailableFTPTestServer) | 6771 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(FtpTransport,UnavailableFTPTestServer) |
3982 | 6499 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HTTPS_transport,HTTPSServer) | 6772 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HTTPS_transport,HTTPSServer) |
3983 | 6500 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HTTPS_urllib_transport,HTTPSServer_urllib) | 6773 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HTTPS_urllib_transport,HTTPSServer_urllib) |
3984 | 6501 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HttpTransport,HttpServer) | 6774 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HttpTransport,HttpServer) |
3985 | 6502 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HttpTransport_urllib,HttpServer_urllib) | 6775 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(HttpTransport_urllib,HttpServer_urllib) |
3986 | 6776 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(LocalTransport,LocalURLServer) | ||
3987 | 6777 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(MemoryTransport,MemoryServer) | ||
3988 | 6778 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(NoSmartTransportDecorator,NoSmartTransportServer) | ||
3989 | 6779 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(PathFilteringTransport,TestingPathFilteringServer) | ||
3990 | 6503 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(ChrootTransport,TestingChrootServer) | 6780 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(ChrootTransport,TestingChrootServer) |
3991 | 6504 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(FakeNFSTransportDecorator,FakeNFSServer) | 6781 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(FakeNFSTransportDecorator,FakeNFSServer) |
3992 | 6505 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(FakeVFATTransportDecorator,FakeVFATServer) | 6782 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(FakeVFATTransportDecorator,FakeVFATServer) |
3993 | @@ -6521,6 +6798,15 @@ | |||
3994 | 6521 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(TransportTraceDecorator,TraceServer) | 6798 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(TransportTraceDecorator,TraceServer) |
3995 | 6522 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(UnlistableTransportDecorator,UnlistableServer) | 6799 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic_permissions(UnlistableTransportDecorator,UnlistableServer) |
3996 | 6523 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(ReadonlyTransportDecorator,ReadonlyServer) | 6800 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(ReadonlyTransportDecorator,ReadonlyServer) |
3997 | 6801 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
3998 | 6802 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(SFTPTransport,SFTPAbsoluteServer) | ||
3999 | 6803 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(SFTPTransport,SFTPHomeDirServer) | ||
4000 | 6804 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
4001 | 6805 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(TransportLogDecorator,LogDecoratorServer) | ||
4002 | 6806 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(TransportTraceDecorator,TraceServer) | ||
4003 | 6807 | breezy.tests.per_transport.TransportTests.test_put_file_non_atomic(UnlistableTransportDecorator,UnlistableServer) | ||
4004 | 6808 | breezy.tests.per_transport.TransportTests.test_put_file(NoSmartTransportDecorator,NoSmartTransportServer) | ||
4005 | 6809 | breezy.tests.per_transport.TransportTests.test_put_file(PathFilteringTransport,TestingPathFilteringServer) | ||
4006 | 6524 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(ChrootTransport,TestingChrootServer) | 6810 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(ChrootTransport,TestingChrootServer) |
4007 | 6525 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(FakeNFSTransportDecorator,FakeNFSServer) | 6811 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(FakeNFSTransportDecorator,FakeNFSServer) |
4008 | 6526 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(FakeVFATTransportDecorator,FakeVFATServer) | 6812 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(FakeVFATTransportDecorator,FakeVFATServer) |
4009 | @@ -6542,6 +6828,13 @@ | |||
4010 | 6542 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(TransportTraceDecorator,TraceServer) | 6828 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(TransportTraceDecorator,TraceServer) |
4011 | 6543 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(UnlistableTransportDecorator,UnlistableServer) | 6829 | breezy.tests.per_transport.TransportTests.test_put_file_permissions(UnlistableTransportDecorator,UnlistableServer) |
4012 | 6544 | breezy.tests.per_transport.TransportTests.test_put_file(ReadonlyTransportDecorator,ReadonlyServer) | 6830 | breezy.tests.per_transport.TransportTests.test_put_file(ReadonlyTransportDecorator,ReadonlyServer) |
4013 | 6831 | breezy.tests.per_transport.TransportTests.test_put_file(RemoteTCPTransport,SmartTCPServer_for_testing) | ||
4014 | 6832 | breezy.tests.per_transport.TransportTests.test_put_file(SFTPTransport,SFTPAbsoluteServer) | ||
4015 | 6833 | breezy.tests.per_transport.TransportTests.test_put_file(SFTPTransport,SFTPHomeDirServer) | ||
4016 | 6834 | breezy.tests.per_transport.TransportTests.test_put_file(SFTPTransport,SFTPSiblingAbsoluteServer) | ||
4017 | 6835 | breezy.tests.per_transport.TransportTests.test_put_file(TransportLogDecorator,LogDecoratorServer) | ||
4018 | 6836 | breezy.tests.per_transport.TransportTests.test_put_file(TransportTraceDecorator,TraceServer) | ||
4019 | 6837 | breezy.tests.per_transport.TransportTests.test_put_file(UnlistableTransportDecorator,UnlistableServer) | ||
4020 | 6545 | breezy.tests.per_transport.TransportTests.test_readv(ChrootTransport,TestingChrootServer) | 6838 | breezy.tests.per_transport.TransportTests.test_readv(ChrootTransport,TestingChrootServer) |
4021 | 6546 | breezy.tests.per_transport.TransportTests.test_readv(FakeNFSTransportDecorator,FakeNFSServer) | 6839 | breezy.tests.per_transport.TransportTests.test_readv(FakeNFSTransportDecorator,FakeNFSServer) |
4022 | 6547 | breezy.tests.per_transport.TransportTests.test_readv(FakeVFATTransportDecorator,FakeVFATServer) | 6840 | breezy.tests.per_transport.TransportTests.test_readv(FakeVFATTransportDecorator,FakeVFATServer) |
4023 | @@ -7119,6 +7412,8 @@ | |||
4024 | 7119 | breezy.tests.per_tree.test_revision_tree.TestRevisionTree.test_get_random_tree_raises(WorkingTreeFormat6,remote) | 7412 | breezy.tests.per_tree.test_revision_tree.TestRevisionTree.test_get_random_tree_raises(WorkingTreeFormat6,remote) |
4025 | 7120 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(DirStateRevisionTree,WT4) | 7413 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(DirStateRevisionTree,WT4) |
4026 | 7121 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(DirStateRevisionTree,WT5) | 7414 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(DirStateRevisionTree,WT5) |
4027 | 7415 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(PreviewTree) | ||
4028 | 7416 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(PreviewTreePost) | ||
4029 | 7122 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(RevisionTree) | 7417 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(RevisionTree) |
4030 | 7123 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(WorkingTreeFormat2) | 7418 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(WorkingTreeFormat2) |
4031 | 7124 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(WorkingTreeFormat3) | 7419 | breezy.tests.per_tree.test_test_trees.TestTreeShapes.test_empty_tree_no_parents(WorkingTreeFormat3) |
Thanks! There's some scary bits here with the unicode() cast changes, may need to write ourselves a more robust helper for the short term to have confidence.