Update of /cvsroot/pywin32/pywin32/adodbapi/tests
In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv25942/tests
Modified Files:
adodbapitest.py adodbapitestconfig.py test_adodbapi_dbapi20.py
Log Message:
adodbapi 2.2.4 (IPy 2.0 and 2to3 ready)
Index: adodbapitest.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/adodbapi/tests/adodbapitest.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** adodbapitest.py 11 Nov 2008 23:54:30 -0000 1.6
--- adodbapitest.py 8 Dec 2008 18:13:53 -0000 1.7
***************
*** 1,3 ****
! """ Unit tests for adodbapi version 2.2.2"""
"""
adodbapi - A python DB API 2.0 interface to Microsoft ADO
--- 1,3 ----
! """ Unit tests for adodbapi version 2.2.4"""
"""
adodbapi - A python DB API 2.0 interface to Microsoft ADO
***************
*** 53,57 ****
def getConnection(self):
! raise "This method must be overriden by a subclass"
def getCursor(self):
--- 53,57 ----
def getConnection(self):
! raise NotImplementedError #"This method must be overriden by a subclass"
def getCursor(self):
***************
*** 179,193 ****
if DBAPIDataTypeString=='STRING':
! assert descTuple[1] == adodbapi.STRING, 'was "%s"'%descTuple[1]
elif DBAPIDataTypeString == 'NUMBER':
! assert descTuple[1] == adodbapi.NUMBER, 'was "%s"'%descTuple[1]
elif DBAPIDataTypeString == 'BINARY':
! assert descTuple[1] == adodbapi.BINARY, 'was "%s"'%descTuple[1]
elif DBAPIDataTypeString == 'DATETIME':
! assert descTuple[1] == adodbapi.DATETIME, 'was "%s"'%descTuple[1]
elif DBAPIDataTypeString == 'ROWID':
! assert descTuple[1] == adodbapi.ROWID, 'was "%s"'%descTuple[1]
else:
! raise "DBAPIDataTypeString not provided"
#Test data binding
--- 179,193 ----
if DBAPIDataTypeString=='STRING':
! assert descTuple[1] == adodbapi.STRING, 'was "%s" expected "%s"'%(descTuple[1],adodbapi.STRING.values)
elif DBAPIDataTypeString == 'NUMBER':
! assert descTuple[1] == adodbapi.NUMBER, 'was "%s" expected "%s"'%(descTuple[1],adodbapi.NUMBER.values)
elif DBAPIDataTypeString == 'BINARY':
! assert descTuple[1] == adodbapi.BINARY, 'was "%s" expected "%s"'%(descTuple[1],adodbapi.BINARY.values)
elif DBAPIDataTypeString == 'DATETIME':
! assert descTuple[1] == adodbapi.DATETIME, 'was "%s" expected "%s"'%(descTuple[1],adodbapi.DATETIME.values)
elif DBAPIDataTypeString == 'ROWID':
! assert descTuple[1] == adodbapi.ROWID, 'was "%s" expected "%s"'%(descTuple[1],adodbapi.ROWID.values)
else:
! raise NotImplementedError #"DBAPIDataTypeString not provided"
#Test data binding
***************
*** 268,272 ****
if self.getEngine() != 'MySQL':
self.helpTestDataType("smalldatetime",'DATETIME',adodbapi.Date(2002,10,28),compareAlmostEqual=True)
! self.helpTestDataType("datetime",'DATETIME',adodbapi.Timestamp(2002,10,28,12,15,01),compareAlmostEqual=True)
def testDataTypeBinary(self):
--- 268,272 ----
if self.getEngine() != 'MySQL':
self.helpTestDataType("smalldatetime",'DATETIME',adodbapi.Date(2002,10,28),compareAlmostEqual=True)
! self.helpTestDataType("datetime",'DATETIME',adodbapi.Timestamp(2002,10,28,12,15,1),compareAlmostEqual=True)
def testDataTypeBinary(self):
***************
*** 608,612 ****
self.assertEquals( comDate ,correct)
! d=self.tc.Timestamp(2003,05,06,14,15,17)
comDate=self.tc.COMDate(d)
correct=37747.593946759262
--- 608,612 ----
self.assertEquals( comDate ,correct)
! d=self.tc.Timestamp(2003,5,6,14,15,17)
comDate=self.tc.COMDate(d)
correct=37747.593946759262
***************
*** 629,633 ****
def testCOMDate(self):
! t=mx.DateTime.DateTime(2002,06,28,18,15,02)
cmd=self.tc.COMDate(t)
assert cmd == t.COMDate()
--- 629,633 ----
def testCOMDate(self):
! t=mx.DateTime.DateTime(2002,6,28,18,15,2)
cmd=self.tc.COMDate(t)
assert cmd == t.COMDate()
***************
*** 635,640 ****
def testDateObjectFromCOMDate(self):
cmd=self.tc.DateObjectFromCOMDate(37435.7604282)
! t=mx.DateTime.DateTime(2002,06,28,18,15,00)
! t2=mx.DateTime.DateTime(2002,06,28,18,15,02)
assert t2>cmd>t
--- 635,640 ----
def testDateObjectFromCOMDate(self):
cmd=self.tc.DateObjectFromCOMDate(37435.7604282)
! t=mx.DateTime.DateTime(2002,6,28,18,15,0)
! t2=mx.DateTime.DateTime(2002,6,28,18,15,2)
assert t2>cmd>t
***************
*** 646,651 ****
def testTimestamp(self):
! t=mx.DateTime.DateTime(2002,6,28,18,15,01)
! obj=self.tc.Timestamp(2002,6,28,18,15,01)
assert t == obj
--- 646,651 ----
def testTimestamp(self):
! t=mx.DateTime.DateTime(2002,6,28,18,15,1)
! obj=self.tc.Timestamp(2002,6,28,18,15,1)
assert t == obj
***************
*** 656,660 ****
def testCOMDate(self):
! mk = time.mktime((2002,6,28,18,15,01, 4,31+28+31+30+31+28,-1))
t=time.localtime(mk)
# Fri, 28 Jun 2002 18:15:01 +0000
--- 656,660 ----
def testCOMDate(self):
! mk = time.mktime((2002,6,28,18,15,1, 4,31+28+31+30+31+28,-1))
t=time.localtime(mk)
# Fri, 28 Jun 2002 18:15:01 +0000
***************
*** 664,674 ****
def testDateObjectFromCOMDate(self):
cmd=self.tc.DateObjectFromCOMDate(37435.7604282)
! t1=time.gmtime(time.mktime((2002,6,28,12,14,01, 4,31+28+31+30+31+28,-1)))
! t2=time.gmtime(time.mktime((2002,6,28,12,16,01, 4,31+28+31+30+31+28,-1)))
assert t1<cmd<t2, '"%s" should be about 2002-6-28 12:15:01'%repr(cmd)
def testDate(self):
! t1=time.mktime((2002,6,28,18,15,01, 4,31+28+31+30+31+30,0))
! t2=time.mktime((2002,6,30,18,15,01, 4,31+28+31+30+31+28,0))
obj=self.tc.Date(2002,6,29)
assert t1< time.mktime(obj)<t2,obj
--- 664,674 ----
def testDateObjectFromCOMDate(self):
cmd=self.tc.DateObjectFromCOMDate(37435.7604282)
! t1=time.gmtime(time.mktime((2002,6,28,12,14,1, 4,31+28+31+30+31+28,-1)))
! t2=time.gmtime(time.mktime((2002,6,28,12,16,1, 4,31+28+31+30+31+28,-1)))
assert t1<cmd<t2, '"%s" should be about 2002-6-28 12:15:01'%repr(cmd)
def testDate(self):
! t1=time.mktime((2002,6,28,18,15,1, 4,31+28+31+30+31+30,0))
! t2=time.mktime((2002,6,30,18,15,1, 4,31+28+31+30+31+28,0))
obj=self.tc.Date(2002,6,29)
assert t1< time.mktime(obj)<t2,obj
***************
*** 678,684 ****
def testTimestamp(self):
! t1=time.localtime(time.mktime((2002,6,28,18,14,01, 4,31+28+31+30+31+28,-1)))
! t2=time.localtime(time.mktime((2002,6,28,18,16,01, 4,31+28+31+30+31+28,-1)))
! obj=self.tc.Timestamp(2002,6,28,18,15,02)
assert t1< obj <t2,obj
--- 678,684 ----
def testTimestamp(self):
! t1=time.localtime(time.mktime((2002,6,28,18,14,1, 4,31+28+31+30+31+28,-1)))
! t2=time.localtime(time.mktime((2002,6,28,18,16,1, 4,31+28+31+30+31+28,-1)))
! obj=self.tc.Timestamp(2002,6,28,18,15,2)
assert t1< obj <t2,obj
***************
*** 690,694 ****
def testCOMDate(self):
! t=datetime.datetime( 2002,6,28,18,15,01)
# Fri, 28 Jun 2002 18:15:01 +0000
cmd=self.tc.COMDate(t)
--- 690,694 ----
def testCOMDate(self):
! t=datetime.datetime( 2002,6,28,18,15,1)
# Fri, 28 Jun 2002 18:15:01 +0000
cmd=self.tc.COMDate(t)
***************
*** 697,702 ****
def testDateObjectFromCOMDate(self):
cmd=self.tc.DateObjectFromCOMDate(37435.7604282)
! t1=datetime.datetime(2002,6,28,18,14,01)
! t2=datetime.datetime(2002,6,28,18,16,01)
assert t1<cmd<t2,cmd
--- 697,702 ----
def testDateObjectFromCOMDate(self):
cmd=self.tc.DateObjectFromCOMDate(37435.7604282)
! t1=datetime.datetime(2002,6,28,18,14,1)
! t2=datetime.datetime(2002,6,28,18,16,1)
assert t1<cmd<t2,cmd
***************
*** 711,717 ****
def testTimestamp(self):
! t1=datetime.datetime(2002,6,28,18,14,01)
! t2=datetime.datetime(2002,6,28,18,16,01)
! obj=self.tc.Timestamp(2002,6,28,18,15,02)
assert t1< obj <t2,obj
--- 711,717 ----
def testTimestamp(self):
! t1=datetime.datetime(2002,6,28,18,14,1)
! t2=datetime.datetime(2002,6,28,18,16,1)
! obj=self.tc.Timestamp(2002,6,28,18,15,2)
assert t1< obj <t2,obj
Index: test_adodbapi_dbapi20.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/adodbapi/tests/test_adodbapi_dbapi20.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** test_adodbapi_dbapi20.py 11 Nov 2008 23:54:30 -0000 1.2
--- test_adodbapi_dbapi20.py 8 Dec 2008 18:13:53 -0000 1.3
***************
*** 5,9 ****
print "Tested with dbapi20 %s" % dbapi20.__version__
import unittest
- import popen2
import adodbapitestconfig
--- 5,8 ----
Index: adodbapitestconfig.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/adodbapi/tests/adodbapitestconfig.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** adodbapitestconfig.py 11 Nov 2008 23:54:30 -0000 1.5
--- adodbapitestconfig.py 8 Dec 2008 18:13:53 -0000 1.6
***************
*** 1,4 ****
# Configure this in order to run the testcases.
! "adodbapitestconfig.py v 2.2.2"
import os
--- 1,4 ----
# Configure this in order to run the testcases.
! "adodbapitestconfig.py v 2.2.4"
import os
***************
*** 22,25 ****
--- 22,27 ----
doAccessTest = True
doSqlServerTest = True
+ doMySqlTest = True
+
try: #If mx extensions are installed, use mxDateTime
import mx.DateTime
***************
*** 27,42 ****
except:
doMxDateTimeTest=False #Requires eGenixMXExtensions
! doAS400Test = False
! doMySqlTest = False
!
! import sys
! if float(sys.version[:3])>2.29:
! doDateTimeTest=True #Requires Python 2.3 Alpha2
! else:
! doDateTimeTest=False
! print 'Error: adodbapi 2.1 requires Python 2.3'
! iterateOverTimeTests=False
if doSqlServerTest:
--- 29,81 ----
except:
doMxDateTimeTest=False #Requires eGenixMXExtensions
! doDateTimeTest=True #Requires Python 2.3 Alpha2
! iterateOverTimeTests=True
+ if doAccessTest:
+ _accessdatasource = None #set to None for automatic creation
+ #r"C:\Program Files\Microsoft Office\Office\Samples\northwind.mdb;"
+ #Typically C:\Program Files
+ if _accessdatasource == None:
+ # following setup code borrowed from pywin32 odbc test suite
+ # kindly contributed by Frank Millman.
+ import tempfile
+ import os
+ try:
+ from win32com.client.gencache import EnsureDispatch
+ from win32com.client import constants
+ win32 = True
+ except ImportError: #perhaps we are running IronPython
+ win32 = False
+ if not win32:
+ from System import Activator, Type
+ _accessdatasource = os.path.join(tempfile.gettempdir(), "test_odbc.mdb")
+ if os.path.isfile(_accessdatasource):
+ os.unlink(_accessdatasource)
+ # Create a brand-new database - what is the story with these?
+ for suffix in (".36", ".35", ".30"):
+ try:
+ if win32:
+ dbe = EnsureDispatch("DAO.DBEngine" + suffix)
+ else:
+ type= Type.GetTypeFromProgID("DAO.DBEngine" + suffix)
+ dbe = Activator.CreateInstance(type)
+ break
+ except:
+ pass
+ else:
+ raise RuntimeError("Can't find a DB engine")
+ print ' ...Creating ACCESS db at',_accessdatasource
+ if win32:
+ workspace = dbe.Workspaces(0)
+ newdb = workspace.CreateDatabase(_accessdatasource,
+ constants.dbLangGeneral,
+ constants.dbEncrypt)
+ else:
+ newdb = dbe.CreateDatabase(_accessdatasource,';LANGID=0x0409;CP=1252;COUNTRY=0')
+ newdb.Close()
+ connStrAccess = r"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + _accessdatasource
+ # for ODBC connection try...
+ # connStrAccess = "Driver={Microsoft Access Driver (*.mdb)};db=%s;Uid=;Pwd=;" + _accessdatasource
if doSqlServerTest:
***************
*** 56,91 ****
if doMySqlTest:
! _computername='10.100.5.249'
_databasename='test'
!
! #_driver="MySQL ODBC 3.51 Driver"
! _driver="MySQL ODBC 5.1 Driver"
! connStrMySql = 'Driver={%s};Server=%s;Port=3306;Database=%s;Option=3;' % \
! (_driver,_computername,_databasename)
print ' ...Testing MySql login...'
try:
s = adodbapi.connect(connStrMySql) #connect to server
s.close()
! except adodbapi.DatabaseError, inst:
print inst.args[0][2] # should be the error message
doMySqlTest = False
-
- if doAS400Test:
- #OLE DB -> "PROVIDER=IBMDA400; DATA SOURCE=MY_SYSTEM_NAME;USER ID=myUserName;PASSWORD=myPwd;DEFAULT COLLECTION=MY_LIBRARY;"
- connStrAS400skl = "Provider=IBMDA400; DATA SOURCE=%s;DEFAULT COLLECTION=%s;User ID=%s;Password=%s"
- # NOTE! user's PC must have OLE support installed in IBM Client Access Express
- _computername='SPICE'
- _databasename="DPVERNON"
- _username = 'DNTWCI'
- # or raw_input(' AS400 User ID for data retrieval [%s]:' % defaultUser)
- _password = 'DNTWCI'
- # or getpass.getpass(' AS400 password:') #read the password
- connStrAS400 = connStrAS400skl % (_computername,_databasename,_username,_password) #build the connection string
- print ' ...Testing AS400 login...'
- try:
- s = adodbapi.connect(connStrAS400) #connect to server
- s.close()
- except adodbapi.DatabaseError, inst:
- print inst.args[0][2] # should be the AS400 error message
- doAS400Test = False
-
\ No newline at end of file
--- 95,110 ----
if doMySqlTest:
! _computername='wciptest'
_databasename='test'
! _username = 'test'
! _password = '12345678'
! _driver="MySQL ODBC 5.1 Driver" # or _driver="MySQL ODBC 3.51 Driver"
! connStrMySql = 'Driver={%s};Server=%s;Port=3306;Database=%s;user=%s;password=%s;Option=3;' % \
! (_driver,_computername,_databasename,_username,_password)
print ' ...Testing MySql login...'
try:
s = adodbapi.connect(connStrMySql) #connect to server
s.close()
! except adodbapi.DatabaseError, inst:
print inst.args[0][2] # should be the error message
doMySqlTest = False
|