コード例 #1
0
    def test_ignore_get_messages(self):
        self._mock_pika()
        self._mock_pool()
        data = self._open_message()[3:]
        self._mock_consumer(data)

        napi = Napi()
        with self.assertRaises(StopIteration):
            msg = napi.next_message()
コード例 #2
0
    def test_vip_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequest')[0]
        message = self._make_message('Remover', 'VipRequest')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'vip', 'collections', data)
コード例 #3
0
    def test_port_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequestPortPool')[0]
        message = self._make_message('Remover', 'VipRequestPortPool')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'port', 'edges', data)
コード例 #4
0
    def test_pool_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPool')[0]
        message = self._make_message('Remover', 'ServerPool')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'pool', 'collections', data)
コード例 #5
0
    def test_port_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequestPortPool')[0]
        message = self._make_message('Remover', 'VipRequestPortPool')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'port', 'edges', data)
コード例 #6
0
    def test_vip_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequest')[0]
        message = self._make_message('Remover', 'VipRequest')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'vip', 'collections', data)
コード例 #7
0
    def test_pool_comp_unit_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPoolMember')[0]
        message = self._make_message('Remover', 'ServerPoolMember')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'pool_comp_unit', 'edges', data)
コード例 #8
0
    def test_pool_comp_unit_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPoolMember')[0]
        message = self._make_message('Remover', 'ServerPoolMember')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'pool_comp_unit', 'edges', data)
コード例 #9
0
    def test_pool_treat_message_delete(self):
        self._mock_pika()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPool')[0]
        message = self._make_message('Remover', 'ServerPool')
        data = napi._treat_message(kind, message)

        self._asset_msg_delete('napi', 'pool', 'collections', data)
コード例 #10
0
 def test_class_not_exists(self):
     self._mock_pika()
     with self.assertRaises(AttributeError):
         napi = Napi()
         kind = {
             'package': 'globomap_driver_napi.kind',
             'class': 'NotExists',
             'method': 'vip',
         }
         napi._treat_message(kind, None)
コード例 #11
0
 def test_package_not_exists(self):
     self._mock_pika()
     with self.assertRaises(ImportError):
         napi = Napi()
         kind = {
             'package': 'globomap_driver_napi.not_exists',
             'class': 'Kind',
             'method': 'vip',
         }
         napi._treat_message(kind, None)
コード例 #12
0
    def test_pool_comp_unit_treat_message_update(self):
        self._mock_pika()
        self._mock_pool_member_id()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPoolMember')[0]
        message = self._make_message('Alterar', 'ServerPoolMember')
        data = napi._treat_message(kind, message)

        self._assert_pool_comp_unit('UPDATE', data)
コード例 #13
0
    def test_port_treat_message_update(self):
        self._mock_pika()
        self._mock_vip_by_portpool_id()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequestPortPool')[0]
        message = self._make_message('Alterar', 'VipRequestPortPool')
        data = napi._treat_message(kind, message)

        self._assert_port('UPDATE', data)
コード例 #14
0
    def test_vip_treat_message_create(self):
        self._mock_pika()
        self._mock_vip()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequest')[0]
        message = self._make_message('Cadastrar', 'VipRequest')
        data = napi._treat_message(kind, message)

        self._assert_vip('CREATE', data)
コード例 #15
0
    def test_pool_comp_unit_treat_message_update(self):
        self._mock_pika()
        self._mock_pool_member_id()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPoolMember')[0]
        message = self._make_message('Alterar', 'ServerPoolMember')
        data = napi._treat_message(kind, message)

        self._assert_pool_comp_unit('UPDATE', data)
コード例 #16
0
    def test_pool_treat_message_create(self):
        self._mock_pika()
        self._mock_pool()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPool')[0]
        message = self._make_message('Cadastrar', 'ServerPool')
        data = napi._treat_message(kind, message)

        self._assert_pool('CREATE', data)
コード例 #17
0
    def test_msg_dont_treated(self):
        self._mock_pika()
        napi = Napi()

        data = self._open_message()[0:1]
        self._mock_consumer(data)

        napi._treat_message = Mock(return_value=False)
        with self.assertRaises(StopIteration):
            napi.next_message()
コード例 #18
0
    def test_pool_treat_message_create(self):
        self._mock_pika()
        self._mock_pool()

        napi = Napi()
        kind = MAP_FUNC.get('ServerPool')[0]
        message = self._make_message('Cadastrar', 'ServerPool')
        data = napi._treat_message(kind, message)

        self._assert_pool('CREATE', data)
コード例 #19
0
    def test_port_treat_message_update(self):
        self._mock_pika()
        self._mock_vip_by_portpool_id()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequestPortPool')[0]
        message = self._make_message('Alterar', 'VipRequestPortPool')
        data = napi._treat_message(kind, message)

        self._assert_port('UPDATE', data)
コード例 #20
0
    def test_vip_treat_message_create(self):
        self._mock_pika()
        self._mock_vip()

        napi = Napi()
        kind = MAP_FUNC.get('VipRequest')[0]
        message = self._make_message('Cadastrar', 'VipRequest')
        data = napi._treat_message(kind, message)

        self._assert_vip('CREATE', data)
コード例 #21
0
    def test_updates(self):
        self._mock_pika()
        self._mock_vip()
        data = self._open_message()[0:3]
        data_ret = self._open_return_message()[0:3]
        self._mock_consumer(data)

        napi = Napi()
        for i in range(3):
            msg = napi.updates()
            self.assertDictEqual(msg[0], data_ret[i])

        with self.assertRaises(StopIteration):
            msg = napi.updates()
コード例 #22
0
def run():
    while True:
        inst = Napi()
        auth_inst = auth.Auth(api_url=settings.GLOBOMAP_LOADER_API_URL,
                              username=settings.GLOBOMAP_LOADER_API_USERNAME,
                              password=settings.GLOBOMAP_LOADER_API_PASSWORD)
        update = Update(auth=auth_inst, driver_name='napi')
        try:
            inst.process_updates(update.post)
        except Exception:
            LOGGER.exception('Error syncing updates from driver')
        finally:
            LOGGER.debug('No more updates found')
            LOGGER.debug('Sleeping for %ss' % 30)
            sleep(30)
コード例 #23
0
 def _create_driver(self):
     driver = Napi()
     return driver
コード例 #24
0
"""
   Copyright 2018 Globo.com

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
"""
from logging import config

from globomap_driver_napi.driver import Napi
from globomap_driver_napi.settings import LOGGING

if __name__ == '__main__':
    config.dictConfig(LOGGING)

    inst = Napi()
    inst.full_load()