git-annex/Remote
Joey Hess 6adbd50cd9 testremote: Add testing of behavior when remote is not available
Added a mkUnavailable method, which a Remote can use to generate a version
of itself that is not available. Implemented for several, but not yet all
remotes.

This allows testing that checkPresent properly throws an exceptions when
it cannot check if a key is present or not. It also allows testing that the
other methods don't throw exceptions in these circumstances.

This immediately found several bugs, which this commit also fixes!

* git remotes using ssh accidentially had checkPresent return
  an exception, rather than throwing it
* The chunking code accidentially returned False rather than
  propigating an exception when there were no chunks and
  checkPresent threw an exception for the non-chunked key.

This commit was sponsored by Carlo Matteo Capocasa.
2014-08-10 15:02:59 -04:00
..
Directory pushed checkPresent exception handling out of Remote implementations 2014-08-06 13:45:19 -04:00
External unify exception handling into Utility.Exception 2014-08-07 22:03:29 -04:00
Helper testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Rsync rsync special remote: Fix slashes when used on Windows. 2014-03-18 13:02:10 -04:00
WebDAV WebDAV: Avoid buffering whole file in memory when downloading. 2014-08-08 13:40:55 -04:00
Bup.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Ddar.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Directory.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
External.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
GCrypt.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Git.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Glacier.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Hook.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
List.hs factor out getRemoteGitConfig 2014-05-16 16:08:20 -04:00
Rsync.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
S3.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Tahoe.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
Web.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00
WebDAV.hs testremote: Add testing of behavior when remote is not available 2014-08-10 15:02:59 -04:00