Rev 2794: (dmwatkins, mbp) Clean up test_c* in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Tue Sep 4 04:58:01 BST 2007


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 2794
revision-id: pqm at pqm.ubuntu.com-20070904035759-iv4xl6d7ez69txba
parent: pqm at pqm.ubuntu.com-20070904024108-wogizoajm6k1ba6w
parent: mbp at sourcefrog.net-20070904032359-tngyoyokezr23rcs
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Tue 2007-09-04 04:57:59 +0100
message:
  (dmwatkins,mbp) Clean up test_c*
modified:
  bzrlib/tests/blackbox/test_cat.py test_cat.py-20051201162916-f0937e4e19ea24b3
  bzrlib/tests/blackbox/test_commit.py test_commit.py-20060212094538-ae88fc861d969db0
  bzrlib/tests/blackbox/test_conflicts.py test_conflicts.py-20060228151432-9723ebb925b999cf
    ------------------------------------------------------------
    revno: 2738.4.7
    merged: mbp at sourcefrog.net-20070904032359-tngyoyokezr23rcs
    parent: d.m.watkins at warwick.ac.uk-20070830100731-ie6j2bpvwjjb2ci8
    committer: Martin Pool <mbp at sourcefrog.net>
    branch nick: test-cleanup
    timestamp: Tue 2007-09-04 13:23:59 +1000
    message:
      Fix up calls to run_bzr from test_cat
    ------------------------------------------------------------
    revno: 2738.4.6
    merged: d.m.watkins at warwick.ac.uk-20070830100731-ie6j2bpvwjjb2ci8
    parent: d.m.watkins at warwick.ac.uk-20070823175911-ksf5gmng9jwxttw9
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix_blackbox_test_c
    timestamp: Thu 2007-08-30 12:07:31 +0200
    message:
      Rewrapped lines longer than 79 characters.
    ------------------------------------------------------------
    revno: 2738.4.5
    merged: d.m.watkins at warwick.ac.uk-20070823175911-ksf5gmng9jwxttw9
    parent: d.m.watkins at warwick.ac.uk-20070821192512-sfd2x2hap603dtm5
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix_blackbox_test_c
    timestamp: Thu 2007-08-23 19:59:11 +0200
    message:
      Fixed whitespace issues.
    ------------------------------------------------------------
    revno: 2738.4.4
    merged: d.m.watkins at warwick.ac.uk-20070821192512-sfd2x2hap603dtm5
    parent: d.m.watkins at warwick.ac.uk-20070821191803-907c0jrlxxzf5a4r
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix_blackbox_test_c
    timestamp: Tue 2007-08-21 21:25:12 +0200
    message:
      Import cleanup in blackbox.test_commit.
    ------------------------------------------------------------
    revno: 2738.4.3
    merged: d.m.watkins at warwick.ac.uk-20070821191803-907c0jrlxxzf5a4r
    parent: d.m.watkins at warwick.ac.uk-20070821172750-fimr82kgotcbnw1h
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix_blackbox_test_c
    timestamp: Tue 2007-08-21 21:18:03 +0200
    message:
      Converted run_bzr to run_bzr_subprocess where appropriate in cat.
    ------------------------------------------------------------
    revno: 2738.4.2
    merged: d.m.watkins at warwick.ac.uk-20070821172750-fimr82kgotcbnw1h
    parent: d.m.watkins at warwick.ac.uk-20070821171838-suz1gujem6r81m4x
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix_blackbox_test_c
    timestamp: Tue 2007-08-21 19:27:50 +0200
    message:
      Now test for conflicts where appropriate.
    ------------------------------------------------------------
    revno: 2738.4.1
    merged: d.m.watkins at warwick.ac.uk-20070821171838-suz1gujem6r81m4x
    parent: pqm at pqm.ubuntu.com-20070821044713-ttnupbvhlsbwh1he
    parent: d.m.watkins at warwick.ac.uk-20070803135009-vyon8io79mpfdtxh
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix_blackbox_test_c
    timestamp: Tue 2007-08-21 19:18:38 +0200
    message:
      Merged original changes and tweaked cat.
    ------------------------------------------------------------
    revno: 2664.13.3
    merged: d.m.watkins at warwick.ac.uk-20070803135009-vyon8io79mpfdtxh
    parent: d.m.watkins at warwick.ac.uk-20070803134829-ybs0e3qbytx80d48
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix-blackbox-tests
    timestamp: Fri 2007-08-03 14:50:09 +0100
    message:
      tests.blackbox.test_conflicts now uses internals where appropriate.
    ------------------------------------------------------------
    revno: 2664.13.2
    merged: d.m.watkins at warwick.ac.uk-20070803134829-ybs0e3qbytx80d48
    parent: d.m.watkins at warwick.ac.uk-20070803132324-aw393u1t7htvltvw
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix-blackbox-tests
    timestamp: Fri 2007-08-03 14:48:29 +0100
    message:
      tests.blackbox.test_commit now uses internals where appropriate.
    ------------------------------------------------------------
    revno: 2664.13.1
    merged: d.m.watkins at warwick.ac.uk-20070803132324-aw393u1t7htvltvw
    parent: pqm at pqm.ubuntu.com-20070731122244-f1jemfecukeevugw
    committer: Daniel Watkins <D.M.Watkins at warwick.ac.uk>
    branch nick: fix-blackbox-tests
    timestamp: Fri 2007-08-03 14:23:24 +0100
    message:
      tests.blackbox.test_cat now uses internals where appropriate.
