def test_recv_data_with_empty_data(self):
     """Test case to test _recv_data with empty data."""
     fake_socket = base_test.SocketClass(None, None, None, '')
     with mock.patch.object(socket, 'socket', return_value=fake_socket):
         with mock.patch.object(ovsdb_writer.LOG, 'warning'):
             ovsdb_conf = base_test.FakeConf()
             l2gw_obj = ovsdb_writer.OVSDBWriter(cfg.CONF.ovsdb, ovsdb_conf)
             result = l2gw_obj._recv_data(mock.ANY)
             self.assertIsNone(result)
Example #2
0
 def _open_connection(self, ovsdb_identifier):
     ovsdb_fd = None
     gateway = self.gateways.get(ovsdb_identifier)
     try:
         ovsdb_fd = ovsdb_writer.OVSDBWriter(self.conf.ovsdb, gateway)
         yield ovsdb_fd
     finally:
         if ovsdb_fd:
             ovsdb_fd.disconnect()
 def test_recv_data_with_empty_data(self):
     """Test case to test _recv_data with empty data."""
     fake_socket = base_test.SocketClass(None, None, None, '')
     with contextlib.nested(
             mock.patch.object(socket, 'socket', return_value=fake_socket),
             mock.patch.object(ovsdb_writer.LOG,
                               'warning')) as (fake_sock, fake_warn):
         ovsdb_conf = base_test.FakeConf()
         l2gw_obj = ovsdb_writer.OVSDBWriter(cfg.CONF.ovsdb, ovsdb_conf)
         result = l2gw_obj._recv_data()
         self.assertEqual(None, result)
 def test_recv_data(self):
     """Test case to test _recv_data with a valid data."""
     fake_data = {"fake_key": "fake_value"}
     fake_socket = base_test.SocketClass(
         None, None, None,
         base_test.FakeDecodeClass(jsonutils.dumps(fake_data)))
     with mock.patch.object(socket, 'socket', return_value=fake_socket):
         ovsdb_conf = base_test.FakeConf()
         l2gw_obj = ovsdb_writer.OVSDBWriter(cfg.CONF.ovsdb, ovsdb_conf)
         result = l2gw_obj._recv_data()
         self.assertEqual(jsonutils.dumps(fake_data), result)
    def test_recv_data_with_socket_error(self):
        """Test case to test _recv_data with socket error."""

        fake_socket = base_test.SocketClass(None, None, socket.error)
        with mock.patch.object(socket, 'socket', return_value=fake_socket):
            with mock.patch.object(ovsdb_writer.LOG, 'warning') as fake_warn:
                ovsdb_conf = base_test.FakeConf()
                l2gw_obj = ovsdb_writer.OVSDBWriter(cfg.CONF.ovsdb, ovsdb_conf)
                result = l2gw_obj._recv_data(mock.ANY)
                self.assertIsNone(result)
                fake_warn.assert_called_with(
                    "Did not receive any reply from the OVSDB server")
    def setUp(self):
        super(TestOVSDBWriter, self).setUp()
        self.conf = mock.patch.object(conf, 'L2GatewayConfig').start()
        config.register_ovsdb_opts_helper(cfg.CONF)
        cfg.CONF.set_override('max_connection_retries', 0, 'ovsdb')

        self.sock = mock.patch('socket.socket').start()
        self.ssl_sock = mock.patch.object(ssl, 'wrap_socket').start()
        self.op_id = 'abcd'
        self.l2gw_ovsdb = ovsdb_writer.OVSDBWriter(mock.Mock(), self.conf)
        self.fake_message = {'id': self.op_id, 'fake_key': 'fake_value'}

        self.l2gw_ovsdb.responses = [self.fake_message]
    def test_recv_data_with_socket_error(self):
        """Test case to test _recv_data with socket error."""

        fake_socket = base_test.SocketClass(None, None, socket.error)
        with contextlib.nested(
                mock.patch.object(socket, 'socket', return_value=fake_socket),
                mock.patch.object(ovsdb_writer.LOG,
                                  'warning')) as (fake_sock, fake_warn):
            ovsdb_conf = base_test.FakeConf()
            l2gw_obj = ovsdb_writer.OVSDBWriter(cfg.CONF.ovsdb, ovsdb_conf)
            result = l2gw_obj._recv_data()
            self.assertEqual(None, result)
            fake_warn.assert_called_with(
                _LW("Did not receive any reply from the OVSDB "
                    "server"))