moved test
This commit is contained in:
@@ -1,101 +0,0 @@
|
|||||||
%%
|
|
||||||
%%
|
|
||||||
%%
|
|
||||||
|
|
||||||
-module(sqlite_test).
|
|
||||||
|
|
||||||
-include("../src/edbc.hrl").
|
|
||||||
|
|
||||||
-include_lib("eunit/include/eunit.hrl").
|
|
||||||
|
|
||||||
open_single_database_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
ok = gen_db:close(C),
|
|
||||||
ok.
|
|
||||||
|
|
||||||
open_commit_close_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
ok = gen_db:commit(C),
|
|
||||||
ok = gen_db:close(C),
|
|
||||||
ok.
|
|
||||||
|
|
||||||
open_rollback_close_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
ok = gen_db:rollback(C),
|
|
||||||
ok = gen_db:close(C),
|
|
||||||
ok.
|
|
||||||
|
|
||||||
sql_syntax_error_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
{error, sqlite, Msg} = gen_db:run("dit is geen sql", C),
|
|
||||||
{sqlite3_error, "near \"dit\": syntax error"} = Msg,
|
|
||||||
ok.
|
|
||||||
|
|
||||||
%%
|
|
||||||
%%
|
|
||||||
tables_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
[] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("create table table1(first_column char(50), second_column char(10));", C),
|
|
||||||
[table1] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("create table table2(first_column char(50), second_column char(10));", C),
|
|
||||||
[table1, table2] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("create table table3(first_column char(50), second_column char(10));", C),
|
|
||||||
[table1, table2, table3] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("drop table table2;", C),
|
|
||||||
[table1, table3] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("drop table table1;", C),
|
|
||||||
[table3] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("drop table table3;", C),
|
|
||||||
[] = gen_db:tables(C),
|
|
||||||
ok.
|
|
||||||
|
|
||||||
%%
|
|
||||||
%%
|
|
||||||
describe_table_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
[] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("create table table1(first_column char(50) not null,
|
|
||||||
second_column char(10),
|
|
||||||
third_column INTEGER default 10,
|
|
||||||
CONSTRAINT pk_first_column PRIMARY KEY (first_column));", C),
|
|
||||||
[table1] = gen_db:tables(C),
|
|
||||||
[Col1, Col2, Col3] = gen_db:describe_table(table1, C),
|
|
||||||
first_column = Col1#edbc_column_info.name,
|
|
||||||
second_column = Col2#edbc_column_info.name,
|
|
||||||
third_column = Col3#edbc_column_info.name,
|
|
||||||
ok.
|
|
||||||
|
|
||||||
%%
|
|
||||||
%%
|
|
||||||
column_names_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
[] = gen_db:tables(C),
|
|
||||||
ok = gen_db:run("create table table1(first_column CHAR(50) not null,
|
|
||||||
second_column CHAR(10),
|
|
||||||
third_column INTEGER default 10,
|
|
||||||
CONSTRAINT pk_first_column PRIMARY KEY (first_column));", C),
|
|
||||||
[table1] = gen_db:tables(C),
|
|
||||||
[first_column, second_column, third_column] = gen_db:column_names(table1, C).
|
|
||||||
|
|
||||||
%%
|
|
||||||
%%
|
|
||||||
execute_test() ->
|
|
||||||
{ok, C} = gen_db:open(sqlite, [":memory:"]),
|
|
||||||
ok = gen_db:run("create table table1(first_column char(50) not null,
|
|
||||||
second_column char(10),
|
|
||||||
third_column INTEGER default 10,
|
|
||||||
CONSTRAINT pk_first_column PRIMARY KEY (first_column));", C),
|
|
||||||
|
|
||||||
ok = gen_db:run("insert into table1 values(?, ?, ?);", ["hello", "world", 1], C),
|
|
||||||
|
|
||||||
{ok,
|
|
||||||
{first_column, second_column, third_column},
|
|
||||||
[{<<"hello">>, <<"world">>, 1}]} = gen_db:execute("select * from table1", C),
|
|
||||||
|
|
||||||
{ok,
|
|
||||||
{first_column},
|
|
||||||
[{<<"hello">>}]} = gen_db:execute("select t.first_column from table1 t", C),
|
|
||||||
|
|
||||||
ok.
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user