Files
rdkit/Python/Dbase/UnitTestDbResultSet.py

90 lines
1.9 KiB
Python
Executable File

# $Id$
#
# Copyright (C) 2003-2006 greg Landrum and Rational Discovery LLC
#
# @@ All Rights Reserved @@
#
"""unit testing code for the DbResultSet object
"""
import RDConfig
import unittest,os
from Dbase.DbConnection import DbConnect
from Dbase.DbResultSet import DbResultSet,RandomAccessDbResultSet
class TestCase(unittest.TestCase):
def setUp(self):
self.dbName = RDConfig.RDTestDatabase
self.conn = DbConnect(self.dbName)
self.curs = self.conn.GetCursor()
def test1(self):
""" test indexing in, ensure acceptable error conditions
"""
cmd = 'select * from ten_elements'
set = RandomAccessDbResultSet(self.curs,self.conn,cmd)
for i in range(12):
try:
val = set[i]
except IndexError:
assert i >= 10
def test2(self):
"""
"""
cmd = 'select * from ten_elements'
set = RandomAccessDbResultSet(self.curs,self.conn,cmd)
assert len(set)==10
for i in range(len(set)):
try:
val = set[i]
except:
assert 0
def test3(self):
"""
"""
cmd = 'select * from ten_elements'
set = DbResultSet(self.curs,self.conn,cmd)
r = []
for thing in set:
r.append(thing)
assert len(r)==10
def test4(self):
"""
"""
cmd = 'select * from ten_elements_dups'
set = DbResultSet(self.curs,self.conn,cmd,removeDups=0)
r = []
for thing in set:
r.append(thing)
assert len(r)==10
def test5(self):
"""
"""
cmd='select * from ten_elements_dups'
set = RandomAccessDbResultSet(self.curs,self.conn,cmd,removeDups=0)
assert len(set)==10
for i in range(len(set)):
try:
val = set[i]
except:
assert 0
def test6(self):
"""
"""
cmd = 'select * from ten_elements_dups'
set = DbResultSet(self.curs,self.conn,cmd,removeDups=0)
r = []
for thing in set:
r.append(thing)
assert len(r)==10
if __name__ == '__main__':
unittest.main()