)]}'
{"nova/tests/fixtures.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"7380d1c7413984fda20a8b45b62b3e0ef5abeead","unresolved":false,"context_lines":[{"line_number":767,"context_line":"    def setUp(self):"},{"line_number":768,"context_line":"        super(ConfPatcher, self).setUp()"},{"line_number":769,"context_line":"        for k, v in self.args.items():"},{"line_number":770,"context_line":"            self.addCleanup(CONF.clear_override, k, self.group)"},{"line_number":771,"context_line":"            CONF.set_override(k, v, self.group)"},{"line_number":772,"context_line":""},{"line_number":773,"context_line":""},{"line_number":774,"context_line":"class OSAPIFixture(fixtures.Fixture):"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_6154fbff","line":771,"range":{"start_line":770,"start_character":12,"end_line":771,"end_character":47},"updated":"2017-12-07 20:38:34.000000000","message":"I was using this model to do the override.","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b559d159e8790aa8e5679bcbc58865b1f3fc1cce","unresolved":false,"context_lines":[{"line_number":1617,"context_line":"class NoopQuotaDriverFixture(fixtures.Fixture):"},{"line_number":1618,"context_line":"    \"\"\"A fixture to run tests using the NoopQuotaDriver."},{"line_number":1619,"context_line":""},{"line_number":1620,"context_line":"    We can\u0027t simply set self.flags to the NoopQuotaDriver in tests to use the"},{"line_number":1621,"context_line":"    NoopQuotaDriver because the QuotaEngine object is global. Concurrently"},{"line_number":1622,"context_line":"    running tests will fail intermittently because they might get the"},{"line_number":1623,"context_line":"    NoopQuotaDriver globally when they expected the default DbQuotaDriver"},{"line_number":1624,"context_line":"    behavior. So instead, we can patch the _driver property of the QuotaEngine"},{"line_number":1625,"context_line":"    class on a per-test basis."},{"line_number":1626,"context_line":"    \"\"\""},{"line_number":1627,"context_line":""},{"line_number":1628,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_794fd933","line":1625,"range":{"start_line":1620,"start_character":0,"end_line":1625,"end_character":30},"updated":"2017-12-07 17:28:29.000000000","message":"+1 nicely done","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6f7d979b6495c6ce6be1447acb67005628b66b42","unresolved":false,"context_lines":[{"line_number":1632,"context_line":"        # Set the config option just so that code checking for the presence of"},{"line_number":1633,"context_line":"        # the NoopQuotaDriver setting will see it as expected."},{"line_number":1634,"context_line":"        self.addCleanup(CONF.clear_override, \u0027driver\u0027, \u0027quota\u0027)"},{"line_number":1635,"context_line":"        CONF.set_override(\u0027driver\u0027, \u0027nova.quota.NoopQuotaDriver\u0027, \u0027quota\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_fe6d0acc","line":1635,"range":{"start_line":1635,"start_character":8,"end_line":1635,"end_character":25},"updated":"2017-12-07 20:00:50.000000000","message":"We usually use self.flags and addCleanup typically comes after doing the thing you want to cleanup, just in case the thing you want to cleanup blows up and never happens.","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"ac7a3669c8d0af4d2e213d371e799c71d62c212e","unresolved":false,"context_lines":[{"line_number":1632,"context_line":"        # Set the config option just so that code checking for the presence of"},{"line_number":1633,"context_line":"        # the NoopQuotaDriver setting will see it as expected."},{"line_number":1634,"context_line":"        self.addCleanup(CONF.clear_override, \u0027driver\u0027, \u0027quota\u0027)"},{"line_number":1635,"context_line":"        CONF.set_override(\u0027driver\u0027, \u0027nova.quota.NoopQuotaDriver\u0027, \u0027quota\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_fc9c320f","line":1635,"range":{"start_line":1635,"start_character":8,"end_line":1635,"end_character":25},"in_reply_to":"df87a7cf_fe6d0acc","updated":"2017-12-07 21:48:53.000000000","message":"I noticed that (based on how Tempest did things) but I was thinking the other way - if the thing we were cleaning up blew up then we\u0027d want to make sure the cleanup happened. Eh...","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"}],"nova/tests/functional/api_sample_tests/api_samples/os-quota-sets-noop/quotas-show-defaults-get-resp.json.tpl":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b559d159e8790aa8e5679bcbc58865b1f3fc1cce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"df87a7cf_19eb2d13","updated":"2017-12-07 17:28:29.000000000","message":"The fact this differs from https://review.openstack.org/#/c/526270/1/doc/api_samples/os-quota-sets-noop/quotas-show-defaults-get-resp.json annoys me. Are we not able to use symbolic links to duplicate this?","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"9ccfbe1480bae97e4670e2ccdf5f00cacb8be37c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"df87a7cf_c8cdec66","in_reply_to":"df87a7cf_19eb2d13","updated":"2017-12-07 19:01:50.000000000","message":"So, this calls for a crash course in how api samples tests work (sorry in advance). The way this works is that the .tpl files are the things that *generate* the .json files under the doc/ directory. So anything .json is not made manually but generated by the code automatically.\n\nSo why do we check them into source control? I don\u0027t know 100% but I suspect it\u0027s because they only get generated if they don\u0027t exist under doc/ yet. So it\u0027s more efficient if we check in the generated files so they won\u0027t be generated during every test run.","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6f7d979b6495c6ce6be1447acb67005628b66b42","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"df87a7cf_9e5e3e10","in_reply_to":"df87a7cf_c8cdec66","updated":"2017-12-07 20:00:50.000000000","message":"The things under doc/ are also used in our compute API reference. Not all, like these, but most.","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"}],"nova/tests/functional/api_sample_tests/test_quota_sets.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6f7d979b6495c6ce6be1447acb67005628b66b42","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from nova.tests import fixtures as nova_fixtures"},{"line_number":19,"context_line":"from nova.tests.functional.api_sample_tests import api_sample_base"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"CONF \u003d nova.conf.CONF"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class QuotaSetsSampleJsonTests(api_sample_base.ApiSampleTestBaseV21):"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_1ea8eed8","line":21,"updated":"2017-12-07 20:00:50.000000000","message":"This isn\u0027t used.","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"b559d159e8790aa8e5679bcbc58865b1f3fc1cce","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"class NoopQuotaSetsSampleJsonTests(QuotaSetsSampleJsonTests):"},{"line_number":86,"context_line":"    sample_dir \u003d \"os-quota-sets-noop\""},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    def setUp(self):"},{"line_number":89,"context_line":"        super(NoopQuotaSetsSampleJsonTests, self).setUp()"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_1939eda2","line":86,"range":{"start_line":86,"start_character":17,"end_line":86,"end_character":37},"updated":"2017-12-07 17:28:29.000000000","message":"I guess we can\u0027t give a relative patch to the files in \u0027doc/api_samples/os-quota-sets-noop/\u0027 because that directory isn\u0027t part of the package","commit_id":"fa1d32a3f6ad9d7784ab55a76d82f4783807662e"}]}
