@@ -1816,7 +1816,7 @@ def test_create_initial_user_for_saas(
18161816 user_utils .link_user_to_local_idp = MagicMock ()
18171817 user_utils .add_user_to_workspace = MagicMock ()
18181818 mas_workspace_application_ids = ["manage" , "iot" , "facilities" ]
1819- user_utils .get_mas_applications_in_workspace = MagicMock (return_value = map (lambda x : {"id" : x }, mas_workspace_application_ids ))
1819+ user_utils .get_mas_applications_in_workspace = MagicMock (return_value = list ( map (lambda x : {"id" : x }, mas_workspace_application_ids ) ))
18201820 user_utils .await_mas_application_availability = MagicMock ()
18211821 user_utils .set_user_application_permission = MagicMock ()
18221822 user_utils .check_user_sync = MagicMock ()
@@ -1916,12 +1916,21 @@ def test_create_initial_user_for_saas(
19161916 user_utils .get_or_create_user .assert_called_once_with (expected_user_def )
19171917 user_utils .link_user_to_local_idp .assert_called_once_with (user_id , email_password = True )
19181918 user_utils .add_user_to_workspace .assert_called_once_with (user_id , is_workspace_admin = is_workspace_admin )
1919- user_utils .await_mas_application_availability .assert_has_calls ([call ("manage" ), call ("iot" )])
1920- user_utils .set_user_application_permission .assert_has_calls ([
1921- call (user_id , "manage" , manage_role ),
1922- call (user_id , "iot" , application_role ),
1923- call (user_id , "facilities" , facilities_role ),
1924- ])
1919+
1920+ # For version < 9.1, await_mas_application_availability and set_user_application_permission are called
1921+ # For version >= 9.1, they are NOT called
1922+ if mas_version == '9.0' :
1923+ user_utils .await_mas_application_availability .assert_has_calls ([call ("manage" ), call ("iot" )])
1924+ user_utils .set_user_application_permission .assert_has_calls ([
1925+ call (user_id , "manage" , manage_role ),
1926+ call (user_id , "iot" , application_role ),
1927+ call (user_id , "facilities" , facilities_role ),
1928+ ])
1929+ else : # 9.1
1930+ user_utils .await_mas_application_availability .assert_not_called ()
1931+ user_utils .set_user_application_permission .assert_not_called ()
1932+
1933+ # check_user_sync is called for all versions
19251934 user_utils .check_user_sync .assert_has_calls ([
19261935 call (user_id , "manage" ),
19271936 call (user_id , "iot" ),
@@ -1930,12 +1939,24 @@ def test_create_initial_user_for_saas(
19301939
19311940 if len (manage_security_groups ) > 0 :
19321941 user_utils .create_or_get_manage_api_key_for_user .assert_called_once_with ("MAXADMIN" , temporary = True )
1942+
1943+ # For version < 9.1, add_user_to_manage_group is called
1944+ # For version >= 9.1, set_user_group_reassignment_auth is called for PRIMARY users
1945+ if mas_version == '9.0' :
1946+ user_utils .add_user_to_manage_group .assert_has_calls (
1947+ list (map (lambda sg : call (user_id , sg , manage_api_key ), manage_security_groups ))
1948+ )
1949+ user_utils .set_user_group_reassignment_auth .assert_not_called ()
1950+ else : # 9.1
1951+ user_utils .add_user_to_manage_group .assert_not_called ()
1952+ if user_type == "PRIMARY" :
1953+ user_utils .set_user_group_reassignment_auth .assert_called_once_with (user_id , [{"groupname" : "USERMANAGEMENT" }], manage_api_key )
1954+ else :
1955+ user_utils .set_user_group_reassignment_auth .assert_not_called ()
19331956 else :
19341957 user_utils .create_or_get_manage_api_key_for_user .assert_not_called ()
1935-
1936- user_utils .add_user_to_manage_group .assert_has_calls (
1937- map (lambda sg : call (user_id , sg , manage_api_key ), manage_security_groups )
1938- )
1958+ user_utils .add_user_to_manage_group .assert_not_called ()
1959+ user_utils .set_user_group_reassignment_auth .assert_not_called ()
19391960
19401961
19411962def test_create_initial_users_for_saas_invalid_inputs (user_utils ):
0 commit comments