Skip to content

Instantly share code, notes, and snippets.

@hpyhacking
Created May 11, 2012 22:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hpyhacking/2662663 to your computer and use it in GitHub Desktop.
Save hpyhacking/2662663 to your computer and use it in GitHub Desktop.
EUnit eats my stack trace !!!
-module(fib).
-export([fib/1]).
-include_lib("eunit/include/eunit.hrl").
%% this call a undef function in erlang module
fib(a) -> erlang:lists_to_atom("a");
fib(0) -> 1;
fib(1) -> 1;
fib(N) when N > 1 -> fib(N-1) + fib(N-2).
fib_test_() ->
[?_assert(fib(0) =:= 1),
?_assert(fib(1) =:= 1),
?_assert(fib(2) =:= 2),
?_assert(fib(3) =:= 3),
?_assert(fib(4) =:= 5),
?_assert(fib(5) =:= 8),
?_assertException(error, function_clause, fib(-1)),
?_assert(fib(31) =:= 2178309)
].
%% a error test
fib_other_test_() ->
[?_assert(fib(a) =:= "a")].
%% I'm trying this code in erlang shell.
> c(fib).
> {ok, fib}.
> eunit:test(fib).
fib:22: fib_other_test_...*failed*
::undef
====================================
Failed: 1. Skipped: 0. Passed: 8.
error
%%
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment