Rev 3218: (Lukas) give a better error when using version-info --custom without in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Wed Feb 6 16:38:11 GMT 2008


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

------------------------------------------------------------
revno: 3218
revision-id:pqm at pqm.ubuntu.com-20080206163804-6zyjbbfpsm8txfdm
parent: pqm at pqm.ubuntu.com-20080206054043-tfqag35l6bujprea
parent: john at arbash-meinel.com-20080206145439-q1m9smjx5n1hw3cx
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Wed 2008-02-06 16:38:04 +0000
message:
  (Lukas) give a better error when using version-info --custom without
  	--template
modified:
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/errors.py               errors.py-20050309040759-20512168c4e14fbd
  bzrlib/tests/blackbox/test_version_info.py test_bb_version_info.py-20051228204928-91711c6559d952f7
  bzrlib/tests/test_version_info.py test_version_info.py-20051228204928-2c364e30b702b41b
  bzrlib/version_info_formats/format_custom.py format_custom.py-20071029100350-ajovqhbpb5khf6gu-1
    ------------------------------------------------------------
    revno: 3207.1.2
    revision-id:john at arbash-meinel.com-20080206145439-q1m9smjx5n1hw3cx
    parent: lalinsky at gmail.com-20080130155433-pkw453ha5axm9pjv
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: jam-integration
    timestamp: Wed 2008-02-06 08:54:39 -0600
    message:
      NEWS
    modified:
      NEWS                           NEWS-20050323055033-4e00b5db738777ff
    ------------------------------------------------------------
    revno: 3207.1.1
    revision-id:lalinsky at gmail.com-20080130155433-pkw453ha5axm9pjv
    parent: pqm at pqm.ubuntu.com-20080130100306-p0uqnxt3hodnyiej
    committer: Lukáš Lalinský <lalinsky at gmail.com>
    branch nick: no-template
    timestamp: Wed 2008-01-30 16:54:33 +0100
    message:
      Raise a proper error when 'version-info --custom' is used without a template
    modified:
      bzrlib/errors.py               errors.py-20050309040759-20512168c4e14fbd
      bzrlib/tests/blackbox/test_version_info.py test_bb_version_info.py-20051228204928-91711c6559d952f7
      bzrlib/tests/test_version_info.py test_version_info.py-20051228204928-2c364e30b702b41b
      bzrlib/version_info_formats/format_custom.py format_custom.py-20071029100350-ajovqhbpb5khf6gu-1
=== modified file 'NEWS'
--- a/NEWS	2008-02-06 01:45:28 +0000
+++ b/NEWS	2008-02-06 16:38:04 +0000
@@ -75,6 +75,9 @@
 
     * Cleanly handle connection errors in smart protocol version two, the same
       way as they are handled by version one.  (Andrew Bennetts)
+
+    * Clearer error when ``version-info --custom`` is used without
+      ``--template`` (Lukáš Lalinský)
       
     * List possible values for BZR_SSH environment variable in env-variables
       help topic. (Alexander Belchenko, #181842)

=== modified file 'bzrlib/errors.py'
--- a/bzrlib/errors.py	2008-01-25 10:46:10 +0000
+++ b/bzrlib/errors.py	2008-02-06 16:38:04 +0000
@@ -2520,6 +2520,11 @@
         self.name = name
 
 
+class NoTemplate(BzrError):
+
+    _fmt = 'No template specified.'
+
+
 class UnableCreateSymlink(BzrError):
 
     _fmt = 'Unable to create symlink %(path_str)son this platform'

=== modified file 'bzrlib/tests/blackbox/test_version_info.py'
--- a/bzrlib/tests/blackbox/test_version_info.py	2007-06-26 20:32:49 +0000
+++ b/bzrlib/tests/blackbox/test_version_info.py	2008-01-30 15:54:33 +0000
@@ -134,3 +134,8 @@
         txt = self.run_bzr('version-info --format python branch')[0]
 
         self.assertContainsRe(txt, 'version_info = {')
+
+    def test_custom_without_template(self):
+        wt = self.make_branch_and_tree('branch')
+        out, err = self.run_bzr('version-info --custom', retcode=3)
+        self.assertContainsRe(err, r'ERROR: No template specified\.')

=== modified file 'bzrlib/tests/test_version_info.py'
--- a/bzrlib/tests/test_version_info.py	2007-12-21 15:05:25 +0000
+++ b/bzrlib/tests/test_version_info.py	2008-01-30 15:54:33 +0000
@@ -22,6 +22,7 @@
 import sys
 
 from bzrlib import (
+    errors,
     symbol_versioning,
     tests,
     version_info_formats,
@@ -257,6 +258,11 @@
         self.assertEqual(val, 'clean: 0')
         os.remove('branch/c')
 
+    def test_custom_without_template(self):
+        builder = CustomVersionInfoBuilder(None)
+        sio = StringIO()
+        self.assertRaises(errors.NoTemplate, builder.generate, sio)
+
 
 class TestBuilder(version_info_formats.VersionInfoBuilder):
     pass

=== modified file 'bzrlib/version_info_formats/format_custom.py'
--- a/bzrlib/version_info_formats/format_custom.py	2007-12-17 17:23:21 +0000
+++ b/bzrlib/version_info_formats/format_custom.py	2008-01-30 15:54:33 +0000
@@ -79,6 +79,9 @@
     """Create a version file based on a custom template."""
 
     def generate(self, to_file):
+        if self._template is None:
+            raise errors.NoTemplate()
+
         info = Template()
         info.add('build_date', create_date_str())
         info.add('branch_nick', self._branch.nick)




More information about the bazaar-commits mailing list