bzr branch
http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
| 1728.2.1
by Martin Pool Remove duplicated RevisionSpec_revs (guillaume) | 1 | # Copyright (C) 2004, 2005, 2006 by Canonical Ltd
 | 
| 1887.1.1
by Adeodato Simó Do not separate paragraphs in the copyright statement with blank lines, | 2 | #
 | 
| 897
by Martin Pool - merge john's revision-naming code | 3 | # This program is free software; you can redistribute it and/or modify
 | 
| 4 | # it under the terms of the GNU General Public License as published by
 | |
| 5 | # the Free Software Foundation; either version 2 of the License, or
 | |
| 6 | # (at your option) any later version.
 | |
| 1887.1.1
by Adeodato Simó Do not separate paragraphs in the copyright statement with blank lines, | 7 | #
 | 
| 897
by Martin Pool - merge john's revision-naming code | 8 | # This program is distributed in the hope that it will be useful,
 | 
| 9 | # but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| 10 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| 11 | # GNU General Public License for more details.
 | |
| 1887.1.1
by Adeodato Simó Do not separate paragraphs in the copyright statement with blank lines, | 12 | #
 | 
| 897
by Martin Pool - merge john's revision-naming code | 13 | # You should have received a copy of the GNU General Public License
 | 
| 14 | # along with this program; if not, write to the Free Software
 | |
| 15 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 | |
| 16 | ||
| 974.1.52
by aaron.bentley at utoronto Merged mpool's latest changes (~0.0.7) | 17 | import os | 
| 1185.1.39
by Robert Collins Robey Pointers before: namespace to clear up usage of dates in revision parameters | 18 | import time | 
| 1432
by Robert Collins branch: namespace | 19 | |
| 1534.1.16
by Robert Collins Merge from jam-integration. | 20 | from bzrlib.builtins import merge | 
| 1432
by Robert Collins branch: namespace | 21 | from bzrlib.branch import Branch | 
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 22 | from bzrlib.tests import TestCaseWithTransport | 
| 974.1.81
by Aaron Bentley Added ancestor revision namepsace | 23 | from bzrlib.errors import NoCommonAncestor, NoCommits | 
| 1432
by Robert Collins branch: namespace | 24 | from bzrlib.errors import NoSuchRevision | 
| 25 | from bzrlib.revisionspec import RevisionSpec | |
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 26 | |
| 27 | ||
| 28 | class TestRevisionNamespaces(TestCaseWithTransport): | |
| 1185.1.28
by Robert Collins revert out the revision spec from revision spec change | 29 | |
| 1732.3.3
by Matthieu Moy Testcases for revno:N:path | 30 | def test_revno_n_path(self): | 
| 31 | """Test revision specifiers. | |
| 32 | ||
| 33 |         These identify revisions by date, etc."""
 | |
| 34 | wta = self.make_branch_and_tree('a') | |
| 35 | ba = wta.branch | |
| 36 | ||
| 37 | wta.commit('Commit one', rev_id='a@r-0-1') | |
| 38 | wta.commit('Commit two', rev_id='a@r-0-2') | |
| 39 | wta.commit('Commit three', rev_id='a@r-0-3') | |
| 40 | ||
| 41 | wtb = self.make_branch_and_tree('b') | |
| 42 | bb = wtb.branch | |
| 43 | ||
| 44 | wtb.commit('Commit one', rev_id='b@r-0-1') | |
| 45 | wtb.commit('Commit two', rev_id='b@r-0-2') | |
| 46 | wtb.commit('Commit three', rev_id='b@r-0-3') | |
| 47 | ||
| 48 | self.assertEquals(RevisionSpec('revno:1:a/').in_history(ba), | |
| 49 | (1, 'a@r-0-1')) | |
| 50 |         # The argument of in_history should be ignored since it is
 | |
| 51 |         # redundant with the path in the spec.
 | |
| 52 | self.assertEquals(RevisionSpec('revno:1:a/').in_history(None), | |
| 53 | (1, 'a@r-0-1')) | |
| 54 | self.assertEquals(RevisionSpec('revno:1:a/').in_history(bb), | |
| 55 | (1, 'a@r-0-1')) | |
| 56 | self.assertEquals(RevisionSpec('revno:2:b/').in_history(None), | |
| 57 | (2, 'b@r-0-2')) | |
| 58 | ||
| 59 | ||
| 1102
by Martin Pool - merge test refactoring from robertc | 60 | def test_revision_namespaces(self): | 
| 1185.11.5
by John Arbash Meinel Merged up-to-date against mainline, still broken. | 61 | """Test revision specifiers. | 
| 62 | ||
| 63 |         These identify revisions by date, etc."""
 | |
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 64 | wt = self.make_branch_and_tree('.') | 
| 65 | b = wt.branch | |
| 66 | ||
| 67 | wt.commit('Commit one', rev_id='a@r-0-1', timestamp=time.time() - 60*60*24) | |
| 68 | wt.commit('Commit two', rev_id='a@r-0-2') | |
| 69 | wt.commit('Commit three', rev_id='a@r-0-3') | |
| 897
by Martin Pool - merge john's revision-naming code | 70 | |
| 1185.11.5
by John Arbash Meinel Merged up-to-date against mainline, still broken. | 71 | self.assertEquals(RevisionSpec(None).in_history(b), (0, None)) | 
| 72 | self.assertEquals(RevisionSpec(1).in_history(b), (1, 'a@r-0-1')) | |
| 73 | self.assertEquals(RevisionSpec('revno:1').in_history(b), | |
| 74 | (1, 'a@r-0-1')) | |
| 75 | self.assertEquals(RevisionSpec('revid:a@r-0-1').in_history(b), | |
| 76 | (1, 'a@r-0-1')) | |
| 77 | self.assertRaises(NoSuchRevision, | |
| 78 | RevisionSpec('revid:a@r-0-0').in_history, b) | |
| 79 | self.assertRaises(TypeError, RevisionSpec, object) | |
| 80 | ||
| 1185.1.39
by Robert Collins Robey Pointers before: namespace to clear up usage of dates in revision parameters | 81 | self.assertEquals(RevisionSpec('date:today').in_history(b), | 
| 82 | (2, 'a@r-0-2')) | |
| 1704.2.27
by Martin Pool Run bisection search for revision date with lock held. (Robert Widhopf-Frenk) | 83 | self.assertRaises(NoSuchRevision, | 
| 84 | RevisionSpec('date:tomorrow').in_history, b) | |
| 1185.1.39
by Robert Collins Robey Pointers before: namespace to clear up usage of dates in revision parameters | 85 | self.assertEquals(RevisionSpec('date:yesterday').in_history(b), | 
| 86 | (1, 'a@r-0-1')) | |
| 87 | self.assertEquals(RevisionSpec('before:date:today').in_history(b), | |
| 1185.11.5
by John Arbash Meinel Merged up-to-date against mainline, still broken. | 88 | (1, 'a@r-0-1')) | 
| 89 | ||
| 90 | self.assertEquals(RevisionSpec('last:1').in_history(b), | |
| 91 | (3, 'a@r-0-3')) | |
| 92 | self.assertEquals(RevisionSpec('-1').in_history(b), (3, 'a@r-0-3')) | |
| 93 | #        self.assertEquals(b.get_revision_info('last:1'), (3, 'a@r-0-3'))
 | |
