Esempio n. 1
0
    def test_string(self):
        self.test_relation.set({'extra_middleware': 'n42'})

        self.relation_ids.return_value = ['rid']
        self.related_units.return_value = ['testunit']

        self.assertRaises(ValueError, context.NeutronApiApiPasteContext())
Esempio n. 2
0
    def test_dict(self):
        self.test_relation.set({'extra_middleware':
                                {'dict_with': 'something'}})

        self.relation_ids.return_value = ['rid']
        self.related_units.return_value = ['testunit']

        self.assertRaises(ValueError, context.NeutronApiApiPasteContext())
Esempio n. 3
0
    def test_default(self):
        middleware = []

        self.test_relation.set({'extra_middleware': repr(middleware)})

        self.relation_ids.return_value = ['rid']
        self.related_units.return_value = ['testunit']

        self.assertRaises(ValueError, context.NeutronApiApiPasteContext())
Esempio n. 4
0
    def __test_arg(self, key):
        middleware = [{'name': 'middleware_1',
                       'type': 'filter',
                       'config': {'setting_1': 'value_1'}},
                      {'name': 'middleware_2',
                       'type': 'composite',
                       'config': {'setting_2': 'value_2'}}]
        # invalidate a key
        middleware[0][key] = None

        self.test_relation.set({
            'extra_middleware': repr(middleware)
        })

        self.relation_ids.return_value = ['rid']
        self.related_units.return_value = ['testunit']

        self.assertRaises(ValueError, context.NeutronApiApiPasteContext())
Esempio n. 5
0
    def test_configset(self):
        middleware = [{'name': 'middleware_1',
                       'type': 'filter',
                       'config': {'setting_1': 'value_1'}},
                      {'name': 'middleware_2',
                       'type': 'app',
                       'config': {'setting_2': 'value_2'}}
                      ]

        # note repr is needed to simulate charm-helpers behavior
        # with regards to object serialization - the context
        # implementation should safely eval the string instead
        # of just using it
        self.test_relation.set({
            'extra_middleware': repr(middleware)
        })
        self.relation_ids.return_value = ['rid2']
        self.related_units.return_value = ['unit1']
        napiapipaste_ctxt = context.NeutronApiApiPasteContext()()
        self.assertEquals(napiapipaste_ctxt, {'extra_middleware': middleware})
                     neutron_api_context.NeutronCCContext(),
                     context.SyslogContext(),
                     context.ZeroMQContext(),
                     context.NotificationDriverContext(),
                     context.BindHostContext(),
                     context.WorkerConfigContext(),
                     context.InternalEndpointContext(),
                     context.MemcacheContext()],
    }),
    (NEUTRON_DEFAULT, {
        'services': ['neutron-server'],
        'contexts': [neutron_api_context.NeutronCCContext()],
    }),
    (API_PASTE_INI, {
        'services': ['neutron-server'],
        'contexts': [neutron_api_context.NeutronApiApiPasteContext()],
    }),
    (APACHE_CONF, {
        'contexts': [neutron_api_context.ApacheSSLContext()],
        'services': ['apache2'],
    }),
    (APACHE_24_CONF, {
        'contexts': [neutron_api_context.ApacheSSLContext()],
        'services': ['apache2'],
    }),
    (HAPROXY_CONF, {
        'contexts': [context.HAProxyContext(singlenode_mode=True),
                     neutron_api_context.HAProxyContext()],
        'services': ['haproxy'],
    }),
])