Commit Graph

407 Commits

Author SHA1 Message Date
link2xt
8168bcece5 Improve Chat.get_encryption_info() format
Group contacts by peerstate and make it easier
to find contacts that prevent encryption by sorting them
to the top of the list.
2022-05-14 14:01:46 +02:00
holger krekel
cffa101419 remove usage of py in favor of pathlib 2022-05-09 21:22:19 +02:00
holger krekel
c0e4e12138 Introduce caching of configured live accounts in each test process 2022-05-09 21:22:19 +02:00
holger krekel
c8bfa98b6b actually enable online account caching. previously it was creating (>100) online test accounts 2022-05-05 16:18:59 +02:00
holger krekel
32a9db6922 fix flaky test to not rely on timing 2022-05-04 13:29:08 +02:00
holger krekel
77498c17a5 reorder tests to provide a complex/offline/online distinction, also speeding up distributed test runs. 2022-05-04 13:17:08 +02:00
holger krekel
54c07f89f2 also guard the ac_process_ffi_event calling 2022-05-04 12:08:47 +02:00
holger krekel
cd4d265055 safer handling of calling account hooks, refined shutdown comment 2022-05-04 12:08:47 +02:00
holger krekel
ca59cbc898 make direct_imap idle usage safe from tests, so we never miss finishing direct_imap idle 2022-05-03 22:56:23 +02:00
holger krekel
88cbf42c39 fix various tests 2022-05-03 19:35:03 +02:00
holger krekel
f5157392b6 some renaming and some docstrings 2022-05-03 19:35:03 +02:00
holger krekel
f631ec3a7c shift startio/init machinery into PendingConfigure class 2022-05-03 19:35:03 +02:00
holger krekel
a9b2750ec9 slight renamings 2022-05-03 19:35:03 +02:00
holger krekel
7fbdb42695 remove _configtracker and write a tested "PendingConfigure" helper class for managing configure/started states for test accounts 2022-05-03 19:35:03 +02:00
holger krekel
b373e7acba more renames 2022-05-03 19:35:03 +02:00
holger krekel
d2ca54c167 provide for meaningful names for bringing accounts online for test functions 2022-05-03 19:35:03 +02:00
holger krekel
e070284a09 strike setting "displayname" in test plugin and refine two tests which implicitely relied on this 2022-05-03 19:35:03 +02:00
holger krekel
f11c3dd3e3 fix bench test 2022-05-03 19:35:03 +02:00
holger krekel
2494613583 - perform direct_imap init in testplugin instead of global deltachat
plugin, probably also helping to avoid some segfeaults during teardown

