removeItem with test.

This commit is contained in:
Kallfaktorn 2011-02-21 22:59:11 +01:00
parent e55e0bd8a3
commit c66d1cef69
2 changed files with 18 additions and 3 deletions

View file

@ -7,7 +7,7 @@
-module(ggs_db). -module(ggs_db).
-import(mnesia). -import(mnesia).
%-compile({no_auto_import,[length/2]}). %-compile({no_auto_import,[length/2]}).
-export([init/0,setItem/4,getItem/3,length/2]). -export([init/0,setItem/4,getItem/3,removeItem/3,length/2]).
-include("ggs_db.hrl"). -include("ggs_db.hrl").
%%----------------------------------------------------- %%-----------------------------------------------------
@ -35,6 +35,15 @@ setItem(Db,Ns,Key,Value) ->
mnesia:transaction(Fun). mnesia:transaction(Fun).
%%-----------------------------------------------------
%% Deletions
%%-----------------------------------------------------
removeItem(Db,Ns,Key) ->
Fun = fun() ->
mnesia:delete({data,{Db,Ns,Key}})
end,
mnesia:transaction(Fun).
%%----------------------------------------------------- %%-----------------------------------------------------
%% Querries %% Querries
@ -53,3 +62,5 @@ length(Db,Ns) ->
end, end,
{atomic, Ret} = mnesia:transaction(Fun), {atomic, Ret} = mnesia:transaction(Fun),
Ret. Ret.

View file

@ -9,7 +9,7 @@
%Key should be a tuple of two elements %Key should be a tuple of two elements
get_set_test() -> getItem_setItem_test() ->
mnesia:start(), mnesia:start(),
ggs_db:init(), ggs_db:init(),
ggs_db:setItem("dbname","nsname","keyname","Hello"), ggs_db:setItem("dbname","nsname","keyname","Hello"),
@ -20,7 +20,11 @@ length_test() ->
ggs_db:setItem(1,2,2,"122"), ggs_db:setItem(1,2,2,"122"),
ggs_db:setItem(1,1,3,"113"), ggs_db:setItem(1,1,3,"113"),
ggs_db:setItem(1,1,4,"114"), ggs_db:setItem(1,1,4,"114"),
?assertEqual(ggs_db:length(1,1), 3), ?assertEqual(ggs_db:length(1,1), 3).
removeItem_test() ->
ggs_db:removeItem(1,1,4),
?assertNot(ggs_db:getItem(1,1,4) =:= {atomic,"114"}),
mnesia:stop(). mnesia:stop().
%cleanup(Val) -> %cleanup(Val) ->