)]}'
{"tempest/tests/fake_config.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"d312d8109fa9ad82bee791975d880a2785fe03da","unresolved":false,"context_lines":[{"line_number":17,"context_line":"from tempest import config"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class FakeConfig(config.TempestConfigPrivate):"},{"line_number":21,"context_line":"    def __init__(self):"},{"line_number":22,"context_line":"        config.register_opts()"},{"line_number":23,"context_line":"        cfg.CONF.set_default(\u0027build_interval\u0027, 10, group\u003d\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAVX%2F%2Fo0Y%3D","line":20,"updated":"2014-03-02 07:52:13.000000000","message":"IMO, better to make \"fake config\" as another proxy with setting \"parse_conf\" to \"False\", without loosing all TempestConfigPrivate settings. This will allow us forget about tempest.conf file, that is required now by using common tempest config proxy.\n\nUnittests for \"clients\" module require a lot of options, so let it be friendly for all future unittests.","commit_id":"c9f278f4e9d5b64b7d5ae9ea37e175ea457b9074"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"e217a311c6009dd8b81018ac031c75838269ff45","unresolved":false,"context_lines":[{"line_number":17,"context_line":"from tempest import config"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class FakeConfig(config.TempestConfigPrivate):"},{"line_number":21,"context_line":"    def __init__(self):"},{"line_number":22,"context_line":"        config.register_opts()"},{"line_number":23,"context_line":"        cfg.CONF.set_default(\u0027build_interval\u0027, 10, group\u003d\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAVX%2F%2FozE%3D","line":20,"in_reply_to":"AAAAVX%2F%2Fo0Y%3D","updated":"2014-03-02 07:58:22.000000000","message":"First of all it is related to changed names like in:\n\nself.compute_feature_enabled \u003d cfg.CONF[\u0027compute-feature-enabled\u0027]\n        self.identity \u003d cfg.CONF.identity\n        self.identity_feature_enabled \u003d cfg.CONF[\u0027identity-feature-enabled\u0027]\n        self.image \u003d cfg.CONF.image\n        self.image_feature_enabled \u003d cfg.CONF[\u0027image-feature-enabled\u0027]\n        self.network \u003d cfg.CONF.network\n        self.network_feature_enabled \u003d cfg.CONF[\u0027network-feature-enabled\u0027]\n        self.volume \u003d cfg.CONF.volume\n        self.volume_feature_enabled \u003d cfg.CONF[\u0027volume-feature-enabled\u0027]","commit_id":"c9f278f4e9d5b64b7d5ae9ea37e175ea457b9074"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"594530d9917214f16d381af2bf70a6794c3fdfe7","unresolved":false,"context_lines":[{"line_number":17,"context_line":"from tempest import config"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class FakeConfig(config.TempestConfigPrivate):"},{"line_number":21,"context_line":"    def __init__(self):"},{"line_number":22,"context_line":"        config.register_opts()"},{"line_number":23,"context_line":"        cfg.CONF.set_default(\u0027build_interval\u0027, 10, group\u003d\u0027compute\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAVn%2F%2F4cE%3D","line":20,"in_reply_to":"AAAAVX%2F%2Fo0Y%3D","updated":"2014-03-03 19:52:41.000000000","message":"You seem to be missing the point of this patch. It does almost exactly what you just described. The harms you outlined in your comment are present in what is currently in the repo but this patch fixes that. The difference here is that this doesn\u0027t replace the proxy and for a good reason. The logic in the __init__() method for the private class even with parse_conf set to false still does more then we need or want to be doing for a unit test. (mostly just related to the the logging)\n\nThe intent here is to make the config only what is needed for testing. I can certainly understand your argument about stubbing the proxy object instead though it would seem to be a simpler approach. But it would end up actually doing more then what we want in the unit tests. This approach will reuse the defaults where it makes sense to and override them as necessary. It is also essentially the same way that the config fixture from oslo is being used in the other projects (which we can\u0027t use in tempest because of the proxy object, well actually I just had an idea so we might be able to, I need to experiment)\n\nFor your second comment see: self._set_attrs()  below that does exactly what you\u0027re describing there.","commit_id":"c9f278f4e9d5b64b7d5ae9ea37e175ea457b9074"}]}
