Module: Sanscript::Benchmark
- Defined in:
- lib/sanscript/benchmark.rb
Overview
Benchmark/testing module.
Class Method Summary collapse
-
.detect!(time = 2, warmup = 1) ⇒ Object
Runs benchmark-ips test on detection methods.
-
.transliterate_brahmic!(time = 2, warmup = 1) ⇒ Object
Runs benchmark-ips test on brahmic-source transliteration methods.
-
.transliterate_roman!(time = 2, warmup = 1) ⇒ Object
Runs benchmark-ips test on roman-source transliteration methods.
Class Method Details
.detect!(time = 2, warmup = 1) ⇒ Object
Runs benchmark-ips test on detection methods.
51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/sanscript/benchmark.rb', line 51 def detect!(time = 2, warmup = 1) ::Benchmark.ips do |x| x.config(time: time, warmup: warmup) TEST_STRINGS_FLAT.each do |scheme, string| x.report("Detect #{scheme}") do Sanscript::Detect.detect_scheme(string) end end x.compare! end true end |
.transliterate_brahmic!(time = 2, warmup = 1) ⇒ Object
Runs benchmark-ips test on brahmic-source transliteration methods.
80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/sanscript/benchmark.rb', line 80 def transliterate_brahmic!(time = 2, warmup = 1) ::Benchmark.ips do |x| x.config(time: time, warmup: warmup) TEST_STRINGS[:brahmic].to_a.product(TEST_STRINGS_FLAT.keys).each do |(ak, av), bk| next if ak == bk x.report("#{ak} => #{bk}") do Sanscript.transliterate(av, ak, bk) end end x.compare! end true end |
.transliterate_roman!(time = 2, warmup = 1) ⇒ Object
Runs benchmark-ips test on roman-source transliteration methods.
65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/sanscript/benchmark.rb', line 65 def transliterate_roman!(time = 2, warmup = 1) ::Benchmark.ips do |x| x.config(time: time, warmup: warmup) TEST_STRINGS[:roman].to_a.product(TEST_STRINGS_FLAT.keys).each do |(ak, av), bk| next if ak == bk x.report("#{ak} => #{bk}") do Sanscript.transliterate(av, ak, bk) end end x.compare! end true end |