You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.2 KiB

  1. % This file is part of Jiffy released under the MIT license.
  2. % See the LICENSE file for more information.
  3. -module(jiffy_02_literal_tests).
  4. -include_lib("eunit/include/eunit.hrl").
  5. -include("jiffy_util.hrl").
  6. true_test_() ->
  7. {"true", [
  8. {"Decode", ?_assertEqual(true, dec(<<"true">>))},
  9. {"Encode", ?_assertEqual(<<"true">>, enc(true))}
  10. ]}.
  11. false_test_() ->
  12. {"false", [
  13. {"Decode", ?_assertEqual(false, dec(<<"false">>))},
  14. {"Encode", ?_assertEqual(<<"false">>, enc(false))}
  15. ]}.
  16. null_test_() ->
  17. {"null", [
  18. {"Decode", ?_assertEqual(null, dec(<<"null">>))},
  19. {"Encode", ?_assertEqual(<<"null">>, enc(null))}
  20. ]}.
  21. nil_test_() ->
  22. {"null", [
  23. {"Decode", ?_assertEqual(nil, dec(<<"null">>, [use_nil]))},
  24. {"Encode", ?_assertEqual(<<"null">>, enc(nil, [use_nil]))}
  25. ]}.
  26. null_term_test_() ->
  27. T = [
  28. {undefined, [{null_term, undefined}]},
  29. {whatever, [{null_term, whatever}]},
  30. {undefined, [use_nil, {null_term, undefined}]},
  31. {nil, [{null_term, undefined}, use_nil]},
  32. {whatever, [{null_term, undefined}, {null_term, whatever}]}
  33. ],
  34. {"null_term",
  35. [?_assertEqual(R, dec(<<"null">>, O)) || {R, O} <- T]}.