merged rewrite and master

This commit is contained in:
Jeena Paradies 2011-02-22 00:35:54 +01:00
parent 183e628e8d
commit 073c4d49b0
7 changed files with 45 additions and 136 deletions

1
.gitignore vendored
View file

@ -2,3 +2,4 @@
*.dump
*.beam
Mnesia.*
*.swo

View file

@ -1,50 +0,0 @@
%%%%----------------------------------------------------
%%% @author Mattias Pettersson <mattiaspgames@gmail.com>
%%% @copyright 2011 Mattias Pettersson
%%% @doc Database for runtime game variable storage.
%%% @end
Test Mnesia
-module(gamedb).
-import(mnesia).
-export([init/0,insert_player/1,example_player/0,read_player/1,test_player/0]).
-include("gamedb.hrl").
%%-----------------------------------------------------
%% Creation
%%-----------------------------------------------------
init() ->
mnesia:create_table(player, [{attributes, record_info(fields, player)}]).
%%-----------------------------------------------------
%% Test
%%-----------------------------------------------------
test_player() ->
insert_player(example_player()),
read_player(0001).
example_player() ->
#player{id = 0001,
name = "Tux"}.
%%-----------------------------------------------------
%% Insertions
%%-----------------------------------------------------
insert_player(Player) ->
Fun = fun() ->
mnesia:write(Player)
end,
mnesia:transaction(Fun).
%%-----------------------------------------------------
%% Querries
%%-----------------------------------------------------
read_player(Player_Key) ->
Fun = fun() ->
[P] = mnesia:read(player, Player_Key),
Name = P#player.name,
io:format("Player name: ~s~n",[Name])
end,
mnesia:transaction(Fun).

Binary file not shown.

Binary file not shown.

View file

@ -17,7 +17,6 @@
stop/1,
notify/3]).
-include_lib("eunit/include/eunit.hrl").
%% ----------------------------------------------------------------------
% API implementation
@ -120,80 +119,3 @@ terminate(_Reason, _State) ->
code_change(_OldVsn, State, _Extra) ->
{ok, State}.
%% @TODO: Please put these tests in a separate file. We can't compile this file if
%% they contain errors from switching vms
%% ----------------------------------------------------------------------
% Tests
%<<<<<<< HEAD
%start_link_test() ->
% Table = start_link(),
% ?assertNot(Table =:= undefined).
%add_player_test() ->
% Table = start_link(),
% Player = test_player,
% add_player(Table, Player),
% {ok, [Player]} = gen_server:call(Table, get_player_list).
%remove_player_test() ->
% Table = start_link(),
% Player = test_player,
% Player2 = test_player2,
% add_player(Table, Player),
% {ok, [Player]} = gen_server:call(Table, get_player_list),
% add_player(Table, Player2),
% {ok, [Player2, Player]} = gen_server:call(Table, get_player_list),
% remove_player(Table, Player),
% {ok, [Player2]} = gen_server:call(Table, get_player_list),
% remove_player(Table, Player2),
% {ok, []} = gen_server:call(Table, get_player_list).
%
%stop_test() ->
% Table = start_link(),
% ok = stop(Table).
% @private
%notify_test() ->
% Table = start_link(),
% Player = test_player,
% Message = {server, define, "function helloWorld(x) { }"},
% ok = notify(Table, Player, Message).
%=======
%%start_link_test() ->
% Table = start_link("123", none),
% ?assertNot(Table =:= undefined).
%
%add_player_test() ->
% Table = start_link("123", none),
% Player = test_player,
% add_player(Table, Player),
% {ok, [Player]} = gen_server:call(Table, get_player_list).
%remove_player_test() ->
% Table = start_link("123", none),
% Player = test_player,
% Player2 = test_player2,
% add_player(Table, Player),
% {ok, [Player]} = gen_server:call(Table, get_player_list),
% add_player(Table, Player2),
% {ok, [Player2, Player]} = gen_server:call(Table, get_player_list),
% remove_player(Table, Player),
% {ok, [Player2]} = gen_server:call(Table, get_player_list),
% remove_player(Table, Player2),
% {ok, []} = gen_server:call(Table, get_player_list).
%
%stop_test() ->
% Table = start_link("123", none),
% ok = stop(Table).
%
%% @private
%notify_test() ->
% Table = start_link("123", none),
% Player = test_player,
% Message = {server, define, "function helloWorld(x) { }"},
% ok = notify(Table, Player, Message).
%>>>>>>> jonte_rewrite
%Message2 = {game, "helloWorld", "test"},
%ok = notify(Table, Player, Message2).

View file

@ -1,8 +0,0 @@
-module(js_helper).
-export([test/0, echo/1]).
test() ->
{ok, test}.
echo(String) ->
{ok, String}.

44
tests/ggs_table_test.erl Normal file
View file

@ -0,0 +1,44 @@
-include_lib("eunit/include/eunit.hrl").
-import(ggs_table).
% @private
start_link_test() ->
Table = start_link(),
?assertNot(Table =:= undefined).
% @private
add_player_test() ->
Table = start_link(),
Player = test_player,
add_player(Table, Player),
{ok, [Player]} = gen_server:call(Table, get_player_list).
% @private
remove_player_test() ->
Table = start_link(),
Player = test_player,
Player2 = test_player2,
add_player(Table, Player),
{ok, [Player]} = gen_server:call(Table, get_player_list),
add_player(Table, Player2),
{ok, [Player2, Player]} = gen_server:call(Table, get_player_list),
remove_player(Table, Player),
{ok, [Player2]} = gen_server:call(Table, get_player_list),
remove_player(Table, Player2),
{ok, []} = gen_server:call(Table, get_player_list).
% @private
stop_test() ->
Table = start_link(),
ok = stop(Table).
% @private
notify_test() ->
Table = start_link(),
Player = test_player,
Message = {server, define, "function helloWorld(x) { }"},
ok = notify(Table, Player, Message).
Message2 = {game, "helloWorld", "test"},
ok = notify(Table, Player, Message2).