Skip to content

Commit

Permalink
Move headers to include, tests to test
Browse files Browse the repository at this point in the history
  • Loading branch information
ndpar committed Jan 12, 2018
1 parent add34d7 commit fd3299e
Show file tree
Hide file tree
Showing 9 changed files with 58 additions and 74 deletions.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
74 changes: 0 additions & 74 deletions src/trees_test.erl

This file was deleted.

File renamed without changes.
File renamed without changes.
File renamed without changes.
58 changes: 58 additions & 0 deletions test/trees_test.erl
@@ -0,0 +1,58 @@
%
% F.Cesarini & S.Thomson, Erlang Programming, p.169.
% Exercise 7-5: Binary Trees
%
-module(trees_test).
-include("Trees.hrl").
-include_lib("eunit/include/eunit.hrl").

sum_undefined_tree_test() ->
?assertEqual(0, trees:sum(undefined)).

sum_balanced_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 6}, right = #bintree{value = 9}},
?assertEqual(20, trees:sum(Tree)).

sum_lined_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 6, left = #bintree{value = 9}}},
?assertEqual(20, trees:sum(Tree)).

max_undefined_tree_test() ->
?assertEqual(0, trees:max(undefined)).

max_balanced_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 6}, right = #bintree{value = 9}},
?assertEqual(9, trees:max(Tree)).

max_lined_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 6, left = #bintree{value = 9}}},
?assertEqual(9, trees:max(Tree)).

is_ordered_undefined_tree_test() ->
?assert(trees:is_ordered(undefined)).

is_ordered_false_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 6}, right = #bintree{value = 9}},
?assertNot(trees:is_ordered(Tree)).

is_ordered_true_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 4}, right = #bintree{value = 6}},
?assert(trees:is_ordered(Tree)).

insert_into_undefined_test() ->
?assertEqual(#bintree{value = 5}, trees:insert(5, undefined)).

insert_into_left_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 4}, right = #bintree{value = 6}},
?assertEqual(#bintree{value = 5, left = #bintree{value = 4, left = #bintree{value = 3}}, right = #bintree{value = 6}},
trees:insert(3, Tree)).

insert_equal_into_right_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 4}, right = #bintree{value = 6}},
?assertEqual(#bintree{value = 5, left = #bintree{value = 4}, right = #bintree{value = 6, left = #bintree{value = 5}}},
trees:insert(5, Tree)).

insert_greater_into_right_tree_test() ->
Tree = #bintree{value = 5, left = #bintree{value = 4}, right = #bintree{value = 6}},
?assertEqual(#bintree{value = 5, left = #bintree{value = 4}, right = #bintree{value = 6, right = #bintree{value = 7}}},
trees:insert(7, Tree)).

0 comments on commit fd3299e

Please sign in to comment.