1
# Copyright (C) 2006-2010 Canonical Ltd
1
# Copyright (C) 2006, 2007, 2009 Canonical Ltd
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
28
28
from bzrlib.bzrdir import BzrDirMetaFormat1
29
29
from bzrlib.tests import TestSkipped
30
from bzrlib.tests import TestCaseWithTransport
30
from bzrlib.tests.blackbox import ExternalBase
31
31
from bzrlib.tests.test_sftp_transport import TestCaseWithSFTPServer
32
32
from bzrlib.workingtree import WorkingTree
35
class TestInit(TestCaseWithTransport):
35
class TestInit(ExternalBase):
38
TestCaseWithTransport.setUp(self)
38
ExternalBase.setUp(self)
39
39
self._default_label = '2a'
41
41
def test_init_with_format(self):
196
196
def test_init_append_revisions_only(self):
197
197
self.run_bzr('init --dirstate-tags normal_branch6')
198
198
branch = _mod_branch.Branch.open('normal_branch6')
199
self.assertEqual(None, branch._get_append_revisions_only())
199
self.assertEqual(False, branch._get_append_revisions_only())
200
200
self.run_bzr('init --append-revisions-only --dirstate-tags branch6')
201
201
branch = _mod_branch.Branch.open('branch6')
202
202
self.assertEqual(True, branch._get_append_revisions_only())
203
203
self.run_bzr_error(['cannot be set to append-revisions-only'],
204
204
'init --append-revisions-only --knit knit')
206
def test_init_without_username(self):
207
"""Ensure init works if username is not set.
209
# bzr makes user specified whoami mandatory for operations
210
# like commit as whoami is recorded. init however is not so final
211
# and uses whoami only in a lock file. Without whoami the login name
212
# is used. This test is to ensure that init passes even when whoami
214
osutils.set_or_unset_env('EMAIL', None)
215
osutils.set_or_unset_env('BZR_EMAIL', None)
216
out, err = self.run_bzr(['init', 'foo'])
217
self.assertEqual(err, '')
218
self.assertTrue(os.path.exists('foo'))