libvirt: driver tests use non-mocked BDMs

Ia99e04ad80a2823a6852debf0919e72b2f93bd26 introduces tests that
completely mock out the nova.virt.DriverBlockDevice classes. While this
is generally OK - it is more desirable to test the code with only
the furthest bits from the object/method under test mocked.

It was not practical to do it at the time due to __setattr__ behaviour
which is now changed - so let's fix this too.

Change-Id: I186e9c07aafb18b3d9010c5794bb7964f1ff0056
Merge "libvirt: driver tests use non-mocked BDMs"