Skip to content

Commit c4f068e

Browse files
committed
pr comments
1 parent d9f3e67 commit c4f068e

File tree

1 file changed

+17
-16
lines changed

1 file changed

+17
-16
lines changed

src/bin/poll_latest.rs

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,16 @@ impl Details {
8282
self.success_count + self.failure_count
8383
}
8484

85-
fn update_average_time(&mut self, new_time: Duration) {
85+
fn report_success(&mut self, new_time: Duration) {
86+
self.success_count += 1;
8687
self.average_time =
8788
(self.average_time * (self.success_count - 1) + new_time) / self.success_count
8889
}
90+
91+
fn report_failure(&mut self) {
92+
// don't update average time on failure
93+
self.failure_count += 1;
94+
}
8995
}
9096

9197
#[tokio::main]
@@ -159,42 +165,39 @@ async fn audit_block(
159165
match header_handle.await? {
160166
Ok(found_time) => {
161167
let mut metrics = metrics.lock().unwrap();
162-
metrics.header.success_count += 1;
163168
metrics.active_audit_count -= 1;
164169
let time_diff = found_time - timestamp;
165-
metrics.header.update_average_time(time_diff);
170+
metrics.header.report_success(time_diff);
166171
}
167172
Err(_) => {
168173
let mut metrics = metrics.lock().unwrap();
169174
metrics.active_audit_count -= 1;
170-
metrics.header.failure_count += 1;
175+
metrics.header.report_failure();
171176
}
172177
}
173178
match block_body_handle.await? {
174179
Ok(found_time) => {
175180
let mut metrics = metrics.lock().unwrap();
176-
metrics.block_body.success_count += 1;
177181
metrics.active_audit_count -= 1;
178182
let time_diff = found_time - timestamp;
179-
metrics.block_body.update_average_time(time_diff);
183+
metrics.block_body.report_success(time_diff);
180184
}
181185
Err(_) => {
182186
let mut metrics = metrics.lock().unwrap();
183-
metrics.block_body.failure_count += 1;
187+
metrics.block_body.report_failure();
184188
metrics.active_audit_count -= 1;
185189
}
186190
}
187191
match receipts_handle.await? {
188192
Ok(found_time) => {
189193
let mut metrics = metrics.lock().unwrap();
190-
metrics.receipts.success_count += 1;
191194
metrics.active_audit_count -= 1;
192195
let time_diff = found_time - timestamp;
193-
metrics.receipts.update_average_time(time_diff);
196+
metrics.receipts.report_success(time_diff);
194197
}
195198
Err(_) => {
196199
let mut metrics = metrics.lock().unwrap();
197-
metrics.receipts.failure_count += 1;
200+
metrics.receipts.report_failure();
198201
metrics.active_audit_count -= 1;
199202
}
200203
}
@@ -296,17 +299,15 @@ mod test {
296299
fn test_detail() {
297300
let mut details = Details::default();
298301
assert_eq!(details.total_count(), 0);
299-
details.success_count += 1;
300-
details.update_average_time(Duration::from_secs(1));
302+
details.report_success(Duration::from_secs(1));
301303
assert_eq!(details.total_count(), 1);
302304
assert_eq!(details.average_time, Duration::from_secs(1));
303-
details.failure_count += 1;
305+
details.report_failure();
304306
assert_eq!(details.total_count(), 2);
305-
details.success_count += 1;
306-
details.update_average_time(Duration::from_secs(3));
307+
details.report_success(Duration::from_secs(3));
307308
assert_eq!(details.total_count(), 3);
308309
assert_eq!(details.average_time, Duration::from_secs(2));
309-
details.failure_count += 1;
310+
details.report_failure();
310311
assert_eq!(details.total_count(), 4);
311312
}
312313
}

0 commit comments

Comments
 (0)