- some API renaming on the side (too hard to split into separate commit, sorry)
2022-05-03 19:35:03 +02:00
holger krekel
77c60e7450 refine test support function name 2022-05-03 19:35:03 +02:00
holger krekel
04dd2d93d0 trim online account creation to a single get_online_accounts() function 2022-05-03 19:35:03 +02:00
holger krekel
5e5710ecce streamline configuration handling for test accounts, removing one layer of flags 2022-05-03 19:35:03 +02:00
holger krekel
c1b33a66c4 refactor "quiet" parameter away and provide more precise logging-control 2022-05-03 19:35:03 +02:00
holger krekel
0e3165d724 unify get_unconfigured_account and make_account 2022-05-03 19:35:03 +02:00
holger krekel
3e12eab0b5 remove make_account from get_online_config and rename the latter to get_next_liveconfig to avoid one indirection 2022-05-03 19:35:03 +02:00
holger krekel
87365e4a43 - remove superflous early set_configs to separate config / account making better
- avoid low-level dc_* API access from testplugin
2022-05-03 19:35:03 +02:00
holger krekel
5e39a13bf6 refine waiting for initial startup waiting for "INBOX: Idle" ready
this slows down initialization for tests but provides more stability in my runs
2022-05-03 19:35:03 +02:00
holger krekel
c7c1a04c6a move large inlined AccountMaker (renamed to ACFactory) to proper class instead of being defined in closure 2022-05-03 19:35:03 +02:00
holger krekel
fd5b224ba0 simplify test setup api by removing pre_generated_keys arguments 2022-05-03 19:35:03 +02:00
Hocuri
4c9cc4f3d4 Hopefully make test_connectivity() less flaky 2022-04-30 18:07:39 +02:00
link2xt
48f2c4e14b Correctly escape messages consisting of a dot in SMTP protocol
Actual bugfix is in the async-smtp crate.
2022-04-30 13:30:31 +00:00
holger krekel
f41df327a9 add a little bench file -- "pytest tests/bench_empty.py --durations=10" will tell you how much overhead there is 2022-04-30 13:27:02 +02:00
holger krekel
4c7c4e2a81 better document one sometimes failing test 2022-04-29 10:06:02 +02:00
holger krekel
521fa58b75 remove timeout 2022-04-29 10:00:43 +02:00
holger krekel
a2e5c60683 - remove one unncessary usage of imap idle
- simplify SEEN bytes/unicode flag issue
- fix a lint issue and a docstring
2022-04-29 09:42:05 +02:00
missytake
5ef152fd84 replaced imapclient python library with imap-tools in the tests. works with testrun.org locally 2022-04-28 16:50:36 +02:00
holger krekel
3ffc985968 try fix a sometimes failing test: don't test python's imap idle as it's not needed. also add some more logging. 2022-04-26 15:28:24 +02:00
link2xt
8c0bc9080c Create "Junk" folder in test_dont_show_emails()
This folder may not exist on the test server.
2022-04-24 00:20:41 +00:00
link2xt
2f31033a88 Ignore messages from all spam folders if there are many
For example, if there is both a Spam and Junk folder,
both of them should be ignored, even though only one
of them can be a ConfiguredSpamFolder.
2022-04-23 19:23:31 +00:00
holger krekel
801d636eb5 enhance waiting for direct imap idle events to prevent randomness 2022-04-20 23:32:45 +02:00
link2xt
2012833cb3 Fix lint 2022-03-12 20:07:00 +00:00
link2xt
e48eef7e32 Start ephemeral timer when seen status is synchronized via imap 2022-03-12 19:28:31 +00:00
bjoern
500e2d62a0 remove sentbox_move (#3111)
* remove SentboxMove

* adapt python test to removed sendbox_move option

* update CHANGELOG
2022-03-08 11:29:45 +01:00
Hocuri
34f5510f1f Don't directly download messages from the Spam folder (#3015)
fix #3007

My approach is:

We don't download any messages from the spam folder anymore, and only download them if they were moved out. This means that is-it-spam logic only resides in spam_target_folder(). This has some implications, see the comments.
2022-02-10 09:06:22 +01:00
link2xt
196075c031 imap: batch message deletion 2022-02-06 11:42:30 +00:00
link2xt
c4b0f773db python: remove arbitrary timeouts from tests
pytest-timeout already handles all deadlocks and is configurable with
--timeout option. With this change it is possible to disable timeout
with --timeout 0 to run tests on extremely slow connections.
2022-02-06 12:52:48 +00:00
link2xt
276daf631e imap: move messages in batches
Also change how NO response is treated. NO response means there is an
error moving/copying the messages. When there are no matching
messages, the response is "OK No matching messages, so nothing copied"
according to some RFC 9051 examples.
2022-02-05 22:15:46 +00:00
link2xt
afd8c0d879 Add smtp table
It replaces SendMsgToSmtp job.

Prepared outgoing SMTP payloads are stored in the database now rather
than files in blobdir.
2022-01-01 19:14:53 +00:00
link2xt
3c38fa6b70 Add API for passphrase-protected accounts
To create encrypted account with account manager, call
dc_accounts_add_closed_account(). Open this account with
dc_context_open() using the passphrase you want to use for encryption.

When application is loaded next time and account manager is created,
it will open all accounts that have no passphrase set. For encrypted
accounts dc_context_is_open() will return 0. To open them, call
dc_context_open() with the correct passphrase. After opening, call
dc_context_start_io() on this account or just dc_accounts_start_io()
to start all accounts that are not started yet.

Support for legacy SQLite-based backup format is removed in this
commit.
2022-01-06 08:54:58 +00:00
link2xt
095b358aca Test multidevice synchronization of Seen status 2022-01-03 23:12:29 +00:00