diff --git a/python/examples/test_examples.py b/python/examples/test_examples.py index 914db39e7..3fe4da95c 100644 --- a/python/examples/test_examples.py +++ b/python/examples/test_examples.py @@ -26,15 +26,15 @@ def test_echo_quit_plugin(acfactory, lp): lp.sec("sending a message to the bot") bot_contact = ac1.create_contact(botproc.addr) - ch1 = bot_contact.create_chat() - ch1.send_text("hello") + bot_chat = bot_contact.create_chat() + bot_chat.send_text("hello") - lp.sec("waiting for the bot-reply to arrive") + lp.sec("waiting for the reply message from the bot to arrive") reply = ac1._evtracker.wait_next_incoming_message() + assert reply.chat == bot_chat assert "hello" in reply.text - assert reply.chat == ch1 lp.sec("send quit sequence") - ch1.send_text("/quit") + bot_chat.send_text("/quit") botproc.wait() @@ -47,8 +47,8 @@ def test_group_tracking_plugin(acfactory, lp): botproc.fnmatch_lines(""" *ac_configure_completed* """) - ac1.add_account_plugin(FFIEventLogger(ac1, "ac1")) - ac2.add_account_plugin(FFIEventLogger(ac2, "ac2")) + ac1.add_account_plugin(FFIEventLogger(ac1)) + ac2.add_account_plugin(FFIEventLogger(ac2)) lp.sec("creating bot test group with bot") bot_contact = ac1.create_contact(botproc.addr) diff --git a/python/src/deltachat/__init__.py b/python/src/deltachat/__init__.py index 0d8a84ecc..e4f26d4dd 100644 --- a/python/src/deltachat/__init__.py +++ b/python/src/deltachat/__init__.py @@ -60,7 +60,8 @@ def run_cmdline(argv=None, account_plugins=None): ac = Account(args.db) if args.show_ffi: - log = events.FFIEventLogger(ac, "bot") + ac.set_config("displayname", "bot") + log = events.FFIEventLogger(ac) ac.add_account_plugin(log) for plugin in account_plugins or []: diff --git a/python/src/deltachat/account.py b/python/src/deltachat/account.py index 022ff4df9..f7760a0f2 100644 --- a/python/src/deltachat/account.py +++ b/python/src/deltachat/account.py @@ -28,7 +28,7 @@ class Account(object): """ MissingCredentials = MissingCredentials - def __init__(self, db_path, os_name=None, logging=True, logid=None): + def __init__(self, db_path, os_name=None, logging=True): """ initialize account object. :param db_path: a path to the account database. The database @@ -38,7 +38,6 @@ class Account(object): # initialize per-account plugin system self._pm = hookspec.PerAccount._make_plugin_manager() self._logging = logging - self.logid = logid self.add_account_plugin(self) diff --git a/python/src/deltachat/direct_imap.py b/python/src/deltachat/direct_imap.py index 83a561cdf..fe60552c5 100644 --- a/python/src/deltachat/direct_imap.py +++ b/python/src/deltachat/direct_imap.py @@ -24,7 +24,7 @@ def dc_account_extra_configure(account): """ Reset the account (we reuse accounts across tests) and make 'account.direct_imap' available for direct IMAP ops. """ - imap = DirectImap(account, account.logid) + imap = DirectImap(account) if imap.select_config_folder("mvbox"): imap.delete(ALL, expunge=True) assert imap.select_config_folder("inbox") @@ -42,9 +42,9 @@ def dc_account_after_shutdown(account): class DirectImap: - def __init__(self, account, logid): + def __init__(self, account): self.account = account - self.logid = logid + self.logid = account.get_config("displayname") or id(account) self._idling = False self.connect() diff --git a/python/src/deltachat/events.py b/python/src/deltachat/events.py index 7042b9641..05bd56c8e 100644 --- a/python/src/deltachat/events.py +++ b/python/src/deltachat/events.py @@ -28,13 +28,9 @@ class FFIEventLogger: # to prevent garbled logging _loglock = threading.RLock() - def __init__(self, account, logid): - """ - :param logid: an optional logging prefix that should be used with - the default internal logging. - """ + def __init__(self, account): self.account = account - self.logid = logid + self.logid = self.account.get_config("displayname") self.init_time = time.time() @account_hookimpl diff --git a/python/src/deltachat/testplugin.py b/python/src/deltachat/testplugin.py index 933496835..c45d7d969 100644 --- a/python/src/deltachat/testplugin.py +++ b/python/src/deltachat/testplugin.py @@ -229,11 +229,12 @@ def acfactory(pytestconfig, tmpdir, request, session_liveconfig, data): deltachat.unregister_global_plugin(direct_imap) def make_account(self, path, logid, quiet=False): - ac = Account(path, logging=self._logging, logid=logid) + ac = Account(path, logging=self._logging) ac._evtracker = ac.add_account_plugin(FFIEventTracker(ac)) ac.addr = ac.get_self_contact().addr + ac.set_config("displayname", logid) if not quiet: - ac.add_account_plugin(FFIEventLogger(ac, logid=logid)) + ac.add_account_plugin(FFIEventLogger(ac)) self._accounts.append(ac) return ac @@ -321,12 +322,16 @@ def acfactory(pytestconfig, tmpdir, request, session_liveconfig, data): ac2.start_io() return ac1, ac2 - def get_many_online_accounts(self, num, move=True, quiet=True): - accounts = [self.get_online_configuring_account(move=move, quiet=quiet) + def get_many_online_accounts(self, num, move=True): + accounts = [self.get_online_configuring_account(move=move, quiet=True) for i in range(num)] for acc in accounts: acc._configtracker.wait_finish() acc.start_io() + print("{}: {} account was successfully setup".format( + acc.get_config("displayname"), acc.get_config("addr"))) + for acc in accounts: + acc.add_account_plugin(FFIEventLogger(acc)) return accounts def clone_online_account(self, account, pre_generated_key=True):