Sha256: e2e1b39f30bacb944f2426d0c411832754de77842285154c938bcf7e1e99e80a

Contents?: true

Size: 1.02 KB

Versions: 13

Compression:

Stored size: 1.02 KB

Contents

$: << File.join(File.dirname(__FILE__), '..', 'lib')
require 'radius'

if RUBY_PLATFORM == 'java'
  require 'java'
  require 'radius/parser/jscanner'
end

require 'benchmark'

document = <<EOF
Before it all
<r:foo>
  Middle Top
  <r:bar />
  Middle Bottom
</r:foo>
After it all
EOF

amount = 1000

Benchmark.bmbm do |bm|
  bm.report('vanilla') do
    scanner = RUBY_VERSION =~ /1\.9/ ? Radius::Scanner.new(:scanner => Radius::Scanner) : Radius::Scanner.new
    amount.times { scanner.operate('r', document) }
  end
  
  bm.report('vanilla (huge)') do
    scanner = RUBY_VERSION =~ /1\.9/ ? Radius::Scanner.new(:scanner => Radius::Scanner) : Radius::Scanner.new
    scanner.operate('r', 'a' * 460000)
  end

  if RUBY_PLATFORM == 'java'
    bm.report('JavaScanner') do
      scanner = Radius::JavaScanner.new(JRuby.runtime)
      amount.times { scanner.operate('r', document) }
    end
    
    bm.report('JavaScanner (huge)') do
      scanner = Radius::JavaScanner.new(JRuby.runtime)
      scanner.operate('r', 'a' * 460000)
    end
  end
end

Version data entries

13 entries across 11 versions & 3 rubygems

Version Path
trusty-cms-7.0.9.1 vendor/bundle/ruby/3.1.0/gems/radius-0.7.5/test/benchmarks.rb
trusty-cms-7.0.9.1 vendor/bundle/ruby/3.3.0/gems/radius-0.8.0/test/benchmarks.rb
trusty-cms-7.0.9.1 vendor/bundle/ruby/3.3.0/gems/radius-0.7.5/test/benchmarks.rb
radius-0.8.0 test/benchmarks.rb
radius-0.7.5 test/benchmarks.rb
radius-0.7.4 test/benchmarks.rb
radiant-1.0.0 ruby-debug/ruby/1.8/gems/radius-0.7.3/test/benchmarks.rb
radius-0.7.3 test/benchmarks.rb
radius-0.7.2 test/benchmarks.rb
radius-0.7.1 test/benchmarks.rb
radius-0.7.0 test/benchmarks.rb
radius-0.7.0.prerelease3 test/benchmarks.rb
radius-0.7.0.prerelease2 test/benchmarks.rb