From 1ac4303043b756b8a6be2cf092b664fa57e037d4 Mon Sep 17 00:00:00 2001 From: xing-yang Date: Sun, 17 Jul 2016 02:52:15 -0400 Subject: [PATCH] Set sleep time to 0 in Datera driver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Found two new tests that caused hang. Both have “mock.patch( 'time.sleep’)” in it. In this patch, I changed datera.DEFAULT_SI_SLEEP to 0 from 0.01 and removed “mock.patch('time.sleep’)”. Logs that showed hanging: http://logs.openstack.org/52/328052/61/check/ gate-cinder-python34-db/d417592/console.html cinder.tests.unit.volume.drivers.test_datera.DateraVolumeTestCase. test_ensure_export_success [] ... inprogress 2016-08-25 16:35:34.965056 | {2} cinder.tests.unit.volume.drivers.test_datera.DateraVolumeTestCase. test_create_export_target_does_not_exist_success [] ... inprogress 2016-08-25 16:35:35.043246 | Change-Id: I3b8797b245616a85f927de15dca48e75831e035d Partial-Bug: #1578986 --- .../tests/unit/volume/drivers/test_datera.py | 41 +++++++++---------- 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/cinder/tests/unit/volume/drivers/test_datera.py b/cinder/tests/unit/volume/drivers/test_datera.py index c3f72aa0b21..096848c05ed 100644 --- a/cinder/tests/unit/volume/drivers/test_datera.py +++ b/cinder/tests/unit/volume/drivers/test_datera.py @@ -23,7 +23,7 @@ from cinder.volume.drivers import datera from cinder.volume import volume_types -datera.DEFAULT_SI_SLEEP = 0.01 +datera.DEFAULT_SI_SLEEP = 0 URL_TEMPLATES = datera.URL_TEMPLATES OS_PREFIX = datera.OS_PREFIX UNMANAGE_PREFIX = datera.UNMANAGE_PREFIX @@ -158,12 +158,11 @@ class DateraVolumeTestCase(test.TestCase): self.driver.delete_volume, self.volume) def test_ensure_export_success(self): - with mock.patch('time.sleep'): - self.mock_api.side_effect = self._generate_fake_api_request() - ctxt = context.get_admin_context() - self.assertIsNone(self.driver.ensure_export(ctxt, - self.volume, - None)) + self.mock_api.side_effect = self._generate_fake_api_request() + ctxt = context.get_admin_context() + self.assertIsNone(self.driver.ensure_export(ctxt, + self.volume, + None)) def test_ensure_export_fails(self): self.mock_api.side_effect = exception.DateraAPIException @@ -172,23 +171,21 @@ class DateraVolumeTestCase(test.TestCase): self.driver.ensure_export, ctxt, self.volume, None) def test_create_export_target_does_not_exist_success(self): - with mock.patch('time.sleep'): - self.mock_api.side_effect = self._generate_fake_api_request( - targets_exist=False) - ctxt = context.get_admin_context() - self.assertIsNone(self.driver.create_export(ctxt, - self.volume, - None)) + self.mock_api.side_effect = self._generate_fake_api_request( + targets_exist=False) + ctxt = context.get_admin_context() + self.assertIsNone(self.driver.create_export(ctxt, + self.volume, + None)) def test_create_export_fails(self): - with mock.patch('time.sleep'): - self.mock_api.side_effect = exception.DateraAPIException - ctxt = context.get_admin_context() - self.assertRaises(exception.DateraAPIException, - self.driver.create_export, - ctxt, - self.volume, - None) + self.mock_api.side_effect = exception.DateraAPIException + ctxt = context.get_admin_context() + self.assertRaises(exception.DateraAPIException, + self.driver.create_export, + ctxt, + self.volume, + None) def test_initialize_connection_success(self): self.mock_api.side_effect = self._generate_fake_api_request()