def test_grid_sync_report_sync_time(self): # prepare grid manager for sync stub = grid_sync_stub.GridSyncStub(self.ctx, self.connector_fixture) stub.prepare_grid_manager(wapi_version='1.8') grid_mgr = stub.get_grid_manager() grid_mgr.mapping._sync_nios_for_network_view = mock.Mock() eas = {'Some EA': {'value': 'False'}, 'Zero EA': {'value': '0'}} member_mock = { '_ref': ('member/Li5pcHY0X2FkZHJlc3MkMTky' 'LjE2OC4xLjEwLzE:192.168.1.10/my_view'), 'ipv4_address': '192.168.1.10', 'host_name': 'gm', 'extattrs': eas } connector = self._mock_connector(get_object=[member_mock]) connector.host = '192.168.1.10' grid_mgr.grid_config.gm_connector = connector # sync grid_mgr.grid_config.grid_sync_support = True grid_mgr.grid_config.grid_sync_minimum_wait_time = 0 grid_mgr.grid_config.report_grid_sync_time = True grid_mgr.sync() member_ea = member_mock['extattrs'].to_dict() sync_info = member_ea[const.EA_LAST_GRID_SYNC_TIME]['value'] assert isinstance(sync_info, list) assert grid_mgr.hostname in sync_info[0]
def setUp(self): super(NotificationTestCase, self).setUp() self.ctx = context.get_admin_context() stub = grid_sync_stub.GridSyncStub(self.ctx, self.connector_fixture) stub.prepare_grid_manager(wapi_version='2.2') self.grid_mgr = stub.get_grid_manager() self.grid_mgr.grid_config.grid_sync_support = False self.grid_mgr.last_sync_time = mock.Mock() self.grid_mgr.grid_config.gm_connector = mock.Mock() self.grid_mgr.grid_config.gm_connector.wapi_version = '2.0' self.event_handler = notification_handler.IpamEventHandler( self.ctx, mock.Mock(), self.grid_mgr)
def test_grid_sync_frequency_check(self): # prepare grid manager for sync stub = grid_sync_stub.GridSyncStub(self.ctx, self.connector_fixture) stub.prepare_grid_manager(wapi_version='1.8') grid_mgr = stub.get_grid_manager() grid_mgr._report_sync_time = mock.Mock() grid_mgr.mapping._sync_nios_for_network_view = mock.Mock() # test for no sync grid_mgr.grid_config.grid_sync_support = False grid_mgr.sync() assert not grid_mgr.member._discover_members.called assert not grid_mgr.grid_config._discover_config.called assert not grid_mgr.mapping._discover_network_views.called assert not grid_mgr.mapping._discover_networks.called last_sync_time = dbi.get_last_sync_time(self.ctx.session) self.assertIsNone(last_sync_time) # test for the first sync; expects sync grid_mgr.grid_config.grid_sync_support = True grid_mgr.sync() assert grid_mgr.member._discover_members.called_once assert grid_mgr.grid_config._discover_config.called_once assert grid_mgr.mapping._discover_network_views.called_once assert grid_mgr.mapping._discover_networks.called_once sync_time_from_second_sync = dbi.get_last_sync_time(self.ctx.session) self.assertEqual(sync_time_from_second_sync, grid_mgr.last_sync_time) # test for the second sync; expects no sync due to min wait time grid_mgr.grid_config.grid_sync_support = True grid_mgr.grid_config.grid_sync_minimum_wait_time = 10 grid_mgr.sync() assert grid_mgr.member._discover_members.called_once assert grid_mgr.grid_config._discover_config.called_once assert grid_mgr.mapping._discover_network_views.called_once assert grid_mgr.mapping._discover_networks.called_once # should be the same as last_sync_time from the first sync # to prove that dicovery methods are not called in this test case. self.assertEqual(sync_time_from_second_sync, grid_mgr.last_sync_time) # test for the third sync; expects sync grid_mgr.grid_config.grid_sync_support = True grid_mgr.grid_config.grid_sync_minimum_wait_time = 0 grid_mgr.sync() assert grid_mgr.member._discover_members.called_once assert grid_mgr.grid_config._discover_config.called_once assert grid_mgr.mapping._discover_network_views.called_once assert grid_mgr.mapping._discover_networks.called_once last_sync_time = dbi.get_last_sync_time(self.ctx.session) self.assertEqual(last_sync_time, grid_mgr.last_sync_time)
def setUp(self): super(TestDriver, self).setUp() self.ctx = context.get_admin_context() self._setup_config() self.grid_stub = grid_sync_stub.GridSyncStub(self.ctx, self.connector_fixture) self.grid_stub.prepare_grid_manager(wapi_version='2.0') self.grid_mgr = self.grid_stub.get_grid_manager() self.grid_mgr._report_sync_time = mock.Mock() self.grid_mgr.mapping._sync_nios_for_network_view = mock.Mock() self.grid_mgr.member._discover_dns_settings = mock.Mock( return_value={}) self.grid_mgr.member._discover_dhcp_settings = mock.Mock( return_value={}) self.grid_mgr.sync() self.grid_mgr.get_config = mock.Mock()
def setUp(self): super(InfobloxContextTestCase, self).setUp() self.ctx = context.get_admin_context() self.setup_coreplugin(neutron_plugin_stub.DB_PLUGIN_KLASS) self.plugin = directory.get_plugin() self.plugin_stub = neutron_plugin_stub.NeutronPluginStub( self.ctx, self.plugin) self.grid_stub = grid_sync_stub.GridSyncStub(self.ctx, self.connector_fixture) self.grid_stub.prepare_grid_manager(wapi_version='2.2') self.grid_mgr = self.grid_stub.get_grid_manager() self.grid_mgr._report_sync_time = mock.Mock() self.grid_mgr.mapping._sync_nios_for_network_view = mock.Mock() self.grid_mgr.sync() self.grid_id = self.grid_mgr.grid_config.grid_id self.grid_config = self.grid_mgr.grid_config