svnmock is a Python library designed to ease the pain of testing applications that use Subversion's Python bindings.
Rather than having your test suite create, populate and destroy actual repositories, svnmock allows you to simulate interaction with a real repository programmatically.
In place of messy, complicated invocations of Subversion's command-line tools, you just tell svnmock what API functions you expect to be called, with what arguments and in what order.
If your application deviates from this, svnmock will raise an exception, helping you pinpoint the exact location where your code might be going awry.
svnmock provides emulation support for the entire Python-language API, allowing you to test applications using even the most remote corners of Subversion's bindings.
In addition to normal workflow, svnmock provides facilities for simulating conditions -- such as certain error conditions -- that would otherwise be difficult or impossible to test against.
In addition, svnmock offers a tool to merely observe which API functions are called, rather than make assertions about them.
svnmock is compatible with all Subversion releases, including 1.3.0.
Interested? Grab the latest version, take the 10-minute tutorial and get to testing!