=== modified file 'bzrlib/tests/blackbox/test_cat.py'
--- a/bzrlib/tests/blackbox/test_cat.py	2007-08-03 02:52:23 +0000
+++ b/bzrlib/tests/blackbox/test_cat.py	2007-09-04 03:23:59 +0000
@@ -26,40 +26,45 @@
 class TestCat(TestCaseWithTransport):
 
     def test_cat(self):
-
-        def bzr(*args, **kwargs):
-            return self.run_bzr_subprocess(list(args), **kwargs)[0]
-
-        os.mkdir('branch')
+        tree = self.make_branch_and_tree('branch')
+        self.build_tree_contents([('branch/a', 'foo\n')])
+        tree.add('a')
         os.chdir('branch')
-        bzr('init')
-        open('a', 'wb').write('foo\n')
-        bzr('add', 'a')
-
         # 'bzr cat' without an option should cat the last revision
-        bzr('cat', 'a', retcode=3)
-
-        bzr('commit', '-m', '1')
-        open('a', 'wb').write('baz\n')
-
-        self.assertEquals(bzr('cat', 'a'), 'foo\n')
-
-        bzr('commit', '-m', '2')
-        self.assertEquals(bzr('cat', 'a'), 'baz\n')
-        self.assertEquals(bzr('cat', 'a', '-r', '1'), 'foo\n')
-        self.assertEquals(bzr('cat', 'a', '-r', '-1'), 'baz\n')
-
-        rev_id = bzr('revision-history').strip().split('\n')[-1]
-
-        self.assertEquals(bzr('cat', 'a', '-r', 'revid:%s' % rev_id), 'baz\n')
-        
+        self.run_bzr(['cat', 'a'], retcode=3)
+
+        tree.commit(message='1')
+        self.build_tree_contents([('a', 'baz\n')])
+
+        # We use run_bzr_subprocess rather than run_bzr here so that we can
+        # test mangling of line-endings on Windows.
+        self.assertEquals(self.run_bzr_subprocess(['cat', 'a'])[0], 'foo\n')
+
+        tree.commit(message='2')
+        self.assertEquals(self.run_bzr_subprocess(['cat', 'a'])[0], 'baz\n')
+        self.assertEquals(self.run_bzr_subprocess(
+            ['cat', 'a', '-r', '1'])[0],
+            'foo\n')
+        self.assertEquals(self.run_bzr_subprocess(
+            ['cat', 'a', '-r', '-1'])[0],
+            'baz\n')
+
+        rev_id = tree.branch.last_revision()
+
+        self.assertEquals(self.run_bzr_subprocess(
+            ['cat', 'a', '-r', 'revid:%s' % rev_id])[0],
+            'baz\n')
+
         os.chdir('..')
