/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/blackbox/test_commit.py

merge bzr.dev including updates to test_commit

Show diffs side-by-side

added added

removed removed

Lines of Context:
35
35
        self.build_tree(['hello.txt'])
36
36
        out,err = self.run_bzr('commit -m empty', retcode=3)
37
37
        self.assertEqual('', out)
38
 
        self.assertStartsWith(err, 'bzr: ERROR: no changes to commit.'
 
38
        self.assertContainsRe(err, 'bzr: ERROR: no changes to commit\.'
39
39
                                  ' use --unchanged to commit anyhow\n')
40
40
 
41
41
    def test_commit_success(self):
75
75
        tree.add("hello.txt")
76
76
        out,err = self.run_bzr('commit -v -m added')
77
77
        self.assertEqual('', out)
78
 
        self.assertEqual('added hello.txt\n'
79
 
                         'Committed revision 1 (1 change made).\n',
80
 
                         err)
 
78
        self.assertContainsRe(err, '^Committing revision 1 to ".*"\.\n'
 
79
            'added hello.txt\n'
 
80
            'Committed revision 1 \(1 change made\).\n$',)
81
81
 
82
82
    def test_10_quiet_commit(self):
83
83
        """Add one file and examine quiet commit output"""
95
95
        tree.add("hello.txt")
96
96
        out,err = self.run_bzr('commit -m added')
97
97
        self.assertEqual('', out)
98
 
        self.assertEqual('Committed revision 1 (1 change made).\n',
99
 
                         err)
 
98
        self.assertContainsRe(err, '^Committing revision 1 to ".*"\.\n'
 
99
                              'Committed revision 1 \(1 change made\).\n$',)
100
100
 
101
101
    def prepare_simple_history(self):
102
102
        """Prepare and return a working tree with one commit of one file"""
113
113
        self.build_tree_contents([('hello.txt', 'new contents')])
114
114
        out, err = self.run_bzr('commit -m modified')
115
115
        self.assertEqual('', out)
116
 
        self.assertEqual('modified hello.txt\n'
117
 
                         'Committed revision 2.\n',
118
 
                         err)
 
116
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
117
            'modified hello.txt\n'
 
118
            'Committed revision 2.\n$')
119
119
 
120
120
    def test_verbose_commit_modified(self):
121
121
        # Verbose commit of modified file should say so
123
123
        self.build_tree_contents([('hello.txt', 'new contents')])
124
124
        out, err = self.run_bzr('commit -v -m modified')
125
125
        self.assertEqual('', out)
126
 
        self.assertEqual('modified hello.txt\n'
127
 
                         'Committed revision 2 (1 change made).\n',
128
 
                         err)
129
 
 
130
 
    def test_normal_commit_renamed(self):
131
 
        # Verbose commit of renamed file should say just the new revision
132
 
        wt = self.prepare_simple_history()
133
 
        wt.rename_one('hello.txt', 'gutentag.txt')
134
 
        out, err = self.run_bzr('commit -m renamed')
135
 
        self.assertEqual('', out)
136
 
        self.assertEqual('renamed hello.txt => gutentag.txt\n'
137
 
                         'Committed revision 2.\n',
138
 
                         err)
 
126
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
127
                              'modified hello\.txt\n'
 
128
                              'Committed revision 2 \(1 change made\)\.\n$')
139
129
 
140
130
    def test_verbose_commit_renamed(self):
141
131
        # Verbose commit of renamed file should say so
143
133
        wt.rename_one('hello.txt', 'gutentag.txt')
144
134
        out, err = self.run_bzr('commit -v -m renamed')
145
135
        self.assertEqual('', out)
146
 
        self.assertEqual('renamed hello.txt => gutentag.txt\n'
147
 
                         'Committed revision 2 (1 change made).\n',
148
 
                         err)
 
136
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
137
                              'renamed hello\.txt => gutentag\.txt\n'
 
138
                              'Committed revision 2 \(1 change made\)\.$\n')
149
139
 
150
140
    def test_normal_commit_moved(self):
151
141
        # Verbose commit of file moved to new directory should say just
156
146
        wt.rename_one('hello.txt', 'subdir/hello.txt')
157
147
        out, err = self.run_bzr('commit -m renamed')
158
148
        self.assertEqual('', out)
159
 
        self.assertEqualDiff('added subdir\n'
160
 
                             'renamed hello.txt => subdir/hello.txt\n'
161
 
                             'Committed revision 2.\n',
162
 
                             err)
 
149
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
150
                              'added subdir\n'
 
151
                              'renamed hello\.txt => subdir/hello\.txt\n'
 
152
                              'Committed revision 2\.\n$')
163
153
 
164
154
    def test_verbose_commit_moved(self):
165
155
        # Verbose commit of file moved to new directory should say so
169
159
        wt.rename_one('hello.txt', 'subdir/hello.txt')
170
160
        out, err = self.run_bzr('commit -v -m renamed')
171
161
        self.assertEqual('', out)
172
 
        self.assertEqualDiff('added subdir\n'
173
 
                             'renamed hello.txt => subdir/hello.txt\n'
174
 
                             'Committed revision 2 (2 changes made).\n',
175
 
                             err)
 
