Commit graph

692 commits

Author SHA1 Message Date
Hugo Osvaldo Barrera
7e4a0be674 Upgrade flake8
Update to the latest flake8, and fix all code warnings related to that.
2020-06-08 18:40:31 +02:00
Hugo Osvaldo Barrera
9505430b83 Pin an older version of Xandikos
This is the one used back when master was last green, so let's start
with this one and gradually move up.
2020-06-08 16:33:17 +02:00
Hugo Osvaldo Barrera
cb4ba5b38c Fix linting errors
One more green checkmark! 
2020-06-08 15:39:01 +02:00
Hugo Osvaldo Barrera
65d17bdcbf Pin a known-working version of radicale too 2020-06-08 14:47:41 +02:00
Hugo Osvaldo Barrera
7c04289ed4 Pin xandikos to 0.1.0 2020-06-08 13:51:15 +02:00
Hugo Osvaldo Barrera
558da29e5e Use the syntax hypothesis accepts 2020-06-08 13:26:39 +02:00
Markus Unterwaditzer
80a42e4c6c Fixes for open_graphical_browser, fixes #754 2018-07-19 21:14:30 +02:00
Markus Unterwaditzer
97f58ddc46 Disable health checks for distro builds 2018-02-05 17:01:37 +01:00
Markus Unterwaditzer
93df284d3c Make a maintenance release of vdirsyncer, fix #708 2018-02-05 08:23:45 +01:00
Markus Unterwaditzer
9e3c231cc3 Remove Python 3.3 support (#674)
* Remove Python 3.3 support
2017-10-02 14:38:54 +02:00
Markus Unterwaditzer
1f8d1a0dc5 More tests for sync status 2017-10-01 22:29:33 +02:00
Markus Unterwaditzer
be33fd3ed3 Restructure vdirsyncer.sync 2017-10-01 21:44:14 +02:00
Markus Unterwaditzer
32d1fecbb4 New tests for sync status 2017-10-01 21:44:14 +02:00
Markus Unterwaditzer
cf8e89b5b4 Split up fetchparams tests 2017-10-01 21:44:14 +02:00
Markus Unterwaditzer
88969ae5e6 Fix xandikos git url 2017-09-24 12:02:24 +02:00
Markus Unterwaditzer
9314a93d67 Add autopep8 git commit hook (#671)
* Add autopep git hook

* Fix broken link
2017-09-23 13:55:57 +02:00
Markus Unterwaditzer
3112e6899e Remove invalid ascii chars from xml, fix #626 (#668)
* Remove invalid ascii chars from xml, fix #626

* Add changelog

* Remove unused imports

* Fix errors on older Python versions

* Fix tests
2017-09-13 20:55:03 +02:00
Markus Unterwaditzer
77658fa0b5 Disable urllib3 warnings 2017-09-11 21:25:56 +02:00
Markus Unterwaditzer
0d47e06d89 Add test re #657 2017-08-12 16:46:22 +02:00
Markus Unterwaditzer
547b327557 Attempt to fix requests tests 2017-08-02 19:55:56 +02:00
Jelmer Vernooij
01c88b514c Set defaults for CI and DETERMINISTIC_TESTS. (#653)
This makes it a bit easier to manually run individual tests.
2017-07-19 21:40:52 +02:00
Markus Unterwaditzer
56fe38fcdc UID replacement benchmark 2017-07-16 22:17:04 +02:00
Markus Unterwaditzer
37a1eb2fdb Remove remoteStorage (#648)
Fix #647
2017-07-02 18:42:55 +02:00
Markus Unterwaditzer
fa6a98ec9b Remove useless skip 2017-05-31 12:40:40 +02:00
Markus Unterwaditzer
7f80251527 Test development Radicale again (#428)
* Revert "Don't test development Radicale"

This reverts commit 7a5241101e.

* Fix Radicale test setup

* Radicale is very tolerant

* Simplify test such that output is more predictable

* Runtime version check for Radicale

* Don't create user explicitly

* stylefix

* Shorter tracebacks

Travis logs are very hard to read
2017-05-30 09:12:00 +02:00
Markus Unterwaditzer
8a5df8b802 stylefix 2017-05-02 13:56:57 +02:00
Markus Unterwaditzer
2b0492fe5e Fix etesync tests 2017-05-02 12:58:58 +02:00
Markus Unterwaditzer
cc54ed6e7c Migrate etesync db 2017-04-29 21:33:50 +02:00
Markus Unterwaditzer
09dacde3f3 owncloud update 2017-04-18 23:12:32 +02:00
Markus Unterwaditzer
3dd132e1b6 Fix import 2017-04-13 16:51:24 +02:00
Markus Unterwaditzer
0d9ec646d7 Initial etesync support (#614)
* Initial etesync support

* Optimized get()

* Bugfixes

* bugfixes

* Add writing operations

* collection creation WIP

* Fix collection creation

* tests wip

* wip

* Final touch for test setup

* actually skip tests

* Disable metadata tests

* Avoid polluting working tree

* Avoid importing wsgi-intercept if not installed

* Fix collection tests

* Proper teardown

* Skip bad test

* Remove vtodo

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Add docs

* Remove useless pkg

* Don't crash if etesync isn't imported

* Stylefix

* Fix more import errors

* More import errors

* Only run etesync on latest python

* Fix etesync check

* journal-manager migration
2017-04-13 16:27:11 +02:00
Markus Unterwaditzer
45d275f71d Disable OS X in Travis (#618)
See #617
2017-04-13 16:26:37 +02:00
Markus Unterwaditzer
b6be4b44de Fix metasync testcase 2017-04-07 12:58:42 +02:00
Markus Unterwaditzer
9a32c34e76 Switch to sqlite for sync status (#611)
* Switch to sqlite for sync status

* Add more info to changelog

* Fix transactions

* Fix transactions more
2017-03-28 10:18:24 +02:00
Markus Unterwaditzer
0e89753757 Use sqlite for sync internally (#609)
See #546
2017-03-27 00:08:23 +02:00
Markus Unterwaditzer
28f204162b Add xandikos to CI (#601)
* Add xandikos to CI

* wip

* Work around missing dependency spec

* Add xandikos to travis

* Remove auth

* Test release and devel

* Refactor xandikos setup

* Fix syntax error

* Only test xandikos-git

* Add section to supported.rst

* changelog
2017-03-22 14:40:41 +01:00
Markus Unterwaditzer
e5bc3fd6e7 Document resolution of #593 2017-03-12 13:36:12 +01:00
Markus Unterwaditzer
a285c555f0 Ignore fs collections that have subfolders (#591)
Fix #588
2017-03-09 13:40:27 +01:00
Markus Unterwaditzer
feea65ff1d Stylefix 2017-03-08 11:38:57 +01:00
Markus Unterwaditzer
bb35d7c091 Flatten mysteryshack submodule 2017-03-08 10:16:26 +01:00
Markus Unterwaditzer
a02f36f0cb Flatten davical submodule 2017-03-08 10:14:07 +01:00
Markus Unterwaditzer
c15a04a1de Expand flake8 to submodules 2017-03-08 10:08:24 +01:00
Markus Unterwaditzer
668220dbd7 Add fastmail testserver (#572) 2017-03-02 21:13:08 +01:00
Markus Unterwaditzer
47a38c0af3 Update submodules 2017-02-28 12:25:45 +01:00
Markus Unterwaditzer
76f794eef3 Module restructuring 2017-02-27 21:19:27 +01:00
Markus Unterwaditzer
6aeeb90259 Test iCloud (#567)
* Test iCloud

Fix #149
2017-02-27 19:52:24 +01:00
Markus Unterwaditzer
96e7c4da37 Fix styling 2017-02-27 00:43:21 +01:00
Markus Unterwaditzer
e457586b29 Fix bug in custom conflict_resolution
Fix #563
2017-02-26 23:24:30 +01:00
Markus Unterwaditzer
10490a12f1 Unconditionally disable HealthCheck.too_slow 2017-02-18 15:45:06 +01:00
Markus Unterwaditzer
9744a3a682 Stylefix 2017-02-12 00:34:42 +01:00
Markus Unterwaditzer
c4dda80e52 Fix tests on mac 2017-02-12 00:28:37 +01:00
Markus Unterwaditzer
ff5732f5ff Restructure tests 2017-02-11 22:53:12 +01:00
Markus Unterwaditzer
c87848fd03 Add example from failing CI run on OS X 2017-02-11 20:25:07 +01:00
Markus Unterwaditzer
7ab6de6f37 More tests 2017-02-11 20:24:55 +01:00
Markus Unterwaditzer
0f2e7e2395 More tests 2017-02-11 20:24:55 +01:00
Markus Unterwaditzer
11694f2766 repair: More tests, slight refactor 2017-02-11 20:24:55 +01:00
Markus Unterwaditzer
6a0b95a4bd Update davical testserver 2017-02-06 20:55:00 +01:00
Markus Unterwaditzer
e54f5b89a3 Makefile: new coverage param 2017-01-30 13:42:01 +01:00
Markus Unterwaditzer
dd465eb909 Don't fail when discovery fails 2017-01-30 12:48:18 +01:00
Markus Unterwaditzer
d454093365 Larger refactor of CLI discovery
Also fix #543
2017-01-29 11:47:47 +01:00
Markus Unterwaditzer
3514d7348c More tests for vobject (#541)
* More tests for vobject

* wip

* wip

* stylefix
2017-01-22 23:46:14 +01:00
Markus Unterwaditzer
9c417248de More tests 2017-01-20 23:05:00 +01:00
Markus Unterwaditzer
91a284d60b Remove old logic for config values 2017-01-20 23:05:00 +01:00
Markus Unterwaditzer
0172166510 Stylefix 2017-01-20 21:58:56 +01:00
Markus Unterwaditzer
41794f095d More tests 2017-01-19 22:10:45 +01:00
Markus Unterwaditzer
e7910e92aa Update nextcloud 2017-01-19 14:59:18 +01:00
Markus Unterwaditzer
b2422dbea6 Reorganize testsuite
The end goal here is to independently measure coverage of each of those
testsuites.
2017-01-18 22:42:42 +01:00
Markus Unterwaditzer
af5705f740 Return back to None as non-ETag
nextCloud now returns no etag on upload, which is why we're forced to
adapt the tests accordingly. So now we need to specify a fixed value for
"no etag returned" such that the tests can act accordingly. We also need
to test that the sync algorithm works properly with None.
2017-01-12 13:52:32 +01:00
Markus Unterwaditzer
bd19ee45d8 Stylefix for new bugbear update 2016-12-19 22:18:27 +01:00
Markus Unterwaditzer
c7164cfcca Update mysteryshack 2016-12-10 23:50:02 +01:00
Markus Unterwaditzer
c4d04ad3d7 Baikal and owncloud update 2016-12-10 01:29:28 +01:00
Markus Unterwaditzer
b0f85f9f53 Nextcloud update 2016-12-10 01:27:50 +01:00
Markus Unterwaditzer
c6873c5f18 php servers update 2016-12-10 01:08:19 +01:00
Markus Unterwaditzer
7dcaa47a22 mysteryshack update 2016-12-06 17:45:40 +01:00
Markus Unterwaditzer
96bf21c1da Dont repair unsafe UIDs by default, fix #527 2016-12-06 15:58:16 +01:00
Markus Unterwaditzer
5160437f27 Stylefix 2016-10-23 14:20:36 +02:00
Markus Unterwaditzer
db970981a0 Fix tests on OS X 2016-10-23 01:47:09 +02:00
Markus Unterwaditzer
5a257ec2cd config: Add warning about unquoted strings 2016-10-23 01:40:04 +02:00
Markus Unterwaditzer
1795e63910 Refactor Config API, expose load_config for khal 2016-10-21 13:23:27 +02:00
Markus Unterwaditzer
c6e185d8a3 Evaluate partial_sync lazily
Fix #516
2016-10-13 18:25:55 +02:00
Markus Unterwaditzer
74b73a4011 refactor test_sync 2016-10-04 21:42:31 +02:00
Markus Unterwaditzer
6ecc14fca2 Improve partial sync test 2016-10-04 21:24:59 +02:00
Markus Unterwaditzer
ec00ea70af Rename test 2016-10-04 20:52:53 +02:00
Markus Unterwaditzer
2e3ebd814a Add test for partial_sync=ignore 2016-10-04 20:40:34 +02:00
Markus Unterwaditzer
15bf13cfe1 Make pair config more strongly typed 2016-10-04 18:51:11 +02:00
Markus Unterwaditzer
827299ef24 Add CLI for partial_sync 2016-10-03 19:01:03 +02:00
Markus Unterwaditzer
8ca5446e02 Fix tests 2016-10-03 19:00:27 +02:00
Markus Unterwaditzer
ffeaf25471 internal implementation of partial_sync 2016-10-03 18:37:32 +02:00
Markus Unterwaditzer
3cf33e5efe Stylefix 2016-10-01 19:09:27 +02:00
Markus Unterwaditzer
34ac29fc2a Add error_callback to sync() 2016-10-01 18:25:17 +02:00
Markus Unterwaditzer
95c6be6aee Remove remove_hash_from_status
This causes too many problems and forces us to weaken further
assumptions. Better to write separate migration tests, but I don't care.
2016-10-01 17:27:44 +02:00
Markus Unterwaditzer
a12df8f5d2 Update mysteryshack again 2016-10-01 16:52:22 +02:00
Markus Unterwaditzer
ef9f13c982 Update mysteryshack again 2016-10-01 16:20:16 +02:00
Markus Unterwaditzer
68d2647e38 Add flake8-bugbear 2016-10-01 16:01:12 +02:00
Markus Unterwaditzer
5dc6a5ff36 Update mysteryshack-testserver (#513)
* Update mysteryshack-testserver

* REMOVE ME

* wip

* wip

* wip
2016-10-01 15:41:18 +02:00
Markus Unterwaditzer
ce8e027346 stylefix 2016-09-27 21:42:29 +02:00
Markus Unterwaditzer
565e971e4e Reorganize tests 2016-09-27 14:11:04 +02:00
Markus Unterwaditzer
8e3caf2c58 Extend coverage for repair command 2016-09-27 14:07:12 +02:00
Markus Unterwaditzer
a524f8e971 Debug output 2016-09-27 12:38:36 +02:00
Markus Unterwaditzer
6f4ff7aab1 Replace Dav with DAV
Fix #501
2016-09-27 10:46:17 +02:00
Markus Unterwaditzer
6aedd624a9 update nextcloud 2016-09-26 20:19:29 +02:00
Markus Unterwaditzer
30ab52ea4c Stylefix 2016-09-26 13:28:57 +02:00
Markus Unterwaditzer
5f76c9e720 Another sync refactor 2016-09-26 12:51:49 +02:00
Markus Unterwaditzer
8cbfb69691 Test rollback in sync 2016-09-26 12:51:49 +02:00
Markus Unterwaditzer
dd5f76ca5d ignore UIDs in http storage 2016-09-25 14:03:46 +02:00
Markus Unterwaditzer
22568571c2 Introduce conflict resolution via commands
Fix #127

More options of conflict resolution are discussed there, but they all
require extra dependencies. This new API allows the user to plug in
third-party scripts to do those.
2016-09-19 19:17:39 +02:00
Markus Unterwaditzer
dc5500892b More config refactor 2016-09-19 19:17:39 +02:00
Markus Unterwaditzer
cfbc7ec71b Refactor of status handling in sync (#505)
- Using `info.idents` as new status, this saves a few operations where
  no storage actions have to be taken, but the status has to be updated.

- Rename StorageSyncer to _StorageInfo and make it a private API again.

- Ability to pass custom functions for conflict resolution. This part is
  a preparation for #127.
2016-09-18 15:46:56 +02:00
Markus Unterwaditzer
b20fc996a2 Refactor config parsing
Fix #459
2016-09-08 13:34:34 +02:00
Markus Unterwaditzer
18d8bb9fc2 Remove Python 2 support (#499)
* Discontinue Python 2.

See #219

* Remove Python 2 config option

* Remove coerce_native

* Remove PY2 variable

* s/text_type/str/g

* Flake8 fixes

* Remove str = str

* s/to_native/to_unicode/g

* Remove to_unicode = to_unicode

* Remove iteritems

* Remove itervalues

* Remove str import, flake8 fixes

* Remove urlparse compat code

* Remove with_metaclass

* Remove unused PY2 variable

* Remove getargspec_ish

* Remove to_bytes

* Remove compat module

* Remove Python 2 from Travis

* fixup! Remove urlparse compat code

* fixup! Remove urlparse compat code

* fixup! Remove compat module
2016-09-08 12:18:36 +02:00
Markus Unterwaditzer
5a382be9c6 update davical-testserver 2016-08-28 23:19:22 +02:00
Markus Unterwaditzer
8ecef1e9a6 Update davical
Fix #458
2016-08-27 17:20:10 +02:00
Markus Unterwaditzer
0de8415183 Stylefixes 2016-08-26 08:34:32 +02:00
Markus Unterwaditzer
3c7c1f5f67 Add test for CollectionRequired 2016-08-26 01:39:29 +02:00
Markus Unterwaditzer
6f43e14908 Update baikal-testserver 2016-08-23 16:05:47 +02:00
Markus Unterwaditzer
a05c30be58 Update mysteryshack-testserver 2016-08-20 17:14:26 +02:00
Markus Unterwaditzer
f238a58c85 DAV: Don't violate Storage API (#492)
The implementation of #476 is problematic as it returns None.
`vdirsyncer.sync` has internal assertions that this is a string, which
is why we get a crash like this:

    error: Unknown error occured for cal/markus@unterwaditzer.net:
    error: Use `-vdebug` to see the full traceback.
    debug:   File "/home/untitaker/projects/vdirsyncer/vdirsyncer/cli/tasks.py", line 66, in sync_collection
    debug:     force_delete=force_delete
    debug:   File "/home/untitaker/projects/vdirsyncer/vdirsyncer/sync.py", line 228, in sync
    debug:     action(a_info, b_info, conflict_resolution)
    debug:   File "/home/untitaker/projects/vdirsyncer/vdirsyncer/sync.py", line 276, in inner
    debug:     assert isinstance(dest_etag, (bytes, text_type))

Discovered in #467
2016-08-19 19:58:38 +02:00
Markus Unterwaditzer
f8dffaf51e Update mysteryshack-testserver 2016-08-19 19:11:58 +02:00
Markus Unterwaditzer
a54999ff17 Introduce collections for singlefile storage (#488)
Fix #485
2016-08-17 17:41:40 +02:00
Markus Unterwaditzer
4ca4f13423 Update nextCloud 2016-08-15 13:05:40 +02:00
Markus Unterwaditzer
d96ad6ad10 Update mysteryshack-testserver again 2016-08-15 12:48:14 +02:00
Markus Unterwaditzer
7b81415b58 Update mysteryshack-testserver 2016-08-15 12:36:49 +02:00
Markus Unterwaditzer
c099b876d2 Syntax fix 2016-08-15 12:12:49 +02:00
Markus Unterwaditzer
3deba27d8b Make test_collection_arg more generic 2016-08-15 11:25:37 +02:00
Markus Unterwaditzer
97bfccdb44 Stylefix for flake8 update 2016-07-26 21:48:42 +02:00
Markus Unterwaditzer
f7076118df Stylefixes 2016-07-25 04:58:10 +02:00
Markus Unterwaditzer
140af81ead Fix XML querying bug
Fix #480
2016-07-25 04:58:10 +02:00
Markus Unterwaditzer
e4a0afcf00 Make auth = basic the default again (#477)
Fix #461
Fix #457
2016-06-17 14:35:06 +02:00
Markus Unterwaditzer
3228e22621 DAV: Fix behavior when PUT doesn't return ETag (#476)
Thanks to @evert for pointing this out in the #sabredav IRC channel.
2016-06-16 21:40:18 +02:00
Markus Unterwaditzer
8d0b055110 Merge pull request #470 from pimutils/collections-null-fix
Kill special codepath for `null`-collection
2016-06-16 15:30:16 +02:00
Markus Unterwaditzer
c6e66dc682 Test nextcloud (#473) 2016-06-16 15:28:24 +02:00
Markus Unterwaditzer
403a683e70 Cosmetic improvements 2016-06-16 15:10:03 +02:00
Markus Unterwaditzer
8c1ae4f099 Kill special codepath for null-collection 2016-06-16 15:10:03 +02:00
Markus Unterwaditzer
54517b61c9 Fix typo that would break tests 2016-06-15 18:13:44 +02:00
Markus Unterwaditzer
f289437e46 Fix validation bugs for collections parameter 2016-06-15 17:17:07 +02:00
Markus Unterwaditzer
d24f3835ef Replace text/icalendar with text/calendar
Fix #455
2016-05-25 19:23:25 +02:00
Markus Unterwaditzer
c84bab113a Update ownCloud 2016-05-24 14:19:33 +02:00
Markus Unterwaditzer
139182ef2a Weaken test 2016-05-13 23:59:34 +02:00
Markus Unterwaditzer
09d6aeb4b1 Update davical server 2016-05-13 22:17:19 +02:00
Markus Unterwaditzer
61dce503a3 Fix remoteStorage tests 2016-05-13 21:56:48 +02:00
Markus Unterwaditzer
b5a690e9b2 Fix defective discovery test
Also split up in two testcases
2016-05-13 21:25:45 +02:00
Markus Unterwaditzer
207091f11a Stylefixes 2016-05-12 20:36:34 +02:00
Markus Unterwaditzer
2b6456e572 Fix broken Hypothesis test 2016-05-12 20:27:12 +02:00
Markus Unterwaditzer
4742ea61bc Nicer error message for InvalidResponse
See #448
2016-05-12 18:40:15 +02:00
Markus Unterwaditzer
d16721cde8 Replace a few skips with xfails 2016-05-02 17:07:31 +02:00
Markus Unterwaditzer
fc3e823b6b Use os.environ instead of getenv
None.lower() fails too, but KeyError() is a nicer errormessage
2016-05-02 16:50:19 +02:00
Markus Unterwaditzer
d3724ebb19 Reorder tests 2016-05-02 16:43:24 +02:00
Markus Unterwaditzer
900ffceca9 Refactor test_config 2016-05-02 16:41:03 +02:00
Markus Unterwaditzer
08b7db3478 Stylefix 2016-04-30 19:46:13 +02:00
Markus Unterwaditzer
66c6f31c8b Remove test of deprecated code
See a1532f36f6
2016-04-30 18:49:43 +02:00