celluloid-benchmark 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e9c3d7d1944efb1aaf1bad886c4b908e85091c60
4
- data.tar.gz: e279f4774b8790d66c6acde77963cb8e7865e53b
3
+ metadata.gz: 87902d700dba56fd25b4d8a800780d3ad537632d
4
+ data.tar.gz: f15b09d76bd846a93921e349860557730284391f
5
5
  SHA512:
6
- metadata.gz: 80245cd323174a52cdeb6f6cd71ade1fd02491793086b76fb0eb4608781ea5c415bf74fa8171b7ac9fcf8b0e34bbc6fc19779d0288dff493b51dac5d1c93d266
7
- data.tar.gz: 35c665225dc623b5eecc11d19b7f8fecba92d3b23cb1849da98e89cfbbce884d83cf0f7e13c71affc048565a4d1ff86891c7ede5a59f5ebb980f3203b7ee1d05
6
+ metadata.gz: 4f3dde3a1daeb364b7c4c9e648087ef65c7a2684aa3befdbf09027abfed02d927a33f811ac7e3d8faa97de8e32f5da8cebe2459536024478895b034e6e3b2867
7
+ data.tar.gz: 5bbe5bb2e854a9acc7459ea6bfcfba0f35c832ffbb9c43ead4433fb27a77f93543e935000dcdf4e1e838b86c68852ab77a98713baeb5f184a67b93d9c5da57a4
@@ -62,7 +62,10 @@ module CelluloidBenchmark
62
62
 
63
63
  def network_time
64
64
  requests = network_times.values.flatten
65
- requests.reduce(:+) / requests.size
65
+
66
+ if requests.size > 0
67
+ requests.reduce(:+) / requests.size
68
+ end
66
69
  end
67
70
 
68
71
  def benchmarks
@@ -15,8 +15,17 @@ module CelluloidBenchmark
15
15
  end
16
16
 
17
17
  def data_source(key)
18
+ raise_empty(key) if empty?(key)
18
19
  data_sources[key]
19
20
  end
21
+
22
+ def raise_empty(key)
23
+ raise "Empty random data for '#{key}'. Ensure target has test data and run rake app:performance:get_random_data."
24
+ end
25
+
26
+ def empty?(key)
27
+ data_sources[key].size == 0
28
+ end
20
29
  end
21
30
  end
22
31
 
@@ -1,3 +1,3 @@
1
1
  module CelluloidBenchmark
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
@@ -16,7 +16,7 @@ module CelluloidBenchmark
16
16
 
17
17
  def_delegators :@browser, :add_auth, :submit, :transact
18
18
 
19
- attr_reader :benchmark_run
19
+ attr_accessor :benchmark_run
20
20
  attr_accessor :browser
21
21
  attr_accessor :current_request_label
22
22
  attr_accessor :current_request_threshold
@@ -79,36 +79,17 @@ module CelluloidBenchmark
79
79
  end
80
80
  end
81
81
 
82
-
83
- private
84
-
85
- def add_browser_timing_hooks
86
- browser.pre_connect_hooks << proc do |agent, request|
87
- self.request_start_time = Time.now
88
- end
89
-
90
- browser.post_connect_hooks << proc do |agent, uri, response, body|
91
- self.request_end_time = Time.now
92
- end
93
- end
94
-
95
- def server_response_time(page)
96
- if page && page["x-runtime"]
97
- page["x-runtime"].to_f
98
- end
99
- end
100
-
101
82
  def log_response(page)
102
- if benchmark_run
103
- benchmark_run.async.log(
104
- page.code,
105
- request_start_time,
106
- request_end_time,
107
- server_response_time(page),
108
- current_request_label,
109
- current_request_threshold
110
- )
111
- end
83
+ benchmark_run.async.log(
84
+ page.code,
85
+ request_start_time,
86
+ request_end_time,
87
+ server_response_time(page),
88
+ current_request_label,
89
+ current_request_threshold
90
+ )
91
+
92
+ true
112
93
  end
113
94
 
114
95
  def log_response_code_error(error)
@@ -117,9 +98,11 @@ module CelluloidBenchmark
117
98
  error.response_code,
118
99
  request_start_time,
119
100
  request_end_time,
101
+ server_response_time(browser.current_page),
120
102
  current_request_label,
121
103
  current_request_threshold
122
104
  )
105
+ true
123
106
  end
124
107
 
125
108
  def log_network_error(error)
@@ -128,9 +111,30 @@ module CelluloidBenchmark
128
111
  500,
129
112
  request_start_time,
130
113
  request_end_time,
114
+ server_response_time(browser.current_page),
131
115
  current_request_label,
132
116
  current_request_threshold
133
117
  )
118
+ true
119
+ end
120
+
121
+
122
+ private
123
+
124
+ def add_browser_timing_hooks
125
+ browser.pre_connect_hooks << proc do |agent, request|
126
+ self.request_start_time = Time.now
127
+ end
128
+
129
+ browser.post_connect_hooks << proc do |agent, uri, response, body|
130
+ self.request_end_time = Time.now
131
+ end
132
+ end
133
+
134
+ def server_response_time(page)
135
+ if page && page["x-runtime"]
136
+ page["x-runtime"].to_f
137
+ end
134
138
  end
135
139
  end
136
140
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: celluloid-benchmark
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Willson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-05 00:00:00.000000000 Z
11
+ date: 2015-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: celluloid