)]}'
{"tempest/cmd/init.py":[{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"459a29de7a1cdf35dd206dbd602e1b7f3a12c716","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            os.path.dirname(os.path.dirname(os.path.dirname(__file__))))"},{"line_number":39,"context_line":"        discover_path \u003d os.path.join("},{"line_number":40,"context_line":"            os.path.join(top_level_path, \u0027tempest\u0027), \u0027test_discover\u0027)"},{"line_number":41,"context_line":"        testr_conf \u003d \"\"\"[DEFAULT]"},{"line_number":42,"context_line":"test_command\u003dOS_STDOUT_CAPTURE\u003d${OS_STDOUT_CAPTURE:-1} \\\\"},{"line_number":43,"context_line":"             OS_STDERR_CAPTURE\u003d${OS_STDERR_CAPTURE:-1} \\\\"},{"line_number":44,"context_line":"             OS_TEST_TIMEOUT\u003d${OS_TEST_TIMEOUT:-500} \\\\"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_df3e828b","line":41,"updated":"2015-07-01 18:44:20.000000000","message":"I think we should define this variable before class.\n\n    TESTR_CONF \u003d \"\"\"[DEFAULT]\n    test_command\u003dOS_STDOUT_CAPTURE\u003d${OS_STDOUT_CAPTURE:-1} \\\\\n                 OS_STDERR_CAPTURE\u003d${OS_STDERR_CAPTURE:-1} \\\\\n                 OS_TEST_TIMEOUT\u003d${OS_TEST_TIMEOUT:-500} \\\\\n                 ${PYTHON:-python} -m subunit.run discover -t %s %s $LISTOPT $IDOPTION\n    test_id_option\u003d--load-list $IDFILE\n    test_list_option\u003d--list\n    group_regex\u003d([^\\.]*\\.)*\n    \"\"\"\n    ...\n\n    testr_conf \u003d TESTR_CONF % (top_level_path, discover_path)\n    ...","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"a04c05fcabd461f489466789e062bd46f9a42e31","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            os.path.dirname(os.path.dirname(os.path.dirname(__file__))))"},{"line_number":39,"context_line":"        discover_path \u003d os.path.join("},{"line_number":40,"context_line":"            os.path.join(top_level_path, \u0027tempest\u0027), \u0027test_discover\u0027)"},{"line_number":41,"context_line":"        testr_conf \u003d \"\"\"[DEFAULT]"},{"line_number":42,"context_line":"test_command\u003dOS_STDOUT_CAPTURE\u003d${OS_STDOUT_CAPTURE:-1} \\\\"},{"line_number":43,"context_line":"             OS_STDERR_CAPTURE\u003d${OS_STDERR_CAPTURE:-1} \\\\"},{"line_number":44,"context_line":"             OS_TEST_TIMEOUT\u003d${OS_TEST_TIMEOUT:-500} \\\\"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_7ad560b7","line":41,"in_reply_to":"ba3cc151_2e548252","updated":"2015-07-06 20:34:10.000000000","message":"Yes, it was just legibility.","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"28d16e856fb27fcc8ad1042c9f329820bb880506","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            os.path.dirname(os.path.dirname(os.path.dirname(__file__))))"},{"line_number":39,"context_line":"        discover_path \u003d os.path.join("},{"line_number":40,"context_line":"            os.path.join(top_level_path, \u0027tempest\u0027), \u0027test_discover\u0027)"},{"line_number":41,"context_line":"        testr_conf \u003d \"\"\"[DEFAULT]"},{"line_number":42,"context_line":"test_command\u003dOS_STDOUT_CAPTURE\u003d${OS_STDOUT_CAPTURE:-1} \\\\"},{"line_number":43,"context_line":"             OS_STDERR_CAPTURE\u003d${OS_STDERR_CAPTURE:-1} \\\\"},{"line_number":44,"context_line":"             OS_TEST_TIMEOUT\u003d${OS_TEST_TIMEOUT:-500} \\\\"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_3834c1f9","line":41,"in_reply_to":"ba3cc151_7ad560b7","updated":"2015-07-06 21:04:58.000000000","message":"Ok, I\u0027ll factor this into the next respin. I just wasn\u0027t sure of the motivation.","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"8c0bc0feb11926bcc0ccd62ab0305898764a7fca","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            os.path.dirname(os.path.dirname(os.path.dirname(__file__))))"},{"line_number":39,"context_line":"        discover_path \u003d os.path.join("},{"line_number":40,"context_line":"            os.path.join(top_level_path, \u0027tempest\u0027), \u0027test_discover\u0027)"},{"line_number":41,"context_line":"        testr_conf \u003d \"\"\"[DEFAULT]"},{"line_number":42,"context_line":"test_command\u003dOS_STDOUT_CAPTURE\u003d${OS_STDOUT_CAPTURE:-1} \\\\"},{"line_number":43,"context_line":"             OS_STDERR_CAPTURE\u003d${OS_STDERR_CAPTURE:-1} \\\\"},{"line_number":44,"context_line":"             OS_TEST_TIMEOUT\u003d${OS_TEST_TIMEOUT:-500} \\\\"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_2e548252","line":41,"in_reply_to":"ba3cc151_df3e828b","updated":"2015-07-06 18:53:53.000000000","message":"Is there any particular reason? Is it just legibility? \n\nFrom my perspecitve making it globabl on\u0027y helps if it were to be reused or for better spacing, ie the lines would go over 80 chars with any indents.","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"459a29de7a1cdf35dd206dbd602e1b7f3a12c716","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            # Set local lock_dir in tempest conf"},{"line_number":63,"context_line":"            if not config_parse.has_section(\u0027oslo_concurrency\u0027):"},{"line_number":64,"context_line":"                config_parse.add_section(\u0027oslo_concurrency\u0027)"},{"line_number":65,"context_line":"            config_parse.set(\u0027oslo_concurrency\u0027, \u0027lock_path\u0027, str(lock_dir))"},{"line_number":66,"context_line":"            # Set local log_dir in tempest conf"},{"line_number":67,"context_line":"            config_parse.set(\u0027DEFAULT\u0027, \u0027log_dir\u0027, str(log_dir))"},{"line_number":68,"context_line":"            # Set default log filename to tempest.log"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_5f411237","line":65,"updated":"2015-07-01 18:44:20.000000000","message":"Isn\u0027t lock_dir a string? Why use str()?","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"a04c05fcabd461f489466789e062bd46f9a42e31","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            # Set local lock_dir in tempest conf"},{"line_number":63,"context_line":"            if not config_parse.has_section(\u0027oslo_concurrency\u0027):"},{"line_number":64,"context_line":"                config_parse.add_section(\u0027oslo_concurrency\u0027)"},{"line_number":65,"context_line":"            config_parse.set(\u0027oslo_concurrency\u0027, \u0027lock_path\u0027, str(lock_dir))"},{"line_number":66,"context_line":"            # Set local log_dir in tempest conf"},{"line_number":67,"context_line":"            config_parse.set(\u0027DEFAULT\u0027, \u0027log_dir\u0027, str(log_dir))"},{"line_number":68,"context_line":"            # Set default log filename to tempest.log"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_3ae4b80b","line":65,"in_reply_to":"ba3cc151_0e4bbeb1","updated":"2015-07-06 20:34:10.000000000","message":"You are absolutely right that it doesn\u0027t make a difference. I left this comment because you use str() only in this method. You could remove str() just for consistency. But it is up to you.","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"28d16e856fb27fcc8ad1042c9f329820bb880506","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            # Set local lock_dir in tempest conf"},{"line_number":63,"context_line":"            if not config_parse.has_section(\u0027oslo_concurrency\u0027):"},{"line_number":64,"context_line":"                config_parse.add_section(\u0027oslo_concurrency\u0027)"},{"line_number":65,"context_line":"            config_parse.set(\u0027oslo_concurrency\u0027, \u0027lock_path\u0027, str(lock_dir))"},{"line_number":66,"context_line":"            # Set local log_dir in tempest conf"},{"line_number":67,"context_line":"            config_parse.set(\u0027DEFAULT\u0027, \u0027log_dir\u0027, str(log_dir))"},{"line_number":68,"context_line":"            # Set default log filename to tempest.log"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_fb0bb322","line":65,"in_reply_to":"ba3cc151_3ae4b80b","updated":"2015-07-06 21:04:58.000000000","message":"Sure, I\u0027ll do that on the next respin. I was just explaining to answer your question.","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"8c0bc0feb11926bcc0ccd62ab0305898764a7fca","unresolved":false,"context_lines":[{"line_number":62,"context_line":"            # Set local lock_dir in tempest conf"},{"line_number":63,"context_line":"            if not config_parse.has_section(\u0027oslo_concurrency\u0027):"},{"line_number":64,"context_line":"                config_parse.add_section(\u0027oslo_concurrency\u0027)"},{"line_number":65,"context_line":"            config_parse.set(\u0027oslo_concurrency\u0027, \u0027lock_path\u0027, str(lock_dir))"},{"line_number":66,"context_line":"            # Set local log_dir in tempest conf"},{"line_number":67,"context_line":"            config_parse.set(\u0027DEFAULT\u0027, \u0027log_dir\u0027, str(log_dir))"},{"line_number":68,"context_line":"            # Set default log filename to tempest.log"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3cc151_0e4bbeb1","line":65,"in_reply_to":"ba3cc151_5f411237","updated":"2015-07-06 18:53:53.000000000","message":"It\u0027s not like it really makes a difference. But, I just copied this parse code from elsewhere where the param wasn\u0027t guaranteed to be a str.","commit_id":"eb2d36c17dcb824fd6e035b2612e765632f5f9cb"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"bd2dcd130ea1785877ba78d68da5ad3377503934","unresolved":false,"context_lines":[{"line_number":38,"context_line":"            os.path.dirname(os.path.dirname(os.path.dirname(__file__))))"},{"line_number":39,"context_line":"        discover_path \u003d os.path.join("},{"line_number":40,"context_line":"            os.path.join(top_level_path, \u0027tempest\u0027), \u0027test_discover\u0027)"},{"line_number":41,"context_line":"        testr_conf \u003d \"\"\"[DEFAULT]"},{"line_number":42,"context_line":"test_command\u003dOS_STDOUT_CAPTURE\u003d${OS_STDOUT_CAPTURE:-1} \\\\"},{"line_number":43,"context_line":"             OS_STDERR_CAPTURE\u003d${OS_STDERR_CAPTURE:-1} \\\\"},{"line_number":44,"context_line":"             OS_TEST_TIMEOUT\u003d${OS_TEST_TIMEOUT:-500} \\\\"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba3cc151_2513c3b9","line":41,"updated":"2015-07-08 22:02:46.000000000","message":"What about using some kind of template file here? Having this in the middle of python code doesn\u0027t help for readability / discovery.","commit_id":"860202955a61b08f54a083faf6842a7917cbc159"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"1d359d140f4a54c15bf889958390f8010971f783","unresolved":false,"context_lines":[{"line_number":96,"context_line":"            subprocess.call([\u0027testr\u0027, \u0027init\u0027], cwd\u003dlocal_dir)"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    def take_action(self, parsed_args):"},{"line_number":99,"context_line":"        self.create_working_dir(parsed_args.dir, parsed_args.config_dir)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a50d1a3_03df693a","line":99,"updated":"2015-07-23 14:06:06.000000000","message":"I feel like this should be unit tested, I\u0027d say just call directly to create_working_dir in a unit test and validate contents under various circumstances.","commit_id":"bdca961c42357b9be40617207c9b923795ff4713"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"ace4291cfb0b131e994effe40c8a316a25e37c9c","unresolved":false,"context_lines":[{"line_number":96,"context_line":"            subprocess.call([\u0027testr\u0027, \u0027init\u0027], cwd\u003dlocal_dir)"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    def take_action(self, parsed_args):"},{"line_number":99,"context_line":"        self.create_working_dir(parsed_args.dir, parsed_args.config_dir)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a50d1a3_4e1a71c7","line":99,"in_reply_to":"3a50d1a3_03df693a","updated":"2015-07-23 15:59:17.000000000","message":"Done","commit_id":"bdca961c42357b9be40617207c9b923795ff4713"}],"tempest/tests/cmd/test_tempest_init.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"396ff983599ba18e2f583c26ded8107493a71611","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        self.addCleanup(conf_file.close)"},{"line_number":40,"context_line":"        self.assertEqual(conf_file.read(), testr_conf_file)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def create_working_dir(self):"},{"line_number":43,"context_line":"        fake_local_dir \u003d self.useFixture(fixtures.TempDir())"},{"line_number":44,"context_line":"        fake_local_conf_dir \u003d self.useFixture(fixtures.TempDir())"},{"line_number":45,"context_line":"        # Create a fake conf file"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_76713077","line":42,"updated":"2015-07-23 21:54:43.000000000","message":"s/create_working_dir/test_create_woring_dir/ ?","commit_id":"86b47b84cdd479326e598eb37d8e8a10dc945531"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"6419542ad06ff51068cfaabe2657f6f89155adb4","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        self.addCleanup(conf_file.close)"},{"line_number":40,"context_line":"        self.assertEqual(conf_file.read(), testr_conf_file)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def create_working_dir(self):"},{"line_number":43,"context_line":"        fake_local_dir \u003d self.useFixture(fixtures.TempDir())"},{"line_number":44,"context_line":"        fake_local_conf_dir \u003d self.useFixture(fixtures.TempDir())"},{"line_number":45,"context_line":"        # Create a fake conf file"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a50d1a3_d65da47a","line":42,"in_reply_to":"3a50d1a3_76713077","updated":"2015-07-23 22:07:17.000000000","message":"D\u0027oh, my bad\n\nDone","commit_id":"86b47b84cdd479326e598eb37d8e8a10dc945531"}]}
