From 2e7d1af50878b28d35231cde1a8315585694562b Mon Sep 17 00:00:00 2001 From: liu-sheng Date: Mon, 15 Jun 2015 17:16:59 +0800 Subject: Explicit error for wrong resource metadata format When creating sample with wrong resource metadata format, Ceilometer CLI will return a ValueError about json decoding, this change provide a more explicit error info. Change-Id: I18e757ddb319fbf0ffad13c07528355785ea5e9a Closes-Bug: 1465193 --- ceilometerclient/tests/unit/v2/test_shell.py | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'ceilometerclient/tests') diff --git a/ceilometerclient/tests/unit/v2/test_shell.py b/ceilometerclient/tests/unit/v2/test_shell.py index 663cf24..c4a61a8 100644 --- a/ceilometerclient/tests/unit/v2/test_shell.py +++ b/ceilometerclient/tests/unit/v2/test_shell.py @@ -576,6 +576,16 @@ class ShellSampleCreateCommandTest(utils.BaseTestCase): +-------------------+---------------------------------------------+ ''', sys.stdout.getvalue()) + def test_sample_create_with_invalid_resource_metadata(self): + self.args.resource_metadata = 'foo=bar' + with mock.patch('ceilometerclient.exc.CommandError') as e: + e.return_value = exc.BaseException() + self.assertRaises(exc.BaseException, + ceilometer_shell.do_sample_create, + self.cc, self.args) + e.assert_called_with('Invalid resource metadata, it should be a' + ' json string, like: \'{"foo":"bar"}\'') + class ShellSampleCreateListCommandTest(utils.BaseTestCase): -- cgit v1.2.1