Prevent incorrect usage of _wrap_db_error()

_wrap_db_error() has an implicit contract that it can be applied only
to methods of SQLAlchemy Session subclasses. This seems to be a good
task for an assert statement (as it's something we want to check
during development and debugging, but not something that an end user
can trigger, which would require a general runtime check).

Change-Id: I0a15bf4a90b0aea5fa715027d13d8af816f9e72d
Enable decimal value input in imageutils.QemuImgInfo

Nova has test cases where it image sizes are in float value.
However imageutils has errors when given float values.
This patch enhances the regex to handle float values.
Test cases were added accordingly.

Change-Id: Ifcaf60f5c54d74e8fc317be6808363bce7429cc8
Merge "Prevent incorrect usage of _wrap_db_error()"