anchor.diff:      ?assertEqual(<<"data">>, get_file_content(FileName)),
       %%------------------------------
   
  -    %%------ writing at random --------
  +    %%------ writing at random -------- (should return zero bytes in any gaps)
       RequestBody3 = rest_utils:encode_to_json([{<<"value">>, base64:encode(<<"data">>)}]),
       {Code3, _Headers3, _Response3} = do_request(FileName ++ "?value:10-13", put, RequestHeaders2, RequestBody3),
       ?assertEqual("204",Code3),
  
positive.code:     add_xattrs(FileName2, Xattrs),
      write_to_file(FileName2, FileData2),
  
      %%---------- file cp -----------
      NewFileName2 = "copy_test_file2.txt",
      ?assert(object_exists(FileName2)),
      ?assert(not object_exists(NewFileName2)),
      ?assertEqual(FileData2, get_file_content(FileName2)),
      ?assertEqual({ok, Acl}, get_file_acl(FileName2)),
  
      RequestHeaders4 = [{"X-CDMI-Specification-Version", "1.0.2"}, {"Content-Type", "application/cdmi-object"}],
      RequestBody4 = rest_utils:encode_to_json([{<<"copy">>, list_to_binary(FileName2)}]),
      {Code4, _Headers4, _Response4} = do_request(NewFileName2, put, RequestHeaders4, RequestBody4),
      ?assertEqual("201", Code4),
  
      ?assert(object_exists(FileName2)),
      ?assert(object_exists(NewFileName2)),
      ?assertEqual(FileData2, get_file_content(NewFileName2)),
  
negative.code:     ?assertEqual(<<Chunk1/binary, Chunk2/binary, Chunk3/binary>>, proplists:get_value(<<"value">>, CdmiResponse4)),
      %%------------------------------
  
      %%----- non-cdmi request partial upload -------
      ?assert(not object_exists(FileName2)),
  
      % upload first chunk of file
      RequestHeaders5 = [{"X-CDMI-Partial", "true"}],
      {Code5, _Headers5, _Response5} = do_request(FileName2, put, RequestHeaders5, Chunk1),
      ?assertEqual("201",Code5),
  
      % check "completionStatus", should be set to "Processing"
      {Code5_1, _Headers5_1, Response5_1} = do_request(FileName2 ++ "?completionStatus", get, RequestHeaders4, Chunk1),
      {struct, CdmiResponse5_1} = mochijson2:decode(Response5_1),
      ?assertEqual("200",Code5_1),
      ?assertEqual(<<"Processing">>, proplists:get_value(<<"completionStatus">>, CdmiResponse5_1)),
  
      % upload second chunk of file
      RequestHeaders6 = [{"content-range", "4-4"}, {"X-CDMI-Partial", "true"}],
      {Code6, _Headers6, _Response6} = do_request(FileName2, put, RequestHeaders6, Chunk2),
      ?assertEqual("204",Code6),
  
      % upload third chunk of file
      RequestHeaders7 = [{"content-range", "5-9"}, {"X-CDMI-Partial", "false"}],
      {Code7, _Headers7, _Response7} = do_request(FileName2, put, RequestHeaders7, Chunk3),
      ?assertEqual("204",Code7),
  
      % get created file and check its consistency
      RequestHeaders8 = [{"X-CDMI-Specification-Version", "1.0.2"}],
      {Code8, _Headers8, Response8} = do_request(FileName2, get, RequestHeaders8, []),
      ?assertEqual("200",Code8),
  