-module(herd_db_tests). -include_lib("eunit/include/eunit.hrl"). -spec epgsql_res_to_json_test() -> ok. epgsql_res_to_json_test() -> Data1 = {ok, [{column,<<"id">>,int8,8,-1,1}, {column,<<"name">>,varchar,-1,36,1}, {column,<<"registration_date">>,timestamp,8,-1,1}, {column,<<"account_type">>,{unknown_oid,33521},4,-1,0}, {column,<<"address">>,text,-1,-1,1}, {column,<<"country">>,text,-1,-1,1} ], [{12,<<"Bob">>,{{2015,2,17},{16,10,31.277398}},<<"base">>,<<"Minsk, bla-bla-bla">>,<<"BY">>}, {13,<<"Bill">>,{{2015,2,17},{16,11,1.211181}},<<"premium">>,<<"Amsterdam, bla-bla-bla">>,<<"NL">>}]}, ?assertEqual([{[{<<"id">>,12}, {<<"name">>,<<"Bob">>}, {<<"registration_date">>,1424189431}, {<<"account_type">>,<<"base">>}, {<<"address">>,<<"Minsk, bla-bla-bla">>}, {<<"country">>,<<"BY">>}]}, {[{<<"id">>,13}, {<<"name">>,<<"Bill">>}, {<<"registration_date">>,1424189461}, {<<"account_type">>,<<"premium">>}, {<<"address">>,<<"Amsterdam, bla-bla-bla">>}, {<<"country">>,<<"NL">>}]}], herd_db:epgsql_res_to_json(Data1)), Data2 = {ok, [{column,<<"id">>,int4,4,-1,1}, {column,<<"token">>,uuid,16,-1,1}, {column,<<"name">>,varchar,-1,68,1}, {column,<<"reg_date">>,date,4,-1,1}, {column,<<"reg_time">>,time,8,-1,1}, {column,<<"ts_1">>,timestamp,8,-1,1}, {column,<<"ts_2">>,timestamptz,8,-1,1} ], [{1,<<"1f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>,<<"Bob">>, {2015,2,18}, null, {{2015,2,18},{13,5,23.140576}}, null}, {2,<<"2f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>,<<"Bill">>, null, {13,5,23.140576}, null, {{2015,2,18},{10,5,23.140576}}}, {3,<<"3f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>,<<"Helen">>, {2015,2,18}, {13,5,23.140576}, null,null}, {4,<<"4f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>,<<"Kate">>, null,null, {{2015,2,18},{13,5,23.140576}}, {{2015,2,18},{10,5,23.140576}}}]}, ?assertEqual([{[{<<"id">>,1}, {<<"token">>,<<"1f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>}, {<<"name">>,<<"Bob">>}, {<<"reg_date">>,1424217600}, {<<"reg_time">>,null}, {<<"ts_1">>,1424264723}, {<<"ts_2">>,null}]}, {[{<<"id">>,2}, {<<"token">>,<<"2f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>}, {<<"name">>,<<"Bill">>}, {<<"reg_date">>,null}, {<<"reg_time">>,47123}, {<<"ts_1">>,null}, {<<"ts_2">>,1424253923}]}, {[{<<"id">>,3}, {<<"token">>,<<"3f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>}, {<<"name">>,<<"Helen">>}, {<<"reg_date">>,1424217600}, {<<"reg_time">>,47123}, {<<"ts_1">>,null}, {<<"ts_2">>,null}]}, {[{<<"id">>,4}, {<<"token">>,<<"4f5cb2d8-14b4-4ec4-a45e-a3fa06f07650">>}, {<<"name">>,<<"Kate">>}, {<<"reg_date">>,null}, {<<"reg_time">>,null}, {<<"ts_1">>,1424264723}, {<<"ts_2">>,1424253923}]}], herd_db:epgsql_res_to_json(Data2)), ok.