def test_delete(self): m = fake_objs.FakeHM('HTTP') self.a.hm.tenant_id = "tenant-id" self.a.hm.delete(None, m) self.a.openstack_driver.health_monitor.successful_completion.assert_called_with( None, m, delete=True) self.a.last_client.slb.hm.delete.assert_called_with('fake-hm-id-001')
def test_delete(self): members = [[], [fake_objs.FakeMember()]] hms = [None, fake_objs.FakeHM('PING')] persistences = [None, 'SOURCE_IP', 'HTTP_COOKIE'] listeners = [False, True] for m in members: for hm in hms: for pers in persistences: for lst in listeners: self.a.reset_mocks() pool = fake_objs.FakePool('TCP', 'ROUND_ROBIN', pers, lst, members=m, hm=hm) self.a.pool.delete(None, pool) self.print_mocks() (self.a.last_client.slb.service_group.delete. assert_called_with(pool.id)) if pers == 'SOURCE_IP': (self.a.last_client.slb.template. src_ip_persistence.delete.assert_called_with( pool.id)) elif pers == 'HTTP_COOKIE': (self.a.last_client.slb.template. cookie_persistence.delete.assert_called_with( pool.id))
def test_create_http_with_pool(self): m = fake_objs.FakeHM('HTTP', pool=mock.MagicMock()) self.a.hm.create(None, m) self.assert_hm(m, self.a.last_client.slb.hm.HTTP, 'GET', '/', '200') self.a.last_client.slb.service_group.update.assert_called_with( m.pool.id, health_monitor='fake-hm-id-001', health_check_disable=False)
def test_create_tcp(self): hm = fake_objs.FakeHM('TCP') hm.pools = [{'pool_id': 'p02'}, {'pool_id': 'p01'}] self.a.hm.create(None, hm, 'p01') self.assert_hm(self.a.last_client.slb.hm.TCP, None, None, None) pool_name = self.a.hm._pool_name(None, 'p02') self.a.last_client.slb.service_group.update.assert_called_with( pool_name, health_monitor='hm01')
def test_update_tcp(self, m_old=None, m=None): if m_old is None: m_old = fake_objs.FakeHM('TCP') if m is None: m = fake_objs.FakeHM('TCP') m.delay = 20 self.a.hm.update(None, m_old, m, 'p01') self.a.last_client.slb.hm.update.assert_called_with( 'hm01', self.a.last_client.slb.hm.TCP, 20, 5, '5', url=None, method=None, expect_code=None, axapi_args={})
def test_delete_with_pool(self): m = fake_objs.FakeHM('TCP', pool=mock.MagicMock()) self.a.hm.delete(None, m) self.a.openstack_driver.health_monitor.successful_completion.assert_called_with( None, m, delete=True) self.a.last_client.slb.service_group.update.assert_called_with( m.pool.id, health_monitor='', health_check_disable=True) self.a.last_client.slb.hm.delete.assert_called_with('fake-hm-id-001')
def test_update_tcp_add_pool(self): m = fake_objs.FakeHM('TCP', pool=mock.MagicMock()) self.test_update_tcp(m=m) self.print_mocks() self.a.last_client.slb.service_group.update.assert_called_with( m.pool.id, health_monitor='fake-hm-id-001', health_check_disable=False)
def test_update_tcp(self, m_old=None, m=None): if m_old is None: m_old = fake_objs.FakeHM('TCP') if m is None: m = fake_objs.FakeHM('TCP') m.delay = 20 self.a.hm.update(None, m_old, m) self.a.openstack_driver.health_monitor.successful_completion.assert_called_with( None, m) self.a.last_client.slb.hm.update.assert_called_with( 'fake-hm-id-001', self.a.last_client.slb.hm.TCP, 20, 7, 8, method=None, url=None, expect_code=None, axapi_args={})
def test_dissociate_calls_service_group_update(self): fake_pool = fake_objs.FakePool() fake_hm = fake_objs.FakeHM('HTTP') fake_hm.id = "id1" fake_hm.pools = [] fake_hm.pools.append(fake_pool) fake_hm.tenant_id = "tenv1" self.a.hm.dissociate(self.a.last_client, None, fake_hm, fake_pool.id) self.a.last_client.slb.service_group.update.assert_called( fake_pool.id, health_monitor="", health_check_disable=True)
def test_delete(self): pool = fake_objs.FakePool('TCP', 'LEAST_CONNECTIONS') pool.members = [fake_objs.FakeMember()] pool.health_monitors_status = [{'monitor_id': 'hm1', "pools": [pool]}] self.a.pool.neutron.openstack_driver._pool_get_hm.return_value = fake_objs.FakeHM( ) self._test_delete(pool) (self.a.last_client.slb.service_group.delete.assert_called_with( pool['id']))
def test_delete(self): expected = fake_objs.FakePool() fakehm = fake_objs.FakeHM('HTTP') fakehm.tenant_id = 'tenv1' fakehm.id = 'fedcba' fakehm.pools.append(expected) self.a.hm.openstack_driver.plugin.get_pool.return_value = expected self.a.hm.openstack_driver._hm_binding_count.return_value = 1 self.a.hm.delete(None, fakehm, 'p01') self.a.last_client.slb.hm.delete.assert_called_with(fakehm.id)
def test_delete_with_hm_dissociates_hm(self): pool = fake_objs.FakePool('TCP', 'LEAST_CONNECTIONS') hm = fake_objs.FakeHM("TCP") hm.pools.append(fake_objs.FakePool('TCP', 'LEAST_CONNECTIONS')) pool.members = [fake_objs.FakeMember()] pool.health_monitors_status = [{'monitor_id': 'hm1', "pools": [pool]}] self.a.pool.neutron.openstack_driver._pool_get_hm.return_value = hm self._test_delete(pool) self.a.last_client.slb.service_group.update.assert_called_with( "id1", health_monitor="", health_check_disable=True)
def test_dissociate_calls_hm_delete(self): fake_pool = fake_objs.FakePool() fake_hm = fake_objs.FakeHM('HTTP') fake_pool.health_monitor_status = [{"monitor_id": fake_hm.id}] fake_hm.id = "id1" fake_hm.pools = [] fake_hm.pools.append(fake_pool) fake_hm.tenant_id = "tenv1" self.a.hm.dissociate(self.a.last_client, None, fake_hm, fake_pool.id) self.a.last_client.hm.service_group.delete.assert_called( self.a.hm._meta_name(fake_hm))
def test_create_noname_noexception(self): self.a.config.get_monitor_expressions = self._get_expressions_mock expressions = self.a.config.get_monitor_expressions() expected = expressions.get(self.EXPR_BEGIN, {}).get("json", None) or "" m = fake_objs.FakeHM('HTTPS') m.name = None handler = self.a.hm handler.create(None, m) s = str(self.a.last_client.mock_calls) self.assertIn("hm.create", s) self.assertNotIn(str(expected), s)
def _test_create_expressions(self, os_name, pattern, expressions=None): self.a.config.get_monitor_expressions = self._get_expressions_mock expressions = expressions or self.a.config.get_monitor_expressions() expected = expressions.get(pattern, {}).get("json", None) or "" m = fake_objs.FakeHM('HTTPS') m.name = os_name handler = self.a.hm handler.create(None, m) s = str(self.a.last_client.mock_calls) self.assertIn("hm.create", s) self.assertIn(str(expected), s)
def test_delete_updates_pool_health_monitor(self): expected = fake_objs.FakePool() fakehm = fake_objs.FakeHM('HTTP') fakehm.tenant_id = 'tenv1' fakehm.id = 'fedcba' fakehm.pools = [] fakehm.pools.append(expected) self.a.hm.openstack_driver._pool_get_hm.return_value = fakehm self.a.hm.openstack_driver.plugin.get_pool.return_value = expected self.a.hm.openstack_driver._hm_binding_count.return_value = 1 pool_name = self.a.hm._pool_name(None, 'p01') self.a.hm.delete(None, fakehm, 'p01') self.a.last_client.slb.service_group.update.assert_called_with( pool_name, health_monitor='', health_check_disable=True)
def test_create_https(self): m = fake_objs.FakeHM('HTTPS') self.a.hm.create(None, m) self.assert_hm(m, self.a.last_client.slb.hm.HTTPS, 'GET', '/', '200')
def test_update_tcp_delete_pool(self): m_old = fake_objs.FakeHM('TCP', pool=mock.MagicMock()) self.test_update_tcp(m_old=m_old) self.print_mocks() self.a.last_client.slb.service_group.update.assert_called_with( m_old.pool.id, health_monitor='', health_check_disable=True)
def test_create_ping(self): m = fake_objs.FakeHM('PING') self.a.hm.create(None, m) self.assert_hm(m, self.a.last_client.slb.hm.ICMP, None, None, None)
def test_create_https(self): self.a.hm.create(None, fake_objs.FakeHM('HTTPS'), 'p01') self.assert_hm(self.a.last_client.slb.hm.HTTPS, 'GET', '/', '200') pool_name = self.a.hm._pool_name(None, 'p01') self.a.last_client.slb.service_group.update.assert_called_with( pool_name, health_monitor='hm01')
def test_create_tcp(self): m = fake_objs.FakeHM('TCP') self.a.hm.create(None, m) self.print_mocks() self.assert_hm(m, self.a.last_client.slb.hm.TCP, None, None, None)
def test_create_ping(self): self.a.hm.create(None, fake_objs.FakeHM('PING'), 'p01') self.assert_hm(self.a.last_client.slb.hm.ICMP, None, None, None) pool_name = self.a.hm._pool_name(None, 'p01') self.a.last_client.slb.service_group.update.assert_called_with( pool_name, health_monitor='hm01')