celluloid-benchmark 0.1.6 → 0.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/celluloid_benchmark/version.rb +1 -1
- data/lib/celluloid_benchmark/visitor.rb +18 -16
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5ac0f4600f16c3bc2f95f799c1ddff901c800724
|
4
|
+
data.tar.gz: d1cca2df8282bcdf0878bfdee906c970fed73e6e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 08d614ea74ed9612c1cde83fec51c6aaa720f49207975273f6142ca80d170ca82722b3543cea887de6815158955357225f640f2714dc8efe8c9077149f9032cd
|
7
|
+
data.tar.gz: 771aff0b9208297a0c2f483a43874c88086769a4f2b267ed4749856241024ed164cc2ed4503ff2ce1fa843498d807e9b5076e67cfbec6150062a90ccc3fcb9d0
|
@@ -15,27 +15,12 @@ module CelluloidBenchmark
|
|
15
15
|
def_delegators :@browser, :add_auth, :get, :post, :put, :submit, :transact
|
16
16
|
|
17
17
|
attr_reader :benchmark_run
|
18
|
-
|
18
|
+
attr_accessor :browser
|
19
19
|
attr_accessor :current_request_label
|
20
20
|
attr_accessor :current_request_threshold
|
21
21
|
attr_accessor :request_start_time
|
22
22
|
attr_accessor :request_end_time
|
23
23
|
|
24
|
-
def initialize(browser = Mechanize.new)
|
25
|
-
add_browser_logger browser
|
26
|
-
@browser = browser
|
27
|
-
add_browser_timing_hooks
|
28
|
-
browser.user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14"
|
29
|
-
end
|
30
|
-
|
31
|
-
def add_browser_logger(browser)
|
32
|
-
if browser.respond_to?(:log=)
|
33
|
-
mechanize_logger = ::Logger.new("log/mechanize.log")
|
34
|
-
mechanize_logger.level = ::Logger::INFO
|
35
|
-
browser.log = mechanize_logger
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
24
|
def run_session(benchmark_run, duration)
|
40
25
|
@benchmark_run = benchmark_run
|
41
26
|
|
@@ -43,6 +28,7 @@ module CelluloidBenchmark
|
|
43
28
|
started_at = benchmark_run.started_at
|
44
29
|
until elapsed_time >= duration
|
45
30
|
begin
|
31
|
+
add_new_browser
|
46
32
|
Session.run self
|
47
33
|
rescue Mechanize::ResponseCodeError => e
|
48
34
|
log_response_code_error e
|
@@ -53,6 +39,22 @@ module CelluloidBenchmark
|
|
53
39
|
elapsed_time
|
54
40
|
end
|
55
41
|
|
42
|
+
def add_new_browser
|
43
|
+
@browser = Mechanize.new
|
44
|
+
add_browser_timing_hooks
|
45
|
+
@browser.user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/537.75.14"
|
46
|
+
@browser.log = mechanize_logger
|
47
|
+
@browser
|
48
|
+
end
|
49
|
+
|
50
|
+
def mechanize_logger
|
51
|
+
@mechanize_logger ||= (
|
52
|
+
logger = ::Logger.new("log/mechanize.log")
|
53
|
+
logger.level = ::Logger::INFO
|
54
|
+
logger
|
55
|
+
)
|
56
|
+
end
|
57
|
+
|
56
58
|
def benchmark(label, threshold = 0.5)
|
57
59
|
self.current_request_label = label
|
58
60
|
self.current_request_threshold = threshold
|