Esempio n. 1
0
    class MockMonitor(Monitor):
        def __init__(self):
            self.logger = logger
            self.fa_rabbit_routing_key = 'FAUCET.Event'
            self.faucet_event = None
            self.controller = get_test_controller()
            self.s = SDNConnect(self.controller)
            self.s.controller['TYPE'] = 'None'
            self.s.get_sdn_context()
            self.s.controller['TYPE'] = 'faucet'
            self.s.get_sdn_context()
            self.job_queue = queue.Queue()
            self.m_queue = queue.Queue()
            endpoint = endpoint_factory('foo')
            endpoint.endpoint_data = {
                'tenant': 'foo',
                'mac': '00:00:00:00:00:00',
                'segment': 'foo',
                'port': '1'
            }
            endpoint.mirror()
            endpoint.p_prev_states.append((endpoint.state, int(time.time())))
            self.s.endpoints[endpoint.name] = endpoint
            endpoint = endpoint_factory('foo2')
            endpoint.endpoint_data = {
                'tenant': 'foo',
                'mac': '00:00:00:00:00:00',
                'segment': 'foo',
                'port': '1'
            }
            endpoint.p_next_state = 'mirror'
            endpoint.queue()
            endpoint.p_prev_states.append((endpoint.state, int(time.time())))
            self.s.endpoints[endpoint.name] = endpoint
            endpoint = endpoint_factory('foo3')
            endpoint.endpoint_data = {
                'tenant': 'foo',
                'mac': '00:00:00:00:00:00',
                'segment': 'foo',
                'port': '1'
            }
            self.s.endpoints[endpoint.name] = endpoint
            self.s.store_endpoints()
            self.s.get_stored_endpoints()
            self.results = 0

        def get_q_item(self, q, timeout=1):
            if not self.results:
                self.results += 1
                return (True, ('foo', {'data': {}}))
            return (False, None)

        def bad_get_q_item(self, q, timeout=1):
            return (False, ('bar', {'data': {}}))

        def format_rabbit_message(self, item):
            return ({'data': {}}, False)
Esempio n. 2
0
    class MockMonitor(Monitor):

        def __init__(self):
            self.logger = logger
            self.fa_rabbit_routing_key = 'FAUCET.Event'
            self.faucet_event = None
            self.controller = Config().get_config()
            self.s = SDNConnect()
            self.s.controller['TYPE'] = 'bcf'
            self.s.get_sdn_context()
            self.s.controller['TYPE'] = 'faucet'
            self.s.get_sdn_context()
            if 'POSEIDON_TRAVIS' in os.environ:
                self.s.r = redis.StrictRedis(host='localhost',
                                             port=6379,
                                             db=0,
                                             decode_responses=True)
            endpoint = Endpoint('foo')
            endpoint.endpoint_data = {
                'tenant': 'foo', 'mac': '00:00:00:00:00:00', 'segment': 'foo', 'port': '1'}
            endpoint.mirror()
            endpoint.p_prev_states.append(
                (endpoint.state, int(time.time())))
            self.s.endpoints.append(endpoint)
            endpoint = Endpoint('foo2')
            endpoint.endpoint_data = {
                'tenant': 'foo', 'mac': '00:00:00:00:00:00', 'segment': 'foo', 'port': '1'}
            endpoint.p_next_state = 'mirror'
            endpoint.queue()
            endpoint.p_prev_states.append(
                (endpoint.state, int(time.time())))
            self.s.endpoints.append(endpoint)
            endpoint = Endpoint('foo3')
            endpoint.endpoint_data = {
                'tenant': 'foo', 'mac': '00:00:00:00:00:00', 'segment': 'foo', 'port': '1'}
            self.s.endpoints.append(endpoint)
            self.s.store_endpoints()
            self.s.get_stored_endpoints()

        def get_q_item(self):
            return (True, ('foo', {}))

        def bad_get_q_item(self):
            return (False, ('bar', {}))

        def format_rabbit_message(self, item):
            return {}