Mercurial > hgsubversion
comparison tests/test_push_dirs.py @ 268:6ec5b5fc5b4d
Added a test case for directory-add behavior when repo root is not project root.
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Tue, 14 Apr 2009 22:44:19 -0500 |
parents | 05a0c4f6060f |
children | 067914ecb4eb |
comparison
equal
deleted
inserted
replaced
267:f000b2392fc2 | 268:6ec5b5fc5b4d |
---|---|
20 ('d31/d32/d33/d34/a', 'd31/d32/d33/d34/a', 'a\n'), | 20 ('d31/d32/d33/d34/a', 'd31/d32/d33/d34/a', 'a\n'), |
21 ('d31/d32/a', 'd31/d32/a', 'a\n'), | 21 ('d31/d32/a', 'd31/d32/a', 'a\n'), |
22 ] | 22 ] |
23 self.commitchanges(changes) | 23 self.commitchanges(changes) |
24 self.pushrevisions() | 24 self.pushrevisions() |
25 self.assertEqual(self.svnls('trunk'), | 25 self.assertEqual(self.svnls('trunk'), |
26 ['d1', 'd1/a', 'd2', 'd2/a', 'd2/b', 'd31', | 26 ['d1', 'd1/a', 'd2', 'd2/a', 'd2/b', 'd31', |
27 'd31/d32', 'd31/d32/a', 'd31/d32/d33', | 27 'd31/d32', 'd31/d32/a', 'd31/d32/d33', |
28 'd31/d32/d33/d34', 'd31/d32/d33/d34/a']) | 28 'd31/d32/d33/d34', 'd31/d32/d33/d34/a']) |
29 | 29 |
30 # Add one revision with changed files only, no directory addition | 30 # Add one revision with changed files only, no directory addition |
31 # or deletion. | 31 # or deletion. |
32 changes = [ | 32 changes = [ |
44 # Removing this file should remove one empty parent dir too | 44 # Removing this file should remove one empty parent dir too |
45 ('d31/d32/d33/d34/a', None, None), | 45 ('d31/d32/d33/d34/a', None, None), |
46 ] | 46 ] |
47 self.commitchanges(changes) | 47 self.commitchanges(changes) |
48 self.pushrevisions() | 48 self.pushrevisions() |
49 self.assertEqual(self.svnls('trunk'), | 49 self.assertEqual(self.svnls('trunk'), |
50 ['d2', 'd2/b', 'd31', 'd31/d32', 'd31/d32/a', 'd31/d32/d33']) | 50 ['d2', 'd2/b', 'd31', 'd31/d32', 'd31/d32/a', 'd31/d32/d33']) |
51 | |
52 | |
53 class TestPushDirsNotAtRoot(test_util.TestBase): | |
54 def test_push_new_dir_project_root_not_repo_root(self): | |
55 test_util.load_fixture_and_fetch('fetch_missing_files_subdir.svndump', | |
56 self.repo_path, | |
57 self.wc_path, | |
58 subdir='foo') | |
59 changes = [('magic_new/a', 'magic_new/a', 'ohai', ), | |
60 ] | |
61 self.commitchanges(changes) | |
62 self.pushrevisions() | |
63 self.assertEqual(self.svnls('foo/trunk'), ['bar', | |
64 'bar/alpha', | |
65 'bar/beta', | |
66 'bar/delta', | |
67 'bar/gamma', | |
68 'foo', | |
69 'magic_new', | |
70 'magic_new/a']) | |
71 | |
72 def test_push_new_file_existing_dir_root_not_repo_root(self): | |
73 test_util.load_fixture_and_fetch('empty_dir_in_trunk_not_repo_root.svndump', | |
74 self.repo_path, | |
75 self.wc_path, | |
76 subdir='project') | |
77 changes = [('narf/a', 'narf/a', 'ohai', ), | |
78 ] | |
79 self.commitchanges(changes) | |
80 self.assertEqual(self.svnls('project/trunk'), ['a', | |
81 'narf',]) | |
82 self.pushrevisions() | |
83 self.assertEqual(self.svnls('project/trunk'), ['a', | |
84 'narf', | |
85 'narf/a']) | |
86 changes = [('narf/a', None, None, ), | |
87 ] | |
88 self.commitchanges(changes) | |
89 self.pushrevisions() | |
90 self.assertEqual(self.svnls('project/trunk'), ['a' ,]) | |
91 | |
51 | 92 |
52 def suite(): | 93 def suite(): |
53 all = [unittest.TestLoader().loadTestsFromTestCase(TestPushDirectories), | 94 all = [unittest.TestLoader().loadTestsFromTestCase(TestPushDirectories), |
54 ] | 95 ] |
55 return unittest.TestSuite(all) | 96 return unittest.TestSuite(all) |