Sha256: cfd2f4ffcb6b5b39d74a6e42d5496879107f2b6d8d22ba86f780eaa3078a252f
Contents?: true
Size: 592 Bytes
Versions: 2
Compression:
Stored size: 592 Bytes
Contents
module WBench module Timings class Latency def initialize(browser) @browser = browser end def result Hash[domains.map { |domain| [domain, latency_for(domain) ] }.sort] end private def latency_for(domain) (::Benchmark.measure { TCPSocket.new(domain, 80) }.real * 1000).to_i rescue SocketError nil end def domains @domains ||= JSON.parse(@browser.evaluate_script('jQuery.stringify(resourceURLs())')).map do |url| URI(url).host end.compact.uniq end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
wbench-0.3.0 | lib/wbench/timings/latency.rb |
wbench-0.2.3 | lib/wbench/timings/latency.rb |