~bzr-pqm/bzr/bzr.dev

6352.1.1 by Jelmer Vernooij
add blackbox tests for mkdir.
1
# Copyright (C) 2011 Canonical Ltd
2
#
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.
7
#
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.
12
#
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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
17
18
"""Black-box tests for bzr mkdir.
19
"""
20
6352.1.2 by Jelmer Vernooij
Merge mkdir work from Jared Hance.
21
import os
6352.1.1 by Jelmer Vernooij
add blackbox tests for mkdir.
22
from bzrlib import tests
23
24
25
class TestMkdir(tests.TestCaseWithTransport):
26
27
    def test_mkdir(self):
28
        tree = self.make_branch_and_tree('.')
29
        self.run_bzr(['mkdir', 'somedir'])
30
        self.assertEquals(tree.kind(tree.path2id('somedir')), "directory")
31
6352.1.2 by Jelmer Vernooij
Merge mkdir work from Jared Hance.
32
    def test_mkdir_multi(self):
33
        tree = self.make_branch_and_tree('.')
34
        self.run_bzr(['mkdir', 'somedir', 'anotherdir'])
35
        self.assertEquals(tree.kind(tree.path2id('somedir')), "directory")
36
        self.assertEquals(tree.kind(tree.path2id('anotherdir')), "directory")
37
38
    def test_mkdir_parents(self):
39
        tree = self.make_branch_and_tree('.')
40
        self.run_bzr(['mkdir', '-p', 'somedir/foo'])
41
        self.assertEquals(tree.kind(tree.path2id('somedir/foo')), "directory")
42
6357.1.1 by Martin Packman
Add failing tests for mkdir -p with existing directories
43
    def test_mkdir_parents_existing_versioned_dir(self):
44
        tree = self.make_branch_and_tree('.')
45
        tree.mkdir('somedir')
46
        self.assertEquals(tree.kind(tree.path2id('somedir')), "directory")
47
        self.run_bzr(['mkdir', '-p', 'somedir'])
48
49
    def test_mkdir_parents_existing_unversioned_dir(self):
50
        tree = self.make_branch_and_tree('.')
51
        os.mkdir('somedir')
52
        self.run_bzr(['mkdir', '-p', 'somedir'])
53
        self.assertEquals(tree.kind(tree.path2id('somedir')), "directory")
54
6352.1.2 by Jelmer Vernooij
Merge mkdir work from Jared Hance.
55
    def test_mkdir_parents_with_unversioned_parent(self):
56
        tree = self.make_branch_and_tree('.')
57
        os.mkdir('somedir')
58
        self.run_bzr(['mkdir', '-p', 'somedir/foo'])
6352.1.1 by Jelmer Vernooij
add blackbox tests for mkdir.
59
        self.assertEquals(tree.kind(tree.path2id('somedir/foo')), "directory")