Add + tailor fluid benchmark

This commit is contained in:
Sam Doiron
2022-04-18 10:32:44 -03:00
parent f6d1b56b4e
commit 8a71d29bfb
10 changed files with 1392 additions and 64 deletions
+17 -2
View File
@@ -1,7 +1,22 @@
# frozen_string_literal: true
Benchmarks.define('simple_loop', Class.new do
TEMPLATE = "{% for i in (1..1000) %}{{ i }}{% endfor %}"
Benchmarks.define('fizzbuzz_10000', Class.new do
TEMPLATE = <<~LIQUID
{% for i in (1..#{ENV['COUNT'].to_i}) %}
{% liquid
assign rem_3 = i | modulo: 3
assign rem_5 = i | modulo: 5
if rem_3 == 0 and rem_5 == 0
echo "Fizzbuzz"
elsif rem_3 == 0
echo "Fizz"
elsif rem_5 == 0
echo "Buzz"
else
echo i
endif
%}{% endfor %}
LIQUID
def compile
@parsed = Liquid::Template.parse(TEMPLATE)