Rev 2460: (robertc) Fix bzr --no-plugins selftest which was broken by the help indices patch. (Robert Collins, Martin Pool) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Thu Apr 26 07:21:37 BST 2007


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

------------------------------------------------------------
revno: 2460
revision-id: pqm at pqm.ubuntu.com-20070426062134-r5pvo74u33vke1km
parent: pqm at pqm.ubuntu.com-20070426054238-v6k5ge3z766vaafk
parent: robertc at robertcollins.net-20070426050440-7ktqwywg8sd2eiey
committer: Canonical.com Patch Queue Manager<pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2007-04-26 07:21:34 +0100
message:
  (robertc) Fix bzr --no-plugins selftest which was broken by the help indices patch. (Robert Collins, Martin Pool)
modified:
  bzrlib/tests/test_plugins.py   plugins.py-20050622075746-32002b55e5e943e9
    ------------------------------------------------------------
    revno: 2457.1.1
    merged: robertc at robertcollins.net-20070426050440-7ktqwywg8sd2eiey
    parent: pqm at pqm.ubuntu.com-20070426021942-eutaiob3qgh6kln8
    committer: Robert Collins <robertc at robertcollins.net>
    branch nick: integration
    timestamp: Thu 2007-04-26 15:04:40 +1000
    message:
      (robertc) Fix bzr --no-plugins selftest which was broken by the help indices patch. (Robert Collins, Martin Pool)
=== modified file 'bzrlib/tests/test_plugins.py'
--- a/bzrlib/tests/test_plugins.py	2007-04-20 05:44:37 +0000
+++ b/bzrlib/tests/test_plugins.py	2007-04-26 05:04:40 +0000
@@ -253,14 +253,16 @@
     def test_get_topics_launchpad(self):
         """Searching for 'launchpad' returns the launchpad plugin docstring."""
         index = plugin.PluginsHelpIndex()
-        # if bzr was run with '--no-plugins' we need to manually load the
-        # reference plugin. Its shipped with bzr, and loading at this point
-        # won't add additional tests to run.
-        import bzrlib.plugins.launchpad
-        topics = index.get_topics('launchpad')
-        self.assertEqual(1, len(topics))
-        self.assertIsInstance(topics[0], plugin.ModuleHelpTopic)
-        self.assertEqual(bzrlib.plugins.launchpad, topics[0].module)
+        self.assertFalse(sys.modules.has_key('bzrlib.plugins.get_topics'))
+        demo_module = FakeModule('', 'bzrlib.plugins.get_topics')
+        sys.modules['bzrlib.plugins.get_topics'] = demo_module
+        try:
+            topics = index.get_topics('get_topics')
+            self.assertEqual(1, len(topics))
+            self.assertIsInstance(topics[0], plugin.ModuleHelpTopic)
+            self.assertEqual(demo_module, topics[0].module)
+        finally:
+            del sys.modules['bzrlib.plugins.get_topics']
 
     def test_get_topics_no_topic(self):
         """Searching for something that is not a plugin returns []."""
@@ -277,14 +279,16 @@
     def test_get_topic_with_prefix(self):
         """Searching for plugins/launchpad returns launchpad module help."""
         index = plugin.PluginsHelpIndex()
-        # if bzr was run with '--no-plugins' we need to manually load the
-        # reference plugin. Its shipped with bzr, and loading at this point
-        # won't add additional tests to run.
-        import bzrlib.plugins.launchpad
-        topics = index.get_topics('plugins/launchpad')
-        self.assertEqual(1, len(topics))
-        self.assertIsInstance(topics[0], plugin.ModuleHelpTopic)
-        self.assertEqual(bzrlib.plugins.launchpad, topics[0].module)
+        self.assertFalse(sys.modules.has_key('bzrlib.plugins.get_topics'))
+        demo_module = FakeModule('', 'bzrlib.plugins.get_topics')
+        sys.modules['bzrlib.plugins.get_topics'] = demo_module
+        try:
+            topics = index.get_topics('plugins/get_topics')
+            self.assertEqual(1, len(topics))
+            self.assertIsInstance(topics[0], plugin.ModuleHelpTopic)
+            self.assertEqual(demo_module, topics[0].module)
+        finally:
+            del sys.modules['bzrlib.plugins.get_topics']
 
 
 class FakeModule(object):




More information about the bazaar-commits mailing list