diff options
author | Boris Pavlovic <boris@pavlovic.me> | 2014-11-17 23:58:44 +0400 |
---|---|---|
committer | Boris Pavlovic <boris@pavlovic.me> | 2015-06-24 19:18:33 +0000 |
commit | c2e9a73b3f0ffac4ccc66b37086639dfe6a7d82b (patch) | |
tree | c8d04ee27557ccc579b0349dffe2f6427d371854 | |
parent | bc78823f299747ba1ff660953775a008d3581df0 (diff) | |
download | osprofiler-c2e9a73b3f0ffac4ccc66b37086639dfe6a7d82b.tar.gz |
Various cleanups
Change-Id: I311f694d2e2e92468d3345d0da3f550fffa560ee
-rw-r--r-- | osprofiler/_utils.py | 12 | ||||
-rw-r--r-- | osprofiler/cmd/template.html | 19 | ||||
-rw-r--r-- | osprofiler/profiler.py | 12 | ||||
-rw-r--r-- | osprofiler/web.py | 4 | ||||
-rw-r--r-- | tests/cmd/test_shell.py | 74 |
5 files changed, 52 insertions, 69 deletions
diff --git a/osprofiler/_utils.py b/osprofiler/_utils.py index 02fdcb8..f0c053b 100644 --- a/osprofiler/_utils.py +++ b/osprofiler/_utils.py @@ -61,7 +61,7 @@ def split(text, strip=True): return text.split(",") -def binary_encode(text, encoding='utf-8'): +def binary_encode(text, encoding="utf-8"): """Converts a string of into a binary type using given encoding. Does nothing if text not unicode string. @@ -74,7 +74,7 @@ def binary_encode(text, encoding='utf-8'): raise TypeError("Expected binary or string type") -def binary_decode(data, encoding='utf-8'): +def binary_decode(data, encoding="utf-8"): """Converts a binary type into a text type using given encoding. Does nothing if data is already unicode string. @@ -133,7 +133,7 @@ def signed_unpack(data, hmac_data, hmac_keys): try: contents = json.loads( binary_decode(base64.urlsafe_b64decode(data))) - contents['hmac_key'] = hmac_key + contents["hmac_key"] = hmac_key return contents except Exception: return None @@ -161,12 +161,12 @@ def import_modules_from_package(package): :param: package - Full package name. For example: rally.deploy.engines """ - path = [os.path.dirname(__file__), '..'] + package.split('.') + path = [os.path.dirname(__file__), ".."] + package.split(".") path = os.path.join(*path) for root, dirs, files in os.walk(path): for filename in files: - if filename.startswith('__') or not filename.endswith('.py'): + if filename.startswith("__") or not filename.endswith(".py"): continue new_package = ".".join(root.split(os.sep)).split("....")[1] - module_name = '%s.%s' % (new_package, filename[:-3]) + module_name = "%s.%s" % (new_package, filename[:-3]) __import__(module_name) diff --git a/osprofiler/cmd/template.html b/osprofiler/cmd/template.html index 1b2b532..369c498 100644 --- a/osprofiler/cmd/template.html +++ b/osprofiler/cmd/template.html @@ -10,27 +10,21 @@ <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.10/angular.min.js"></script> - <script src="https://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.11.0.js"></script> - <style> - .trace { min-width: 900px; width: 100%; } - .trace tr.active-true { background-color: #D9EDF7!important; } - .trace tr td { width: 14%; white-space: nowrap; padding: 2px; border-right: 1px solid #eee; - } .trace tr td.details { width: 10%; @@ -43,11 +37,9 @@ width: 10%; font-weight: bold; } - .bold { font-weight: bold; } - .duration { width: 25px; margin: 0px; @@ -55,9 +47,7 @@ background-color: #c6eff3; border-radius: 4px; font-size: 10px; - } - .duration div{ padding-top: 4px; padding-bottom: 4px; @@ -91,13 +81,11 @@ </tr> </table> - <div ng-hide="hide_children"> <div ng-repeat="data in data.children" ng-include="'tree_item_renderer.html'"> </div> </div> </div> - </script> <script> @@ -170,8 +158,7 @@ '<div class="modal-header"> Trace Point Details </div>' + '<div class="modal-body">' + trace_data + '</div>' + '<div class="modal-footer"> <span class="glyphicon glyphicon-cloud </div>' - ) - + ); var modal_instance = $modal.open({ "template": output, @@ -180,7 +167,6 @@ } $scope.tree = [convert_input(OSProfilerData)]; - } </script> @@ -188,9 +174,6 @@ <body> <div ng-controller="ProfilerCtlr"> - <table> - - </table> <table class="trace"> <tr class="bold text-left" style="border-bottom: solid 1px gray"> <td class="level">Levels</td> diff --git a/osprofiler/profiler.py b/osprofiler/profiler.py index b66b4f1..c99a084 100644 --- a/osprofiler/profiler.py +++ b/osprofiler/profiler.py @@ -234,7 +234,7 @@ class _Profiler(object): self._name.append(name) self._trace_stack.append(str(uuid.uuid4())) - self._notify('%s-start' % name, info) + self._notify("%s-start" % name, info) def stop(self, info=None): """Finish latests event. @@ -248,12 +248,12 @@ class _Profiler(object): def _notify(self, name, info): payload = { - 'name': name, - 'base_id': self.get_base_id(), - 'trace_id': self.get_id(), - 'parent_id': self.get_parent_id() + "name": name, + "base_id": self.get_base_id(), + "trace_id": self.get_id(), + "parent_id": self.get_parent_id() } if info: - payload['info'] = info + payload["info"] = info notifier.notify(payload) diff --git a/osprofiler/web.py b/osprofiler/web.py index fe1bb0e..053c132 100644 --- a/osprofiler/web.py +++ b/osprofiler/web.py @@ -22,8 +22,8 @@ from osprofiler import profiler # Trace keys that are required or optional, any other # keys that are present will cause the trace to be rejected... -_REQUIRED_KEYS = ('base_id', 'hmac_key') -_OPTIONAL_KEYS = ('parent_id',) +_REQUIRED_KEYS = ("base_id", "hmac_key") +_OPTIONAL_KEYS = ("parent_id",) def get_trace_id_headers(): diff --git a/tests/cmd/test_shell.py b/tests/cmd/test_shell.py index a6faccd..f372762 100644 --- a/tests/cmd/test_shell.py +++ b/tests/cmd/test_shell.py @@ -30,34 +30,34 @@ class ShellTestCase(test.TestCase): super(ShellTestCase, self).setUp() self.old_environment = os.environ.copy() os.environ = { - 'OS_USERNAME': 'username', - 'OS_USER_ID': 'user_id', - 'OS_PASSWORD': 'password', - 'OS_USER_DOMAIN_ID': 'user_domain_id', - 'OS_USER_DOMAIN_NAME': 'user_domain_name', - 'OS_PROJECT_DOMAIN_ID': 'project_domain_id', - 'OS_PROJECT_DOMAIN_NAME': 'project_domain_name', - 'OS_PROJECT_ID': 'project_id', - 'OS_PROJECT_NAME': 'project_name', - 'OS_TENANT_ID': 'tenant_id', - 'OS_TENANT_NAME': 'tenant_name', - 'OS_AUTH_URL': 'http://127.0.0.1:5000/v3/', - 'OS_AUTH_TOKEN': 'pass', - 'OS_CACERT': '/path/to/cacert', - 'OS_SERVICE_TYPE': 'service_type', - 'OS_ENDPOINT_TYPE': 'public', - 'OS_REGION_NAME': 'test' + "OS_USERNAME": "username", + "OS_USER_ID": "user_id", + "OS_PASSWORD": "password", + "OS_USER_DOMAIN_ID": "user_domain_id", + "OS_USER_DOMAIN_NAME": "user_domain_name", + "OS_PROJECT_DOMAIN_ID": "project_domain_id", + "OS_PROJECT_DOMAIN_NAME": "project_domain_name", + "OS_PROJECT_ID": "project_id", + "OS_PROJECT_NAME": "project_name", + "OS_TENANT_ID": "tenant_id", + "OS_TENANT_NAME": "tenant_name", + "OS_AUTH_URL": "http://127.0.0.1:5000/v3/", + "OS_AUTH_TOKEN": "pass", + "OS_CACERT": "/path/to/cacert", + "OS_SERVICE_TYPE": "service_type", + "OS_ENDPOINT_TYPE": "public", + "OS_REGION_NAME": "test" } self.ceiloclient = mock.MagicMock() - sys.modules['ceilometerclient'] = self.ceiloclient - self.addCleanup(sys.modules.pop, 'ceilometerclient', None) - ceilo_modules = ['client', 'exc', 'shell'] + sys.modules["ceilometerclient"] = self.ceiloclient + self.addCleanup(sys.modules.pop, "ceilometerclient", None) + ceilo_modules = ["client", "exc", "shell"] for module in ceilo_modules: - sys.modules['ceilometerclient.%s' % module] = getattr( + sys.modules["ceilometerclient.%s" % module] = getattr( self.ceiloclient, module) self.addCleanup( - sys.modules.pop, 'ceilometerclient.%s' % module, None) + sys.modules.pop, "ceilometerclient.%s" % module, None) def tearDown(self): super(ShellTestCase, self).tearDown() @@ -66,9 +66,9 @@ class ShellTestCase(test.TestCase): @mock.patch("sys.stdout", six.StringIO()) @mock.patch("osprofiler.cmd.shell.OSProfilerShell") def test_shell_main(self, mock_shell): - mock_shell.side_effect = exc.CommandError('some_message') + mock_shell.side_effect = exc.CommandError("some_message") shell.main() - self.assertEqual('some_message\n', sys.stdout.getvalue()) + self.assertEqual("some_message\n", sys.stdout.getvalue()) def run_command(self, cmd): shell.OSProfilerShell(cmd.split()) @@ -80,8 +80,8 @@ class ShellTestCase(test.TestCase): self.assertEqual(str(actual_error), expected_message) else: raise ValueError( - 'Expected: `osprofiler.cmd.exc.CommandError` is raised with ' - 'message: "%s".' % expected_message) + "Expected: `osprofiler.cmd.exc.CommandError` is raised with " + "message: '%s'." % expected_message) def test_username_is_not_presented(self): os.environ.pop("OS_USERNAME") @@ -117,13 +117,13 @@ class ShellTestCase(test.TestCase): self._test_with_command_error("trace show fake-uuid", msg) def test_trace_show_ceilometrclient_is_missed(self): - sys.modules['ceilometerclient'] = None - sys.modules['ceilometerclient.client'] = None - sys.modules['ceilometerclient.exc'] = None - sys.modules['ceilometerclient.shell'] = None + sys.modules["ceilometerclient"] = None + sys.modules["ceilometerclient.client"] = None + sys.modules["ceilometerclient.exc"] = None + sys.modules["ceilometerclient.shell"] = None self.assertRaises(ImportError, shell.main, - 'trace show fake_uuid'.split()) + "trace show fake_uuid".split()) def test_trace_show_unauthorized(self): class FakeHTTPUnauthorized(Exception): @@ -169,8 +169,8 @@ class ShellTestCase(test.TestCase): def test_trace_show_in_json(self, mock_notifications, mock_get): mock_get.return_value = "some notification" notifications = { - 'info': { - 'started': 0, 'finished': 0, 'name': 'total'}, 'children': []} + "info": { + "started": 0, "finished": 0, "name": "total"}, "children": []} mock_notifications.return_value = notifications self.run_command("trace show fake_id --json") @@ -184,8 +184,8 @@ class ShellTestCase(test.TestCase): mock_get.return_value = "some notification" notifications = { - 'info': { - 'started': 0, 'finished': 0, 'name': 'total'}, 'children': []} + "info": { + "started": 0, "finished": 0, "name": "total"}, "children": []} mock_notifications.return_value = notifications #NOTE(akurilin): to simplify assert statement, html-template should be @@ -216,8 +216,8 @@ class ShellTestCase(test.TestCase): def test_trace_show_write_to_file(self, mock_notifications, mock_get): mock_get.return_value = "some notification" notifications = { - 'info': { - 'started': 0, 'finished': 0, 'name': 'total'}, 'children': []} + "info": { + "started": 0, "finished": 0, "name": "total"}, "children": []} mock_notifications.return_value = notifications with mock.patch("osprofiler.cmd.commands.open", |