anchor.diff:              [],
               [
                   user_crud_test,
  -                user_space_test
  +                user_space_test,
  +                many_users_space_test,
  +                user_group_test,
  +                many_users_group_test
               ]
           }
           ,
  
positive.code: -include_lib("ctool/include/test/test_utils.hrl").
  -include("dao/dao_users.hrl").
  
  %% TODO
  %% -delete after finishing
  
  -define(PRINT(ARG),
      begin
  
negative.code:     UserReqParams = update_req_params(ProviderReqParams, NewHeaders, headers),
  
      %% get space creation token1
      SCRToken1 = get_space_creation_token(UserReqParams),
  
      SID1 = create_space_for_provider(SCRToken1, ?SPACE_NAME1, ?SPACE_SIZE1, ProviderReqParams),
  
      %% get space creation token2
      SCRToken2 = get_space_creation_token(UserReqParams),
  
      SID2 = create_space_for_provider(SCRToken2, ?SPACE_NAME2, ?SPACE_SIZE2, ProviderReqParams),
  
      SupportedSpaces = get_provider_spaces(ProviderReqParams),
      ?PRINT(SupportedSpaces),
  
  %%     TODO below assert fails
      ?assertMatch(true, is_included([SID1, SID2], SupportedSpaces)),
  
  %% TODO sprawdzanie czy funkcja, ktora nic nie zwraca dzfiala ok, moze powinna zwracac ok
  
      DeleteResponse = delete_provider_space(SID1, ProviderReqParams),
  
      ?assertMatch(ok, check_status(DeleteResponse)),
  
      SupportedSpaces2 = get_provider_spaces(ProviderReqParams),
      ?PRINT(SupportedSpaces2),
  
  %%     TODO below assert fails
      ?assertMatch([[SID2]], SupportedSpaces2),
  
      [
          SID_test, SpaceName_test, {[{ProviderId_test, SpaceSize}]}
      ] = get_provider_space(SID2, ProviderReqParams),
  
      ?assertMatch(
          [
              SID_test, SpaceName_test, ProviderId_test, SpaceSize
          ],
          [
              SID2, ?SPACE_NAME2, ProviderId, binary_to_integer(?SPACE_SIZE2)
          ]
      ).
  
  provider_check_test(Config) ->
      ?PRINT("PROVIDER CHECK TEST"),
      RestAddress = ?config(restAddress, Config),
      ReqParams = {RestAddress, [], []},
  
      ?assertMatch(ok, check_status(check_provider_ip(ReqParams))),
      Response = check_provider_ports(ReqParams),
      ?PRINT(Response),
      ?assertMatch(ok, check_status(Response)).
  
  %%%===================================================================
  
  %% user_rest_module_test_group========================================
  
  user_crud_test(Config) ->
      RestAddress = ?config(restAddress, Config),
      [Node] = ?config(gr_nodes, Config),
      ReqParams = {RestAddress, ?CONTENT_TYPE_HEADER, []},
      
      {ProviderId, ProviderReqParams} =
          register_provider(?URLS1, ?REDIRECTION_POINT1, ?CLIENT_NAME1, Config, ReqParams),
  
       %% create user
      UserId = create_user(?USER_NAME1, Node),
  