@@ -18,6 +18,12 @@ defmodule BasicBench do
1818 @ long_string "StringShouldChange-some_stuffStringShouldChange-some_stuffStringShouldChange-some_stuffStringShouldChange-some_stuffStringShouldChange-some_stuff"
1919 @ short_string "StringShouldChange-some_stuff"
2020
21+ @ payload_camel_cased File . read! ( "bench/test-payload-camel-cased.json" ) |> Poison . decode! ( )
22+ @ large_payload_camel_cased 1 .. 100 |> Enum . reduce ( % { } , fn ( x , acc ) -> Map . put ( acc , "key#{ x } " , @ payload_camel_cased ) end )
23+
24+ @ payload_snake_cased File . read! ( "bench/test-payload-camel-cased.json" ) |> Poison . decode! ( )
25+ @ large_payload_snake_cased 1 .. 100 |> Enum . reduce ( % { } , fn ( x , acc ) -> Map . put ( acc , "key#{ x } " , @ payload_snake_cased ) end )
26+
2127 bench "macro_underscore - long" do
2228 @ long_string |> macro_underscore
2329 end
@@ -33,4 +39,20 @@ defmodule BasicBench do
3339 bench "regex_underscore - short" do
3440 @ short_string |> regex_underscore
3541 end
42+
43+ bench "large dict camel cased with low perf underscore" do
44+ @ large_payload_camel_cased |> AtomicMap . convert ( safe: false , underscore: true , high_perf: false )
45+ end
46+
47+ bench "large dict camel cased with high perf underscore" do
48+ @ large_payload_camel_cased |> AtomicMap . convert ( safe: false , underscore: true , high_perf: true )
49+ end
50+
51+ bench "large dict snake cased with low perf underscore" do
52+ @ large_payload_snake_cased |> AtomicMap . convert ( safe: false , underscore: true , high_perf: false )
53+ end
54+
55+ bench "large dict snake cased with high perf underscore" do
56+ @ large_payload_snake_cased |> AtomicMap . convert ( safe: false , underscore: true , high_perf: true )
57+ end
3658end
0 commit comments