)]}'
{"tempest/tests/cmd/test_run.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a78b0c5d43fecc2622d5c749ff9e046624d67766","unresolved":false,"context_lines":[{"line_number":233,"context_line":"                            \u0027--regex\u0027, \u0027fail\u0027], 1)"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"    def test_tempest_run_parallel(self):"},{"line_number":236,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"},{"line_number":237,"context_line":"                            \u0027--parallel\u0027], 0)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"    def test_tempest_run_serial(self):"},{"line_number":240,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_8bff7c64","line":237,"range":{"start_line":236,"start_character":0,"end_line":237,"end_character":45},"updated":"2019-03-01 03:40:56.000000000","message":"Thans for adding these. But I am concernd that what we are verifying here? as unit test I expect we should at least check same param is being sent out to lower layer of test runner, stestr in tempest run case.\n\ncurrent test can still pass if we do not remove the --parallel param but change the code not to pass the same to stestr.","commit_id":"767a281a1b6e90b53cf607943a520272d4cfe512"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"7b0260fa94c4b9a6bc8f5c76531aa181f528b22a","unresolved":false,"context_lines":[{"line_number":233,"context_line":"                            \u0027--regex\u0027, \u0027fail\u0027], 1)"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"    def test_tempest_run_parallel(self):"},{"line_number":236,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"},{"line_number":237,"context_line":"                            \u0027--parallel\u0027], 0)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"    def test_tempest_run_serial(self):"},{"line_number":240,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_e4daede6","line":237,"range":{"start_line":236,"start_character":0,"end_line":237,"end_character":45},"in_reply_to":"9fdfeff1_86ff7364","updated":"2019-03-01 16:00:08.000000000","message":"I mean, you need to stub the stesr\u0027s run_command() and check the value of serial param accordingly. \n\n- https://github.com/openstack/tempest/blob/2cc8de817db6ea527171e9582d42785e777ec205/tempest/cmd/run.py#L174","commit_id":"767a281a1b6e90b53cf607943a520272d4cfe512"},{"author":{"_account_id":27078,"name":"Manik Bindlish","email":"manikbindlish19@gmail.com","username":"manik"},"change_message_id":"ca1b2ec94adc10acb5687f4bd20077f81f6ead31","unresolved":false,"context_lines":[{"line_number":233,"context_line":"                            \u0027--regex\u0027, \u0027fail\u0027], 1)"},{"line_number":234,"context_line":""},{"line_number":235,"context_line":"    def test_tempest_run_parallel(self):"},{"line_number":236,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"},{"line_number":237,"context_line":"                            \u0027--parallel\u0027], 0)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"    def test_tempest_run_serial(self):"},{"line_number":240,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_86ff7364","line":237,"range":{"start_line":236,"start_character":0,"end_line":237,"end_character":45},"in_reply_to":"9fdfeff1_8bff7c64","updated":"2019-03-01 04:51:52.000000000","message":"@gmann seems i am unable to parse whole things correctly, would be great if you elaborate a bit more.","commit_id":"767a281a1b6e90b53cf607943a520272d4cfe512"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a78b0c5d43fecc2622d5c749ff9e046624d67766","unresolved":false,"context_lines":[{"line_number":237,"context_line":"                            \u0027--parallel\u0027], 0)"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"    def test_tempest_run_serial(self):"},{"line_number":240,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"},{"line_number":241,"context_line":"                            \u0027--serial\u0027], 0)"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"    def test_tempest_run_subunit(self):"},{"line_number":244,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_2bfa1074","line":241,"range":{"start_line":240,"start_character":0,"end_line":241,"end_character":43},"updated":"2019-03-01 03:40:56.000000000","message":"ditto","commit_id":"767a281a1b6e90b53cf607943a520272d4cfe512"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a78b0c5d43fecc2622d5c749ff9e046624d67766","unresolved":false,"context_lines":[{"line_number":242,"context_line":""},{"line_number":243,"context_line":"    def test_tempest_run_subunit(self):"},{"line_number":244,"context_line":"        self.assertRunExit([\u0027tempest\u0027, \u0027run\u0027, \u0027--regex\u0027, \u0027passing\u0027,"},{"line_number":245,"context_line":"                            \u0027--subunit\u0027], 0)"},{"line_number":246,"context_line":""},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"class TestConfigPathCheck(base.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_4bf51482","line":245,"range":{"start_line":245,"start_character":0,"end_line":245,"end_character":44},"updated":"2019-03-01 03:40:56.000000000","message":"ditto","commit_id":"767a281a1b6e90b53cf607943a520272d4cfe512"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"72990dd8490df4c52aa1a088048da0be5a76664c","unresolved":false,"context_lines":[{"line_number":432,"context_line":"        parsed_args.config_file \u003d \u0027\u0027"},{"line_number":433,"context_line":"        parsed_args.parallel \u003d False"},{"line_number":434,"context_line":""},{"line_number":435,"context_line":"        with mock.patch(\u0027stestr.commands.run_command\u0027) as m:"},{"line_number":436,"context_line":"            m.return_value \u003d 0"},{"line_number":437,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":438,"context_line":"            m.assert_called()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_6a9d9364","line":435,"updated":"2019-03-15 01:09:34.000000000","message":"Usually it is best to add autospec\u003dTrue after a mock, but not strictly necessary, e.g.:\n\n    with mock.patch(\u0027stestr.commands.run_command\u0027, autospec\u003dTrue):\n        ...","commit_id":"80c13ec9f9cd15e30068275fa632bdeeb806abe4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"72990dd8490df4c52aa1a088048da0be5a76664c","unresolved":false,"context_lines":[{"line_number":435,"context_line":"        with mock.patch(\u0027stestr.commands.run_command\u0027) as m:"},{"line_number":436,"context_line":"            m.return_value \u003d 0"},{"line_number":437,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":438,"context_line":"            m.assert_called()"},{"line_number":439,"context_line":"        mock_init_state.assert_called()"},{"line_number":440,"context_line":""},{"line_number":441,"context_line":"    @mock.patch(\u0027tempest.cmd.run.TempestRun._init_state\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_0aadef99","line":438,"range":{"start_line":438,"start_character":14,"end_line":438,"end_character":27},"updated":"2019-03-15 01:09:34.000000000","message":"I would go a step further and do:\n\n     m.assert_called_once_with(filters\u003dNone, subunit_out\u003dparsed_args.subunit, serial\u003dTrue, concurrency\u003dparsed_args.concurrency,  blacklist_file\u003dparsed_args.blacklist_file,  whitelist_file\u003dparsed_args.whitelist_file, black_regex\u003dparsed_args.black_regex,  load_list\u003dparsed_args.load_list, combine\u003dparsed_args.combine)\n\nIf I\u0027ve misinterpreted what filters should be then it could also be mock.ANY.\n\nDitto below.","commit_id":"80c13ec9f9cd15e30068275fa632bdeeb806abe4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f472f64c102058d20f598e6a968ec3058ef037df","unresolved":false,"context_lines":[{"line_number":435,"context_line":"        with mock.patch(\u0027stestr.commands.run_command\u0027) as m:"},{"line_number":436,"context_line":"            m.return_value \u003d 0"},{"line_number":437,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":438,"context_line":"            m.assert_called()"},{"line_number":439,"context_line":"        mock_init_state.assert_called()"},{"line_number":440,"context_line":""},{"line_number":441,"context_line":"    @mock.patch(\u0027tempest.cmd.run.TempestRun._init_state\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_1b52103c","line":438,"range":{"start_line":438,"start_character":14,"end_line":438,"end_character":27},"in_reply_to":"5fc1f717_0aadef99","updated":"2019-03-16 02:20:39.000000000","message":"+1, that is the verification i asked in PS1. In this test where you are passing parsed_args.parallel \u003d False, you should check serial\u003dFalse in assert check as mentioned by felipe.","commit_id":"80c13ec9f9cd15e30068275fa632bdeeb806abe4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f472f64c102058d20f598e6a968ec3058ef037df","unresolved":false,"context_lines":[{"line_number":453,"context_line":"        with mock.patch(\u0027stestr.commands.run_command\u0027) as m:"},{"line_number":454,"context_line":"            m.return_value \u003d 0"},{"line_number":455,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":456,"context_line":"            m.assert_called()"},{"line_number":457,"context_line":""},{"line_number":458,"context_line":"    @mock.patch(\u0027tempest.cmd.run.TempestRun._init_state\u0027)"},{"line_number":459,"context_line":"    def test_tempest_run_subunit(self, mock_init_state):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_7b62340c","line":456,"range":{"start_line":456,"start_character":0,"end_line":456,"end_character":29},"updated":"2019-03-16 02:20:39.000000000","message":"here you can check with serial\u003dTrue because you are passing parsed_args.parallel \u003d True","commit_id":"80c13ec9f9cd15e30068275fa632bdeeb806abe4"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"f4a5bf6e2d890a34dcb02c95f131e2cf42b102f9","unresolved":false,"context_lines":[{"line_number":472,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":473,"context_line":"            m.assert_called()"},{"line_number":474,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":475,"context_line":"            m.assert_called()"}],"source_content_type":"text/x-python","patch_set":2,"id":"dfbec78f_5587cfd8","line":475,"updated":"2019-05-02 23:52:14.000000000","message":"+1","commit_id":"80c13ec9f9cd15e30068275fa632bdeeb806abe4"},{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"72990dd8490df4c52aa1a088048da0be5a76664c","unresolved":false,"context_lines":[{"line_number":471,"context_line":"            m.return_value \u003d 0"},{"line_number":472,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":473,"context_line":"            m.assert_called()"},{"line_number":474,"context_line":"            self.assertEqual(0, tempest_run.take_action(parsed_args))"},{"line_number":475,"context_line":"            m.assert_called()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_ca928757","line":475,"range":{"start_line":474,"start_character":12,"end_line":475,"end_character":29},"updated":"2019-03-15 01:09:34.000000000","message":"This looks like copy/paste?","commit_id":"80c13ec9f9cd15e30068275fa632bdeeb806abe4"}]}
