[Pkg-bazaar-commits] ./bzr/unstable r974: - start adding tests for commit in subdir

Martin Pool mbp at sourcefrog.net
Fri Apr 10 08:21:38 UTC 2009


------------------------------------------------------------
revno: 974
committer: Martin Pool <mbp at sourcefrog.net>
timestamp: Sat 2005-07-23 11:06:37 -0300
message:
  - start adding tests for commit in subdir
  - change _parse_master_args to not strip off argv[0] 
    so that it's easier to call these from white-box
    tests
modified:
  bzrlib/add.py
  bzrlib/commands.py
  bzrlib/selftest/versioning.py
-------------- next part --------------
=== modified file 'bzrlib/add.py'
--- a/bzrlib/add.py	2005-06-28 03:02:31 +0000
+++ b/bzrlib/add.py	2005-07-23 14:06:37 +0000
@@ -14,9 +14,6 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
-import os, sys
-import bzrlib
-
 from trace import mutter, note
 
 def glob_expand_for_win32(file_list):
@@ -40,13 +37,18 @@
     This is designed more towards DWIM for humans than API simplicity.
     For the specific behaviour see the help for cmd_add().
     """
+    import os
+    import sys
     from bzrlib.osutils import quotefn, kind_marker
     from bzrlib.errors import BadFileKindError, ForbiddenFileError
+    import bzrlib.branch
+    import bzrlib.osutils
 
-    assert file_list
-    
     if sys.platform == 'win32':
         file_list = glob_expand_for_win32(file_list)
+        
+    if not file_list:
+        file_list = ['.']
     
     user_list = file_list[:]
     assert not isinstance(file_list, basestring)
@@ -102,3 +104,6 @@
         if verbose:
             note('added %d' % count)
         b._write_inventory(inv)
+    else:
+        print "nothing new to add"
+        # should this return 1 to the shell?

=== modified file 'bzrlib/commands.py'
--- a/bzrlib/commands.py	2005-07-23 14:02:38 +0000
+++ b/bzrlib/commands.py	2005-07-23 14:06:37 +0000
@@ -204,6 +204,8 @@
             from warnings import warn
             warn("No help message set for %r" % self)
         self.status = self.run(**cmdargs)
+        if self.status is None:
+            self.status = 0
 
     
     def run(self):
@@ -1673,28 +1675,28 @@
                     This is also a non-master option.
         --help      Run help and exit, also a non-master option (I think that should stay, though)
 
-    >>> argv, opts = _parse_master_args(['bzr', '--test'])
+    >>> argv, opts = _parse_master_args(['--test'])
     Traceback (most recent call last):
     ...
     BzrCommandError: Invalid master option: 'test'
-    >>> argv, opts = _parse_master_args(['bzr', '--version', 'command'])
+    >>> argv, opts = _parse_master_args(['--version', 'command'])
     >>> print argv
     ['command']
     >>> print opts['version']
     True
-    >>> argv, opts = _parse_master_args(['bzr', '--profile', 'command', '--more-options'])
+    >>> argv, opts = _parse_master_args(['--profile', 'command', '--more-options'])
     >>> print argv
     ['command', '--more-options']
     >>> print opts['profile']
     True
-    >>> argv, opts = _parse_master_args(['bzr', '--no-plugins', 'command'])
+    >>> argv, opts = _parse_master_args(['--no-plugins', 'command'])
     >>> print argv
     ['command']
     >>> print opts['no-plugins']
     True
     >>> print opts['profile']
     False
-    >>> argv, opts = _parse_master_args(['bzr', 'command', '--profile'])
+    >>> argv, opts = _parse_master_args(['command', '--profile'])
     >>> print argv
     ['command', '--profile']
     >>> print opts['profile']

=== modified file 'bzrlib/selftest/versioning.py'
--- a/bzrlib/selftest/versioning.py	2005-07-06 05:24:29 +0000
+++ b/bzrlib/selftest/versioning.py	2005-07-23 14:06:37 +0000
@@ -26,11 +26,11 @@
         from bzrlib.commands import run_bzr
         import os
 
-        run_bzr(['bzr', 'init'])
-        run_bzr(['bzr', 'mkdir', 'foo'])
+        run_bzr(['init'])
+        run_bzr(['mkdir', 'foo'])
         self.assert_(os.path.isdir('foo'))
 
-        self.assertRaises(OSError, run_bzr, ['bzr', 'mkdir', 'foo'])
+        self.assertRaises(OSError, run_bzr, ['mkdir', 'foo'])
 
         from bzrlib.diff import compare_trees, TreeDelta
         from bzrlib.branch import Branch
@@ -64,6 +64,26 @@
                           b.add,
                           'foo/hello')
         
+        
+class SubdirCommit(InTempDir):
+    def runTest(self):
+        """Various commits from a subdirectory"""
+        
+        from bzrlib.branch import Branch
+        from bzrlib.commands import run_bzr
+        import os
+        
+        b = Branch('.', init=True)
+        self.build_tree(['src/', 'src/foo.c', 'README'])
+        
+        self.assertEqual(sorted(b.unknowns()),
+                         ['README', 'src'])
+        
+        self.assertEqual(run_bzr(['version']), 0)
+        
+        self.assertEqual(run_bzr(['add']), 0)
+        
+        
 
 
 TEST_CLASSES = [



More information about the Pkg-bazaar-commits mailing list