)]}'
{"tripleoclient/tests/v1/test_container_image.py":[{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"6ce1ea7b988deffef2bd14d5fc27a58439d9eb2c","unresolved":false,"context_lines":[{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @mock.patch(\u0027tripleo_common.image.image_uploader.ImageUploadManager\u0027)"},{"line_number":89,"context_line":"    def test_oserror(self, mock_manager):"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"        # mock manager object"},{"line_number":92,"context_line":"        mock_mgr \u003d mock.Mock()"},{"line_number":93,"context_line":"        mock_manager.return_value \u003d mock_mgr"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fb8cfa7_b24d5d3c","line":90,"updated":"2019-06-26 16:00:17.000000000","message":"You\u0027re missing an arglist/verifylist/parsed_args section here.\n\n        arglist \u003d [\u0027-y\u0027, \u0027foo\u0027]\n        verifylist \u003d [(\u0027yes\u0027, True),\n                      (\u0027image_to_delete\u0027, \u0027foo\u0027)]\n        parsed_args \u003d self.check_parser(self.cmd, arglist, verifylist)","commit_id":"3f3ce4cdc1219173a7d42304b5557bd1bafa6847"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"6ce1ea7b988deffef2bd14d5fc27a58439d9eb2c","unresolved":false,"context_lines":[{"line_number":106,"context_line":"        mock_session \u003d mock.Mock()"},{"line_number":107,"context_line":"        mock_uploader.authenticate.return_value \u003d mock_session"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"        mock_manager.side_effect \u003d [mock_uploader.delete.OSError(\u0027Errno 13\u0027), True]"},{"line_number":110,"context_line":"        self.assertEqual("},{"line_number":111,"context_line":"            mock_uploader.delete(\u0027bad_delete\u0027))"},{"line_number":112,"context_line":"        calls \u003d [mock.call(\u0027bad_delete\u0027, timeout\u003d30)]"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fb8cfa7_1256a9cf","line":109,"range":{"start_line":109,"start_character":8,"end_line":109,"end_character":83},"updated":"2019-06-26 16:00:17.000000000","message":"This should be a mock on the uploader.delete call.  So it should be like:\n\n        mock_uploader.delete.side_effect \u003d OSError(\u0027Errno 13\u0027)","commit_id":"3f3ce4cdc1219173a7d42304b5557bd1bafa6847"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"6ce1ea7b988deffef2bd14d5fc27a58439d9eb2c","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        mock_uploader.authenticate.return_value \u003d mock_session"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"        mock_manager.side_effect \u003d [mock_uploader.delete.OSError(\u0027Errno 13\u0027), True]"},{"line_number":110,"context_line":"        self.assertEqual("},{"line_number":111,"context_line":"            mock_uploader.delete(\u0027bad_delete\u0027))"},{"line_number":112,"context_line":"        calls \u003d [mock.call(\u0027bad_delete\u0027, timeout\u003d30)]"},{"line_number":113,"context_line":"        mock_manager.assert_has_calls(calls)"},{"line_number":114,"context_line":"        self.assertEqual(mock_get.call_count, 1)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fb8cfa7_b2431d3f","line":111,"range":{"start_line":110,"start_character":0,"end_line":111,"end_character":47},"updated":"2019-06-26 16:00:17.000000000","message":"This should be a self.assertRaises.\n\n        self.assertRaises(oscexc.CommandError,\n                          self.cmd.take_action,\n                          parsed_args)","commit_id":"3f3ce4cdc1219173a7d42304b5557bd1bafa6847"},{"author":{"_account_id":14985,"name":"Alex Schultz","email":"aschultz@next-development.com","username":"mwhahaha"},"change_message_id":"6ce1ea7b988deffef2bd14d5fc27a58439d9eb2c","unresolved":false,"context_lines":[{"line_number":109,"context_line":"        mock_manager.side_effect \u003d [mock_uploader.delete.OSError(\u0027Errno 13\u0027), True]"},{"line_number":110,"context_line":"        self.assertEqual("},{"line_number":111,"context_line":"            mock_uploader.delete(\u0027bad_delete\u0027))"},{"line_number":112,"context_line":"        calls \u003d [mock.call(\u0027bad_delete\u0027, timeout\u003d30)]"},{"line_number":113,"context_line":"        mock_manager.assert_has_calls(calls)"},{"line_number":114,"context_line":"        self.assertEqual(mock_get.call_count, 1)"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"class TestContainerImageList(TestPluginV1):"}],"source_content_type":"text/x-python","patch_set":9,"id":"9fb8cfa7_d2f811c5","line":114,"range":{"start_line":112,"start_character":0,"end_line":114,"end_character":48},"updated":"2019-06-26 16:00:17.000000000","message":"Then the call we\u0027re really interested in is the delete call.  So it\u0027d be something like....\n\n        calls \u003d [mock.call(\u0027foo\u0027, session\u003dmock_session)]\n        mock_uploader.delete.assert_has_calls(calls)\n        self.assertEqual(mock_uploader.delete.call_count, 1)","commit_id":"3f3ce4cdc1219173a7d42304b5557bd1bafa6847"}]}
