def _handle_server_status(self, flags): """Handle the server flags found in MySQL packets This method handles the server flags send by MySQL OK and EOF packets. It, for example, checks whether there exists more result sets or whether there is an ongoing transaction. """ self._have_next_result = flag_is_set(ServerFlag.MORE_RESULTS_EXISTS, flags) self._in_transaction = flag_is_set(ServerFlag.STATUS_IN_TRANS, flags)
def test_flag_is_set(self): """Check if a particular flag/bit is set""" data = [1 << 3, 1 << 5, 1 << 7] flags = 0 for flag in data: flags |= flag for flag in data: self.assertTrue(constants.flag_is_set(flag, flags)) self.assertFalse(constants.flag_is_set(1 << 4, flags))
def test_flag_is_set(self): """Check if a particular flag/bit is set""" data = [ 1 << 3, 1 << 5, 1 << 7, ] flags = 0 for flag in data: flags |= flag for flag in data: self.assertTrue(constants.flag_is_set(flag, flags)) self.assertFalse(constants.flag_is_set(1 << 4, flags))
def test_client_flags(self): defaults = ClientFlag.default set_flags = self.cnx._cmysql.st_client_flag() for flag in defaults: self.assertTrue(flag_is_set(flag, set_flags))