anchor.diff:      RequestHeaders4 = [?USER_1_TOKEN_HEADER, ?CDMI_VERSION_HEADER, ?CONTAINER_CONTENT_TYPE_HEADER],
       {ok, Code4, _Headers4, _Response4} = do_request(Worker, DirWithoutParentName, put, RequestHeaders4, []),
       ?assertEqual(500, Code4). %todo handle this error in lfm
  -%%------------------------------
  +    %%------------------------------
   
   % tests access to file by objectid
   objectid_test(Config) ->
  
positive.code: 
      ?assert(object_exists(Config, ToCreate5)),
      ?assertEqual(FileContent, get_file_content(Config, ToCreate5)).
  %%------------------------------
  
  % Tests cdmi object PUT requests (updating content)
  update_file_test(Config) ->
  
negative.code:     ?assertEqual(<<Chunk1/binary, Chunk2/binary, Chunk3/binary>>, base64:decode(proplists:get_value(<<"value">>, CdmiResponse8))).
      %%------------------------------
  
  % tests access control lists
  acl_test(Config) ->
      [Worker | _] = ?config(op_worker_nodes, Config),
      Filename1 = "acl_test_file1",
      Dirname1 = "acl_test_dir1/",
      UserId1 = ?config({user_id, 1}, Config),
      UserName1 = ?config({user_name, 1}, Config),
      Identifier1 = <<UserName1/binary, "#", UserId1/binary>>,
  
      Read = [
          {<<"acetype">>, <<"ALLOW">>},
          {<<"identifier">>, Identifier1},
          {<<"aceflags">>, <<"NO_FLAGS">>},
          {<<"acemask">>, <<"READ">>}
      ],
      Write = [
          {<<"acetype">>, <<"ALLOW">>},
          {<<"identifier">>, Identifier1},
          {<<"aceflags">>, <<"NO_FLAGS">>},
          {<<"acemask">>, <<"WRITE">>}
      ],
      _Execute = [
          {<<"acetype">>, <<"ALLOW">>},
          {<<"identifier">>, Identifier1},
          {<<"aceflags">>, <<"NO_FLAGS">>},
          {<<"acemask">>, <<"EXECUTE">>}
      ],
  
      MetadataAclRead = json_utils:encode([{<<"metadata">>, [{<<"cdmi_acl">>, [Read]}]}]),
      MetadataAclWrite = json_utils:encode([{<<"metadata">>, [{<<"cdmi_acl">>, [Write]}]}]),
      MetadataAclReadWrite = json_utils:encode([{<<"metadata">>, [{<<"cdmi_acl">>, [Write, Read]}]}]),
  
      %%----- read file test ---------
      % create test file with dummy data
      ?assert(not object_exists(Config, Filename1)),
      create_file(Config, filename:join("/", Filename1)),
      write_to_file(Config, Filename1, <<"data">>, 0),
  
      % set acl to 'write' and test cdmi/non-cdmi get request (should return 403 forbidden)
      RequestHeaders1 = [?USER_1_TOKEN_HEADER, ?CDMI_VERSION_HEADER, ?OBJECT_CONTENT_TYPE_HEADER],
      {ok, 204, _, _} = do_request(Worker, Filename1, put, RequestHeaders1, MetadataAclWrite),
      {ok, 403, _, _} = do_request(Worker, Filename1, get, RequestHeaders1, []),
      {ok, 403, _, _} = do_request(Worker, Filename1, get, [], []),
      ?assertEqual({wrong_open_return_code, -13}, get_file_content(Config, Filename1)),
  
  
      % set acl to 'read&write' and test cdmi/non-cdmi get request (should succeed)
      {ok, 204, _, _} = do_request(Worker, Filename1, put, RequestHeaders1, MetadataAclReadWrite),
      {ok, 200, _, _} = do_request(Worker, Filename1, get, RequestHeaders1, []),
      {ok, 200, _, _} = do_request(Worker, Filename1, get, [], []),
      %%------------------------------
  
      %%------- write file test ------
      % set acl to 'read&write' and test cdmi/non-cdmi put request (should succeed)
      {ok, 204, _, _} = do_request(Worker, Filename1, put, RequestHeaders1, MetadataAclReadWrite),
      RequestBody4 = json_utils:encode([{<<"value">>, <<"new_data">>}]),
      {ok, 204, _, _} = do_request(Worker, Filename1, put, RequestHeaders1, RequestBody4),
      ?assertEqual(<<"new_data">>, get_file_content(Config, Filename1)),
      write_to_file(Config, Filename1, <<"1">>, 0),
      ?assertEqual(<<"new_data1">>, get_file_content(Config, Filename1)),
      {ok, 204, _, _} = do_request(Worker, Filename1, put, [], <<"new_data2">>),
      ?assertEqual(<<"new_data2">>, get_file_content(Config, Filename1)),
  
      % set acl to 'read' and test cdmi/non-cdmi put request (should return 403 forbidden)
      {ok, 204, _, _} = do_request(Worker, Filename1, put, RequestHeaders1, MetadataAclRead),
      RequestBody6 = json_utils:encode([{<<"value">>, <<"new_data3">>}]),
      {ok, 403, _, _} = do_request(Worker, Filename1, put, RequestHeaders1, RequestBody6),
      {ok, 403, _, _} = do_request(Worker, Filename1, put, [], <<"new_data4">>),
      ?assertEqual(<<"new_data2">>, get_file_content(Config, Filename1)),
      ?assertEqual({wrong_open_return_code, -13}, write_to_file(Config, Filename1, <<"some_data">>, 0)),
      ?assertEqual(<<"new_data2">>, get_file_content(Config, Filename1)),
      %%------------------------------
  
      %%------ delete file test ------
      {ok, 204, _, _} = do_request(Worker, Filename1, delete, [], []),
      ?assert(not object_exists(Config, Filename1)),
      %%------------------------------
  
      %%--- read write dir test ------
      ?assert(not object_exists(Config, Dirname1)),
      mkdir(Config, filename:join("/", Dirname1)),
      File1 = filename:join(Dirname1, "1"),
      File2 = filename:join(Dirname1, "2"),
      File3 = filename:join(Dirname1, "3"),
      File4 = filename:join(Dirname1, "4"),
  
      % set acl to 'read&write' and test cdmi get request (should succeed)
      RequestHeaders2 = [?USER_1_TOKEN_HEADER, ?CDMI_VERSION_HEADER, ?CONTAINER_CONTENT_TYPE_HEADER],
      {ok, 204, _, _} = do_request(Worker, Dirname1, put, RequestHeaders2, MetadataAclReadWrite),
      {ok, 200, _, _} = do_request(Worker, Dirname1, get, RequestHeaders2, []),
  
      % create files in directory (shoul succeed)
      {ok, 201, _, _} = do_request(Worker, File1, put, [], []),
      ?assert(object_exists(Config, File1)),
      {ok, 201, _, _} = do_request(Worker, File2, put, RequestHeaders1, <<"{\"value\":\"val\"}">>),
      ?assert(object_exists(Config, File2)),
      create_file(Config, File3),
      ?assert(object_exists(Config, File3)),
  
      % delete files (should succeed)
      {ok, 204, _, _} = do_request(Worker, File1, delete, [], []),
      ?assert(not object_exists(Config, File1)),
      {ok, 204, _, _} = do_request(Worker, File2, delete, [], []),
      ?assert(not object_exists(Config, File2)),
  
      % set acl to 'write' and test cdmi get request (should return 403 forbidden)
      {ok, 204, _, _} = do_request(Worker, Dirname1, put, RequestHeaders2, MetadataAclWrite),
      {ok, 403, _, _} = do_request(Worker, Dirname1, get, RequestHeaders2, []),
  
      % set acl to 'read' and test cdmi put request (should return 403 forbidden)
      {ok, 204, _, _} = do_request(Worker, Dirname1, put, RequestHeaders2, MetadataAclRead),
      {ok, 200, _, _} = do_request(Worker, Dirname1, get, RequestHeaders2, []),
      {ok, 403, _, _} = do_request(Worker, Dirname1, put, RequestHeaders2, json_utils:encode([{<<"metadata">>, [{<<"my_meta">>, <<"value">>}]}])),
  
      % create files (should return 403 forbidden)
      {ok, 403, _, _} = do_request(Worker, File1, put, [], []),
      ?assert(not object_exists(Config, File1)),
      {ok, 403, _, _} = do_request(Worker, File2, put, RequestHeaders1, <<"{\"value\":\"val\"}">>),
      ?assert(not object_exists(Config, File2)),
      ?assertEqual({logical_file_system_error, "eacces"}, create_file(Config, File4)),
      ?assert(not object_exists(Config, File4)),
  
      % delete files (should return 403 forbidden)
      {ok, 403, _, _} = do_request(Worker, File3, delete, [], []),
      ?assert(object_exists(Config, File3)).
      %%------------------------------
  
  %%%===================================================================
  %%% SetUp and TearDown functions
  