示例#1
0
    def test_find_pool_by_listener(self):
        lbaas = self.useFixture(k_fix.MockLBaaSClient()).client
        cls = d_lbaasv2.LBaaSv2Driver
        m_driver = mock.Mock(spec=d_lbaasv2.LBaaSv2Driver)
        loadbalancer = {
            'id': '00EE9E11-91C2-41CF-8FD4-7970579E5C4C',
        }
        pool = {
            'name': 'TEST_NAME',
            'project_id': 'TEST_PROJECT',
            'loadbalancer_id': '00EE9E11-91C2-41CF-8FD4-7970579E5C4C',
            'listener_id': 'A57B7771-6050-4CA8-A63C-443493EC98AB',
            'protocol': 'TCP'
        }
        pool_id = 'D4F35594-27EB-4F4C-930C-31DD40F53B77'
        resp = [
            o_pool.Pool(id=pool_id, listeners=[{
                "id": pool['listener_id']
            }])
        ]
        lbaas.pools.return_value = resp

        ret = cls._find_pool(m_driver, pool, loadbalancer)
        lbaas.pools.assert_called_once_with(
            name=pool['name'],
            project_id=pool['project_id'],
            loadbalancer_id=pool['loadbalancer_id'],
            protocol=pool['protocol'])
        self.assertEqual(pool, ret)
        self.assertEqual(pool_id, ret['id'])
示例#2
0
 def test_make_it(self):
     test_pool = pool.Pool(**EXAMPLE)
     self.assertEqual(EXAMPLE['name'], test_pool.name),
     self.assertEqual(EXAMPLE['description'],
                      test_pool.description)
     self.assertEqual(EXAMPLE['admin_state_up'],
                      test_pool.is_admin_state_up)
     self.assertEqual(EXAMPLE['provisioning_status'],
                      test_pool.provisioning_status)
     self.assertEqual(EXAMPLE['protocol'], test_pool.protocol)
     self.assertEqual(EXAMPLE['operating_status'],
                      test_pool.operating_status)
     self.assertEqual(EXAMPLE['listener_id'], test_pool.listener_id)
     self.assertEqual(EXAMPLE['loadbalancer_id'],
                      test_pool.loadbalancer_id)
     self.assertEqual(EXAMPLE['lb_algorithm'],
                      test_pool.lb_algorithm)
     self.assertEqual(EXAMPLE['session_persistence'],
                      test_pool.session_persistence)
     self.assertEqual(EXAMPLE['project_id'],
                      test_pool.project_id)
     self.assertEqual(EXAMPLE['loadbalancers'],
                      test_pool.loadbalancers)
     self.assertEqual(EXAMPLE['listeners'],
                      test_pool.listeners)
     self.assertEqual(EXAMPLE['created_at'], test_pool.created_at)
     self.assertEqual(EXAMPLE['updated_at'], test_pool.updated_at)
     self.assertEqual(EXAMPLE['health_monitor_id'],
                      test_pool.health_monitor_id)
     self.assertEqual(EXAMPLE['members'], test_pool.members)
示例#3
0
    def test_create_pool_with_different_lb_algorithm(self):
        cls = d_lbaasv2.LBaaSv2Driver
        m_driver = mock.Mock(spec=d_lbaasv2.LBaaSv2Driver)
        lbaas = self.useFixture(k_fix.MockLBaaSClient()).client
        lb_algorithm = 'SOURCE_IP_PORT'
        pool = obj_lbaas.LBaaSPool(
            name='TEST_NAME', project_id='TEST_PROJECT', protocol='TCP',
            listener_id='A57B7771-6050-4CA8-A63C-443493EC98AB',
            loadbalancer_id='00EE9E11-91C2-41CF-8FD4-7970579E5C4C')
        pool_id = 'D4F35594-27EB-4F4C-930C-31DD40F53B77'
        req = {
            'name': pool.name,
            'project_id': pool.project_id,
            'listener_id': pool.listener_id,
            'loadbalancer_id': pool.loadbalancer_id,
            'protocol': pool.protocol,
            'lb_algorithm': lb_algorithm}
        resp = o_pool.Pool(id=pool_id)
        lbaas.create_pool.return_value = resp
        CONF.set_override('lb_algorithm', lb_algorithm,
                          group='octavia_defaults')
        self.addCleanup(CONF.clear_override, 'lb_algorithm',
                        group='octavia_defaults')

        ret = cls._create_pool(m_driver, pool)
        lbaas.create_pool.assert_called_once_with(**req)
        for attr in pool.obj_fields:
            self.assertEqual(getattr(pool, attr),
                             getattr(ret, attr))
        self.assertEqual(pool_id, ret.id)
