From a1f7c39c60b739cddc08b7de7dac6d4a6a5f5b2f Mon Sep 17 00:00:00 2001 From: Arcmyx Official Date: Fri, 10 Apr 2026 17:36:07 +0000 Subject: [PATCH] Update tests/pynamics-logger.py --- tests/pynamics-logger.py | 112 +++++++++++++++++++++------------------ 1 file changed, 60 insertions(+), 52 deletions(-) diff --git a/tests/pynamics-logger.py b/tests/pynamics-logger.py index aa90f5f..f774d1a 100644 --- a/tests/pynamics-logger.py +++ b/tests/pynamics-logger.py @@ -8,58 +8,66 @@ #6: perf_smpl #7: get_time #8: breakpoint -verboseness = 7 -lvldict = { - 0: "FATAL", - 1: "ALERT", - 2: "CRIT", - 3: "ERR", - 4: "WARNING", - 5: "NOTICE", - 6: "INFO", - 7: "DEBUG" -} -stpwtchtime = StopWatch() -stpwtchtime.pause() +class PynamicsLogger: + def __init__(self): + self.verboseness = 7 + self.lvldict = { + 0: "FATAL", + 1: "ALERT", + 2: "CRIT", + 3: "ERR", + 4: "WARNING", + 5: "NOTICE", + 6: "INFO", + 7: "DEBUG" + } + self.time = StopWatch() + self.time.pause() -def start(): - stpwtchtime.reset() - stpwtchtime.resume() + def start(): + self.time.reset() + self.time.resume() -def log(self, message, level, origin): - if level <= verboseness: - ms = stpwtchtime.time() - timestamp = "{:02d}:{:02d}.{:03d}".format( - (ms // 60000) % 60, - (ms // 1000) % 60, - ms % 1000 - ) - label = lvldict.get(level, "UNKNOWN") - padding = " " * (7 - len(label)) - print("[{}] {}{} [{}] {}".format(timestamp, label, padding, origin, message)) + def log(self, message, level, origin): + if level <= self.verboseness: + ms = self.time.time() + timestamp = "{:02d}:{:02d}.{:03d}".format( + (ms // 60000) % 60, + (ms // 1000) % 60, + ms % 1000 + ) + label = self.lvldict[level] + padding = " " * (7 - len(label)) + print(f"[{timestamp}] [{label}]{padding} [{origin}] {message}") -def sendCommand(eventnum, level, msg, origin): - print(f"\x1b[?PYN;{str(eventnum)};{lvldict[level]};{msg}~") -def notify(level, msg, origin): - print(f"\x1b[?PYN;0;{lvldict[level]};{msg}~") -def fatal(self, message, origin): notify(message, 0, origin) -def alert(self, message, origin): notify(message, 1, origin) -def crit(self, message, origin): notify(message, 2, origin) -def err(self, message, origin): notify(message, 3, origin) -def warning(self, message, origin): notify(message, 4, origin) -def notice(self, message, origin): notify(message, 5, origin) -def info(self, message, origin): notify(message, 6, origin) -def debug(self, message, origin): notify(message, 7, origin) -def crash(self, message, origin): - sendCommand(3, 0, "uhhhh so the program kinda crashed sorry", origin) - raise FatalLoggerError("[FATAL] [{}] {}".format(origin, message)) -sendCommand(0, 0, "hey you should probably know that your RAM is corrupted and you cant replace it because of the shortage. byeeeee", "test prgm") -sendCommand(0, 1, "UNRECOVERABLE PYTHON ERROR!!!!! Exiting gracefully... JUST KIDDING WHAT DID YOU THINK IT WAS GONNA DO", "test prgm") -sendCommand(0, 2, "so the program is running but it just started looping on the motor frying bit of your program.", "test prgm") -sendCommand(0, 3, "syntax error, you failure!!!! use an error checker", "test prgm") -sendCommand(0, 4, "wanted to just say that your motor is kinda being slow", "test prgm") -sendCommand(0, 5, "so your motor is like 1% slower than it should be but really no one cares", "test prgm") -sendCommand(0, 6, "hey everything in the program is going well just in case nothing in your life is", "test prgm") -sendCommand(0, 7, "nobody cares about me but you should know that", "test prgm") -def breakpoint(): - #send a command 8 and also get all important info about the code here and print \ No newline at end of file + def sendCommand(self, eventnum, level, msg, origin): + print(f"\x1b[?PYN;{str(eventnum)};{lvldict[level]};{msg}~") + def notify(level, msg, origin): + self.sendCommand(self, 0, level, msg, origin) + def notifyfatal(self, message, origin): notify(message, 0, origin) + def notifyalert(self, message, origin): notify(message, 1, origin) + def notifycrit(self, message, origin): notify(message, 2, origin) + def notifyerr(self, message, origin): notify(message, 3, origin) + def notifywarning(self, message, origin): notify(message, 4, origin) + def notifynotice(self, message, origin): notify(message, 5, origin) + def notifyinfo(self, message, origin): notify(message, 6, origin) + def notifydebug(self, message, origin): notify(message, 7, origin) + def notifycrash(self, message, origin): + sendCommand(3, 0, "uhhhh so the program kinda crashed sorry", origin) + raise FatalLoggerError("[FATAL] [{}] {}".format(origin, message)) + + def breakpoint(self, message, origin): + sendCommand(3, 8, "currently everything about the robot") + def testAll(self): + self.start() + notifyfatal("hey you should probably know that your RAM is corrupted and you cant replace it because of the shortage. byeeeee", "test prgm") + notifyalert(0, 1, "UNRECOVERABLE PYTHON ERROR!!!!! Exiting gracefully... JUST KIDDING WHAT DID YOU THINK IT WAS GONNA DO", "test prgm") + notifycrit(0, 2, "so the program is running but it just started looping on the motor frying bit of your program.", "test prgm") + notifyerr(0, 3, "syntax error, you failure!!!! use an error checker", "test prgm") + notifywarning(0, 4, "wanted to just say that your motor is kinda being slow", "test prgm") + notifynotice(0, 5, "so your motor is like 1% slower than it should be but really no one cares", "test prgm") + notifyinfo(0, 6, "hey everything in the program is going well just in case nothing in your life is", "test prgm") + notifydebug(0, 7, "nobody cares about me but you should know that", "test prgm") +if __name__ == "__main__": + pynlogger = PynamicsLogger() + pynlogger.testAll()