Browse Source

Fix test cases that fail before OTP-18

Takeru Ohta 7 years ago
parent
commit
6be7faa9da
2 changed files with 5 additions and 3 deletions
  1. 1 1
      test/jsone_decode_tests.erl
  2. 4 2
      test/jsone_encode_tests.erl

+ 1 - 1
test/jsone_decode_tests.erl

@@ -274,7 +274,7 @@ decode_test_() ->
               ?assertError(badarg, jsone:decode(<<"{\"@#$%^!\":\"ok\"}">>, KeyOpt(existing_atom))),
               ?assertEqual([{foo, <<"ok">>}], jsone:decode(Input, KeyOpt(attempt_atom))),
               ?assertEqual([{<<"@#$%^!">>, <<"ok">>}], jsone:decode(<<"{\"@#$%^!\":\"ok\"}">>, KeyOpt(attempt_atom))),
-              Value = integer_to_binary(rand:uniform(9999)),
+              Value = integer_to_binary(1234),
               % do not make atom in test code
               [{Atom,  <<"ok">>}] = jsone:decode(<<"{\"", Value/binary, "\":\"ok\"}">>, KeyOpt(atom)),
               ?assertEqual(Value, atom_to_binary(Atom, latin1))

+ 4 - 2
test/jsone_encode_tests.erl

@@ -8,10 +8,12 @@
 -define(OBJ0, {[]}).
 -define(OBJ1(K, V), {[{K, V}]}).
 -define(OBJ2(K1, V1, K2, V2), {[{K1, V1}, {K2, V2}]}).
+-define(OBJECT_FROM_LIST(List), List).
 -else.
 -define(OBJ0, #{}).
 -define(OBJ1(K, V), #{K => V}).
 -define(OBJ2(K1, V1, K2, V2), #{K1 => V1, K2 => V2}).
+-define(OBJECT_FROM_LIST(List), maps:from_list(List)).
 -endif.
 
 encode_test_() ->
@@ -298,8 +300,8 @@ encode_test_() ->
       end},
      {"canonical_form",
       fun () ->
-          Obj1 = maps:from_list( [{<<"key", (integer_to_binary(I))/binary >>, I} || I <- lists:seq(1000, 0, -1)] ),
-          Obj2 = maps:from_list( [{<<"key", (integer_to_binary(I))/binary >>, I} || I <- lists:seq(0, 1000, 1)] ),
+          Obj1 = ?OBJECT_FROM_LIST( [{<<"key", (integer_to_binary(I))/binary >>, I} || I <- lists:seq(1000, 0, -1)] ),
+          Obj2 = ?OBJECT_FROM_LIST( [{<<"key", (integer_to_binary(I))/binary >>, I} || I <- lists:seq(0, 1000, 1)] ),
           ?assertEqual(jsone_encode:encode(Obj1, [canonical_form]), jsone_encode:encode(Obj2, [canonical_form]))
       end}
     ].