Merge pull request #9 from cloudant-labs/add-get-error-string
Expose error string description function in the API
diff --git a/src/erlfdb.erl b/src/erlfdb.erl
index e6eccbd..50c5449 100644
--- a/src/erlfdb.erl
+++ b/src/erlfdb.erl
@@ -113,7 +113,8 @@
% Misc
on_error/2,
error_predicate/2,
- get_last_error/0
+ get_last_error/0,
+ get_error_string/1
]).
@@ -614,6 +615,10 @@
erlang:get(?ERLFDB_ERROR).
+get_error_string(ErrorCode) when is_integer(ErrorCode) ->
+ erlfdb_nif:get_error(ErrorCode).
+
+
clear_erlfdb_error() ->
put(?ERLFDB_ERROR, undefined).
diff --git a/test/erlfdb_01_basic_test.erl b/test/erlfdb_01_basic_test.erl
index 44e6de8..1fd1cfe 100644
--- a/test/erlfdb_01_basic_test.erl
+++ b/test/erlfdb_01_basic_test.erl
@@ -16,4 +16,11 @@
load_test() ->
- erlfdb_nif:ohai().
\ No newline at end of file
+ erlfdb_nif:ohai().
+
+
+get_error_string_test() ->
+ ?assertEqual(<<"Success">>, erlfdb_nif:get_error(0)),
+ ?assertEqual(<<"Transaction exceeds byte limit">>,
+ erlfdb_nif:get_error(2101)),
+ ?assertEqual(<<"UNKNOWN_ERROR">>, erlfdb_nif:get_error(9999)).