-        
-        self.assertEquals(bzr('cat', 'branch/a', '-r', 'revno:1:branch'),
-                          'foo\n')
-        bzr('cat', 'a', retcode=3)
-        bzr('cat', 'a', '-r', 'revno:1:branch-that-does-not-exist', retcode=3)
-        
+
+        self.assertEquals(self.run_bzr_subprocess(
+            ['cat', 'branch/a', '-r', 'revno:1:branch'])[0],
+            'foo\n')
+        self.run_bzr(['cat', 'a'], retcode=3)
+        self.run_bzr(
+                ['cat', 'a', '-r', 'revno:1:branch-that-does-not-exist'],
+                retcode=3)
+
     def test_cat_different_id(self):
         """'cat' works with old and new files"""
         tree = self.make_branch_and_tree('.')
@@ -89,15 +94,16 @@
                            'cat b-tree --name-from-revision')
 
         # get to the old file automatically
-        out, err = self.run_bzr('cat d-rev')
+        out, err = self.run_bzr_subprocess('cat d-rev')
         self.assertEqual('bar\n', out)
         self.assertEqual('', err)
 
-        out, err = self.run_bzr('cat a-rev-tree --name-from-revision')
+        out, err = \
+                self.run_bzr_subprocess('cat a-rev-tree --name-from-revision')
         self.assertEqual('foo\n', out)
         self.assertEqual('', err)
 
-        out, err = self.run_bzr('cat a-rev-tree')
+        out, err = self.run_bzr_subprocess('cat a-rev-tree')
         self.assertEqual('baz\n', out)
         self.assertEqual('', err)
 
@@ -108,7 +114,7 @@
         wt.commit('Making sure there is a basis_tree available')
 
         url = self.get_readonly_url() + '/README'
-        out, err = self.run_bzr(['cat', url])
+        out, err = self.run_bzr_subprocess(['cat', url])
         self.assertEqual('contents of README\n', out)
 
     def test_cat_no_working_tree(self):
@@ -119,6 +125,6 @@
         wt.branch.bzrdir.destroy_workingtree()
 
         url = self.get_readonly_url() + '/README'
-        out, err = self.run_bzr(['cat', url])
+        out, err = self.run_bzr_subprocess(['cat', url])
         self.assertEqual('contents of README\n', out)
-        
+

=== modified file 'bzrlib/tests/blackbox/test_commit.py'
--- a/bzrlib/tests/blackbox/test_commit.py	2007-08-21 12:32:42 +0000
+++ b/bzrlib/tests/blackbox/test_commit.py	2007-09-04 03:57:59 +0000
@@ -18,17 +18,12 @@
 """Tests for the commit CLI of bzr."""
 
 import os
-import re
-import sys
 
 from bzrlib import (
     ignores,
     )
-from bzrlib.branch import Branch
 from bzrlib.bzrdir import BzrDir
-from bzrlib.errors import BzrCommandError
 from bzrlib.tests.blackbox import ExternalBase
-from bzrlib.workingtree import WorkingTree
 
 
 class TestCommit(ExternalBase):
@@ -36,7 +31,7 @@
     def test_05_empty_commit(self):
         """Commit of tree with no versioned files should fail"""
         # If forced, it should succeed, but this is not tested here.
-        self.run_bzr("init")
+        self.make_branch_and_tree('.')
         self.build_tree(['hello.txt'])
         out,err = self.run_bzr('commit -m empty', retcode=3)
         self.assertEqual('', out)
@@ -45,7 +40,7 @@
 
     def test_commit_success(self):
         """Successful commit should not leave behind a bzr-commit-* file"""
-        self.run_bzr("init")
+        self.make_branch_and_tree('.')
         self.run_bzr('commit --unchanged -m message')
         self.assertEqual('', self.run_bzr('unknowns')[0])
 
@@ -55,30 +50,29 @@
 
     def test_commit_with_path(self):
         """Commit tree with path of root specified"""
-        self.run_bzr('init a')
+        a_tree = self.make_branch_and_tree('a')
         self.build_tree(['a/a_file'])
-        self.run_bzr('add a/a_file')
+        a_tree.add('a_file')
         self.run_bzr(['commit', '-m', 'first commit', 'a'])
 
-        self.run_bzr('branch a b')
+        b_tree = a_tree.bzrdir.sprout('b').open_workingtree()
         self.build_tree_contents([('b/a_file', 'changes in b')])
         self.run_bzr(['commit', '-m', 'first commit in b', 'b'])
 
         self.build_tree_contents([('a/a_file', 'new contents')])
         self.run_bzr(['commit', '-m', 'change in a', 'a'])
 
-        os.chdir('b')
-        self.run_bzr('merge ../a', retcode=1) # will conflict
-        os.chdir('..')
+        b_tree.merge_from_branch(a_tree.branch)
+        self.assertEqual(len(b_tree.conflicts()), 1)
         self.run_bzr('resolved b/a_file')
         self.run_bzr(['commit', '-m', 'merge into b', 'b'])
 
 
     def test_10_verbose_commit(self):
         """Add one file and examine verbose commit output"""
-        self.run_bzr("init")
+        tree = self.make_branch_and_tree('.')
         self.build_tree(['hello.txt'])
-        self.run_bzr("add hello.txt")
+        tree.add("hello.txt")
         out,err = self.run_bzr('commit -m added')
         self.assertEqual('', out)
         self.assertEqual('added hello.txt\n'
@@ -141,11 +135,11 @@
 
     def test_verbose_commit_with_unchanged(self):
         """Unchanged files should not be listed by default in verbose output"""
-        self.run_bzr("init")
+        tree = self.make_branch_and_tree('.')
         self.build_tree(['hello.txt', 'unchanged.txt'])
-        self.run_bzr('add unchanged.txt')
+        tree.add('unchanged.txt')
         self.run_bzr('commit -m unchanged unchanged.txt')
-        self.run_bzr("add hello.txt")
+        tree.add("hello.txt")
         out,err = self.run_bzr('commit -m added')
         self.assertEqual('', out)
         self.assertEqual('added hello.txt\n'
@@ -189,10 +183,11 @@
             other_tree.rename_one('dirtorename', 'renameddir')
             other_tree.rename_one('dirtoreparent', 'renameddir/reparenteddir')
             other_tree.rename_one('filetorename', 'renamedfile')
-            other_tree.rename_one('filetoreparent', 'renameddir/reparentedfile')
+            other_tree.rename_one('filetoreparent',
+                                  'renameddir/reparentedfile')
             other_tree.remove(['dirtoremove', 'filetoremove'])
             self.build_tree_contents([
-                ('other/newdir/', ),
+                ('other/newdir/',),
                 ('other/filetomodify', 'new content'),
                 ('other/newfile', 'new file content')])
             other_tree.add('newfile')
@@ -219,9 +214,9 @@
             err)
 
     def test_empty_commit_message(self):
-        self.run_bzr("init")
-        file('foo.c', 'wt').write('int main() {}')
-        self.run_bzr('add foo.c')
+        tree = self.make_branch_and_tree('.')
+        self.build_tree_contents([('foo.c', 'int main() {}')])
+        tree.add('foo.c')
         self.run_bzr('commit -m ""', retcode=3)
 
     def test_unsupported_encoding_commit_message(self):
@@ -236,17 +231,13 @@
     def test_other_branch_commit(self):
         # this branch is to ensure consistent behaviour, whether we're run
         # inside a branch, or not.
-        os.mkdir('empty_branch')
-        os.chdir('empty_branch')
-        self.run_bzr('init')
-        os.mkdir('branch')
-        os.chdir('branch')
-        self.run_bzr('init')
-        file('foo.c', 'wt').write('int main() {}')
-        file('bar.c', 'wt').write('int main() {}')
-        os.chdir('..')
-        self.run_bzr('add branch/foo.c')
-        self.run_bzr('add branch')
+        outer_tree = self.make_branch_and_tree('.')
+        inner_tree = self.make_branch_and_tree('branch')
+        self.build_tree_contents([
+            ('branch/foo.c', 'int main() {}'),
+            ('branch/bar.c', 'int main() {}')])
+        inner_tree.add('foo.c')
+        inner_tree.add('bar.c')
         # can't commit files in different trees; sane error
         self.run_bzr('commit -m newstuff branch/foo.c .', retcode=3)
         self.run_bzr('commit -m newstuff branch/foo.c')
@@ -256,19 +247,19 @@
     def test_out_of_date_tree_commit(self):
         # check we get an error code and a clear message committing with an out
         # of date checkout
-        self.make_branch_and_tree('branch')
+        tree = self.make_branch_and_tree('branch')
         # make a checkout
-        self.run_bzr('checkout --lightweight branch checkout')
+        checkout = tree.branch.create_checkout('checkout', lightweight=True)
         # commit to the original branch to make the checkout out of date
-        self.run_bzr('commit --unchanged -m message branch')
+        tree.commit('message branch', allow_pointless=True)
         # now commit to the checkout should emit
         # ERROR: Out of date with the branch, 'bzr update' is suggested
         output = self.run_bzr('commit --unchanged -m checkout_message '
                              'checkout', retcode=3)
         self.assertEqual(output,
                          ('',
-                          "bzr: ERROR: Working tree is out of date, please run "
-                          "'bzr update'.\n"))
+                          "bzr: ERROR: Working tree is out of date, please "
+                          "run 'bzr update'.\n"))
 
     def test_local_commit_unbound(self):
         # a --local commit on an unbound branch is an error
