diff --git a/Makefile.in b/Makefile.in index f697380..5c8e882 100644 --- a/Makefile.in +++ b/Makefile.in @@ -14,7 +14,7 @@ all: compile docs test: compile_test $(ERL) -noshell -pa ebin \ - -eval 'eunit:dir("ebin")' \ + -eval 'eunit:test({dir, "ebin"})' \ -s init stop compile: compile_c diff --git a/src/sqlite3_test.erl b/src/sqlite3_test.erl index 1326617..890a91b 100644 --- a/src/sqlite3_test.erl +++ b/src/sqlite3_test.erl @@ -7,11 +7,6 @@ %%%------------------------------------------------------------------- -module(sqlite3_test). -%% API --export([create_table_test/0]). - --record(user, {name, age, wage}). - %%==================================================================== %% API %%==================================================================== @@ -19,20 +14,32 @@ %% Function: %% Description: %%-------------------------------------------------------------------- +-ifdef(TEST). +-include_lib("eunit/include/eunit.hrl"). + create_table_test() -> file:delete("ct.db"), sqlite3:open(ct), - sqlite3:create_table(ct, user, [{name, text}, {age, integer}, {wage, integer}]), + sqlite3:create_table(ct, user, [{id, integer, [primary_key]}, {name, text}, {age, integer}, {wage, integer}]), [user] = sqlite3:list_tables(ct), - [{name, primary_key}, {age, integer}, {wage, integer}] = sqlite3:table_info(ct, user), - sqlite3:write(ct, user, [{name, "abby"}, {age, 20}, {wage, 2000}]), - sqlite3:write(ct, user, [{name, "marge"}, {age, 30}, {wage, 3000}]), - sqlite3:sql_exec(ct, "select * from user;"), - sqlite3:read(ct, user, {name, "abby"}), + [{id, integer, [primary_key]}, {name, text}, {age, integer}, {wage, integer}] = sqlite3:table_info(ct, user), + {id, Id1} = sqlite3:write(ct, user, [{name, "abby"}, {age, 20}, {wage, 2000}]), + Id1 = 1, + {id, Id2} = sqlite3:write(ct, user, [{name, "marge"}, {age, 30}, {wage, 2000}]), + Id2 = 2, + [{columns, Columns}, {rows, Rows1}] = sqlite3:sql_exec(ct, "select * from user;"), + Columns = ["id", "name", "age", "wage"], + Rows1 = [{1, <<"abby">>, 20, 2000}, {2, <<"marge">>, 30, 2000}], + [{columns, Columns}, {rows, Rows2}] = sqlite3:read(ct, user, {name, "abby"}), + Rows2 = [{1, <<"abby">>, 20, 2000}], + [{columns, Columns}, {rows, Rows1}] = sqlite3:read(ct, user, {wage, 2000}), sqlite3:delete(ct, user, {name, "abby"}), sqlite3:drop_table(ct, user), %sqlite3:delete_db(ct) sqlite3:close(ct). + +-endif. + % create, read, update, delete %%==================================================================== %% Internal functions