Fix tempest router migration test when HA enabled, v2

When run in an HA or DVR configured environment,
the test_update_router_extra_attributes_bumps_revision
API test can fail if the release does not support
router migration from CVR-HA to DVR.

Although Ocata and later releases support any type of
router migration, older ones do not, so the test
should be explicit and test a known valid migration.

Added missing l3-ha extension requirement from v1.

Change-Id: Ic48d078542492e933f71d24df85c54c53a0b110c
Related-bug: #1679794
(cherry picked from commit 52ed8468a4)
This commit is contained in:
Brian Haley 2017-05-05 11:32:07 -04:00 committed by Brian Haley
parent 8aa67a7674
commit 578ca25ace
1 changed files with 8 additions and 4 deletions

View File

@ -312,17 +312,21 @@ class TestRevisions(base.BaseAdminNetworkTest, bsg.BaseSecGroupTest):
@test.idempotent_id('afb6486c-41b5-483e-a500-3c506f4deb49')
@test.requires_ext(extension="router", service="network")
@test.requires_ext(extension="dvr", service="network")
@test.requires_ext(extension="l3-ha", service="network")
def test_update_router_extra_attributes_bumps_revision(self):
router = self.create_router(router_name='r1')
# updates from CVR to CVR-HA are supported on every release,
# but only the admin can forcibly create a non-HA router
router_args = {'tenant_id': self.client.tenant_id,
'ha': False}
router = self.admin_client.create_router('r1', True,
**router_args)['router']
self.addCleanup(self.client.delete_router, router['id'])
self.assertIn('revision_number', router)
rev1 = router['revision_number']
router = self.admin_client.update_router(
router['id'], admin_state_up=False)['router']
self.assertGreater(router['revision_number'], rev1)
self.admin_client.update_router(router['id'],
distributed=True)['router']
self.admin_client.update_router(router['id'], ha=True)['router']
updated = self.client.show_router(router['id'])['router']
self.assertGreater(updated['revision_number'],
router['revision_number'])