Mercurial > hgsubversion
comparison tests/test_fetch_symlinks.py @ 741:b3128fec5d54
editor: handle property changes to links.
Previously, property changes to links caused 'link ' to be prepended
to the link destination. Removing a line that prepended it in
Revision::set() appears to fix it. In these cases, the "file marked as
link, but contains data" warning might be triggered. This should be
safe, so it's lowered to a note and the language made less conclusive.
In order to test this, extra revisions are added to the
'symlinks.svndump' fixture. As one of the new revisions add a link
that points to 'link to this', a check that asserted that link
destinations must not start with 'link ' was removed. This change is
safe, as the test later on asserts exact equality with the contents of
the 'links' dictionary.
author | Dan Villiom Podlaski Christiansen <danchr@gmail.com> |
---|---|
date | Tue, 09 Nov 2010 13:05:16 +0100 |
parents | d2ef7220a079 |
children | e9af7eba88db |
comparison
equal
deleted
inserted
replaced
740:c8c438b010aa | 741:b3128fec5d54 |
---|---|
7 return test_util.load_fixture_and_fetch(fixture_name, self.repo_path, | 7 return test_util.load_fixture_and_fetch(fixture_name, self.repo_path, |
8 self.wc_path, stupid=stupid) | 8 self.wc_path, stupid=stupid) |
9 | 9 |
10 def test_symlinks(self, stupid=False): | 10 def test_symlinks(self, stupid=False): |
11 repo = self._load_fixture_and_fetch('symlinks.svndump', stupid) | 11 repo = self._load_fixture_and_fetch('symlinks.svndump', stupid) |
12 # Check no symlink contains the 'link ' prefix | 12 # Check symlinks throughout history |
13 for rev in repo: | |
14 r = repo[rev] | |
15 for f in r.manifest(): | |
16 if 'l' not in r[f].flags(): | |
17 continue | |
18 self.assertFalse(r[f].data().startswith('link ')) | |
19 # Check symlinks in tip | |
20 links = { | 13 links = { |
21 0: { | 14 0: { |
22 'linka': 'a', | 15 'linka': 'a', |
23 'linka2': 'a', | 16 'linka2': 'a', |
24 'd/linka': 'a', | 17 'd/linka': 'a', |
32 'linkaa': 'b', | 25 'linkaa': 'b', |
33 'linka2': 'a', | 26 'linka2': 'a', |
34 'd2/linka': 'b', | 27 'd2/linka': 'b', |
35 }, | 28 }, |
36 3: { | 29 3: { |
30 }, | |
31 4: { | |
32 'linka3': 'a', | |
33 }, | |
34 5: { | |
35 'linka3': 'a', | |
36 }, | |
37 6: { | |
38 'linka3': 'a', | |
39 'linka4': 'link to this', | |
37 }, | 40 }, |
38 } | 41 } |
39 | 42 |
40 for rev in repo: | 43 for rev in repo: |
41 ctx = repo[rev] | 44 ctx = repo[rev] |