Merge "Update functionality of coverage extension."
This commit is contained in:
commit
7b124b8872
@ -20,7 +20,7 @@ from novaclient import base
|
||||
|
||||
class Coverage(base.Resource):
|
||||
def __repr__(self):
|
||||
return "<Coverage: %s>" % self.name
|
||||
return "<Coverage: %s>" % self.name
|
||||
|
||||
|
||||
class CoverageManager(base.ManagerWithFind):
|
||||
@ -41,7 +41,7 @@ class CoverageManager(base.ManagerWithFind):
|
||||
url = '/os-coverage/action'
|
||||
return self.api.client.post(url, body=body)
|
||||
|
||||
def report(self, filename, xml=False):
|
||||
def report(self, filename, xml=False, html=True):
|
||||
body = {
|
||||
'report': {
|
||||
'file': filename,
|
||||
@ -49,6 +49,8 @@ class CoverageManager(base.ManagerWithFind):
|
||||
}
|
||||
if xml:
|
||||
body['report']['xml'] = True
|
||||
elif html:
|
||||
body['report']['html'] = True
|
||||
self.run_hooks('modify_body_for_action', body)
|
||||
url = '/os-coverage/action'
|
||||
return self.api.client.post(url, body=body)
|
||||
|
@ -2311,8 +2311,8 @@ def do_coverage_start(cs, args):
|
||||
|
||||
def do_coverage_stop(cs, args):
|
||||
"""Stop Nova coverage reporting"""
|
||||
cs.coverage.stop()
|
||||
print "Coverage collection stopped"
|
||||
out = cs.coverage.stop()
|
||||
print "Coverage data file path: %s" % out[-1]['path']
|
||||
|
||||
|
||||
@utils.arg('filename', metavar='<filename>', help='report filename')
|
||||
|
@ -1349,8 +1349,10 @@ class FakeHTTPClient(base_client.HTTPClient):
|
||||
return (202, {}, None)
|
||||
|
||||
def post_os_coverage_action(self, body, **kw):
|
||||
if 'report' not in body:
|
||||
if 'start' in body:
|
||||
return (200, {}, None)
|
||||
elif 'stop' in body:
|
||||
return (200, {}, {'path': '/tmp/tmpdir/'})
|
||||
else:
|
||||
return (200, {}, {
|
||||
'path': '/tmp/tmpdir/' + body['report']['file']
|
||||
|
@ -34,7 +34,8 @@ class CoverageTest(utils.TestCase):
|
||||
|
||||
def test_stop_coverage(self):
|
||||
c = cs.coverage.stop()
|
||||
cs.assert_called('POST', '/os-coverage/action')
|
||||
return_dict = {'path': '/tmp/tmpdir/report'}
|
||||
cs.assert_called_anytime('POST', '/os-coverage/action')
|
||||
|
||||
def test_report_coverage(self):
|
||||
c = cs.coverage.report('report')
|
||||
|
@ -650,7 +650,7 @@ class ShellTest(utils.TestCase):
|
||||
|
||||
def test_coverage_stop(self):
|
||||
self.run_command('coverage-stop')
|
||||
self.assert_called('POST', '/os-coverage/action')
|
||||
self.assert_called_anytime('POST', '/os-coverage/action')
|
||||
|
||||
def test_coverage_report(self):
|
||||
self.run_command('coverage-report report')
|
||||
|
Loading…
x
Reference in New Issue
Block a user