Benchmarks/profilers for IO inputs in the lexer.
This commit is contained in:
parent
629dcd3fe6
commit
c81c6db74e
|
@ -1,15 +1,25 @@
|
|||
require 'stringio'
|
||||
require 'benchmark'
|
||||
require 'benchmark/ips'
|
||||
|
||||
require_relative '../lib/oga'
|
||||
|
||||
##
|
||||
# Returns a File instance pointing to the sample XML file.
|
||||
#
|
||||
# @return [File]
|
||||
#
|
||||
def big_xml_file
|
||||
return File.open(File.expand_path('../fixtures/big.xml', __FILE__), 'r')
|
||||
end
|
||||
|
||||
##
|
||||
# Reads a big XML file and returns it as a String.
|
||||
#
|
||||
# @return [String]
|
||||
#
|
||||
def read_big_xml
|
||||
return File.read(File.expand_path('../fixtures/big.xml', __FILE__))
|
||||
return big_xml_file.read
|
||||
end
|
||||
|
||||
##
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
require_relative '../benchmark_helper'
|
||||
|
||||
measure_average do
|
||||
Oga::XML::Lexer.new(big_xml_file).advance { }
|
||||
end
|
|
@ -0,0 +1,7 @@
|
|||
require_relative '../benchmark_helper'
|
||||
|
||||
Benchmark.bmbm(10) do |bench|
|
||||
bench.report '10MB of XML using IO' do
|
||||
Oga::XML::Lexer.new(big_xml_file).advance { |tok| }
|
||||
end
|
||||
end
|
|
@ -0,0 +1,5 @@
|
|||
require_relative '../profile_helper'
|
||||
|
||||
profile_memory('lexer/big_xml') do
|
||||
Oga::XML::Lexer.new(big_xml_file).advance { }
|
||||
end
|
|
@ -1,4 +1,5 @@
|
|||
require 'timeout'
|
||||
require 'stringio'
|
||||
|
||||
require_relative '../lib/oga'
|
||||
|
||||
|
@ -20,13 +21,24 @@ def memory_usage
|
|||
return kb * 1024
|
||||
end
|
||||
|
||||
##
|
||||
# Returns a File instance pointing to the sample XML file.
|
||||
#
|
||||
# @return [File]
|
||||
#
|
||||
def big_xml_file
|
||||
path = File.expand_path('../../benchmark/fixtures/big.xml', __FILE__)
|
||||
|
||||
return File.open(path, 'r')
|
||||
end
|
||||
|
||||
##
|
||||
# Reads a big XML file and returns it as a String.
|
||||
#
|
||||
# @return [String]
|
||||
#
|
||||
def read_big_xml
|
||||
return File.read(File.expand_path('../../benchmark/fixtures/big.xml', __FILE__))
|
||||
return big_xml_file.read
|
||||
end
|
||||
|
||||
##
|
||||
|
|
Loading…
Reference in New Issue