diff --git a/test/README.md b/test/README.md index 52117c0..8ab068e 100644 --- a/test/README.md +++ b/test/README.md @@ -21,3 +21,7 @@ $ HOME=$PWD lldb python3 -- ../sync_handshake.py -e Phone Then this side is doing a replay in the debugger. Using touch to set a different timestamp on the marker will only partly replay. += Hint = + +installing termcolor can be helpful + diff --git a/test/sync_handshake.py b/test/sync_handshake.py index 0c5d176..448c97f 100644 --- a/test/sync_handshake.py +++ b/test/sync_handshake.py @@ -22,9 +22,15 @@ import os import pEp import minimail +try: + from termcolor import colored +except: + colored = lambda x, y: x + inbox = pathlib.Path("..") / "TestInbox" device_name = "" +output = print def messageToSend(msg): @@ -32,19 +38,24 @@ def messageToSend(msg): m, keys, rating, flags = msg.decrypt() else: m = msg - print("\n" + m.attachments[0].decode()) + output("\n" + m.attachments[0].decode()) minimail.send(inbox, msg, device_name) class UserInterface(pEp.UserInterface): def notifyHandshake(self, me, partner, signal): - print("on " + device_name + " signal " + str(signal) + " for identities " + str(me.fpr) + " " + + output("on " + device_name + " signal " + str(signal) + " for identities " + str(me.fpr) + " " + str(partner.fpr)) -def run(name): +def run(name, color=None): global device_name device_name = name + + if color: + global output + output = lambda x: print(colored(x, color)) + me = pEp.Identity("alice@peptest.ch", name + " of Alice Neuman") pEp.myself(me) pEp.messageToSend = messageToSend @@ -69,10 +80,12 @@ if __name__=="__main__": optParser.add_option("-e", "--exec-for", action="store", type="string", dest="exec_for", help="execute for name of simulated device " + "(default: name of actual directory)") + optParser.add_option("--color", action="store", type="string", + desct="color", help="print debug output in this color") options, args = optParser.parse_args() if not options.exec_for: options.exec_for = os.path.basename(os.getcwd()) - run(options.exec_for) + run(options.exec_for, options.color) diff --git a/test/sync_test.py b/test/sync_test.py index f18d36d..ef07c19 100644 --- a/test/sync_test.py +++ b/test/sync_test.py @@ -19,14 +19,14 @@ import shutil import pathlib -def test_for(path): +def test_for(path, color=None): cwd = os.getcwd(); os.chdir(path) os.environ["HOME"] = os.getcwd() - print("running tests for " + path); + print("running tests for " + path) from sync_handshake import run - run(path) + run(path, color) os.chdir(cwd) @@ -121,8 +121,8 @@ if __name__ == "__main__": setup("Phone") setup("Laptop") - Phone = Process(target=test_for, args=("Phone",)) - Laptop = Process(target=test_for, args=("Laptop",)) + Phone = Process(target=test_for, args=("Phone", "red")) + Laptop = Process(target=test_for, args=("Laptop", "green")) Phone.start() Laptop.start()