Move previous cryptopals work into an Erlang subfolder, start cryptopals in Python 3
[sandbox] / cryptopals-erlang / 01.03 / stat_tests.erl
1 -module(stat_tests).
2 -include_lib("eunit/include/eunit.hrl").
3
4 sum_test() -> ?assertEqual(20, stat:sum([2,4,6,8])).
5
6 mean_test() -> ?assertEqual(5.0, stat:mean([2,4,6,8])).
7
8 r_value_positive_test() -> ?assertEqual(
9     1.0,
10     stat:r_value([{1,2},{2,4},{4,8}])).
11
12 % This test doesn't work because of round-off error
13 %r_value_negative_test() -> ?assertEqual(
14 %    -1.0,
15 %    stat:r_value([{1,1},{2,0},{3,-1}])).
16
17 r_value_zero_test() -> ?assertEqual(
18     0.0,
19     stat:r_value([{1,1},{2,2},{3,1}])).
20
21 frequency_test() -> ?assertEqual(
22     dict:from_list([{a,1},{b,2}]),
23     stat:frequency([a,b,b])).
24
25 frequencies_to_scatterplot_test() -> ?assertEqual(
26     [{1,1},{1,0},{0,1}],
27     stat:frequencies_to_scatterplot(
28         dict:from_list([{a,1},{b,1}]),
29         dict:from_list([{a,1},{c,1}]))).