web: don't break status page when there is no helper running

This commit is contained in:
Brian Warner 2008-04-14 23:42:20 -07:00
parent a0fa21e442
commit 6de2a0794f
2 changed files with 15 additions and 4 deletions

View File

@ -371,9 +371,15 @@ class Client(node.Node, testutil.PollMixin):
return watcher.list_recent_retrieve()
def list_active_helper_statuses(self):
helper = self.getServiceNamed("helper")
try:
helper = self.getServiceNamed("helper")
except KeyError:
return []
return helper.get_active_upload_statuses()
def list_recent_helper_statuses(self):
helper = self.getServiceNamed("helper")
try:
helper = self.getServiceNamed("helper")
except KeyError:
return []
return helper.get_recent_upload_statuses()

View File

@ -1347,8 +1347,13 @@ class SystemTest(testutil.SignalMixin, testutil.PollMixin, unittest.TestCase):
d.addCallback(_got_helper_status_json)
# and check that client[3] (which uses a helper but does not run one
# itself) doesn't explode when you ask for its helper status with
# t=json
# itself) doesn't explode when you ask for its status
d.addCallback(lambda res: getPage(self.helper_webish_url + "status/"))
def _got_non_helper_status(res):
self.failUnless("Upload and Download Status" in res)
d.addCallback(_got_non_helper_status)
# or for helper status with t=json
d.addCallback(lambda res:
getPage(self.helper_webish_url + "helper_status?t=json"))
def _got_non_helper_status_json(res):