)]}'
{"tempest/api/compute/admin/test_servers_negative.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"6cb2c416319856748e40ae40f45585411658e1cf","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class ServersAdminNegativeTestJSON(base.BaseV2ComputeAdminTest):"},{"line_number":29,"context_line":"    suspend_available \u003d CONF.compute_feature_enabled.suspend"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    \"\"\""},{"line_number":32,"context_line":"    Tests Servers API using admin privileges"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2Bw1E%3D","line":29,"updated":"2014-03-24 14:56:41.000000000","message":"Don\u0027t do a getattr on CONF in the class definition. It will cause import errors if there isn\u0027t a config file. Just use CONF.compute_feature_enabled.suspend in the skip decorator.","commit_id":"14f490f157eafe884cfaeadcd28a833dc6aabc9f"}],"tempest/api/compute/v3/admin/test_servers_negative.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"6cb2c416319856748e40ae40f45585411658e1cf","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"class ServersAdminNegativeV3Test(base.BaseV3ComputeAdminTest):"},{"line_number":29,"context_line":"    suspend_available \u003d CONF.compute_feature_enabled.suspend"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    \"\"\""},{"line_number":32,"context_line":"    Tests Servers API using admin privileges"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2Bw0s%3D","line":29,"updated":"2014-03-24 14:56:41.000000000","message":"Same here","commit_id":"14f490f157eafe884cfaeadcd28a833dc6aabc9f"}],"tempest/api/compute/v3/servers/test_server_actions.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"6cb2c416319856748e40ae40f45585411658e1cf","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class ServerActionsV3Test(base.BaseV3ComputeTest):"},{"line_number":31,"context_line":"    resize_available \u003d CONF.compute_feature_enabled.resize"},{"line_number":32,"context_line":"    suspend_available \u003d CONF.compute_feature_enabled.suspend"},{"line_number":33,"context_line":"    run_ssh \u003d CONF.compute.run_ssh"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2Bw0A%3D","line":32,"updated":"2014-03-24 14:56:41.000000000","message":"Oh, I see where you got the idea from now... Do you want to fix that in a follow up patch?","commit_id":"14f490f157eafe884cfaeadcd28a833dc6aabc9f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a8114e8c4cf366dad8a94469b7f76a70634a809f","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"class ServerActionsV3Test(base.BaseV3ComputeTest):"},{"line_number":31,"context_line":"    resize_available \u003d CONF.compute_feature_enabled.resize"},{"line_number":32,"context_line":"    suspend_available \u003d CONF.compute_feature_enabled.suspend"},{"line_number":33,"context_line":"    run_ssh \u003d CONF.compute.run_ssh"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2Bwkg%3D","line":32,"in_reply_to":"AAAAWH%2F%2Bw0A%3D","updated":"2014-03-24 15:17:00.000000000","message":"Yeah I can clean it up in a follow on patch.","commit_id":"14f490f157eafe884cfaeadcd28a833dc6aabc9f"}],"tempest/api/compute/v3/servers/test_servers_negative.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"6cb2c416319856748e40ae40f45585411658e1cf","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"class ServersNegativeV3Test(base.BaseV3ComputeTest):"},{"line_number":32,"context_line":"    suspend_available \u003d CONF.compute_feature_enabled.suspend"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def setUp(self):"},{"line_number":35,"context_line":"        super(ServersNegativeV3Test, self).setUp()"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2Bwz0%3D","line":32,"updated":"2014-03-24 14:56:41.000000000","message":"Here too","commit_id":"14f490f157eafe884cfaeadcd28a833dc6aabc9f"}],"tempest/scenario/test_server_basic_ops.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"6cb2c416319856748e40ae40f45585411658e1cf","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"class TestServerBasicOps(manager.OfficialClientTest):"},{"line_number":35,"context_line":"    suspend_available \u003d CONF.compute_feature_enabled.suspend"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    \"\"\""},{"line_number":38,"context_line":"    This smoke test case follows this basic set of operations:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2Bwzk%3D","line":35,"updated":"2014-03-24 14:56:41.000000000","message":"Again","commit_id":"14f490f157eafe884cfaeadcd28a833dc6aabc9f"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"8a167ae8fa029ed2589806665a24616b02b5016b","unresolved":false,"context_lines":[{"line_number":120,"context_line":"            self.compute_client.servers, instance_id, \u0027ACTIVE\u0027)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.suspend,"},{"line_number":123,"context_line":"                          \u0027Suspend is not available.\u0027)"},{"line_number":124,"context_line":"    def suspend_server(self):"},{"line_number":125,"context_line":"        instance \u003d self.get_resource(\u0027instance\u0027)"},{"line_number":126,"context_line":"        instance_id \u003d instance.id"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2Bqv0%3D","line":123,"updated":"2014-03-25 07:02:49.000000000","message":"If \u0027suspend\u0027 is disabled, test_server_basicops will be terminated when invoke this method as skip statement of testtools will skip the whole test method.","commit_id":"3c8108ff48f5ed26ac18f055b8241e803a428097"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b4449cf140feb0345440a5ab6f3352b7f32ac507","unresolved":false,"context_lines":[{"line_number":120,"context_line":"            self.compute_client.servers, instance_id, \u0027ACTIVE\u0027)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.suspend,"},{"line_number":123,"context_line":"                          \u0027Suspend is not available.\u0027)"},{"line_number":124,"context_line":"    def suspend_server(self):"},{"line_number":125,"context_line":"        instance \u003d self.get_resource(\u0027instance\u0027)"},{"line_number":126,"context_line":"        instance_id \u003d instance.id"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2BoFE%3D","line":123,"in_reply_to":"AAAAWH%2F%2Bqrc%3D","updated":"2014-03-25 13:45:23.000000000","message":"Oh right, good point, Armando handles it correctly here:\n\nhttps://review.openstack.org/#/c/82566/3/tempest/scenario/test_server_basic_ops.py","commit_id":"3c8108ff48f5ed26ac18f055b8241e803a428097"},{"author":{"_account_id":7227,"name":"Timur Nurlygayanov","email":"tnurlygayanov@mirantis.com","username":"tnurlygayanov"},"change_message_id":"3e6c38fc986c961fa18550ea00f2e73594843e35","unresolved":false,"context_lines":[{"line_number":120,"context_line":"            self.compute_client.servers, instance_id, \u0027ACTIVE\u0027)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    @testtools.skipUnless(CONF.compute_feature_enabled.suspend,"},{"line_number":123,"context_line":"                          \u0027Suspend is not available.\u0027)"},{"line_number":124,"context_line":"    def suspend_server(self):"},{"line_number":125,"context_line":"        instance \u003d self.get_resource(\u0027instance\u0027)"},{"line_number":126,"context_line":"        instance_id \u003d instance.id"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2Bqrc%3D","line":123,"in_reply_to":"AAAAWH%2F%2Bqv0%3D","updated":"2014-03-25 07:12:03.000000000","message":"we can add the same decorator fir test test_server_basicops or add some condition in this test, which will detect that thi method does not allowed.","commit_id":"3c8108ff48f5ed26ac18f055b8241e803a428097"}]}
