)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":20378,"name":"Trevor McCasland","email":"TM2086@att.com","username":"twm2016"},"change_message_id":"22cf1681dd5e6ec6348007d0fb185dc49c105f20","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add module-instance-count command"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added a --count_only flag to the call for module instances"},{"line_number":10,"context_line":"to return a summary of the applied instances"},{"line_number":11,"context_line":"based on the MD5 of the module (this is most useful"},{"line_number":12,"context_line":"for live_update modules, to see which ones haven\u0027t been"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5a74a57a_03038c0e","line":9,"range":{"start_line":9,"start_character":8,"end_line":9,"end_character":20},"updated":"2016-11-29 21:53:32.000000000","message":"wouldn\u0027t it make more sense to call this option --summary or --md5_summary","commit_id":"c3cfcf84e5eba7985dbb3ad2efe675d0f1a1ebee"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"d063da60dd318d2310c1fd6a83e218d0f06a3d51","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add module-instance-count command"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added a --count_only flag to the call for module instances"},{"line_number":10,"context_line":"to return a summary of the applied instances"},{"line_number":11,"context_line":"based on the MD5 of the module (this is most useful"},{"line_number":12,"context_line":"for live_update modules, to see which ones haven\u0027t been"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5a74a57a_58c3ab8a","line":9,"range":{"start_line":9,"start_character":8,"end_line":9,"end_character":20},"in_reply_to":"5a74a57a_03038c0e","updated":"2016-11-30 01:41:11.000000000","message":"But it\u0027s only a count.  What does it summarize?","commit_id":"c3cfcf84e5eba7985dbb3ad2efe675d0f1a1ebee"}],"troveclient/tests/fakes.py":[{"author":{"_account_id":20378,"name":"Trevor McCasland","email":"TM2086@att.com","username":"twm2016"},"change_message_id":"22cf1681dd5e6ec6348007d0fb185dc49c105f20","unresolved":false,"context_lines":[{"line_number":490,"context_line":"        return (200, {}, {\"modules\": [{\"module\": {}}]})"},{"line_number":491,"context_line":""},{"line_number":492,"context_line":"    def get_modules_4321_instances(self, **kw):"},{"line_number":493,"context_line":"        if kw.get(\u0027count_only\u0027, False):"},{"line_number":494,"context_line":"            return self.get_instance_counts()"},{"line_number":495,"context_line":"        return self.get_instances()"},{"line_number":496,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_c3c5150b","line":493,"range":{"start_line":493,"start_character":30,"end_line":493,"end_character":37},"updated":"2016-11-29 21:53:32.000000000","message":"No need for the False argument here. \n\n``get`` returns None if it fails to get and that will be evaluated to False which is equivalent in this case.","commit_id":"c3cfcf84e5eba7985dbb3ad2efe675d0f1a1ebee"}],"troveclient/tests/test_modules.py":[{"author":{"_account_id":20378,"name":"Trevor McCasland","email":"TM2086@att.com","username":"twm2016"},"change_message_id":"22cf1681dd5e6ec6348007d0fb185dc49c105f20","unresolved":false,"context_lines":[{"line_number":124,"context_line":"        resp.status_code \u003d 500"},{"line_number":125,"context_line":"        self.assertRaises(Exception, self.modules.delete, self.module_name)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    def test_instances(self):"},{"line_number":128,"context_line":"        page_mock \u003d mock.Mock()"},{"line_number":129,"context_line":"        self.modules._paginated \u003d page_mock"},{"line_number":130,"context_line":"        limit \u003d \"test-limit\""},{"line_number":131,"context_line":"        marker \u003d \"test-marker\""},{"line_number":132,"context_line":"        expected_query \u003d {\u0027include_clustered\u0027: True}"},{"line_number":133,"context_line":"        self.modules.instances(self.module_name, limit, marker,"},{"line_number":134,"context_line":"                               include_clustered\u003dTrue)"},{"line_number":135,"context_line":"        page_mock.assert_called_with(\"/modules/mod_1/instances\","},{"line_number":136,"context_line":"                                     \"instances\", limit, marker,"},{"line_number":137,"context_line":"                                     query_strings\u003dexpected_query)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def test_instance_count(self):"},{"line_number":140,"context_line":"        page_mock \u003d mock.Mock()"},{"line_number":141,"context_line":"        self.modules._paginated \u003d page_mock"},{"line_number":142,"context_line":"        limit \u003d \"test-limit\""},{"line_number":143,"context_line":"        marker \u003d \"test-marker\""},{"line_number":144,"context_line":"        expected_query \u003d {\u0027include_clustered\u0027: True,"},{"line_number":145,"context_line":"                          \u0027count_only\u0027: True}"},{"line_number":146,"context_line":"        self.modules.instances(self.module_name, limit, marker,"},{"line_number":147,"context_line":"                               include_clustered\u003dTrue, count_only\u003dTrue)"},{"line_number":148,"context_line":"        page_mock.assert_called_with(\"/modules/mod_1/instances\","},{"line_number":149,"context_line":"                                     \"instances\", limit, marker,"},{"line_number":150,"context_line":"                                     query_strings\u003dexpected_query)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_e863ce3f","line":150,"range":{"start_line":127,"start_character":4,"end_line":150,"end_character":66},"updated":"2016-11-29 21:53:32.000000000","message":"You can refactor the code by passing in expected_query like this:\n\ndef _test_instances(self, expected_query\u003dNone):\n    page_mock \u003d mock.Mock()\n    self.modules._paginated \u003d page_mock\n    limit \u003d \"test-limit\"\n    marker \u003d \"test-marker\"\n    if not expected_query:\n        expected_query \u003d {}\n    self.modules.instances(self.module_name, limit, marker,\n                           **expected_query)\n    page_mock.assert_called_with(\"/modules/mod_1/instances\",\n                                 \"instances\", limit, marker,\n                                 query_strings\u003dexpected_query)\n\ndef test_instance_count(self):\n    expected_query \u003d {\u0027include_clustered\u0027: True,\n                      \u0027count_only\u0027: True}\n    self._test_instances(expected_query)\n\ndef test_instances(self):\n    expected_query \u003d {\u0027include_clustered\u0027: True}\n    self._test_instances(expected_query)","commit_id":"c3cfcf84e5eba7985dbb3ad2efe675d0f1a1ebee"},{"author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"change_message_id":"d063da60dd318d2310c1fd6a83e218d0f06a3d51","unresolved":false,"context_lines":[{"line_number":124,"context_line":"        resp.status_code \u003d 500"},{"line_number":125,"context_line":"        self.assertRaises(Exception, self.modules.delete, self.module_name)"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    def test_instances(self):"},{"line_number":128,"context_line":"        page_mock \u003d mock.Mock()"},{"line_number":129,"context_line":"        self.modules._paginated \u003d page_mock"},{"line_number":130,"context_line":"        limit \u003d \"test-limit\""},{"line_number":131,"context_line":"        marker \u003d \"test-marker\""},{"line_number":132,"context_line":"        expected_query \u003d {\u0027include_clustered\u0027: True}"},{"line_number":133,"context_line":"        self.modules.instances(self.module_name, limit, marker,"},{"line_number":134,"context_line":"                               include_clustered\u003dTrue)"},{"line_number":135,"context_line":"        page_mock.assert_called_with(\"/modules/mod_1/instances\","},{"line_number":136,"context_line":"                                     \"instances\", limit, marker,"},{"line_number":137,"context_line":"                                     query_strings\u003dexpected_query)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def test_instance_count(self):"},{"line_number":140,"context_line":"        page_mock \u003d mock.Mock()"},{"line_number":141,"context_line":"        self.modules._paginated \u003d page_mock"},{"line_number":142,"context_line":"        limit \u003d \"test-limit\""},{"line_number":143,"context_line":"        marker \u003d \"test-marker\""},{"line_number":144,"context_line":"        expected_query \u003d {\u0027include_clustered\u0027: True,"},{"line_number":145,"context_line":"                          \u0027count_only\u0027: True}"},{"line_number":146,"context_line":"        self.modules.instances(self.module_name, limit, marker,"},{"line_number":147,"context_line":"                               include_clustered\u003dTrue, count_only\u003dTrue)"},{"line_number":148,"context_line":"        page_mock.assert_called_with(\"/modules/mod_1/instances\","},{"line_number":149,"context_line":"                                     \"instances\", limit, marker,"},{"line_number":150,"context_line":"                                     query_strings\u003dexpected_query)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5a74a57a_f808f7db","line":150,"range":{"start_line":127,"start_character":4,"end_line":150,"end_character":66},"in_reply_to":"5a74a57a_e863ce3f","updated":"2016-11-30 01:41:11.000000000","message":"This is just test code, but whatever ...","commit_id":"c3cfcf84e5eba7985dbb3ad2efe675d0f1a1ebee"}]}
