Current section
13 Versions
Jump to
Current section
13 Versions
Compare versions
5
files changed
+34
additions
-21
deletions
| @@ -1,5 +1,5 @@ | |
| 1 1 | {<<"name">>,<<"sumo_db">>}. |
| 2 | - {<<"version">>,<<"0.6.0">>}. |
| 2 | + {<<"version">>,<<"0.6.1">>}. |
| 3 3 | {<<"requirements">>, |
| 4 4 | #{<<"lager">> => #{<<"app">> => <<"lager">>,<<"optional">> => false,<<"requirement">> => <<"3.2.1">>}, |
| 5 5 | <<"uuid_erl">> => #{<<"app">> => <<"uuid">>,<<"optional">> => false,<<"requirement">> => <<"1.5.2-rc1">>}, |
| @@ -2,6 +2,7 @@ | |
| 2 2 | |
| 3 3 | %% Test Cases - Helpers |
| 4 4 | -export([ |
| 5 | + create_schema/1, |
| 5 6 | find/1, |
| 6 7 | find_all/1, |
| 7 8 | find_by/1, |
| @@ -17,6 +18,14 @@ | |
| 17 18 | %%% Test Cases - Helpers |
| 18 19 | %%%============================================================================= |
| 19 20 | |
| 21 | + -spec create_schema(config()) -> ok. |
| 22 | + create_schema(Config) -> |
| 23 | + ok = sumo:create_schema(), |
| 24 | + Tables = mnesia:system_info(tables), |
| 25 | + {_, Name} = lists:keyfind(name, 1, Config), |
| 26 | + true = lists:member(Name, Tables), |
| 27 | + ok. |
| 28 | + |
| 20 29 | -spec find(config()) -> ok. |
| 21 30 | find(Config) -> |
| 22 31 | {_, Name} = lists:keyfind(name, 1, Config), |
| @@ -15,49 +15,53 @@ | |
| 15 15 | |
| 16 16 | -spec find_by_sort(config()) -> ok. |
| 17 17 | find_by_sort(Config) -> |
| 18 | - {_, Module} = lists:keyfind(module, 1, Config), |
| 18 | + {_, Name} = lists:keyfind(name, 1, Config), |
| 19 | + Module = sumo_config:get_prop_value(Name, module), |
| 19 20 | |
| 20 | - [First, Second | _] = sumo:find_by(Module, [{age, '>', 2}], age, 0, 0), |
| 21 | + [First, Second | _] = sumo:find_by(Name, [{age, '>', 2}], age, 0, 0), |
| 21 22 | |
| 22 23 | <<"B">> = Module:name(First), |
| 23 24 | <<"D">> = Module:name(Second), |
| 24 25 | |
| 25 26 | [First1, Second1 | _] = sumo:find_by( |
| 26 | - Module, |
| 27 | + Name, |
| 27 28 | [{age, '>', 2}, {age, '=<', 5}], |
| 28 29 | {age, desc}, 0, 0), |
| 29 30 | <<"C">> = Module:name(First1), |
| 30 31 | <<"D">> = Module:name(Second1), |
| 31 32 | |
| 32 | - [_, _, _] = sumo:find_by(Module, [{age, '>', 2}, {age, '=<', 5}], 0, 0), |
| 33 | + [_, _, _] = sumo:find_by(Name, [{age, '>', 2}, {age, '=<', 5}], 0, 0), |
| 33 34 | ok. |
| 34 35 | |
| 35 36 | -spec find_all_sort(config()) -> ok. |
| 36 37 | find_all_sort( Config) -> |
| 37 | - {_, Module} = lists:keyfind(module, 1, Config), |
| 38 | + {_, Name} = lists:keyfind(name, 1, Config), |
| 39 | + Module = sumo_config:get_prop_value(Name, module), |
| 38 40 | |
| 39 | - [First, Second | _] = sumo:find_all(Module, age, 0, 0), |
| 41 | + [First, Second | _] = sumo:find_all(Name, age, 0, 0), |
| 40 42 | <<"F">> = Module:name(First), |
| 41 43 | <<"E">> = Module:name(Second), |
| 42 44 | |
| 43 45 | [First1, Second1 | _] = sumo:find_all( |
| 44 | - Module, [{last_name, desc}, {age, asc}], 0, 0), |
| 46 | + Name, [{last_name, desc}, {age, asc}], 0, 0), |
| 45 47 | <<"F">> = Module:name(First1), |
| 46 48 | <<"A">> = Module:name(Second1), |
| 47 49 | |
| 48 | - [First2, Second2 | _] = sumo:find_all(Module, last_name, 0, 0), |
| 50 | + [First2, Second2 | _] = sumo:find_all(Name, last_name, 0, 0), |
| 49 51 | <<"E">> = Module:name(First2), |
| 50 52 | <<"D">> = Module:name(Second2), |
| 51 53 | ok. |
| 52 54 | |
| 53 55 | -spec init_store(module()) -> ok. |
| 54 | - init_store(Module) -> |
| 55 | - sumo:create_schema(Module), |
| 56 | - sumo:delete_all(Module), |
| 56 | + init_store(Name) -> |
| 57 | + sumo:create_schema(Name), |
| 58 | + Module = sumo_config:get_prop_value(Name, module), |
| 59 | + sumo:delete_all(Name), |
| 57 60 | |
| 58 | - sumo:persist(Module, Module:new(<<"A">>, <<"E">>, 6)), |
| 59 | - sumo:persist(Module, Module:new(<<"B">>, <<"D">>, 3)), |
| 60 | - sumo:persist(Module, Module:new(<<"C">>, <<"C">>, 5)), |
| 61 | - sumo:persist(Module, Module:new(<<"D">>, <<"B">>, 4)), |
| 62 | - sumo:persist(Module, Module:new(<<"E">>, <<"A">>, 2)), |
| 63 | - sumo:persist(Module, Module:new(<<"F">>, <<"E">>, 1)). |
| 61 | + sumo:persist(Name, Module:new(<<"A">>, <<"E">>, 6)), |
| 62 | + sumo:persist(Name, Module:new(<<"B">>, <<"D">>, 3)), |
| 63 | + sumo:persist(Name, Module:new(<<"C">>, <<"C">>, 5)), |
| 64 | + sumo:persist(Name, Module:new(<<"D">>, <<"B">>, 4)), |
| 65 | + sumo:persist(Name, Module:new(<<"E">>, <<"A">>, 2)), |
| 66 | + sumo:persist(Name, Module:new(<<"F">>, <<"E">>, 1)), |
| 67 | + ok. |
| \ No newline at end of file |
| @@ -119,8 +119,8 @@ get_docs() -> | |
| 119 119 | %% @doc Creates the schema for all known (configured) docs. |
| 120 120 | -spec create_schema() -> ok. |
| 121 121 | create_schema() -> |
| 122 | - lists:foreach(fun({DocName, Store}) -> |
| 123 | - create_schema(DocName, Store) |
| 122 | + lists:foreach(fun({DocName, _, _}) -> |
| 123 | + create_schema(DocName) |
| 124 124 | end, get_docs()). |
| 125 125 | |
| 126 126 | %% @doc Returns 1 doc that matches the given Conditions. |
| @@ -1,6 +1,6 @@ | |
| 1 1 | {application,sumo_db, |
| 2 2 | [{description,"A simple persistance layer"}, |
| 3 | - {vsn,"0.6.0"}, |
| 3 | + {vsn,"0.6.1"}, |
| 4 4 | {id,"sumo_db"}, |
| 5 5 | {registered,[]}, |
| 6 6 | {applications,[kernel,stdlib,sasl,lager,crypto,worker_pool, |