162
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
163
                              'added subdir\n'
 
164
                              'renamed hello\.txt => subdir/hello\.txt\n'
 
165
                              'Committed revision 2 \(2 changes made\)\.\n$')
176
166
 
177
167
    def test_normal_commit_with_unknown(self):
178
168
        """Unknown files should not be listed by default in normal output"""
182
172
        wt.add(['hello.txt'])
183
173
        out,err = self.run_bzr('commit -m added')
184
174
        self.assertEqual('', out)
185
 
        self.assertEqual('Committed revision 1 (1 change made).\n',
186
 
                         err)
 
175
        self.assertContainsRe(err, '^Committing revision 1 to ".*"\.\n'
 
176
            'Committed revision 1 \(1 change made\).\n$',)
187
177
 
188
178
    def test_verbose_commit_with_unknown(self):
189
179
        """Unknown files should not be listed by default in verbose output"""
193
183
        wt.add(['hello.txt'])
194
184
        out,err = self.run_bzr('commit -v -m added')
195
185
        self.assertEqual('', out)
196
 
        self.assertEqual('added hello.txt\n'
197
 
                         'Committed revision 1 (1 change made).\n',
198
 
                         err)
 
186
        self.assertContainsRe(err, '^Committing revision 1 to ".*"\.\n'
 
187
            'added hello.txt\n'
 
188
            'Committed revision 1 \(1 change made\).\n$',)
199
189
 
200
190
    def test_normal_commit_with_unchanged(self):
201
191
        """Unchanged files should not be listed by default in normal output"""
206
196
        self.run_bzr("add hello.txt")
207
197
        out,err = self.run_bzr('commit -m added')
208
198
        self.assertEqual('', out)
209
 
        self.assertEqual('added hello.txt\n'
210
 
                         'Committed revision 2.\n',
211
 
                         err)
 
199
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
200
                              'added hello\.txt\n'
 
201
                              'Committed revision 2\.\n$')
212
202
 
213
203
    def test_verbose_commit_with_unchanged(self):
214
204
        """Unchanged files should not be listed by default in verbose output"""
219
209
        tree.add("hello.txt")
220
210
        out,err = self.run_bzr('commit -v -m added')
221
211
        self.assertEqual('', out)
222
 
        self.assertEqual('added hello.txt\n'
223
 
                         'Committed revision 2 (1 change made).\n',
224
 
                         err)
 
212
        self.assertContainsRe(err, '^Committing revision 2 to ".*"\.\n'
 
213
                              'added hello\.txt\n'
 
214
                              'Committed revision 2 \(1 change made\)\.$\n')
 
215
 
 
216
    def test_verbose_commit_includes_master_location(self):
 
217
        """Location of master is displayed when committing to bound branch"""
 
218
        a_tree = self.make_branch_and_tree('a')
 
219
        self.build_tree(['a/b'])
 
220
        a_tree.add('b')
 
221
        a_tree.commit(message='Initial message')
 
222
 
 
223
        b_tree = a_tree.branch.create_checkout('b')
 
224
        expected = "%s/" % (os.path.abspath('a'), )
 
225
        out, err = self.run_bzr('commit -m blah --unchanged', working_dir='b')
 
226
        self.assertEqual(err, 'Committing revision 2 to "%s".\n'
 
227
                         'Committed revision 2.\n' % expected)
225
228
 
226
229
    def test_commit_merge_reports_all_modified_files(self):
227
230
        # the commit command should show all the files that are shown by
274
277
            other_tree.unlock()
275
278
        this_tree.merge_from_branch(other_tree.branch)
276
279
        os.chdir('this')
277
 
        out,err = self.run_bzr('commit -v -m added')
278
 
        os.chdir('..')
 
280
        out,err = self.run_bzr('commit -m added')
279
281
        self.assertEqual('', out)
 
282
        expected = '%s/' % (os.getcwd(), )
280
283
        self.assertEqualDiff(
 
284
            'Committing revision 2 to "%s".\n'
281
285
            'modified filetomodify\n'
282
286
            'added newdir\n'
283
287
            'added newfile\n'
287
291
            'renamed filetorename => renamedfile\n'
288
292
            'deleted dirtoremove\n'
289
293
            'deleted filetoremove\n'
290
 
            'Committed revision 2 (9 changes made).\n',
 
294
            'Committed revision 2.\n' % (expected, ),
291
295
            err)
292
296
 
293
297
    def test_empty_commit_message(self):
444
448
        output, err = self.run_bzr(
445
449
            'commit -v -m hello --fixes=lp:23452 tree/hello.txt')
446
450
        self.assertEqual('', output)
447
 
        self.assertEqual('added hello.txt\n'
448
 
            'Committed revision 1 (1 change made).\n', err)
 
451
        self.assertContainsRe(err, 'Committing revision 1 to ".*"\.\n'
 
452
                              'added hello\.txt\n'
 
453
                              'Committed revision 1 \(1 change made\)\.\n')
449
454
 
450
455
    def test_no_bugs_no_properties(self):
451
456
        """If no bugs are fixed, the bugs property is not set.