anchor.diff:      {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) ->
  +    [Worker | _] = ?config(op_worker_nodes, Config),
  +
  +    %%-------- / objectid ----------
  +    RequestHeaders1 = [?CDMI_VERSION_HEADER],
  +    {ok, Code1, Headers1, Response1} = do_request(Worker, "", get, RequestHeaders1, []),
  +    ?assertEqual(200, Code1),
  +
  +    ?assertEqual(<<"application/cdmi-container">>, proplists:get_value(<<"content-type">>, Headers1)),
  +    CdmiResponse1 = json_utils:decode(Response1),
  +    ?assertEqual(<<"/">>, proplists:get_value(<<"objectName">>, CdmiResponse1)),
  +    RootId = proplists:get_value(<<"objectID">>, CdmiResponse1),
  +    ?assertNotEqual(RootId, undefined),
  +    ?assert(is_binary(RootId)),
  +    ?assertEqual(<<>>, proplists:get_value(<<"parentURI">>, CdmiResponse1)),
  +    ?assertEqual(undefined, proplists:get_value(<<"parentID">>, CdmiResponse1)),
  +    ?assertEqual(<<"cdmi_capabilities/container/">>, proplists:get_value(<<"capabilitiesURI">>, CdmiResponse1)),
  +    %%------------------------------
  +
  +    %%------ /dir objectid ---------
  +    RequestHeaders2 = [?CDMI_VERSION_HEADER, ?USER_1_TOKEN_HEADER],
  +    {ok, Code2, _Headers2, Response2} = do_request(Worker, "dir/", get, RequestHeaders2, []),
  +    ?assertEqual(200, Code2),
  +
  +    CdmiResponse2 = json_utils:decode(Response2),
  +    ?assertEqual(<<"dir/">>, proplists:get_value(<<"objectName">>, CdmiResponse2)),
  +    DirId = proplists:get_value(<<"objectID">>, CdmiResponse2),
  +    ?assertNotEqual(DirId, undefined),
  +    ?assert(is_binary(DirId)),
  +    ?assertEqual(<<"/">>, proplists:get_value(<<"parentURI">>, CdmiResponse2)),
  +    ?assertEqual(RootId, proplists:get_value(<<"parentID">>, CdmiResponse2)),
  +    ?assertEqual(<<"cdmi_capabilities/container/">>, proplists:get_value(<<"capabilitiesURI">>, CdmiResponse2)),
  +    %%------------------------------
  +
  +    %%--- /dir/file.txt objectid ---
  +    RequestHeaders3 = [?CDMI_VERSION_HEADER, ?USER_1_TOKEN_HEADER],
  +    {ok, Code3, _Headers3, Response3} = do_request(Worker, "dir/file.txt", get, RequestHeaders3, []),
  +    ?assertEqual(200, Code3),
  +
  +    CdmiResponse3 = json_utils:decode(Response3),
  +    ?assertEqual(<<"file.txt">>, proplists:get_value(<<"objectName">>, CdmiResponse3)),
  +    FileId = proplists:get_value(<<"objectID">>, CdmiResponse3),
  +    ?assertNotEqual(FileId, undefined),
  +    ?assert(is_binary(FileId)),
  +    ?assertEqual(<<"/dir/">>, proplists:get_value(<<"parentURI">>, CdmiResponse3)),
  +    ?assertEqual(DirId, proplists:get_value(<<"parentID">>, CdmiResponse3)),
  +    ?assertEqual(<<"cdmi_capabilities/dataobject/">>, proplists:get_value(<<"capabilitiesURI">>, CdmiResponse3)),
  +    %%------------------------------
  +
  +    %%---- get / by objectid -------
  +    RequestHeaders4 = [?CDMI_VERSION_HEADER, ?USER_1_TOKEN_HEADER],
  +    {ok, Code4, _Headers4, Response4} = do_request(Worker, "cdmi_objectid/" ++ binary_to_list(RootId) ++ "/", get, RequestHeaders4, []),
  +    ?assertEqual(200, Code4),
  +
  +    CdmiResponse4 = json_utils:decode(Response4),
  +    ?assertEqual(proplists:delete(<<"metadata">>, CdmiResponse1), proplists:delete(<<"metadata">>, CdmiResponse4)), %should be the same as in 1 (except metadata)
  +    %%------------------------------
  +
  +    %%--- get /dir/ by objectid ----
  +    RequestHeaders5 = [?CDMI_VERSION_HEADER, ?USER_1_TOKEN_HEADER],
  +    {ok, Code5, _Headers5, Response5} = do_request(Worker, "cdmi_objectid/" ++ binary_to_list(DirId) ++ "/", get, RequestHeaders5, []),
  +    ?assertEqual(200, Code5),
  +
  +    CdmiResponse5 = json_utils:decode(Response5),
  +    ?assertEqual(proplists:delete(<<"metadata">>, CdmiResponse2), proplists:delete(<<"metadata">>, CdmiResponse5)), %should be the same as in 2 (except metadata)
  +    %%------------------------------
  +
  +    %% get /dir/file.txt by objectid
  +    RequestHeaders6 = [?CDMI_VERSION_HEADER, ?USER_1_TOKEN_HEADER],
  +    {ok, Code6, _Headers6, Response6} = do_request(Worker, "cdmi_objectid/" ++ binary_to_list(DirId) ++ "/file.txt", get, RequestHeaders6, []),
  +    ?assertEqual(200, Code6),
  +    CdmiResponse6 = json_utils:decode(Response6),
  +
  +    ?assertEqual(proplists:delete(<<"metadata">>, CdmiResponse3), proplists:delete(<<"metadata">>, CdmiResponse6)), %should be the same as in 3 (except metadata)
  +
  +    {ok, Code7, _Headers7, Response7} = do_request(Worker, "cdmi_objectid/" ++ binary_to_list(FileId), get, RequestHeaders6, []),
  +    ?assertEqual(200, Code7),
  +
  +    CdmiResponse7 = json_utils:decode(Response7),
  +    ?assertEqual(proplists:delete(<<"metadata">>, CdmiResponse7), proplists:delete(<<"metadata">>, CdmiResponse6)). %should be the same as in 3 (except metadata)
  +%%------------------------------
   
   % tests if capabilities of objects, containers, and whole storage system are set properly
   capabilities_test(Config) ->
  
positive.code:     RequestBody11 = [{<<"metadata">>, [{<<"my_metadata">>, <<"my_dir_value">>}]}],
      RawRequestBody11 = json_utils:encode(RequestBody11),
      {ok, 201, _Headers11, Response11} = do_request(Worker, DirName, put, RequestHeaders2, RawRequestBody11),
      ct:print("~p", [Response11]),
      CdmiResponse11 = json_utils:decode(Response11),
      Metadata11 = proplists:get_value(<<"metadata">>, CdmiResponse11),
      ?assertEqual(<<"my_dir_value">>, proplists:get_value(<<"my_metadata">>, Metadata11)),
  
negative.code: 
  -export([get_file_test/1, metadata_test/1, delete_file_test/1, create_file_test/1, update_file_test/1,
      create_dir_test/1, capabilities_test/1, choose_adequate_handler/1,
      use_supported_cdmi_version/1, use_unsupported_cdmi_version/1, objectid_test/1]).
  
  -performance({test_cases, []}).
  all() ->
      [
          get_file_test, metadata_test, delete_file_test, create_file_test, update_file_test,
          create_dir_test, capabilities_test, objectid_test, choose_adequate_handler,
          use_supported_cdmi_version, use_unsupported_cdmi_version
      ].
  
  