Sha256: 58669b15629f719f732b963768ef48c77383aa7b83afe6a81701d15b2186de3e
Contents?: true
Size: 839 Bytes
Versions: 34
Compression:
Stored size: 839 Bytes
Contents
$:.unshift File.expand_path('../lib', __dir__) require 'benchmark' require 'mustermann/simple' require 'mustermann/sinatra' [Mustermann::Simple, Mustermann::Sinatra].each do |klass| puts "", " #{klass} ".center(64, '=') Benchmark.bmbm do |x| no_capture = klass.new("/simple") x.report("no captures, match") { 1_000.times { no_capture.match('/simple') } } x.report("no captures, miss") { 1_000.times { no_capture.match('/miss') } } simple = klass.new("/:name") x.report("simple, match") { 1_000.times { simple.match('/simple').captures } } x.report("simple, miss") { 1_000.times { simple.match('/mi/ss') } } splat = klass.new("/*") x.report("splat, match") { 1_000.times { splat.match("/a/b/c").captures } } x.report("splat, miss") { 1_000.times { splat.match("/a/b/c.miss") } } end puts end
Version data entries
34 entries across 31 versions & 5 rubygems