anchor.diff:      boolean().
   assert_file_uploaded(ProviderSelector, UserSelector, FileGuid, ExpSize) ->
       UserSessId = oct_background:get_user_session_id(UserSelector, ProviderSelector),
  -    Worker = oct_background:get_random_provider_node(ProviderSelector),
  +    Node = oct_background:get_random_provider_node(ProviderSelector),
   
       ?assertMatch(
           {ok, #file_attr{size = ExpSize}},
  -        lfm_proxy:stat(Worker, UserSessId, ?FILE_REF(FileGuid)),
  +        lfm_proxy:stat(Node, UserSessId, ?FILE_REF(FileGuid)),
           ?ATTEMPTS
       ),
  -    {ok, FileHandle} = lfm_proxy:open(Worker, UserSessId, ?FILE_REF(FileGuid), read),
  -    {ok, Data} = ?assertMatch({ok, _}, lfm_proxy:read(Worker, FileHandle, 0, ExpSize)),
  +    {ok, FileHandle} = lfm_proxy:open(Node, UserSessId, ?FILE_REF(FileGuid), read),
  +    {ok, Data} = ?assertMatch({ok, _}, lfm_proxy:read(Node, FileHandle, 0, ExpSize)),
       ?assert(lists:all(fun(X) -> X == true end, [$a == Char || <<Char>> <= Data])),
  -    lfm_proxy:close(Worker, FileHandle).
  +    lfm_proxy:close(Node, FileHandle).
   
   
   %% @private
   -spec mock_cowboy_multipart(oct_background:entity_selector()) -> ok.
   mock_cowboy_multipart(ProviderPlaceholder) ->
  -    Workers = oct_background:get_provider_nodes(ProviderPlaceholder),
  -    ok = test_utils:mock_new(Workers, cow_multipart),
  -    ok = test_utils:mock_new(Workers, cowboy_req),
  -    ok = test_utils:mock_expect(Workers, cow_multipart, form_data,
  +    Nodes = oct_background:get_provider_nodes(ProviderPlaceholder),
  +    ok = test_utils:mock_new(Nodes, cow_multipart),
  +    ok = test_utils:mock_new(Nodes, cowboy_req),
  +    ok = test_utils:mock_expect(Nodes, cow_multipart, form_data,
           fun(_) -> {file, ok, ok, ok} end
       ),
  -    ok = test_utils:mock_expect(Workers, cowboy_req, read_part,
  +    ok = test_utils:mock_expect(Nodes, cowboy_req, read_part,
           fun
               (#{done := true} = Req) ->
                   {done, Req};
  
positive.code:                 {ok, [], Req}
          end
      ),
      ok = test_utils:mock_expect(Workers, cowboy_req, read_part_body,
          fun
              (#{left := 1, size := Size} = Req, _) ->
                  {ok, <<<<$a>> || _ <- lists:seq(1, Size)>>, Req#{done => true}};
  
negative.code:     oct_background:end_per_suite().
  
  
  init_per_group(time_mock_tests = Group, Config) ->
      time_test_utils:freeze_time(Config),
      init_per_group(?DEFAULT_CASE(Group), Config);
  
  init_per_group(_Group, Config) ->
      mock_cowboy_multipart(krakow),
      lfm_proxy:init(Config, false).
  
  
  end_per_group(time_mock_tests = Group, Config) ->
      time_test_utils:unfreeze_time(Config),
      end_per_group(?DEFAULT_CASE(Group), Config);
  
  end_per_group(_Group, Config) ->
      unmock_cowboy_multipart(krakow),
      lfm_proxy:teardown(Config).
  
  
  init_per_testcase(_Case, Config) ->
      ct:timetrap({minutes, 5}),
      Config.
  
  
  end_per_testcase(_Case, _Config) ->
      ok.
  