From: Esko Kokkonen Date: Fri, 26 Aug 2011 10:39:12 +0000 (+0300) Subject: Add min, max, average time printouts X-Git-Url: http://git.itanic.dy.fi/?p=emerge-timer;a=commitdiff_plain;h=b1b65ee933be27af55ac4afafe8af78c9af3f913 Add min, max, average time printouts --- diff --git a/emerge-timer.py b/emerge-timer.py index 86db066..1333c27 100755 --- a/emerge-timer.py +++ b/emerge-timer.py @@ -24,12 +24,44 @@ class package: self.versions.append((version, emerge_time, emerge_date)) + def average_total_time(self): + total_time = 0 + for i in self.versions: + total_time += i[1] + + average_time = total_time/len(self.versions) + + return (average_time, total_time) + + + def max_min_time(self): + self.versions.sort() + + min_time = self.versions[0][1] + max_time = self.versions[len(self.versions)-1][1] + + return (max_time, min_time) + + def print_versions(self): for p in self.versions: - print("\t" + self.name + p[0] + " >>> " + + print('-'*90 + "\n" + + green_start + self.name + p[0] + color_stop + " >>> " + self.time(p[1]) + " >>> " + - green_start + self.date(p[2]) + color_stop) + self.date(p[2])) + print('-'*90 + "\n" + "Package " + green_start + self.name + color_stop + + " emerged " + str(len(self.versions)) + " times.") + + def print_min_max_ave(self): + max_min = self.max_min_time() + ave_total = self.average_total_time() + + print("Max time: \t" + self.time(max_min[0]) + + "\nMin time: \t" + self.time(max_min[1]) + + "\nAverage time: \t" + self.time(ave_total[0]) + + "\nIn total spent " + self.time(ave_total[1]) + + " emerging " + self.name) def time(self, time): @@ -49,21 +81,21 @@ class package: pseconds = str() if days > 0: - pdays = (green_start + str(days) + color_stop + " day") + pdays = (green_start + str(days) + color_stop + " day ") if days != 1: pdays += "s" if hours > 0: - phours = (green_start + str(hours) + color_stop + " hour") + phours = (green_start + str(hours) + color_stop + " hour ") if hours != 1: phours += "s" if minutes > 0: - pminutes = (green_start + str(minutes) + color_stop + " minute") + pminutes = (green_start + str(minutes) + color_stop + " minute ") if minutes != 1: pminutes += "s" - pseconds = (green_start + str(seconds) + color_stop + " second") + pseconds = (green_start + str(seconds) + color_stop + " second ") if seconds != 1: pseconds += "s" @@ -184,11 +216,13 @@ def main(status, user_package=None): search_log_for_package(user_package) packages[0].print_versions() + packages[0].print_min_max_ave() elif status == "current": pass + elif status == "pretended": pass