import unittest
class sql_text_test(unittest.TestCase):
'''
test class
'''
class some_type:
'''
just a helper class to test the type limitation of the text class
'''
def __init__(self, data):
self.data = data
def test_prepare(self):
for val in (self.some_type('bla'), complex(1, 2)):
with self.assertRaises(TypeError):
str(val)
self.assertEqual(str(""), "''")
self.assertEqual(str("'"), "''''")
self.assertEqual(str("''"), "''''''")
self.assertEqual(str(''), "''")
self.assertEqual(str(-1), "'-1'")
self.assertEqual(str(1), "'1'")
self.assertEqual(str(1.2), "'1.2'")
# self.assertEqual(sql_text.prepare(None), "NULL") unnötig da None="NULL"
test = True # set to True to run tests in the text_test class
if test:
unittest.main()
sql = "INSERT INTO tbl_foo (col_bar) VALUES"
s = "\n "
for val in (0, 1.2, "3.45°", '6.789s', None, "';SELECT 1;--"):
sql += s + "('" + str(val) + "')"
s = "\n ,"
sql += "\n;"
print(sql)