anchor.diff:  
   
   -define(assert_match(__Expect, __Expression, __ScenarioName, __PermsPerGuid),
  -    try
  -        ?assertMatch(__Expect, __Expression)
  -    catch _:_ ->
  -        ct:pal(
  -            "PERMISSIONS TESTS FAILURE~n"
  -            "   Scenario: ~p~n"
  -            "   Perms per file: ~p~n",
  -            [
  -                __ScenarioName,
  -                maps:fold(fun(G, SetPerms, Acc) ->
  -                    Acc#{get_file_path(Node, OwnerSessId, G) => SetPerms}
  -                end, #{}, __PermsPerGuid)
  -            ]
  -        ),
  -        erlang:error(perms_test_failed)
  -    end
  +    (fun() ->
  +        try
  +            ?assertMatch(__Expect, __Expression)
  +        catch _:__Reason ->
  +            ct:pal(
  +                "PERMISSIONS TESTS FAILURE~n"
  +                "   Scenario: ~p~n"
  +                "   Perms per file: ~p~n"
  +                "   Reason: ~p~n",
  +                [
  +                    __ScenarioName,
  +                    maps:fold(fun(G, SetPerms, Acc) ->
  +                        Acc#{get_file_path(Node, OwnerSessId, G) => SetPerms}
  +                    end, #{}, __PermsPerGuid),
  +                    __Reason
  +                ]
  +            ),
  +            erlang:error(perms_test_failed)
  +        end
  +    end)()
   ).
   
   -define(assert_not_match(__Expect, __Expression, __ScenarioName, __PermsPerGuid),
  -    try
  -        ?assertNotMatch(__Expect, __Expression)
  -    catch _:_ ->
  -        ct:pal(
  -            "PERMISSIONS TESTS FAILURE~n"
  -            "   Scenario: ~p~n"
  -            "   Perms per file: ~p~n",
  -            [
  -                __ScenarioName,
  -                maps:fold(fun(Guid, SetPerms, Acc) ->
  -                    Acc#{get_file_path(Node, OwnerSessId, Guid) => SetPerms}
  -                end, #{}, __PermsPerGuid)
  -            ]
  -        ),
  -        erlang:error(perms_test_failed)
  -    end
  +    (fun() ->
  +        try
  +            ?assertNotMatch(__Expect, __Expression)
  +        catch _:__Reason ->
  +            ct:pal(
  +                "PERMISSIONS TESTS FAILURE~n"
  +                "   Scenario: ~p~n"
  +                "   Perms per file: ~p~n"
  +                "   Reason: ~p~n",
  +                [
  +                    __ScenarioName,
  +                    maps:fold(fun(Guid, SetPerms, Acc) ->
  +                        Acc#{get_file_path(Node, OwnerSessId, Guid) => SetPerms}
  +                    end, #{}, __PermsPerGuid),
  +                    __Reason
  +                ]
  +            ),
  +            erlang:error(perms_test_failed)
  +        end
  +    end)()
   ).
   
   -define(SCENARIO_NAME(__PREFIX, __TYPE),
  
positive.code:     OwnerSessId = ?config({session_id, {OwnerId, ?GET_DOMAIN(Node)}}, Config),
  
      % If operation requires space priv it should fail without it and succeed with it
      initializer:testmaster_mock_space_user_privileges(
          [Node], SpaceId, UserId, AllSpacePrivs -- RequiredPrivs
      ),
      ?assertMatch(
          {error, ?EACCES},
          Operation(OwnerSessId, UserSessId, RootDirPath, ExtraData)
      ),
  
      % invalidate permission cache as it is not done due to initializer mocks
      invalidate_perms_cache(Node),
  
negative.code: 
      case OperationRequiresOwnership of
          true ->
              % If operation requires ownership then for group member it should fail
              % even if all files modes are set to 777
              lfm_permissions_test_utils:set_modes(Node, maps:map(fun(_, _) -> 8#777 end, ComplementaryPermsPerFile)),
              ?assertMatch(
  