Commit Graph

20 Commits

Author SHA1 Message Date
chris001 fc52034ea8 Autmomated testing using Travis and CodeCov.io!
Linux, Mac OSX. Outlook IMAP, Gmail. LOGIN, PLAIN, XOAUTH2. python 2.7, python 3.6!

Additional files required for Automated testing with Travis-CI and CodeCov.io!
Add gitter.im badge to README.

Signed-off-by: Chris Coleman/EspaceNetworks <chris001@users.noreply.github.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2018-03-05 19:31:51 +01:00
Łukasz Żarnowiecki 19c43308b9 Change filter with lambda to list comprehension
It is more readable and returns a list therefore it is compatible both
with Python 2 and 3.

Signed-off-by: Łukasz Żarnowiecki <dolohow@outlook.com>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2016-05-10 02:53:09 +02:00
Pierre-Louis Bonicoli b7789268b7 test: handle imap.gmx.net server: workarounds
Signed-off-by: Pierre-Louis Bonicoli <pierre-louis.bonicoli@gmx.fr>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-02 19:32:17 +02:00
Pierre-Louis Bonicoli ff069e1d86 test: workaround for imaplib behaviour
an empty string appears after each literal string.

Signed-off-by: Pierre-Louis Bonicoli <pierre-louis.bonicoli@gmx.fr>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-02 19:32:16 +02:00
Pierre-Louis Bonicoli ecc2af9f99 test: handle literal string
Tuple are used for literal strings (see RFC3501 Section 4.3).

Signed-off-by: Pierre-Louis Bonicoli <pierre-louis.bonicoli@gmx.fr>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-02 19:32:16 +02:00
Pierre-Louis Bonicoli be89a7605f test: folders: keep quotes
Signed-off-by: Pierre-Louis Bonicoli <pierre-louis.bonicoli@gmx.fr>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-02 19:32:15 +02:00
Pierre-Louis Bonicoli afcd640035 test: folder separator could be dot or slash
Signed-off-by: Pierre-Louis Bonicoli <pierre-louis.bonicoli@gmx.fr>
Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net>
2015-04-02 19:32:15 +02:00
David Logie a614f9a735 Fix str.format() calls for Python 2.6.
Python 2.6 requires a slightly different string formatting that >2.7.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-06-02 18:25:51 +02:00
Sebastian Spaeth f67278b2a8 tests: Add tests for imaputil.* functions
Add one test for each of the functions in offlineimap.imaputil, to make
sure they keep working. These functions tests the internal innards of
the offlineimap module rather than invoking offlineimap as a program.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-04-03 01:34:59 +02:00
Sebastian Spaeth d6da65b18f tests: Fix test #4
1) Fix test #4 by deleting all local mailfolders remaining from previous
tests, the mailfolder count will be off, otherwise.

2) Make folder deletion work in python3, it weirdly enough needs to be
quoted like this to work in python3 (I found a python bug about this
somewhere).

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-02-27 16:35:17 +01:00
Sebastian Spaeth 2800a71a28 tests: Add "create email test"
This is the first test that actually creates a (local) email and
syncs. We check the result of the sync operation, to see if the
server has actually been assigning a proper UID to the email and
bail out if not.

This test therefore excercises our ability to properly detect the
new UID of an APPENDED email. Obviously we still need some
IMAP<->IMAP tests too, but since this is the same codepath being
used for APPENDs in that case, it could also help to detect
instabilities there.

In order to get this test in, the OLITestLib got a few new helper
functions:
- delete_maildir
- create_mail
- get_maildir_uids

The test passes here. I invoke it via:

python -m unittest test.tests.test_01_basic.TestBasicFunctions.test_04_createmail

or run python setup.py test, to run the whole suite.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-02-24 09:39:39 +01:00
Sebastian Spaeth d1e6e1f09e tests: make tests (nearly) work with python3
Tests work now with python 3 with the exception of the deletion of remote
testfolders which fails for some reasons.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-02-17 14:58:24 +01:00
Sebastian Spaeth 79ddb0be71 tests: add delete remote folder helper function
We need to clean out the remote folders before we invoke the test suite.
Implement a helper function that does this, and improve the test output
(less verbose) and the setup.py --help-commands (more verbose). Document
that it is possible to run a single test only. (although it is not
guaranteed that a test does not rely on the output of previous tests).

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-02-17 10:12:53 +01:00
Sebastian Spaeth 75ea403278 test: Split configuration generation so we can tweak values
Use get_default_config and write_config_file (which can be handed an optional
config object), so we can manipulate configuration options easily from within
the test function.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-02-16 09:58:59 +01:00
Sebastian Spaeth c1f75a6c94 test: Create all intermediary maildirs
Don't fail if root maildir folder does not exist it. Create it recursively.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-02-16 09:56:23 +01:00
Sebastian Spaeth 314a4e3b2c Improve test suite and add test
1) Add helper functions to create and count maildirs and mails.

2) Add a second test that creates 2 maildirs, one of the including a
quotation sign " in its folder name and sync.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-01-20 15:55:44 +01:00
Sebastian Spaeth 2776ee1974 Create temp directories in "test" dir
Don't create the temp dirs in the current directory, but create them in
the same directory as the credentials.conf file is. We still need to
prevent deleting them on test failure, so that they can be inspected
manually.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-01-19 10:32:05 +01:00
Sebastian Spaeth 1f91d0fd06 Adapt imports so that test/OLItest can be imported
To run the test suite from the main setup.py we need to be able to
import and run the test suite from a different folder than the "test"
dir.

Make "test" a package and fix the imports to still work when imported
from another folder.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-01-19 10:32:05 +01:00
Sebastian Spaeth 9a905188f2 Add userfriendly warning if credentials.conf is missing
Warn the user and advise what she should be doing to get going.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-01-19 10:32:05 +01:00
Sebastian Spaeth 7b75e04b5b Add initial skeleton for a testing framework
This is the first revision that actually performs a test, in that it
starts up OfflineImap and sees if there are any exceptions.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-01-19 10:32:05 +01:00