aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Cully <bjc@kublai.com>2012-02-07 22:48:05 -0500
committerBrian Cully <github.20.shmit@spamgourmet.com>2012-02-07 22:48:05 -0500
commitb30f9f94e9f7bf097007a8577467940ec11193d2 (patch)
treedbd897e60da909c116684a4016db83926f23cbda
parent29df8ec1113f91bf54d5d26840911c2643e27c6b (diff)
downloadmysqlerl-b30f9f94e9f7bf097007a8577467940ec11193d2.tar.gz
mysqlerl-b30f9f94e9f7bf097007a8577467940ec11193d2.zip
Stick default query in macro for tests. Add tests for select/3.
-rw-r--r--test/mysqlerl_SUITE.erl61
1 files changed, 35 insertions, 26 deletions
diff --git a/test/mysqlerl_SUITE.erl b/test/mysqlerl_SUITE.erl
index 34a70c7..dc677b9 100644
--- a/test/mysqlerl_SUITE.erl
+++ b/test/mysqlerl_SUITE.erl
@@ -12,6 +12,7 @@
-include_lib("common_test/include/ct.hrl").
+-define(Q, "SELECT username, password FROM user ORDER BY username ASC").
-define(COLS, ["username", "password"]).
%%--------------------------------------------------------------------
@@ -149,10 +150,10 @@ groups() ->
{read_queries, [shuffle],
[describe_table, sql_query, param_query, select_count]},
{cursor, [shuffle],
- [select, first, last, next, prev,
+ [first, last, next, prev,
next_after_first, next_after_last, prev_after_first, prev_after_last,
next_all, prev_all, next_prev_next, prev_next_prev,
- select_relative, select_absolute]},
+ select_next, select_relative, select_absolute]},
{trans, [sequence],
[commit, rollback]}].
@@ -164,7 +165,7 @@ groups() ->
%% Reason = term()
%% @end
%%--------------------------------------------------------------------
-all() ->
+all() ->
[{group, all}].
%%--------------------------------------------------------------------
@@ -190,93 +191,101 @@ describe_table(Config) ->
sql_query(Config) ->
{selected, ?COLS, Rows} = mysqlerl:sql_query(?config(db_ref, Config),
- "SELECT * FROM user"),
+ ?Q),
[{"bjc", _}, {"siobain", _}] = Rows.
param_query(Config) ->
{selected, ?COLS, Rows} = mysqlerl:param_query(?config(db_ref, Config),
"SELECT * FROM user WHERE username=?",
[{{sql_varchar, 20}, "bjc"}]),
- [{"bjc"}] = Rows.
+ [{"bjc", _}] = Rows.
select_count(Config) ->
{ok, 2} = mysqlerl:select_count(?config(db_ref, Config),
"SELECT username FROM user").
-select(Config) ->
- mysqlerl:sql_query(?config(db_ref, Config), "SELECT * FROM user"),
+select_next(Config) ->
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
{selected, ?COLS, Rows} = mysqlerl:select(?config(db_ref, Config),
- 1, 1),
+ next, 1),
[{"bjc", _}] = Rows.
-select_absolute(_Config) ->
- {skip, "Not implemented."}.
+select_absolute(Config) ->
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
+ mysqlerl:next(?config(db_ref, Config)),
+ {selected, ?COLS, Rows} = mysqlerl:select(?config(db_ref, Config),
+ {absolute, 1}, 1),
+ [{"bjc", _}] = Rows.
-select_relative(_Config) ->
- {skip, "Not implemented."}.
+select_relative(Config) ->
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
+ mysqlerl:next(?config(db_ref, Config)),
+ {selected, ?COLS, Rows} = mysqlerl:select(?config(db_ref, Config),
+ {relative, 1}, 1),
+ [{"siobain", _}] = Rows.
-first(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+first(Config) ->
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
{selected, ?COLS, Rows} = mysqlerl:first(?config(db_ref, Config)),
[{"bjc", _}] = Rows.
last(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
{selected, ?COLS, Rows} = mysqlerl:last(?config(db_ref, Config)),
[{"siobain", _}] = Rows.
next(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
{selected, ?COLS, Rows} = mysqlerl:next(?config(db_ref, Config)),
[{"bjc", _}] = Rows.
next_after_first(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:first(?config(db_ref, Config)),
- {selected, ?COLS, [{"siobain", _}]} = mysqlerl:next(?config(db_ref, Config)).
+ {selected, ?COLS, [{"siobain", _}]} = mysqlerl:next(?config(db_ref, Config)).
next_after_last(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:last(?config(db_ref, Config)),
{selected, ?COLS, []} = mysqlerl:next(?config(db_ref, Config)).
next_all(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
{selected, ?COLS, [{"bjc", _}]} = mysqlerl:next(?config(db_ref, Config)),
{selected, ?COLS, [{"siobain", _}]} = mysqlerl:next(?config(db_ref, Config)),
{selected, ?COLS, []} = mysqlerl:next(?config(db_ref, Config)).
prev(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:last(?config(db_ref, Config)),
{selected, ?COLS, Rows} = mysqlerl:prev(?config(db_ref, Config)),
[{"bjc", _}] = Rows.
prev_all(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:last(?config(db_ref, Config)),
{selected, ?COLS, [{"bjc", _}]} = mysqlerl:prev(?config(db_ref, Config)),
{selected, ?COLS, []} = mysqlerl:prev(?config(db_ref, Config)).
prev_after_first(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:first(?config(db_ref, Config)),
{selected, ?COLS, []} = mysqlerl:prev(?config(db_ref, Config)).
prev_after_last(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:last(?config(db_ref, Config)),
{selected, ?COLS, [{"bjc", _}]} = mysqlerl:prev(?config(db_ref, Config)).
next_prev_next(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:first(?config(db_ref, Config)),
{selected, ?COLS, [{"siobain", _}]} = mysqlerl:next(?config(db_ref, Config)),
{selected, ?COLS, [{"bjc", _}]} = mysqlerl:prev(?config(db_ref, Config)),
{selected, ?COLS, [{"siobain", _}]} = mysqlerl:next(?config(db_ref, Config)).
prev_next_prev(Config) ->
- mysqlerl:select_count(?config(db_ref, Config), "SELECT * FROM user"),
+ mysqlerl:select_count(?config(db_ref, Config), ?Q),
mysqlerl:last(?config(db_ref, Config)),
{selected, ?COLS, [{"bjc", _}]} = mysqlerl:prev(?config(db_ref, Config)),
{selected, ?COLS, [{"siobain", _}]} = mysqlerl:next(?config(db_ref, Config)),