From 7c2be24cf87ff34dfd4e37153dd2ce63177d1a23 Mon Sep 17 00:00:00 2001 From: Steve Howell Date: Thu, 25 Jun 2020 21:52:28 +0000 Subject: [PATCH] tests: Refine external_authentication_methods. This removes our last use of `check_dict` in `zerver/tests`, except for `test_decorators.py`, which is testing the function itself. --- zerver/tests/test_auth_backends.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/zerver/tests/test_auth_backends.py b/zerver/tests/test_auth_backends.py index e24183f7ea..b554f8e8ac 100644 --- a/zerver/tests/test_auth_backends.py +++ b/zerver/tests/test_auth_backends.py @@ -70,10 +70,10 @@ from zerver.lib.utils import generate_random_token from zerver.lib.validator import ( Validator, check_bool, - check_dict, check_dict_only, check_int, check_list, + check_none_or, check_string, validate_login_email, ) @@ -3311,7 +3311,16 @@ class FetchAuthBackends(ZulipTestCase): self.assert_json_success(result) checker = check_dict_only([ ('authentication_methods', check_dict_only(authentication_methods_list)), - ('external_authentication_methods', check_list(check_dict(), length=len(external_auth_methods))), + ('external_authentication_methods', check_list( + check_dict_only([ + ('display_icon', check_none_or(check_string)), + ('display_name', check_string), + ('login_url', check_string), + ('name', check_string), + ('signup_url', check_string), + ]), + length=len(external_auth_methods) + )), ('email_auth_enabled', check_bool), ('is_incompatible', check_bool), ('require_email_format_usernames', check_bool),