diff options
Diffstat (limited to 'gen')
-rw-r--r-- | gen/src/bool.erl | 17 | ||||
-rw-r--r-- | gen/test/bool_test.erl | 8 |
2 files changed, 23 insertions, 2 deletions
diff --git a/gen/src/bool.erl b/gen/src/bool.erl index e4e1108..47fba5d 100644 --- a/gen/src/bool.erl +++ b/gen/src/bool.erl @@ -1,7 +1,7 @@ -module(bool). -compile(no_auto_import). --export([negate/1, max/2, min/2, to_int/1]). +-export([negate/1, compare/2, max/2, min/2, to_int/1]). negate(Bool) -> case Bool of @@ -12,6 +12,21 @@ negate(Bool) -> true end. +compare(A, B) -> + case {A, B} of + {true, true} -> + eq; + + {true, false} -> + gt; + + {false, false} -> + eq; + + {false, true} -> + lt + end. + max(A, B) -> case A of true -> diff --git a/gen/test/bool_test.erl b/gen/test/bool_test.erl index c38f780..d2f0322 100644 --- a/gen/test/bool_test.erl +++ b/gen/test/bool_test.erl @@ -1,12 +1,18 @@ -module(bool_test). -compile(no_auto_import). --export([negate_test/0, max_test/0, min_test/0, to_int_test/0]). +-export([negate_test/0, compare_test/0, max_test/0, min_test/0, to_int_test/0]). negate_test() -> expect:false(bool:negate(true)), expect:true(bool:negate(false)). +compare_test() -> + expect:equal(bool:compare(true, true), eq), + expect:equal(bool:compare(true, false), gt), + expect:equal(bool:compare(false, false), eq), + expect:equal(bool:compare(false, true), lt). + max_test() -> expect:equal(bool:max(true, true), true), expect:equal(bool:max(true, false), true), |