Fix for JRUBY-2882. Handle error messages related to constructors better
[jruby.git] / bench / bench_erb.rb
blobab30f16b1fa1546f3af03cf99becf7df5548003b
1 require 'erb'
2 require 'benchmark'
4 str1 = <<TEMPLATE
5 abc
6 foo bar
7 <blah>
8 TEMPLATE
10 str2 = <<TEMPLATE
11 Hoho
12 foo bar
13 <%= "123" %>
15 <% i = "one" %>
17 <%= i*2 %>
18 TEMPLATE
20 large_str1 = str1*100
21 large_str2 = str2*100
22   
24 puts "Small with no stuff"
25 10.times do 
26   puts(Benchmark.measure do 
27          e = ERB.new(str1)
28          10_000.times do 
29            e.result
30          end
31        end)
32 end
34 puts "Small with eval stuff"
35 10.times do 
36   puts(Benchmark.measure do 
37          e = ERB.new(str2)
38          10_000.times do 
39            e.result
40          end
41        end)
42 end
44 puts "Large with no stuff"
45 10.times do 
46   puts(Benchmark.measure do 
47          e = ERB.new(large_str1)
48          10_000.times do 
49            e.result
50          end
51        end)
52 end
54 puts "Large with eval stuff"
55 10.times do 
56   puts(Benchmark.measure do 
57          e = ERB.new(large_str2)
58          10_000.times do 
59            e.result
60          end
61        end)
62 end