Currently there are a few features that do not have a reference
implementation. These features include Consistency Group (CG),
replication, etc. As a result, any changes to CG and replication
cannot be easily tested. For example, when CG was converted to
versioned objects, developers who were working on the conversion
could not test CG functionality because LVM does not support it.
This patch will add a FakeGateDriver to fake_driver.py under
tests/unit. This driver will inherit from the LVM driver and
implement functions for CG, replication, etc for testing
purpose only. This allows developers who do not have access to
a backend that supports these features to do some sanity testing
using the fake driver.
Related to this, tempest tests are submitted for CG APIs so that
third party CI can run them for drivers with CG support:
https://review.openstack.org/#/c/252213/