| 94 | #        self.assertEquals(b.get_revision_info('-1'), (3, 'a@r-0-3'))
 | |
| 95 | ||
| 96 | self.assertEquals(RevisionSpec('ancestor:.').in_history(b).rev_id, | |
| 97 | 'a@r-0-3') | |
| 974.2.7
by aaron.bentley at utoronto Merged from bzr.24 | 98 | |
| 99 | os.mkdir('newbranch') | |
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 100 | wt2 = self.make_branch_and_tree('newbranch') | 
| 101 | b2 = wt2.branch | |
| 1185.11.5
by John Arbash Meinel Merged up-to-date against mainline, still broken. | 102 | self.assertRaises(NoCommits, RevisionSpec('ancestor:.').in_history, b2) | 
| 974.1.81
by Aaron Bentley Added ancestor revision namepsace | 103 | |
| 1534.4.50
by Robert Collins Got the bzrdir api straightened out, plenty of refactoring to use it pending, but the api is up and running. | 104 | d3 = b.bzrdir.sprout('copy') | 
| 105 | b3 = d3.open_branch() | |
| 106 | wt3 = d3.open_workingtree() | |
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 107 | wt3.commit('Commit four', rev_id='b@r-0-4') | 
| 1185.11.5
by John Arbash Meinel Merged up-to-date against mainline, still broken. | 108 | self.assertEquals(RevisionSpec('ancestor:.').in_history(b3).rev_id, | 
| 109 | 'a@r-0-3') | |
| 974.1.81
by Aaron Bentley Added ancestor revision namepsace | 110 | merge(['copy', -1], [None, None]) | 
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 111 | wt.commit('Commit five', rev_id='a@r-0-4') | 
| 1185.11.5
by John Arbash Meinel Merged up-to-date against mainline, still broken. | 112 | self.assertEquals(RevisionSpec('ancestor:copy').in_history(b).rev_id, | 
| 113 | 'b@r-0-4') | |
| 114 | self.assertEquals(RevisionSpec('ancestor:.').in_history(b3).rev_id, | |
| 115 | 'b@r-0-4') | |
| 1432
by Robert Collins branch: namespace | 116 | |
| 1185.62.5
by John Arbash Meinel Updated -r revid:foo so that it can match revisions which aren't in the revision history | 117 |         # This should be in the revision store, but not in revision-history
 | 
| 118 | self.assertEquals((None, 'b@r-0-4'), | |
| 119 | RevisionSpec('revid:b@r-0-4').in_history(b)) | |
| 120 | ||
| 1432
by Robert Collins branch: namespace | 121 | def test_branch_namespace(self): | 
| 122 | """Ensure that the branch namespace pulls in the requisite content.""" | |
| 123 | self.build_tree(['branch1/', 'branch1/file', 'branch2/']) | |
| 1534.4.26
by Robert Collins Move working tree initialisation out from Branch.initialize, deprecated Branch.initialize to Branch.create. | 124 | wt = self.make_branch_and_tree('branch1') | 
| 125 | branch = wt.branch | |
| 126 | wt.add(['file']) | |
| 127 | wt.commit('add file') | |
| 1534.4.50
by Robert Collins Got the bzrdir api straightened out, plenty of refactoring to use it pending, but the api is up and running. | 128 | d2 = branch.bzrdir.sprout('branch2') | 
| 1432
by Robert Collins branch: namespace | 129 | print >> open('branch2/file', 'w'), 'new content' | 
| 1534.4.50
by Robert Collins Got the bzrdir api straightened out, plenty of refactoring to use it pending, but the api is up and running. | 130 | branch2 = d2.open_branch() | 
| 131 | d2.open_workingtree().commit('update file', rev_id='A') | |
| 1432
by Robert Collins branch: namespace | 132 | spec = RevisionSpec('branch:./branch2/.bzr/../') | 
| 133 | rev_info = spec.in_history(branch) | |
| 134 | self.assertEqual(rev_info, (None, 'A')) | |
| 135 |