示例#4
0
    def test_create_pool(self):
        cls = d_lbaasv2.LBaaSv2Driver
        m_driver = mock.Mock(spec=d_lbaasv2.LBaaSv2Driver)
        lbaas = self.useFixture(k_fix.MockLBaaSClient()).client
        lb_algorithm = 'ROUND_ROBIN'
        pool = {
            'name': 'TEST_NAME',
            'project_id': 'TEST_PROJECT',
            'loadbalancer_id': '00EE9E11-91C2-41CF-8FD4-7970579E5C4C',
            'listener_id': 'A57B7771-6050-4CA8-A63C-443493EC98AB',
            'protocol': 'TCP'
        }
        pool_id = 'D4F35594-27EB-4F4C-930C-31DD40F53B77'

        req = {
            'name': pool['name'],
            'project_id': pool['project_id'],
            'listener_id': pool['listener_id'],
            'loadbalancer_id': pool['loadbalancer_id'],
            'protocol': pool['protocol'],
            'lb_algorithm': lb_algorithm
        }
        resp = o_pool.Pool(id=pool_id)
        lbaas.create_pool.return_value = resp

        ret = cls._create_pool(m_driver, pool)
        lbaas.create_pool.assert_called_once_with(**req)
        self.assertEqual(pool, ret)
        self.assertEqual(pool_id, ret['id'])
示例#5
0
    def test_create_pool(self):
        cls = d_lbaasv2.LBaaSv2Driver
        m_driver = mock.Mock(spec=d_lbaasv2.LBaaSv2Driver)
        lb_algorithm = 'ROUND_ROBIN'
        pool = obj_lbaas.LBaaSPool(
            name='TEST_NAME',
            project_id='TEST_PROJECT',
            protocol='TCP',
            listener_id='A57B7771-6050-4CA8-A63C-443493EC98AB',
            loadbalancer_id='00EE9E11-91C2-41CF-8FD4-7970579E5C4C')
        pool_id = 'D4F35594-27EB-4F4C-930C-31DD40F53B77'
        req = {
            'name': pool.name,
            'project_id': pool.project_id,
            'listener_id': pool.listener_id,
            'loadbalancer_id': pool.loadbalancer_id,
            'protocol': pool.protocol,
            'lb_algorithm': lb_algorithm
        }
        resp = o_pool.Pool(id=pool_id)
        m_driver._post_lb_resource.return_value = resp

        ret = cls._create_pool(m_driver, pool)
        m_driver._post_lb_resource.assert_called_once_with(o_pool.Pool, req)
        for attr in pool.obj_fields:
            self.assertEqual(getattr(pool, attr), getattr(ret, attr))
        self.assertEqual(pool_id, ret.id)
示例#6
0
 def test_basic(self):
     test_pool = pool.Pool()
     self.assertEqual('pool', test_pool.resource_key)
     self.assertEqual('pools', test_pool.resources_key)
     self.assertEqual('/lbaas/pools', test_pool.base_path)
     self.assertTrue(test_pool.allow_create)
     self.assertTrue(test_pool.allow_fetch)
     self.assertTrue(test_pool.allow_delete)
     self.assertTrue(test_pool.allow_list)
     self.assertTrue(test_pool.allow_commit)
