)]}'
{"keystone/tests/unit/contrib/federation/test_utils.py":[{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"dbfdc614176e78f3e6dddcd2e19a9ff95ac17d4f","unresolved":false,"context_lines":[{"line_number":607,"context_line":"        self.assertEqual(\u0027Developer\u0027,"},{"line_number":608,"context_line":"                         mapped_properties[\u0027group_names\u0027][0][\u0027name\u0027])"},{"line_number":609,"context_line":""},{"line_number":610,"context_line":"    def test_mapping_validation_with_incorrect_local_keys(self):"},{"line_number":611,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_BAD_LOCAL_SETUP"},{"line_number":612,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":613,"context_line":"                          mapping_utils.validate_mapping_structure,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_43e237a1","line":610,"range":{"start_line":610,"start_character":21,"end_line":610,"end_character":31},"updated":"2016-05-05 12:09:46.000000000","message":"not related to this change","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":18940,"name":"Gyorgy Szombathelyi","email":"gyurco@freemail.hu","username":"gyurco78"},"change_message_id":"59f06c31c0fb4fa788144db017e32f53ce63f444","unresolved":false,"context_lines":[{"line_number":607,"context_line":"        self.assertEqual(\u0027Developer\u0027,"},{"line_number":608,"context_line":"                         mapped_properties[\u0027group_names\u0027][0][\u0027name\u0027])"},{"line_number":609,"context_line":""},{"line_number":610,"context_line":"    def test_mapping_validation_with_incorrect_local_keys(self):"},{"line_number":611,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_BAD_LOCAL_SETUP"},{"line_number":612,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":613,"context_line":"                          mapping_utils.validate_mapping_structure,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_ea44f373","line":610,"range":{"start_line":610,"start_character":21,"end_line":610,"end_character":31},"in_reply_to":"1a122d0e_43e237a1","updated":"2016-05-05 13:03:07.000000000","message":"I thought just changing all validation test to test_mapping_validation_xxx would be more consistent.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"fa65409b878d0ace9d09a0c67ca2723a590be631","unresolved":false,"context_lines":[{"line_number":647,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":648,"context_line":"                          mapping)"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def test_mapping_validation_bad_local_setup(self):"},{"line_number":651,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_BAD_LOCAL_SETUP"},{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_e9a6b8be","line":654,"range":{"start_line":650,"start_character":4,"end_line":654,"end_character":34},"updated":"2016-05-05 15:31:40.000000000","message":"this is a dupe with line 610-614","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":18940,"name":"Gyorgy Szombathelyi","email":"gyurco@freemail.hu","username":"gyurco78"},"change_message_id":"7f4300fbd4b8558b85f1c3036e6c57223531f00d","unresolved":false,"context_lines":[{"line_number":647,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":648,"context_line":"                          mapping)"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def test_mapping_validation_bad_local_setup(self):"},{"line_number":651,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_BAD_LOCAL_SETUP"},{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_7aeee4b5","line":654,"range":{"start_line":650,"start_character":4,"end_line":654,"end_character":34},"in_reply_to":"1a122d0e_e4209f9c","updated":"2016-05-05 16:26:32.000000000","message":"Yepp, will remove it.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"ffcd9ebf13eb3ea07e17b05d02d498eae64f5ef4","unresolved":false,"context_lines":[{"line_number":647,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":648,"context_line":"                          mapping)"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def test_mapping_validation_bad_local_setup(self):"},{"line_number":651,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_BAD_LOCAL_SETUP"},{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_e4209f9c","line":654,"range":{"start_line":650,"start_character":4,"end_line":654,"end_character":34},"in_reply_to":"1a122d0e_e9a6b8be","updated":"2016-05-05 15:45:23.000000000","message":"good catch","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"d749f95fc09220348d971bf2b27beba708ac07cd","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_a78cf635","line":655,"updated":"2016-05-05 12:23:22.000000000","message":"is there anything like: test_mapping_validation_with_group_name_no_domain? (and all the variants with group_id, user_name and user_id?)\n\nthis should pass, right? since the domain is only mandatory when we pass a name and its checked at the controller level.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"4df54403f27263821864820fd2870a6ba8379d0a","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_7beb93a4","line":655,"in_reply_to":"1a122d0e_4a2527c0","updated":"2016-05-05 13:48:16.000000000","message":"yes, but we should make sure it passes? :)","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"c845385025eb6859dfc1fb5a9b30f64878ad955d","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_8699f321","line":655,"in_reply_to":"1a122d0e_61548653","updated":"2016-05-05 15:22:10.000000000","message":"or is the expected behavior, or it is a bug. If we have a way to define such kind of rules in the schema, we should open a bug and fix that. Otherwise, we should check the expected behavior (which is \"validates ok\" for the current schema) in the unit tests.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"6ee472bd042e1ff28dc2bbda7648ef127af28527","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_a147be4a","line":655,"in_reply_to":"1a122d0e_76f56a4f","updated":"2016-05-05 14:11:26.000000000","message":"why not? if it is the expected behavior, it should be tested.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":18940,"name":"Gyorgy Szombathelyi","email":"gyurco@freemail.hu","username":"gyurco78"},"change_message_id":"24c7dec064708a302e1a94a87e3402277e7b426e","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_76f56a4f","line":655,"in_reply_to":"1a122d0e_7beb93a4","updated":"2016-05-05 14:08:03.000000000","message":"Should we test for a case which is a deficiency of the validator? :) Such mapping would fail on a mapping engine test.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":18940,"name":"Gyorgy Szombathelyi","email":"gyurco@freemail.hu","username":"gyurco78"},"change_message_id":"7f4300fbd4b8558b85f1c3036e6c57223531f00d","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_faf95483","line":655,"in_reply_to":"1a122d0e_8699f321","updated":"2016-05-05 16:26:32.000000000","message":"I vould vote for the bug, if it accepts such mapping, the user will get an 500 Internal Server Error when she/he tries to use it. I don\u0027t think that can be an expected behavior.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":18940,"name":"Gyorgy Szombathelyi","email":"gyurco@freemail.hu","username":"gyurco78"},"change_message_id":"a96b48eedb681f0951584ebb4beb9bae2676c796","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_61548653","line":655,"in_reply_to":"1a122d0e_a147be4a","updated":"2016-05-05 14:18:56.000000000","message":"I think about it as a non-defined behavior. Nobody expects that it passes such JSON, but it does.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":18940,"name":"Gyorgy Szombathelyi","email":"gyurco@freemail.hu","username":"gyurco78"},"change_message_id":"59f06c31c0fb4fa788144db017e32f53ce63f444","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_4a2527c0","line":655,"in_reply_to":"1a122d0e_a78cf635","updated":"2016-05-05 13:03:07.000000000","message":"Currently name without domain would pass, since the validator doesn\u0027t check the relations between the fields.","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"e6a3b24f589af9ac6402dd5496d8d895fff37cf1","unresolved":false,"context_lines":[{"line_number":652,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":653,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":654,"context_line":"                          mapping)"},{"line_number":655,"context_line":""},{"line_number":656,"context_line":"    def test_type_not_in_assertion(self):"},{"line_number":657,"context_line":"        \"\"\"Test that if the remote \"type\" is not in the assertion it fails.\"\"\""},{"line_number":658,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUPS_WHITELIST_PASS_THROUGH"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_3a546c52","line":655,"in_reply_to":"1a122d0e_faf95483","updated":"2016-05-05 16:30:44.000000000","message":"++ totally agree. You can create tests to expose the bugs and later, fix them. Take a look in this example: https://review.openstack.org/#/c/288403/","commit_id":"aed3e878245fa23891b11d582f31c27397bba66a"},{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"837f66c45194c6b45e9a3b790584e94c85b7e6a8","unresolved":false,"context_lines":[{"line_number":631,"context_line":"        mapping_utils.validate_mapping_structure(mapping)"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    @test_utils.wip(\u0027waiting for fix the validator \u0027"},{"line_number":634,"context_line":"                    \u0027to choke on group name without domain\u0027)"},{"line_number":635,"context_line":"    def test_mapping_validation_with_group_name_without_domain(self):"},{"line_number":636,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUP_NAME_WITHOUT_DOMAIN"},{"line_number":637,"context_line":"        self.assertRaises(exception.ValidationError,"}],"source_content_type":"text/x-python","patch_set":3,"id":"dab17558_e4b492f3","line":634,"updated":"2016-05-06 21:06:55.000000000","message":"Is there a link to this bug?","commit_id":"09d13cf1373990433068e5b348aa8e2967c183c9"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"0659f926e08f6ad7364cc33f4fdccbfd3430f3c8","unresolved":false,"context_lines":[{"line_number":631,"context_line":"        mapping_utils.validate_mapping_structure(mapping)"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    @test_utils.wip(\u0027waiting for fix the validator \u0027"},{"line_number":634,"context_line":"                    \u0027to choke on group name without domain\u0027)"},{"line_number":635,"context_line":"    def test_mapping_validation_with_group_name_without_domain(self):"},{"line_number":636,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUP_NAME_WITHOUT_DOMAIN"},{"line_number":637,"context_line":"        self.assertRaises(exception.ValidationError,"}],"source_content_type":"text/x-python","patch_set":3,"id":"dab17558_bef024ca","line":634,"updated":"2016-05-11 17:29:21.000000000","message":"Please include bug numbers with @wip - i would like this to be tracked more clearly, perhaps @wip needs a bugid\u003d\u003cnum\u003e arg?","commit_id":"09d13cf1373990433068e5b348aa8e2967c183c9"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"dbb70921f3c90dcc6ca72bc09a8539b47d0cc91a","unresolved":false,"context_lines":[{"line_number":630,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUP_NAMES"},{"line_number":631,"context_line":"        mapping_utils.validate_mapping_structure(mapping)"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    @test_utils.wip(\u0027waiting for fix the validator \u0027"},{"line_number":634,"context_line":"                    \u0027to choke on group name without domain\u0027)"},{"line_number":635,"context_line":"    def test_mapping_validation_with_group_name_without_domain(self):"},{"line_number":636,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_GROUP_NAME_WITHOUT_DOMAIN"},{"line_number":637,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":638,"context_line":"                          mapping_utils.validate_mapping_structure,"},{"line_number":639,"context_line":"                          mapping)"},{"line_number":640,"context_line":""},{"line_number":641,"context_line":"    def test_mapping_validation_no_local(self):"},{"line_number":642,"context_line":"        mapping \u003d mapping_fixtures.MAPPING_MISSING_LOCAL"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_82927655","line":639,"range":{"start_line":633,"start_character":4,"end_line":639,"end_character":34},"updated":"2016-05-05 18:17:09.000000000","message":"thanks for including this","commit_id":"09d13cf1373990433068e5b348aa8e2967c183c9"}]}
