anchor.diff:  
       %% check if GID returned for user2 is the same as GID1
       ?assertMatch(GID1, join_user_to_group(InvitationToken, User2ParamsOtherAddress)),
  +    ensure_effective_users_and_groups_updated(Config),
       ?assertMatch([GID1, ?GROUP_NAME1, ?GROUP_TYPE1_BIN], get_group_info_by_user(GID1, User2ReqParams)),
       ?assertMatch([GID1, ?GROUP_NAME1, ?GROUP_TYPE1_BIN], get_group_info_by_user(GID1, User2ParamsOtherAddress)),
       ?assertMatch(true, is_included([UserId1, UserId2], get_group_users(GID1, User1ReqParams))),
  
positive.code:     ModificationsJson = json_utils:encode_map(Modifications),
      Address = <<(list_to_binary(RestAddress))/binary, "/handle_services/", HSID/binary>>,
      Response = do_request(Address, Headers, patch, ModificationsJson, Options),
      get_body_map(Response).
  
  delete_handle_service(HSID, {RestAddress, Headers, Options}) ->
      Address = <<(list_to_binary(RestAddress))/binary, "/handle_services/", HSID/binary>>,
      Response = do_request(Address, Headers, delete, <<>>, Options),
      get_body_map(Response).
  
  add_user_to_handle_service(HSID, UID, {RestAddress, Headers, Options}) ->
      Address = <<(list_to_binary(RestAddress))/binary, "/handle_services/", HSID/binary, "/users/", UID/binary>>,
      Response = do_request(Address, Headers, put, <<>>, Options),
      get_body_map(Response).
  
  list_users_of_handle_service(HSID, {RestAddress, Headers, Options}) ->
      Address = <<(list_to_binary(RestAddress))/binary, "/handle_services/", HSID/binary, "/users/">>,
  
negative.code: register_provider(URLS, RedirectionPoint, ClientName, Config, ReqParams) ->
      register_provider(undefined, undefined, URLS, RedirectionPoint, ClientName, Config, ReqParams).
  
  register_provider(Latitude, Longitude, URLS, RedirectionPoint, ClientName, Config, ReqParams = {RestAddress, Headers, _Options}) ->
      {KeyFile, CSRFile, CertFile} = ?config(cert_files, Config),
      {ok, CSR} = file:read_file(CSRFile),
      Params = [
  