diff --git a/src/allmydata/test/test_storage.py b/src/allmydata/test/test_storage.py index 0d09678cf..aa0bd29eb 100644 --- a/src/allmydata/test/test_storage.py +++ b/src/allmydata/test/test_storage.py @@ -1731,6 +1731,12 @@ class LeaseCrawler(unittest.TestCase, pollmixin.PollMixin, WebRenderingMixin): "(0 mutable / 0 immutable), 0 B (0 B / 0 B) " "but expiration was not enabled", s) d.addCallback(_check_html) + d.addCallback(lambda ign: self.render_json(webstatus)) + def _check_json(json): + data = simplejson.loads(json) + self.failUnless("lease-checker" in data) + self.failUnless("lease-checker-progress" in data) + d.addCallback(_check_json) return d def backdate_lease(self, sf, renew_secret, new_expire_time): diff --git a/src/allmydata/web/storage.py b/src/allmydata/web/storage.py index ca1775faa..d14e42950 100644 --- a/src/allmydata/web/storage.py +++ b/src/allmydata/web/storage.py @@ -29,6 +29,7 @@ class StorageStatus(rend.Page): d = {"stats": self.storage.get_stats(), "bucket-counter": self.storage.bucket_counter.get_state(), "lease-checker": self.storage.lease_checker.get_state(), + "lease-checker-progress": self.storage.lease_checker.get_progress(), } return simplejson.dumps(d, indent=1) + "\n"