Markus Unterwaditzer
ce2cea130c
Make status_path relative to config file
2015-01-12 20:16:10 +01:00
Markus Unterwaditzer
8ab9c429cc
Rewrite safe_write
2015-01-12 00:32:49 +01:00
Markus Unterwaditzer
cda763fcc5
Set verify=False if verify_fingerprint is given
2015-01-10 23:31:55 +01:00
Markus Unterwaditzer
ebedca1e85
add testcase
2015-01-10 23:01:34 +01:00
Markus Unterwaditzer
12098bcc9d
Add testcase for moved hrefs.
2015-01-10 22:06:56 +01:00
Markus Unterwaditzer
a55d1f2d03
Re-enable baikal tests
2015-01-04 13:43:53 +01:00
Markus Unterwaditzer
ccc3dee28b
Handle UID conflicts during sync
2015-01-03 16:30:23 +01:00
Markus Unterwaditzer
6f95870a48
Remove old config value style
2015-01-01 23:28:54 +01:00
Markus Unterwaditzer
fab29b4ecb
Test collection creation explicitly
2015-01-01 22:01:24 +01:00
Markus Unterwaditzer
8e694a2a2f
Don't test collection creation indirectly
2015-01-01 22:01:24 +01:00
Markus Unterwaditzer
e76fd29aec
Unify collection creation
2015-01-01 22:01:23 +01:00
Markus Unterwaditzer
584e1d9d12
Add new testcase
...
see #144
2015-01-01 19:13:13 +01:00
Markus Unterwaditzer
b548c27384
Remove unnecessary imports
2015-01-01 13:17:04 +01:00
Markus Unterwaditzer
e21a197006
The original testcase already takes care of this.
2015-01-01 13:05:39 +01:00
Markus Unterwaditzer
bf81c769f8
Remove superfluous testcase.
2014-12-31 01:42:52 +01:00
Markus Unterwaditzer
e5d27d771d
Style fixes
2014-12-30 18:13:55 +01:00
Markus Unterwaditzer
e933f6db44
Ensure updated items have the same UID (if any)
...
FastMail insists on this.
2014-12-30 18:07:27 +01:00
Markus Unterwaditzer
ce30ed7b8a
Rewrite collections test
2014-12-30 13:23:45 +01:00
Markus Unterwaditzer
40b64139fd
Add item_types test
2014-12-28 00:40:35 +01:00
Markus Unterwaditzer
9b442ebcf3
Enforce read-only attribute
2014-12-27 11:28:31 +01:00
Markus Unterwaditzer
e450baf0f8
finally silence flake8
2014-12-26 10:04:51 +01:00
Markus Unterwaditzer
37cd8aa88d
Ignore error (not warning)
2014-12-26 01:23:38 +01:00
Markus Unterwaditzer
cdb25d61ec
Move config parsing into cli module
2014-12-26 00:58:41 +01:00
Markus Unterwaditzer
6ef330aac5
Stricter config validation
2014-12-26 00:50:15 +01:00
Markus Unterwaditzer
f2d34f4784
Create cli.tasks
2014-12-25 23:59:02 +01:00
Markus Unterwaditzer
c2ec4cd3a3
Testsuite refactoring
2014-12-21 13:58:47 +01:00
Markus Unterwaditzer
548b397dbb
Fix a refactoring bug
2014-12-20 13:50:01 +01:00
Markus Unterwaditzer
14699d3195
Fix test
2014-12-20 02:30:54 +01:00
Markus Unterwaditzer
cfe252d458
Make .cli a subpackage
2014-12-20 01:59:59 +01:00
Markus Unterwaditzer
3101572440
Add note regarding radicale bug
...
https://github.com/Kozea/Radicale/pull/236
2014-12-17 16:54:10 +01:00
Markus Unterwaditzer
90c9f227f3
Rename passwordeval to password_command
...
Fix #139
2014-12-17 14:58:26 +01:00
Markus Unterwaditzer
8266145443
Remove storage defaults from pair section
...
This feature didn't seem to be documented anyway.
2014-12-16 18:15:51 +01:00
Markus Unterwaditzer
2e2349c46d
Add discover command
2014-12-16 17:20:02 +01:00
Markus Unterwaditzer
06a701bc10
Handle collections correctly
...
Fix #132
Passing the collections parameter used to mean that the storage should
append its value to the URL or path. This was a leaky abstraction for
the reasons explained in #132 .
The new behavior removes this meaning from this parameter. Vdirsyncer
now maintains a cache of discovered collections.
2014-12-15 21:57:56 +01:00
Markus Unterwaditzer
1e8e931464
Clarify internal docstring
2014-12-15 21:18:37 +01:00
Markus Unterwaditzer
6b199474a6
Factor out deprecated config parsing
2014-12-15 21:12:54 +01:00
Markus Unterwaditzer
d9e4a5b767
Validate section names more strictly
...
This avoids any problems with status files
2014-12-15 20:52:32 +01:00
Markus Unterwaditzer
ddc47c2272
--force-delete is now a flag
...
Conflicts:
tests/test_cli.py
vdirsyncer/cli.py
2014-12-15 20:46:34 +01:00
Markus Unterwaditzer
a1f2d14c05
Refactor parse_config to use fileobject
2014-12-15 20:37:23 +01:00
Markus Unterwaditzer
e40ba55bd3
Build fixes
2014-12-11 21:51:03 +01:00
Markus Unterwaditzer
d91512d07e
Even more fixes to config parsing
2014-12-11 20:12:59 +01:00
Markus Unterwaditzer
291edd7be0
Merge branch 'encodings'
...
Conflicts:
vdirsyncer/storage/dav.py
2014-12-08 20:13:41 +01:00
Markus Unterwaditzer
61bf23588d
Refactor!
2014-12-08 16:32:23 +01:00
Markus Unterwaditzer
3b6a2f3664
Clean up set comparison
2014-12-08 11:27:04 +01:00
Markus Unterwaditzer
ca5a9cd8f9
Stricten collection discovery test
2014-12-07 16:49:52 +01:00
Markus Unterwaditzer
741045c1be
Rewrite DAV storages' encoding behavior
...
This is more explicit than the old behavior. See
https://github.com/Kozea/Radicale/issues/128 for the discussion that led
to this.
2014-12-07 15:11:42 +01:00
Markus Unterwaditzer
07de8a0cc4
Add another test re s.has
2014-12-06 16:40:39 +01:00
Markus Unterwaditzer
772f745832
get_multi now ignores duplicate input
2014-12-06 14:08:10 +01:00
Markus Unterwaditzer
08c07c4be4
New config format
...
See #141
Basically this tries to parse config values with JSON, if that fails,
the value is interpreted as string.
I'd greatly appreciate feedback on this and #141
2014-12-02 21:03:06 +01:00
Markus Unterwaditzer
566a988f32
Remove indirection for get_storage_args fixture
2014-12-01 00:11:23 +01:00
Markus Unterwaditzer
c234bce656
"A from B" => "B/A"
2014-12-01 00:11:05 +01:00
Markus Unterwaditzer
a7878c9342
Add radicale multifilesystem to test matrix
2014-11-30 13:41:09 +01:00
Markus Unterwaditzer
069f5dfa89
Deal with Radicale 0.7
...
Fix #138
2014-11-26 14:19:46 +01:00
Markus Unterwaditzer
37c2467f59
Stricten testsuite
2014-11-25 15:17:51 +01:00
Markus Unterwaditzer
ca30542801
Test against more item types
2014-11-04 21:16:37 +01:00
Markus Unterwaditzer
3fccfe19e7
Enforce alphabetic import order
2014-10-29 23:03:58 +01:00
Markus Unterwaditzer
4857292b5c
New testcases for vobject joining
2014-10-21 18:26:02 +02:00
Markus Unterwaditzer
6bd5bf7422
Simplify sync code
...
Before deletion, vdirsyncer will now check if the item changed on the
other side, and induce a re-upload if the item did change.
Because of this behavior it is now possible to remove the special-casing
if no status is available.
Fix #128
2014-10-20 17:42:45 +02:00
Markus Unterwaditzer
f22548000b
Fix another typo and add test assertion
2014-10-19 18:36:09 +02:00
Markus Unterwaditzer
93d29972ec
Add testcase
2014-10-16 21:40:49 +02:00
Markus Unterwaditzer
29d80b7be0
Stop using multiprocessing.dummy.Pool
...
- Custom job queue with workers based on threads.
- Collection discovery is now done in a separate thread. Due to the
gained flexibility, we could do the sync actions in separate threads
too?
- The processes parameter has been removed, the related new option is
only available on the CLI.
2014-10-16 21:40:49 +02:00
Markus Unterwaditzer
2d62c8716b
Continue syncing pairs if one pair crashes
...
Fix #121
Vdirsyncer used to exit as a whole when one pair failed to synchronize
due to connection errors. The new behavior actually tries to synchronize
other pairs before exiting with a nonzero status code. The old behavior
can be restored with the --fail-fast flag.
2014-10-08 22:03:04 +02:00
vimbaer
64e9ef7dc3
Renamed evalcmd -> command, use py.test's tmpdir, allow arguments in passwordeval option.
2014-09-11 23:33:44 +02:00
vimbaer
4e895b8635
Added passwordeval as an option for the general config section. If no password is provided the command provided as passwordeval will be called with username and hostname as arguments.
2014-09-10 22:03:05 +02:00
Markus Unterwaditzer
9dbb359569
Fix failing testcase
2014-09-10 16:39:25 +02:00
Markus Unterwaditzer
3bb6662e8e
Add testcase
2014-09-09 17:48:36 +02:00
Markus Unterwaditzer
9e12e29db6
Properly deal with invalid filename characters
...
Fix #110
2014-09-03 20:35:31 +02:00
Markus Unterwaditzer
3d39526531
Allow file arg on netrc mock
...
On my machine, requests is trying to access it for some reason
2014-09-03 19:13:20 +02:00
Markus Unterwaditzer
686441b5ab
Merge pull request #106 from untitaker/tls_fingerprints
...
TLS fingerprints (2.1)
2014-08-30 18:59:26 +02:00
Markus Unterwaditzer
0bc03666ba
Fix dead doubleclick testcase
...
click.CliRunner swallowed all exceptions, also AssertionError
2014-08-30 17:06:01 +02:00
Thomas Weißschuh
fa2f7ca540
always serve something, else werkzeug blows up
2014-08-29 18:44:23 +00:00
Markus Unterwaditzer
c7e6acc0ba
Rewrite get_password
...
Only fetching by hostname, no bruteforce algorithm for system keyring
2014-08-22 20:06:37 +02:00
Markus Unterwaditzer
f5a701a920
Create global context
2014-08-22 13:06:22 +02:00
Markus Unterwaditzer
b093989220
Refine testcase again
2014-08-21 01:26:00 +02:00
Markus Unterwaditzer
63c990a320
Properly remove monkeypatching in radicale tests
2014-08-21 00:56:13 +02:00
Markus Unterwaditzer
b909d525f8
Fix broken testcase
2014-08-21 00:51:25 +02:00
Markus Unterwaditzer
e8e55de165
Add some tests
2014-08-21 00:26:48 +02:00
Markus Unterwaditzer
5509868958
Revert "Revert "Tls fingerprints""
2014-08-20 18:43:34 +02:00
Markus Unterwaditzer
c86ad88c96
Revert "Tls fingerprints"
2014-08-20 18:38:59 +02:00
Markus Unterwaditzer
73b8381ab8
Merge pull request #102 from t-8ch/tls_fingerprints
...
Tls fingerprints
Fix #100
2014-08-18 23:51:23 +02:00
Thomas Weißschuh
d5e8be4979
[tests] directly monkeypatch requests Session
...
need for later changes
2014-08-18 19:11:07 +00:00
Markus Unterwaditzer
bb4939bfdb
Validate general section.
...
Fix #100
2014-08-18 18:33:58 +02:00
Markus Unterwaditzer
8ea3b82c50
Add assertion for CLI output
2014-08-18 01:03:34 +02:00
Markus Unterwaditzer
1fff7efff5
Use name from config for representing storages
2014-08-18 00:53:05 +02:00
Markus Unterwaditzer
2fd4aaead3
Add tests for prepare_auth
2014-08-15 18:29:11 +02:00
Markus Unterwaditzer
2e2082fb55
Make _create_bogus_item a fixture.
...
Also rename the "storage" fixture to "get_storage".
2014-08-06 22:03:30 +02:00
Markus Unterwaditzer
eb1431e5db
Fix all known URL-quoting problems
...
- Fix #49 -- The old fix caused problems with other servers. The new
behavior only decodes ``@`` characters.
- ``@`` is now not used when generating a new href, as some servers seem
to have problems with it (http://sabre.io/dav/character-encoding/ ).
This behavior is configurable via the ``unsafe_href_chars`` parameters
for DAV storages, and is disabled in the testsuite for Radicale and
ownCloud.
- Decoding of hrefs is also done twice for CarddavStorage.list because
of owncloud/contacts#581 . Vdirsyncer has behaved like that before, but
not intentionally.
- Storages now don't share their ``_get_href`` methods anymore.
2014-08-06 16:43:23 +02:00
Markus Unterwaditzer
574869f619
ownCloud 7 now does If-Match headers right
2014-07-23 14:21:10 +02:00
Markus Unterwaditzer
838e816a65
Don't influence user's homedir
2014-07-23 12:21:03 +02:00
Markus Unterwaditzer
0f44645e78
Formatting and string type fixes
2014-07-14 15:32:59 +02:00
Markus Unterwaditzer
e2fa26a711
Add another test related to vcards vs icalendar
2014-07-14 15:15:50 +02:00
Markus Unterwaditzer
dea468fcaa
Xfail vcard group test
2014-07-13 19:28:14 +02:00
Markus Unterwaditzer
c8f97b43ec
Add testcase for #89
2014-07-13 19:11:06 +02:00
Markus Unterwaditzer
a79d1ddb52
Indent multiline string.
2014-07-13 18:35:08 +02:00
Markus Unterwaditzer
c750561fb8
Use more fixtures
2014-07-06 23:22:02 +02:00
Markus Unterwaditzer
97a428f3c8
Add new testcase
2014-07-06 20:43:59 +02:00
Markus Unterwaditzer
7bbc8b87da
Some smaller changes to testsuite
2014-07-06 20:28:48 +02:00
Markus Unterwaditzer
0dfcefbfd3
Use PROPFIND for carddav queries because of Zimbra
...
Fix #83
Fix #84
2014-07-05 14:09:30 +02:00
Markus Unterwaditzer
3abebde87f
Fix logging in test suite
2014-07-05 01:07:23 +02:00
Markus Unterwaditzer
6a63dcec81
Fix bug for --verbosity setting
2014-06-25 15:29:13 +02:00
Markus Unterwaditzer
8f5f7eea76
Style fixes
2014-06-22 00:48:57 +02:00
Markus Unterwaditzer
96aae16c32
Fix typo induced bug in split_collection
2014-06-22 00:21:29 +02:00
Markus Unterwaditzer
2fb58d6bcd
Fix bug in keyring fetching code
...
Leading to infinite loop when the password is simply not there.
Also fixed some import styling again
2014-06-19 18:14:51 +02:00
Markus Unterwaditzer
289ac2cfac
More tests
2014-06-19 18:14:51 +02:00
Markus Unterwaditzer
a6e2f23bbc
Catch exceptions with decorator
...
This allows us to validate the exact output in the tests
2014-06-19 18:14:51 +02:00
Markus Unterwaditzer
65a845c7ca
Add one more test
2014-06-19 18:14:51 +02:00
Markus Unterwaditzer
e9722ee63d
Add test for simple usage
2014-06-19 18:14:51 +02:00
Markus Unterwaditzer
d98c4b37ba
Cheap shots for test coverage
2014-06-19 18:13:45 +02:00
Markus Unterwaditzer
201c840e88
Import beautification
2014-06-19 00:07:54 +02:00
Markus Unterwaditzer
77a8cf8ff7
Fix logic
2014-06-15 12:07:22 +02:00
Markus Unterwaditzer
fadff19752
Make CaldavStorage.list faster
2014-06-15 11:15:13 +02:00
Markus Unterwaditzer
11adeaff86
split_collection: Allow multiple wrappers
...
Fix #78
2014-06-14 13:23:22 +02:00
Markus Unterwaditzer
5788544839
Merge pull request #77 from untitaker/readonly
...
Add read_only parameter
2014-06-12 15:46:57 +02:00
Markus Unterwaditzer
fc9ca4177f
Add a test for HttpStorage.read_only
2014-06-12 15:14:36 +02:00
Markus Unterwaditzer
c574e746dd
Split string only once
2014-06-12 14:40:25 +02:00
Markus Unterwaditzer
5028d09f61
Add read_only parameter
...
Just skip any updates when the storage is read-only, write to status
anyway. The change will get reverted in the next sync.
Fix #54
2014-06-12 14:24:00 +02:00
Markus Unterwaditzer
67d14cd59a
Style fix
2014-06-12 13:24:01 +02:00
Markus Unterwaditzer
e25e4dc0cb
Fix bug
2014-06-12 12:51:20 +02:00
Markus Unterwaditzer
cec742b9e3
Correctly handle multiline UIDs
...
See #74
2014-06-11 23:10:15 +02:00
Markus Unterwaditzer
179d9bc393
Move 3k compat stuff to own module
2014-06-11 19:37:39 +02:00
Markus Unterwaditzer
62340814fa
Fix bug in repr of davstorage
2014-06-08 00:28:39 +02:00
Markus Unterwaditzer
9087b62647
Preserve order of parameters and properties
...
Since version 3.7, icalendar supports the preserving of the order of
the ICS file's parameters and properties. We can use this to avoid
unnecessary changes for .ics files managed with singlefilestorage.
2014-06-03 17:38:12 +02:00
Markus Unterwaditzer
96d55c523c
Fix semicolon bug
...
Fix #70
Also remove multiple parameters from vcard template. Android JB for
example converts this:
Email: lol@lol (work)
Email: lol@lol (home)
to this:
EMAIL;TYPE=WORK:lol@lol
which is exactly what icalendar (our parser) does too. ownCloud on the
other hand converts this:
EMAIL;TYPE=HOME,WORK:lol@lol
to this:
EMAIL;TYPE=HOME;TYPE=WORK:lol@lol
So at this point it does not really matter anymore whether our behavior
is RFC-conform or not.
2014-05-30 17:11:47 +02:00
Markus Unterwaditzer
f59c8d1fdf
Add testcase for #70
2014-05-30 16:53:22 +02:00
Markus Unterwaditzer
fd3f6e4532
Some improvements to join_collection
...
Which induces a behavior change in singlefilestorage, as now
join_collection wouldn't write a wrapper if no items are given
2014-05-29 18:11:29 +02:00
Markus Unterwaditzer
55ad24db3d
Add storage_name parameter on storages
2014-05-27 18:37:37 +02:00
Markus Unterwaditzer
cefaf4923a
Autodiscovery
...
Fix #11
2014-05-27 17:42:55 +02:00
Markus Unterwaditzer
d46795bdb7
Simplify error handling
2014-05-26 23:02:24 +02:00
Markus Unterwaditzer
c1eb55c241
Copyright and contributor stuff
...
Fix #60
2014-05-22 12:50:43 +02:00
Markus Unterwaditzer
eece22723e
Move class inspection code to utils
2014-05-19 18:32:31 +02:00
Markus Unterwaditzer
c66a074f36
Add GuessAuth to authentication methods
2014-05-18 23:22:55 +02:00
Markus Unterwaditzer
8f5fdfb2d4
Hash items resilient against formatting
2014-05-18 21:42:47 +02:00
Markus Unterwaditzer
d824882551
Add another testcase
2014-05-18 21:42:46 +02:00
Markus Unterwaditzer
7e8fa89985
First version of SingleFileStorage
2014-05-18 21:42:46 +02:00
Markus Unterwaditzer
5c6806ce97
Greatly simplify monkeypatching code for radicale
2014-05-18 19:35:08 +02:00
Markus Unterwaditzer
5fd866b41b
Fix severe bug in davstorage
...
where (href, etag) instead of etag would be returned.
Thanks for @slavkoja for finding it.
2014-05-18 13:39:33 +02:00
Markus Unterwaditzer
91de80cef0
Also test carddav about this
2014-05-18 10:13:52 +02:00
Markus Unterwaditzer
7852dfc1a2
Also move tests for vobject to own module
2014-05-16 13:57:16 +02:00
Markus Unterwaditzer
bcf6c0612e
Move vobject utils to own module
2014-05-16 13:51:55 +02:00
Markus Unterwaditzer
46f7a0cb05
Flake8
2014-05-15 15:18:25 +02:00
Markus Unterwaditzer
61ef8b3ee3
Use icalendar for parsing
2014-05-15 15:14:06 +02:00
Markus Unterwaditzer
ef1f4fd875
Remove assertion of order.
2014-05-14 16:23:39 +02:00
Markus Unterwaditzer
aff7a93582
owncloud requires UIDs
2014-05-14 16:10:33 +02:00
Markus Unterwaditzer
a33e34bc60
Flake8
2014-05-14 15:47:41 +02:00
Markus Unterwaditzer
98a9748392
Ident is now a property of Item
2014-05-14 15:40:06 +02:00
Markus Unterwaditzer
b87abfa4c0
Syncronization without UIDs!
2014-05-14 15:08:31 +02:00
Markus Unterwaditzer
cb29c2567f
Allow uploading of items without UID
2014-05-14 14:48:50 +02:00
Markus Unterwaditzer
89063c5096
Add test case for #49
2014-05-13 19:26:55 +02:00
Markus Unterwaditzer
d3cff80beb
Fix #51
2014-05-13 19:25:16 +02:00
Markus Unterwaditzer
2656ac7a92
Small refactoring for http storage
2014-05-12 20:16:17 +02:00