Author: cito
Date: Sun Nov 22 08:25:02 2015
New Revision: 597
Log:
Use better and fully qualified Python class names
That way, the module name is automatically made available on the class.
Modified:
trunk/module/TEST_PyGreSQL_classic_connection.py
trunk/module/TEST_PyGreSQL_classic_largeobj.py
trunk/module/pgmodule.c
Modified: trunk/module/TEST_PyGreSQL_classic_connection.py
==============================================================================
--- trunk/module/TEST_PyGreSQL_classic_connection.py Sun Nov 22 07:38:27
2015 (r596)
+++ trunk/module/TEST_PyGreSQL_classic_connection.py Sun Nov 22 08:25:02
2015 (r597)
@@ -77,10 +77,18 @@
pass
def testClassName(self):
- self.assertEqual(self.connection.__class__.__name__, 'pgconnobject')
+ self.assertEqual(self.connection.__class__.__name__, 'Connection')
def testModuleName(self):
- self.assertEqual(self.connection.__module__, 'pg')
+ self.assertEqual(self.connection.__class__.__module__, 'pg')
+
+ def testStr(self):
+ r = str(self.connection)
+ self.assertTrue(r.startswith('<pg.Connection object'), r)
+
+ def testRepr(self):
+ r = repr(self.connection)
+ self.assertTrue(r.startswith('<pg.Connection object'), r)
def testAllConnectAttributes(self):
attributes = '''db error host options port
@@ -243,6 +251,14 @@
def tearDown(self):
self.c.close()
+ def testClassName(self):
+ r = self.c.query("select 1")
+ self.assertEqual(r.__class__.__name__, 'Query')
+
+ def testModuleName(self):
+ r = self.c.query("select 1")
+ self.assertEqual(r.__class__.__module__, 'pg')
+
def testStr(self):
q = ("select 1 as a, 'hello' as h, 'w' as world"
" union select 2, 'xyz', 'uvw'")
@@ -256,7 +272,7 @@
def testRepr(self):
r = repr(self.c.query("select 1"))
- self.assertTrue(r.startswith('<pgqueryobject object'), r)
+ self.assertTrue(r.startswith('<pg.Query object'), r)
def testSelect0(self):
q = "select 0"
Modified: trunk/module/TEST_PyGreSQL_classic_largeobj.py
==============================================================================
--- trunk/module/TEST_PyGreSQL_classic_largeobj.py Sun Nov 22 07:38:27
2015 (r596)
+++ trunk/module/TEST_PyGreSQL_classic_largeobj.py Sun Nov 22 08:25:02
2015 (r597)
@@ -159,10 +159,10 @@
self.pgcnx.close()
def testClassName(self):
- self.assertEqual(self.obj.__class__.__name__, 'pglarge')
+ self.assertEqual(self.obj.__class__.__name__, 'LargeObject')
def testModuleName(self):
- self.assertEqual(self.obj.__module__, 'pg')
+ self.assertEqual(self.obj.__class__.__module__, 'pg')
def testOid(self):
self.assertIsInstance(self.obj.oid, int)
@@ -188,7 +188,7 @@
def testRepr(self):
r = repr(self.obj)
- self.assertTrue(r.startswith('<pglarge object'), r)
+ self.assertTrue(r.startswith('<pg.LargeObject object'), r)
def testOpen(self):
open = self.obj.open
Modified: trunk/module/pgmodule.c
==============================================================================
--- trunk/module/pgmodule.c Sun Nov 22 07:38:27 2015 (r596)
+++ trunk/module/pgmodule.c Sun Nov 22 08:25:02 2015 (r597)
@@ -980,7 +980,7 @@
/* large object type definition */
static PyTypeObject largeType = {
PyVarObject_HEAD_INIT(NULL, 0)
- "pglarge", /* tp_name */
+ "pg.LargeObject", /* tp_name */
sizeof(largeObject), /* tp_basicsize */
0, /*
tp_itemsize */
@@ -2294,7 +2294,7 @@
/* connection type definition */
static PyTypeObject connType = {
PyVarObject_HEAD_INIT(NULL, 0)
- "pgconnobject", /* tp_name */
+ "pg.Connection", /* tp_name */
sizeof(connObject), /* tp_basicsize */
0, /* tp_itemsize
*/
(destructor) connDelete, /* tp_dealloc */
@@ -2947,7 +2947,7 @@
/* source type definition */
static PyTypeObject sourceType = {
PyVarObject_HEAD_INIT(NULL, 0)
- "pgsourceobject", /* tp_name */
+ "pgdb.Source", /* tp_name */
sizeof(sourceObject), /* tp_basicsize */
0, /*
tp_itemsize */
/* methods */
@@ -3608,7 +3608,7 @@
/* notice type definition */
static PyTypeObject noticeType = {
PyVarObject_HEAD_INIT(NULL, 0)
- "pgnoticeobject", /* tp_name */
+ "pg.Notice", /* tp_name */
sizeof(noticeObject), /* tp_basicsize */
0, /*
tp_itemsize */
/* methods */
@@ -3660,7 +3660,7 @@
/* query type definition */
static PyTypeObject queryType = {
PyVarObject_HEAD_INIT(NULL, 0)
- "pgqueryobject", /* tp_name */
+ "pg.Query", /* tp_name */
sizeof(queryObject), /* tp_basicsize */
0, /*
tp_itemsize */
/* methods */
@@ -4289,19 +4289,6 @@
#endif
) return NULL;
- /* make the module names available */
- s = PyStr_FromString("pg");
- PyDict_SetItemString(connType.tp_dict, "__module__", s);
- PyDict_SetItemString(noticeType.tp_dict, "__module__", s);
- PyDict_SetItemString(queryType.tp_dict, "__module__", s);
-#ifdef LARGE_OBJECTS
- PyDict_SetItemString(largeType.tp_dict, "__module__", s);
-#endif
- Py_DECREF(s);
- s = PyStr_FromString("pgdb");
- PyDict_SetItemString(sourceType.tp_dict, "__module__", s);
- Py_DECREF(s);
-
dict = PyModule_GetDict(mod);
/* Exceptions as defined by DB-API 2.0 */
_______________________________________________
PyGreSQL mailing list
[email protected]
https://mail.vex.net/mailman/listinfo.cgi/pygresql