28
28
from bzrlib.config import BranchConfig
29
29
from bzrlib.errors import (PointlessCommit, BzrError, SigningFailed,
31
from bzrlib.tests import (
33
TestCaseWithTransport,
31
from bzrlib.tests import SymlinkFeature, TestCaseWithTransport
38
34
# TODO: Test commit with some added, and added-but-missing files
108
104
self.assertEqual('version 2', text)
110
def test_commit_lossy_native(self):
111
"""Attempt a lossy commit to a native branch."""
112
wt = self.make_branch_and_tree('.')
114
file('hello', 'w').write('hello world')
116
revid = wt.commit(message='add hello', rev_id='revid', lossy=True)
117
self.assertEquals('revid', revid)
119
def test_commit_lossy_foreign(self):
120
"""Attempt a lossy commit to a foreign branch."""
121
test_foreign.register_dummy_foreign_for_test(self)
122
wt = self.make_branch_and_tree('.',
123
format=test_foreign.DummyForeignVcsDirFormat())
125
file('hello', 'w').write('hello world')
127
revid = wt.commit(message='add hello', lossy=True,
128
timestamp=1302659388, timezone=0)
129
self.assertEquals('dummy-v1:1302659388.0-0-UNKNOWN', revid)
131
def test_commit_bound_lossy_foreign(self):
132
"""Attempt a lossy commit to a bzr branch bound to a foreign branch."""
133
test_foreign.register_dummy_foreign_for_test(self)
134
foreign_branch = self.make_branch('foreign',
135
format=test_foreign.DummyForeignVcsDirFormat())
136
wt = foreign_branch.create_checkout("local")
138
file('local/hello', 'w').write('hello world')
140
revid = wt.commit(message='add hello', lossy=True,
141
timestamp=1302659388, timezone=0)
142
self.assertEquals('dummy-v1:1302659388.0-0-0', revid)
143
self.assertEquals('dummy-v1:1302659388.0-0-0',
144
foreign_branch.last_revision())
145
self.assertEquals('dummy-v1:1302659388.0-0-0',
146
wt.branch.last_revision())
148
106
def test_missing_commit(self):
149
107
"""Test a commit with a missing file"""
150
108
wt = self.make_branch_and_tree('.')
391
349
def test_strict_commit_without_unknowns(self):
392
350
"""Try and commit with no unknown files and strict = True,
352
from bzrlib.errors import StrictCommitFailed
394
353
wt = self.make_branch_and_tree('.')
396
355
file('hello', 'w').write('hello world')
448
407
wt.commit("base", allow_pointless=True, rev_id='A')
449
408
self.assertFalse(branch.repository.has_signature_for_revision_id('A'))
410
from bzrlib.testament import Testament
451
411
# monkey patch gpg signing mechanism
452
412
bzrlib.gpg.GPGStrategy = bzrlib.gpg.DisabledGPGStrategy
453
413
config = MustSignConfig(branch)