示例#7
0
    def test_make_it(self):
        test_pool = pool.Pool(**EXAMPLE)
        self.assertEqual(EXAMPLE['name'], test_pool.name),
        self.assertEqual(EXAMPLE['description'], test_pool.description)
        self.assertEqual(EXAMPLE['admin_state_up'],
                         test_pool.is_admin_state_up)
        self.assertEqual(EXAMPLE['provisioning_status'],
                         test_pool.provisioning_status)
        self.assertEqual(EXAMPLE['protocol'], test_pool.protocol)
        self.assertEqual(EXAMPLE['operating_status'],
                         test_pool.operating_status)
        self.assertEqual(EXAMPLE['listener_id'], test_pool.listener_id)
        self.assertEqual(EXAMPLE['loadbalancer_id'], test_pool.loadbalancer_id)
        self.assertEqual(EXAMPLE['lb_algorithm'], test_pool.lb_algorithm)
        self.assertEqual(EXAMPLE['session_persistence'],
                         test_pool.session_persistence)
        self.assertEqual(EXAMPLE['project_id'], test_pool.project_id)
        self.assertEqual(EXAMPLE['loadbalancers'], test_pool.loadbalancers)
        self.assertEqual(EXAMPLE['listeners'], test_pool.listeners)
        self.assertEqual(EXAMPLE['created_at'], test_pool.created_at)
        self.assertEqual(EXAMPLE['updated_at'], test_pool.updated_at)
        self.assertEqual(EXAMPLE['health_monitor_id'],
                         test_pool.health_monitor_id)
        self.assertEqual(EXAMPLE['members'], test_pool.members)
        self.assertEqual(EXAMPLE['tls_enabled'], test_pool.tls_enabled)
        self.assertEqual(EXAMPLE['tls_ciphers'], test_pool.tls_ciphers)
        self.assertEqual(EXAMPLE['tls_versions'], test_pool.tls_versions)
        self.assertEqual(EXAMPLE['alpn_protocols'], test_pool.alpn_protocols)

        self.assertDictEqual(
            {
                'limit': 'limit',
                'marker': 'marker',
                'created_at': 'created_at',
                'updated_at': 'updated_at',
                'description': 'description',
                'name': 'name',
                'project_id': 'project_id',
                'tags': 'tags',
                'any_tags': 'tags-any',
                'not_tags': 'not-tags',
                'not_any_tags': 'not-tags-any',
                'operating_status': 'operating_status',
                'provisioning_status': 'provisioning_status',
                'is_admin_state_up': 'admin_state_up',
                'health_monitor_id': 'health_monitor_id',
                'lb_algorithm': 'lb_algorithm',
                'listener_id': 'listener_id',
                'loadbalancer_id': 'loadbalancer_id',
                'protocol': 'protocol',
                'tls_enabled': 'tls_enabled',
                'tls_ciphers': 'tls_ciphers',
                'tls_versions': 'tls_versions',
                'alpn_protocols': 'alpn_protocols',
            }, test_pool._query_mapping._mapping)
示例#8
0
 def test_basic(self):
     test_pool = pool.Pool()
     self.assertEqual('pool', test_pool.resource_key)
     self.assertEqual('pools', test_pool.resources_key)
     self.assertEqual('/v2.0/lbaas/pools', test_pool.base_path)
     self.assertEqual('load-balancer', test_pool.service.service_type)
     self.assertTrue(test_pool.allow_create)
     self.assertTrue(test_pool.allow_fetch)
     self.assertTrue(test_pool.allow_delete)
     self.assertTrue(test_pool.allow_list)
     self.assertTrue(test_pool.allow_commit)
示例#9
0
    def test_find_pool_by_listener(self):
        lbaas = self.useFixture(k_fix.MockLBaaSClient()).client
        cls = d_lbaasv2.LBaaSv2Driver
        m_driver = mock.Mock(spec=d_lbaasv2.LBaaSv2Driver)
        pool = obj_lbaas.LBaaSPool(
            name='TEST_NAME', project_id='TEST_PROJECT', protocol='TCP',
            listener_id='A57B7771-6050-4CA8-A63C-443493EC98AB',
            loadbalancer_id='00EE9E11-91C2-41CF-8FD4-7970579E5C4C')
        pool_id = 'D4F35594-27EB-4F4C-930C-31DD40F53B77'
        resp = [o_pool.Pool(id=pool_id,
                            listeners=[{"id": pool.listener_id}])]
        lbaas.pools.return_value = resp

        ret = cls._find_pool(m_driver, pool)
        lbaas.pools.assert_called_once_with(
            name=pool.name,
            project_id=pool.project_id,
            loadbalancer_id=pool.loadbalancer_id,
            protocol=pool.protocol)
        for attr in pool.obj_fields:
            self.assertEqual(getattr(pool, attr),
                             getattr(ret, attr))
        self.assertEqual(pool_id, ret.id)