anchor.diff:      end;
   get(Key,DataObject,Default) ->
       ?MODULE:get(Key,decode(DataObject), Default).
  -
   
   %% @doc Add a value to a IMEM Json data object
   %% Should Key already exist, old value will be replaced
  
positive.code:      , [{"proplist", ?_assertEqual(Keys,keys(?TEST_PROP))}
          , {"map", ?_assertEqual(lists:sort(Keys),lists:sort(keys(?TEST_MAP)))}
          , {"json", ?_assertEqual(Keys,keys(?TEST_JSON))}]}.
  
  map_map_test_() -> 
      Job = fun(<<"age">>,_) -> 8000;
               (_,true) -> false;
               (_,V) -> V end,
      PropOut = map(Job,?TEST_PROP),
      MapOut = map(Job,?TEST_MAP),
      JsonOut = map(Job,?TEST_JSON),
      {inparallel
       , [{"proplist"
           , ?_assertEqual(8000, proplists:get_value(<<"age">>,PropOut))}
          , {"proplist"
             , ?_assertEqual(false
                             , proplists:get_value(<<"earthling">>,PropOut))}
          , {"map",?_assertEqual(8000, maps:get(<<"age">>,MapOut))}
          , {"map",?_assertEqual(false,maps:get(<<"earthling">>,MapOut))}
          , {"json",?_assertEqual(8000, ?MODULE:get(<<"age">>,JsonOut))}
          , {"json",?_assertEqual(false,?MODULE:get(<<"earthling">>,JsonOut))}
         ]}.
  
  new_test_() -> 
      %% Depends on default type setting
      Test = [],
      {inparallel
       , [{"proplist",?_assertEqual([],new(proplist))}
          , {"map",?_assertEqual(#{},new(map))}
          , {"json",?_assertEqual(<<"{}">>,new(json))}
          , {"default",?_assertEqual(Test,new())}]}.
  
  put_test_() -> 
      {inparallel
  
negative.code:                           ,?MODULE:put(<<"test">>,1,<<"{\"test\":2}">>))}
         ]}.
  
  size_test_() -> 
      {inparallel
       , [{"proplist",?_assertEqual(5,?MODULE:size(?TEST_PROP))}
  