Update of /cvsroot/myoledb/myoledb3/test
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv13490
Modified Files:
test_dbapi.py
Log Message:
added comments, spacing
moved imports inside driver test classes for clarity
Index: test_dbapi.py
===================================================================
RCS file: /cvsroot/myoledb/myoledb3/test/test_dbapi.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- test_dbapi.py 28 Jun 2006 10:26:50 -0000 1.2
+++ test_dbapi.py 28 Jun 2006 10:54:20 -0000 1.3
@@ -3,36 +3,31 @@
"""py.test tests for MyOLEDB using a Python DB-API compliant driver
Will attempt to import various drivers and run tests on any imported successfully"""
-try:
- from jToolkit.data import PyADO as jToolkit_PyADO
-except ImportError:
- jToolkit_PyADO = None
-
-try:
- from j5.Database.ADO import PyADO as j5_PyADO
-except ImportError:
- j5_PyADO = None
-
-try:
- import adodbapi
-except ImportError:
- adodbapi = None
-
-class MySqlADOTester:
+class MySqlTester:
+ """base class for testing mysql over dbapi"""
class connection:
+ """connection details for test"""
username = "mytest"
password = ""
database = "mytest"
provider = "MySQLProv"
+
def setup_class(cls):
+ """sets up the database on cls.db"""
cls.db = cls.setup_db()
+
def teardown_class(cls):
+ """closes the database"""
cls.db.close()
+
def execute_query(self, query):
+ """executes the given sql query and returns the cursor"""
cursor = self.db.cursor()
cursor.execute(query)
return cursor
+
def test_simple(self):
+ """runs a simple insert and checks that a select returns the expected results"""
try:
self.execute_query("drop table test_simple")
except Exception, e:
@@ -42,7 +37,9 @@
results = self.execute_query("select x, y from test_simple").fetchall()
assert len(results) == 1
assert list(results[0]) == ["test", "me"]
+
def test_count_type(self):
+ """checks that select count(*) returns an integer"""
try:
self.execute_query("drop table test_count_type")
except Exception, e:
@@ -53,23 +50,38 @@
assert len(results) == 1
assert list(results[0]) == [1]
-class Test_j5_ADO(MySqlADOTester):
- driver = j5_PyADO
- disabled = (j5_PyADO is None)
+class Test_j5_ADO(MySqlTester):
+ """Uses j5.Database.ADO.PyADO as the DBAPI provider"""
+ try:
+ from j5.Database.ADO import PyADO as driver
+ except ImportError:
+ driver = None
+ disabled = (driver is None)
+
def setup_db(cls):
return cls.driver.connect(None, {"User ID": cls.connection.username, "Password": cls.connection.password, "Data Source": cls.connection.database}, cls.connection.provider)
setup_db = classmethod(setup_db)
-class Test_jToolkit_ADO(MySqlADOTester):
- driver = jToolkit_PyADO
- disabled = (jToolkit_PyADO is None)
+class Test_jToolkit_ADO(MySqlTester):
+ """Uses jToolkit.database.PyADO as the DBAPI provider (see http://jtoolkit.sourceforge.net/)"""
+ try:
+ from jToolkit.data import PyADO as driver
+ except ImportError:
+ driver = None
+ disabled = (driver is None)
+
def setup_db(cls):
return cls.driver.connect(None, user=cls.connection.username, password=cls.connection.password, database=cls.connection.database, provider=cls.connection.provider)
setup_db = classmethod(setup_db)
-class Test_adodbapi(MySqlADOTester):
- driver = adodbapi
- disabled = (adodbapi is None)
+class Test_adodbapi(MySqlTester):
+ """Uses adodbapi as the DBAPI provider (see http://adodbapi.sourceforge.net/)"""
+ try:
+ import adodbapi as driver
+ except ImportError:
+ driver = None
+ disabled = (driver is None)
+
def setup_db(cls):
params = {"User ID": cls.connection.username, "Password": cls.connection.password, "Data Source": cls.connection.database, "Provider": cls.connection.provider}
paramstr = "; ".join(["%s=%s" % (key, value) for key, value in params.iteritems()])
|