)]}'
{"manila/api/v2/share_networks.py":[{"author":{"_account_id":26968,"name":"Amit O","email":"oamit.work@gmail.com","username":"amito"},"change_message_id":"a1b96358d381ed825ba3f2ed92ba79986ab037fc","unresolved":false,"context_lines":[{"line_number":1,"context_line":"hare_networks.py   Copyright 2014 NetApp"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_d1da9f46","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":19},"updated":"2018-11-20 13:45:16.000000000","message":"Seems like a copy-paste mistake, fails all tests.","commit_id":"bb8723bd420fbe64842a132148d6b6ff44843edf"}],"manila/tests/test_utils.py":[{"author":{"_account_id":21224,"name":"jiaopengju","email":"jiaopengju_yewu@cmss.chinamobile.com","username":"jiaopengju"},"change_message_id":"fc51496b7ea287e294c7ab7c66abba425717d436","unresolved":false,"context_lines":[{"line_number":877,"context_line":"        search_opts \u003d {\u0027all_tenants\u0027: \u0027wonk\u0027}"},{"line_number":878,"context_line":"        self.assertRaises(exception.InvalidInput, utils.is_all_tenants,"},{"line_number":879,"context_line":"                          search_opts)"},{"line_number":880,"context_line":""},{"line_number":881,"context_line":""},{"line_number":882,"context_line":"@ddt.ddt"},{"line_number":883,"context_line":"class TestAllTenantsValueCase(test.TestCase):"},{"line_number":884,"context_line":"    @ddt.data(None, \u0027\u0027, \u00271\u0027, \u0027true\u0027, \u0027True\u0027)"},{"line_number":885,"context_line":"    def test_is_all_tenants_true(self, value):"},{"line_number":886,"context_line":"        search_opts \u003d {\u0027all_tenants\u0027: value}"},{"line_number":887,"context_line":"        self.assertTrue(utils.is_all_tenants(search_opts))"},{"line_number":888,"context_line":"        self.assertIn(\u0027all_tenants\u0027, search_opts)"},{"line_number":889,"context_line":""},{"line_number":890,"context_line":"    @ddt.data(\u00270\u0027, \u0027false\u0027, \u0027False\u0027)"},{"line_number":891,"context_line":"    def test_is_all_tenants_false(self, value):"},{"line_number":892,"context_line":"        search_opts \u003d {\u0027all_tenants\u0027: value}"},{"line_number":893,"context_line":"        self.assertFalse(utils.is_all_tenants(search_opts))"},{"line_number":894,"context_line":"        self.assertIn(\u0027all_tenants\u0027, search_opts)"},{"line_number":895,"context_line":""},{"line_number":896,"context_line":"    def test_is_all_tenants_missing(self):"},{"line_number":897,"context_line":"        self.assertFalse(utils.is_all_tenants({}))"},{"line_number":898,"context_line":""},{"line_number":899,"context_line":"    def test_is_all_tenants_invalid(self):"},{"line_number":900,"context_line":"        search_opts \u003d {\u0027all_tenants\u0027: \u0027wonk\u0027}"},{"line_number":901,"context_line":"        self.assertRaises(exception.InvalidInput, utils.is_all_tenants,"},{"line_number":902,"context_line":"                          search_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_99350ddf","line":902,"range":{"start_line":880,"start_character":0,"end_line":902,"end_character":38},"updated":"2018-11-22 03:06:52.000000000","message":"This is duplicated with 859-879, please remove it.","commit_id":"bb8723bd420fbe64842a132148d6b6ff44843edf"}],"manila/utils.py":[{"author":{"_account_id":26968,"name":"Amit O","email":"oamit.work@gmail.com","username":"amito"},"change_message_id":"a1b96358d381ed825ba3f2ed92ba79986ab037fc","unresolved":false,"context_lines":[{"line_number":444,"context_line":"            all_tenants \u003d strutils.bool_from_string(all_tenants, True)"},{"line_number":445,"context_line":"        except ValueError as err:"},{"line_number":446,"context_line":"            raise exception.InvalidInput(six.text_type(err))"},{"line_number":447,"context_line":"    else:"},{"line_number":448,"context_line":"        # The empty string is considered enabling all_tenants"},{"line_number":449,"context_line":"        all_tenants \u003d \u0027all_tenants\u0027 in search_opts"},{"line_number":450,"context_line":"    return all_tenants"},{"line_number":451,"context_line":""},{"line_number":452,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_3183d308","line":449,"range":{"start_line":447,"start_character":4,"end_line":449,"end_character":50},"updated":"2018-11-20 13:45:16.000000000","message":"This is good, but the else clause can be saved if you return the boolean from within the try clause (i.e. \"return strutils.bool_from_string ...\") and replace the else and what follows with \"return \u0027all_tenants\u0027 in search_opts\".\n\nIMO it\u0027s somewhat clearer and this way you don\u0027t \"play\" with the value of \"all_tenants\" too much :)","commit_id":"bb8723bd420fbe64842a132148d6b6ff44843edf"},{"author":{"_account_id":21224,"name":"jiaopengju","email":"jiaopengju_yewu@cmss.chinamobile.com","username":"jiaopengju"},"change_message_id":"fc51496b7ea287e294c7ab7c66abba425717d436","unresolved":false,"context_lines":[{"line_number":432,"context_line":"    return all_tenants"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":""},{"line_number":435,"context_line":"def is_all_tenants(search_opts):"},{"line_number":436,"context_line":"    \"\"\"Checks to see if the all_tenants flag is in search_opts"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"    :param dict search_opts: The search options for a request"},{"line_number":439,"context_line":"    :returns: boolean indicating if all_tenants are being requested or not"},{"line_number":440,"context_line":"    \"\"\""},{"line_number":441,"context_line":"    all_tenants \u003d search_opts.get(\u0027all_tenants\u0027)"},{"line_number":442,"context_line":"    if all_tenants:"},{"line_number":443,"context_line":"        try:"},{"line_number":444,"context_line":"            all_tenants \u003d strutils.bool_from_string(all_tenants, True)"},{"line_number":445,"context_line":"        except ValueError as err:"},{"line_number":446,"context_line":"            raise exception.InvalidInput(six.text_type(err))"},{"line_number":447,"context_line":"    else:"},{"line_number":448,"context_line":"        # The empty string is considered enabling all_tenants"},{"line_number":449,"context_line":"        all_tenants \u003d \u0027all_tenants\u0027 in search_opts"},{"line_number":450,"context_line":"    return all_tenants"},{"line_number":451,"context_line":""},{"line_number":452,"context_line":""},{"line_number":453,"context_line":"class IsAMatcher(object):"},{"line_number":454,"context_line":"    def __init__(self, expected_value\u003dNone):"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_392719b8","line":451,"range":{"start_line":435,"start_character":0,"end_line":451,"end_character":0},"updated":"2018-11-22 03:06:52.000000000","message":"This is duplicated with 417-432, please remove it.","commit_id":"bb8723bd420fbe64842a132148d6b6ff44843edf"}]}