@@ -284,14 +275,14 @@
         # past. This is a user story reported to fail in bug #43959 where 
         # a merge done in a checkout (using the update command) failed to
         # commit correctly.
-        self.run_bzr('init trunk')
+        trunk = self.make_branch_and_tree('trunk')
 
-        self.run_bzr('checkout trunk u1')
+        u1 = trunk.branch.create_checkout('u1')
         self.build_tree_contents([('u1/hosts', 'initial contents')])
-        self.run_bzr('add u1/hosts')
+        u1.add('hosts')
         self.run_bzr('commit -m add-hosts u1')
 
-        self.run_bzr('checkout trunk u2')
+        u2 = trunk.branch.create_checkout('u2')
         self.build_tree_contents([('u2/hosts', 'altered in u2')])
         self.run_bzr('commit -m checkin-from-u2 u2')
 

=== modified file 'bzrlib/tests/blackbox/test_conflicts.py'
--- a/bzrlib/tests/blackbox/test_conflicts.py	2007-06-27 19:13:50 +0000
+++ b/bzrlib/tests/blackbox/test_conflicts.py	2007-08-23 17:59:11 +0000
@@ -29,30 +29,31 @@
 
     def setUp(self):
         super(ExternalBase, self).setUp()
-        try:
-            os.mkdir('a')
-        except:
-            raise os.getcwd()
+        a_tree = self.make_branch_and_tree('a')
+        self.build_tree_contents([
+            ('a/myfile', 'contentsa\n'),
+            ('a/my_other_file', 'contentsa\n'),
+            ('a/mydir/',),
+            ])
+        a_tree.add('myfile')
+        a_tree.add('my_other_file')
+        a_tree.add('mydir')
+        a_tree.commit(message="new")
+        b_tree = a_tree.bzrdir.sprout('b').open_workingtree()
+        self.build_tree_contents([
+            ('b/myfile', 'contentsb\n'),
+            ('b/my_other_file', 'contentsb\n'),
+            ])
+        b_tree.rename_one('mydir', 'mydir2')
+        b_tree.commit(message="change")
+        self.build_tree_contents([
+            ('a/myfile', 'contentsa2\n'),
+            ('a/my_other_file', 'contentsa2\n'),
+            ])
+        a_tree.rename_one('mydir', 'mydir3')
+        a_tree.commit(message='change')
+        a_tree.merge_from_branch(b_tree.branch)
         os.chdir('a')
-        self.run_bzr('init')
-        file('myfile', 'wb').write('contentsa\n')
-        file('my_other_file', 'wb').write('contentsa\n')
-        os.mkdir('mydir')
-        self.run_bzr('add')
-        self.run_bzr('commit -m new')
-        os.chdir('..')
-        self.run_bzr('branch a b')
-        os.chdir('b')
-        file('myfile', 'wb').write('contentsb\n')
-        file('my_other_file', 'wb').write('contentsb\n')
-        self.run_bzr('mv mydir mydir2')
-        self.run_bzr('commit -m change')
-        os.chdir('../a')
-        file('myfile', 'wb').write('contentsa2\n')
-        file('my_other_file', 'wb').write('contentsa2\n')
-        self.run_bzr('mv mydir mydir3')
-        self.run_bzr('commit -m change')
-        self.run_bzr('merge ../b', retcode=1)
 
     def test_conflicts(self):
         conflicts, errs = self.run_bzr('conflicts')




More information about the bazaar-commits mailing list