~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/selftest/versioning.py

merge up with HEAD and with test-fixes

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
 
18
18
"""Tests of simple versioning operations"""
19
19
 
20
 
# TODO: test adding a file whose directory is not versioned
21
20
# TODO: test trying to commit within a directory that is not yet added
22
21
 
23
22
 
55
54
        self.assertEquals(delta.added[0][0], 'foo')
56
55
        self.failIf(delta.modified)
57
56
 
58
 
    def test_add_in_unversioned(self):
 
57
    def test_branch_add_in_unversioned(self):
59
58
        """Try to add a file in an unversioned directory.
60
59
 
61
 
        smart_add may eventually add the parent as necessary, but simple
62
 
        branch add doesn't do that.
 
60
        "bzr add" adds the parent as necessary, but simple branch add
 
61
        doesn't do that.
63
62
        """
64
63
        from bzrlib.branch import Branch
65
64
        from bzrlib.errors import NotVersionedError
75
74
        
76
75
        self.check_and_upgrade()
77
76
 
78
 
        
 
77
 
 
78
    def test_add_in_unversioned(self):
 
79
        """Try to add a file in an unversioned directory.
 
80
 
 
81
        "bzr add" should add the parent(s) as necessary.
 
82
        """
 
83
        from bzrlib.branch import Branch
 
84
        from bzrlib.commands import run_bzr
 
85
        eq = self.assertEqual
 
86
 
 
87
        b = Branch('.', init=True)
 
88
 
 
89
        self.build_tree(['inertiatic/', 'inertiatic/esp'])
 
90
        eq(list(b.unknowns()), ['inertiatic'])
 
91
        run_bzr(['add', 'inertiatic/esp'])
 
92
        eq(list(b.unknowns()), [])
 
93
 
 
94
        # Multiple unversioned parents
 
95
        self.build_tree(['veil/', 'veil/cerpin/', 'veil/cerpin/taxt'])
 
96
        eq(list(b.unknowns()), ['veil'])
 
97
        run_bzr(['add', 'veil/cerpin/taxt'])
 
98
        eq(list(b.unknowns()), [])
 
99
 
 
100
        # Check whacky paths work
 
101
        self.build_tree(['cicatriz/', 'cicatriz/esp'])
 
102
        eq(list(b.unknowns()), ['cicatriz'])
 
103
        run_bzr(['add', 'inertiatic/../cicatriz/esp'])
 
104
        eq(list(b.unknowns()), [])
 
105
 
 
106
    def test_add_in_versioned(self):
 
107
        """Try to add a file in a versioned directory.
 
108
 
 
109
        "bzr add" should do this happily.
 
110
        """
 
111
        from bzrlib.branch import Branch
 
112
        from bzrlib.commands import run_bzr
 
113
        eq = self.assertEqual
 
114
 
 
115
        b = Branch('.', init=True)
 
116
 
 
117
        self.build_tree(['inertiatic/', 'inertiatic/esp'])
 
118
        eq(list(b.unknowns()), ['inertiatic'])
 
119
        run_bzr(['add', '--no-recurse', 'inertiatic'])
 
120
        eq(list(b.unknowns()), ['inertiatic/esp'])
 
121
        run_bzr(['add', 'inertiatic/esp'])
 
122
        eq(list(b.unknowns()), [])
 
123
 
79
124
    def test_subdir_add(self):
80
125
        """Add in subdirectory should add only things from there down"""
81
126
        
131
176
        
132
177
 
133
178
        
134
 
        
135
179
class SubdirCommit(TestCaseInTempDir):
136
180
 
137
181
    def test_subdir_commit(self):