Skip to content
This repository was archived by the owner on Nov 5, 2024. It is now read-only.

Commit afa6284

Browse files
committed
Merge branch 'statistics-w/o-PL'
2 parents 39594cc + e40afee commit afa6284

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

pythonping/executor.py

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -191,17 +191,19 @@ def clear(self):
191191

192192
def append(self, value):
193193
self._responses.append(value)
194-
if len(self) == 1:
195-
self.rtt_avg = value.time_elapsed
196-
self.rtt_max = value.time_elapsed
197-
self.rtt_min = value.time_elapsed
198-
else:
199-
# Calculate the total of time, add the new value and divide for the new number
200-
self.rtt_avg = ((self.rtt_avg * (len(self)-1)) + value.time_elapsed) / len(self)
201-
if value.time_elapsed > self.rtt_max:
194+
if value.success:
195+
success_responses = len(self) - self.packets_lost * (len(self) - 1)
196+
if success_responses == 1:
197+
self.rtt_avg = value.time_elapsed
202198
self.rtt_max = value.time_elapsed
203-
if value.time_elapsed < self.rtt_min:
204199
self.rtt_min = value.time_elapsed
200+
else:
201+
# Calculate the total of time, add the new value and divide for the new number
202+
self.rtt_avg = ((self.rtt_avg * (success_responses - 1)) + value.time_elapsed) / success_responses
203+
if value.time_elapsed > self.rtt_max:
204+
self.rtt_max = value.time_elapsed
205+
if value.time_elapsed < self.rtt_min:
206+
self.rtt_min = value.time_elapsed
205207

206208
self.packets_lost = self.packets_lost + ((0 if value.success else 1) - self.packets_lost) / len(self)
207209

0 commit comments

Comments
 (0)