diff --git a/_mysql.c b/_mysql.c index cea9820..ca99102 100644 --- a/_mysql.c +++ b/_mysql.c @@ -2491,8 +2491,8 @@ static struct PyMemberDef _mysql_ConnectionObject_memberlist[] = { { "client_flag", T_UINT, - READONLY, offsetof(_mysql_ConnectionObject,connection.client_flag), + READONLY, "Client flags; refer to MySQLdb.constants.CLIENT" }, {NULL} /* Sentinel */ diff --git a/tests/test_MySQLdb_nonstandard.py b/tests/test_MySQLdb_nonstandard.py index 7efe265..52f6a4f 100644 --- a/tests/test_MySQLdb_nonstandard.py +++ b/tests/test_MySQLdb_nonstandard.py @@ -92,3 +92,14 @@ class CoreAPI(unittest.TestCase): self.assertTrue(isinstance(self.conn.get_server_info(), str), "Should return an str.") + def test_client_flag(self): + conn = connection_factory( + use_unicode=True, + client_flag=MySQLdb.constants.CLIENT.FOUND_ROWS) + + self.assertIsInstance(conn.client_flag, (int, MySQLdb.compat.long)) + self.assertTrue(conn.client_flag & MySQLdb.constants.CLIENT.FOUND_ROWS) + with self.assertRaises(TypeError if MySQLdb.compat.PY2 else AttributeError): + conn.client_flag = 0 + + conn.close()