snf-django: Add missing import
snf-django: pep8 fixes
cyclades: Mock vm removal if creation fails
In case creating a VM fails before the OP_INSTANCE_CREATE job isenqueued in Ganeti, the VM and its NICs must be deleted, and theresources must be released from Quotaholder, which is exactly what isdone when a VM is deleted from Ganeti. Instead of duplicating the code,...
common: Strip trailing slash from endpoints
Remove trailing slash from the endpoints' publicURL field in servicedefinitions. These values end up in the response of POST /tokens, and,according to the keystone API, should not end in slash. A trailing slash...
django-lib: Additional BaseAPITest helper assertion
Introduce assertMethodNotAllowed method in BaseAPITest class. The methodasserts that provided response is a valid ``Method not allowed`` API response.
djangolib: Improve root redirect handling
- avoid registering root url in case <base_path> equals to root url- additional helper redirect for non trailing slash <base_path> endpoint
djangolib: Append trailling slash on default root redirects
django_lib: Component's urlpatterns utilty
extend_with_root_redirects can be used by components to easily extend theregistered urlpatterns with utility redirect views for the root urls.
astakos: Adapt tests to 2.6-style unittest
Define assertGreater, assertIn, assertRaises in snf_django.utils.testing
Improve mocked quotaholder
Mock 'resolve_commissions' call.
Mock quotaholder for Cyclades tests
Create 'mocked_quotaholder' context manager to bypass commission and useit in Cyclades tests. Also this commit does some various fixes to othertests.
Move common test code to snf_django.lib.testing