)]}'
{"tests/test_backend.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"c0f861765d91daa9e3f1f46993057de99d43e523","unresolved":false,"context_lines":[{"line_number":567,"context_line":"    def test_get_and_remove_role_grant_by_group_and_cross_domain(self):"},{"line_number":568,"context_line":"        role_group1_domain1 \u003d {\u0027id\u0027: uuid.uuid4().hex,"},{"line_number":569,"context_line":"                               \u0027name\u0027: uuid.uuid4().hex}"},{"line_number":570,"context_line":"        self.identity_api.create_role(role_group1_domain1[\u0027id\u0027], "},{"line_number":571,"context_line":"                                      role_group1_domain1)"},{"line_number":572,"context_line":"        role_group1_domain2 \u003d {\u0027id\u0027: uuid.uuid4().hex, "},{"line_number":573,"context_line":"                               \u0027name\u0027: uuid.uuid4().hex}"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAM3%2F%2FfXo%3D","line":570,"updated":"2013-01-18 19:34:07.000000000","message":"extra white space - run pep8 (by using -p option to .run_tests.sh for it to list all the errors)","commit_id":"04ed92af6928879d7a3b09f397ff0abacac0627a"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"55905740793ee53eb64bf0ea45dd0ecd28a78c44","unresolved":false,"context_lines":[{"line_number":855,"context_line":"        roles_ref \u003d self.identity_api.list_grants(user_id\u003duser1[\u0027id\u0027],"},{"line_number":856,"context_line":"                                                  domain_id\u003ddomain1[\u0027id\u0027])"},{"line_number":857,"context_line":"        self.assertIn(role1_user1_domain1, roles_ref)"},{"line_number":858,"context_line":"        self.assertIn(role2_user1_domain1, roles_ref)"},{"line_number":859,"context_line":"        roles_ref \u003d self.identity_api.list_grants(group_id\u003dgroup1[\u0027id\u0027],"},{"line_number":860,"context_line":"                                                  domain_id\u003ddomain1[\u0027id\u0027])"},{"line_number":861,"context_line":"        self.assertIn(role1_group1_domain1, roles_ref)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FcjI%3D","line":858,"updated":"2013-01-22 08:33:49.000000000","message":"Perhaps also check you only have 2 of them (as an alternative to checking that all other the other grants are NOT in the list)?","commit_id":"791a653a625c743e7d0ee2fec602fdd09efef44b"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"55905740793ee53eb64bf0ea45dd0ecd28a78c44","unresolved":false,"context_lines":[{"line_number":1116,"context_line":"        group_ids \u003d []"},{"line_number":1117,"context_line":"        for group in groups:"},{"line_number":1118,"context_line":"            group_ids.append(group.get(\u0027id\u0027))"},{"line_number":1119,"context_line":"        self.assertIn(group1[\u0027id\u0027], group_ids)"},{"line_number":1120,"context_line":"        self.assertIn(group2[\u0027id\u0027], group_ids)"},{"line_number":1121,"context_line":""},{"line_number":1122,"context_line":"    def test_list_domains(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAM3%2F%2FcjE%3D","line":1119,"updated":"2013-01-22 08:33:49.000000000","message":"check if only 2 groups returned?\n(same comment for the other similar tests)","commit_id":"791a653a625c743e7d0ee2fec602fdd09efef44b"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"faa5c378dd1de1c29a701dd0887c5b8e9bcf61b1","unresolved":false,"context_lines":[{"line_number":137,"context_line":"        tenant_ref \u003d self.identity_api.get_project_users(self.tenant_baz[\u0027id\u0027])"},{"line_number":138,"context_line":"        user_ids \u003d []"},{"line_number":139,"context_line":"        for user in tenant_ref:"},{"line_number":140,"context_line":"            self.assertFalse(user.get(\u0027password\u0027))"},{"line_number":141,"context_line":"            user_ids.append(user.get(\u0027id\u0027))"},{"line_number":142,"context_line":"        self.assertEquals(len(user_ids), 2)"},{"line_number":143,"context_line":"        self.assertIn(self.user_two[\u0027id\u0027], user_ids)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FAys%3D","line":140,"updated":"2013-02-11 17:51:25.000000000","message":"Falsey isn\u0027t really specific enough\n\n  self.assertNotIn(\u0027password\u0027, user)","commit_id":"55c27df3b11200573783bbd4697cbe76a8000c0a"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"ce170afaa69e5d43d54a6030bd21293d203aa801","unresolved":false,"context_lines":[{"line_number":137,"context_line":"        tenant_ref \u003d self.identity_api.get_project_users(self.tenant_baz[\u0027id\u0027])"},{"line_number":138,"context_line":"        user_ids \u003d []"},{"line_number":139,"context_line":"        for user in tenant_ref:"},{"line_number":140,"context_line":"            self.assertFalse(user.get(\u0027password\u0027))"},{"line_number":141,"context_line":"            user_ids.append(user.get(\u0027id\u0027))"},{"line_number":142,"context_line":"        self.assertEquals(len(user_ids), 2)"},{"line_number":143,"context_line":"        self.assertIn(self.user_two[\u0027id\u0027], user_ids)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FAfo%3D","line":140,"in_reply_to":"AAAAM3%2F%2FAys%3D","updated":"2013-02-11 19:59:02.000000000","message":"Done","commit_id":"55c27df3b11200573783bbd4697cbe76a8000c0a"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"faa5c378dd1de1c29a701dd0887c5b8e9bcf61b1","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        self.assertDictEqual(roles_ref[0], role2_user1_domain2)"},{"line_number":867,"context_line":""},{"line_number":868,"context_line":"    def test_multi_role_grant_by_user_group_on_project_domain(self):"},{"line_number":869,"context_line":"        role1_user1_domain1 \u003d {\u0027id\u0027: uuid.uuid4().hex,"},{"line_number":870,"context_line":"                               \u0027name\u0027: uuid.uuid4().hex}"},{"line_number":871,"context_line":"        self.identity_api.create_role(role1_user1_domain1[\u0027id\u0027],"},{"line_number":872,"context_line":"                                      role1_user1_domain1)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FAx8%3D","line":869,"updated":"2013-02-11 17:51:25.000000000","message":"these variable names are impossible to follow (these are roles, not role-user-domains) -- all you\u0027re doing here is creating a bunch of roles, can you not just do it in a loop?\n\n  role_refs \u003d list()\n  for _ in range(too many):\n    role_ref \u003d { ... }\n    self.identity_api.create_role(...)\n    role_refs.append(role_ref)\n\nit\u0027s nearly impossible to tell what you\u0027re testing here as a result","commit_id":"55c27df3b11200573783bbd4697cbe76a8000c0a"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"ce170afaa69e5d43d54a6030bd21293d203aa801","unresolved":false,"context_lines":[{"line_number":866,"context_line":"        self.assertDictEqual(roles_ref[0], role2_user1_domain2)"},{"line_number":867,"context_line":""},{"line_number":868,"context_line":"    def test_multi_role_grant_by_user_group_on_project_domain(self):"},{"line_number":869,"context_line":"        role1_user1_domain1 \u003d {\u0027id\u0027: uuid.uuid4().hex,"},{"line_number":870,"context_line":"                               \u0027name\u0027: uuid.uuid4().hex}"},{"line_number":871,"context_line":"        self.identity_api.create_role(role1_user1_domain1[\u0027id\u0027],"},{"line_number":872,"context_line":"                                      role1_user1_domain1)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FAfg%3D","line":869,"in_reply_to":"AAAAM3%2F%2FAx8%3D","updated":"2013-02-11 19:59:02.000000000","message":"thanks for the comment. switch to use a loop to remove possibly confusing names.","commit_id":"55c27df3b11200573783bbd4697cbe76a8000c0a"}],"tests/test_backend_kvs.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"faa5c378dd1de1c29a701dd0887c5b8e9bcf61b1","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        pass"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def test_list_groups(self):"},{"line_number":44,"context_line":"        # FIXME(chungg): kvs implementation returns ids, sql returns obj"},{"line_number":45,"context_line":"        pass"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def test_list_domains(self):"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FAxo%3D","line":44,"updated":"2013-02-11 17:51:25.000000000","message":"raise skiptests and cite a bug number so it\u0027s clear in the unit test results that these are NOT passes","commit_id":"55c27df3b11200573783bbd4697cbe76a8000c0a"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"ce170afaa69e5d43d54a6030bd21293d203aa801","unresolved":false,"context_lines":[{"line_number":41,"context_line":"        pass"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    def test_list_groups(self):"},{"line_number":44,"context_line":"        # FIXME(chungg): kvs implementation returns ids, sql returns obj"},{"line_number":45,"context_line":"        pass"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def test_list_domains(self):"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FAfY%3D","line":44,"in_reply_to":"AAAAM3%2F%2FAxo%3D","updated":"2013-02-11 19:59:02.000000000","message":"these are dropped in kvs bug fix but will change update to point to bug id","commit_id":"55c27df3b11200573783bbd4697cbe76a8000c0a"}]}
