예제 #1
0
class TestSQLiteCursor(unittest.TestCase):
    def setUp(self):
        self.connection = SQLiteConnection(database=FILENAME).connect

    # connection from __init__
    def testInitConnectionIsNone(self):
        self.cursor = SQLiteCursor(connection=None)
        self.assertEqual(self.cursor.connection, None)

    def testInitConnectionIsNotNone(self):
        self.cursor = SQLiteCursor(connection=self.connection)
        self.assertTrue(self.cursor.connection is not None)

    def testInitConnectionIsCorrectType(self):
        self.cursor = SQLiteCursor(connection=self.connection)
        self.assertTrue('sqlite3.Connection' in repr(self.cursor.connection))

    def testInitConnectionIsIncorrectType(self):
        self.cursor = SQLiteCursor(connection=self.connection)
        self.assertTrue('foo' not in repr(self.cursor.connection))


    # row_type from __init__
    def testRowTypeDefault(self):
        self.cursor = SQLiteCursor(connection=self.connection)
        self.assertTrue(self.cursor._getRowType() in ALLOWED_TYPES)

    def testRowTypeInAllowedTypes(self):
        self.cursor = SQLiteCursor(connection=self.connection,
                                    row_type=types.DictionaryType)
        self.assertTrue(self.cursor._getRowType() in ALLOWED_TYPES)

    def testRowTypeNotInAllowedTypes(self):
        self.cursor = SQLiteCursor(connection=self.connection,
                                    row_type=types.ListType)
        self.assertTrue(self.cursor._getRowType() not in ALLOWED_TYPES)


    # execute
    def testExecuteConnectionNotSet(self):
        self.cursor = SQLiteCursor()
        with self.assertRaises(ValueError):
            self.cursor.execute("SELECT * FROM test")

    def testConnectId(self):
        self.cursor = SQLiteCursor(connection=self.connection)
        results = self.cursor.execute("SELECT * FROM test WHERE name=?",
                                    ('Glenn',))
        self.assertEqual(results[0][0], 1)

    def testConnectName(self):
        self.cursor = SQLiteCursor(connection=self.connection)
        results = self.cursor.execute("SELECT * FROM test WHERE name=?",
                                    ('Glenn',))
        self.assertEqual(results[0][1], 'Glenn')


    def tearDown(self):
        self.connection = None
        del self.connection
예제 #2
0
 def testExecuteConnectionNotSet(self):
     self.cursor = SQLiteCursor()
     with self.assertRaises(ValueError):
         self.cursor.execute("SELECT * FROM test")
예제 #3
0
 def testRowTypeNotInAllowedTypes(self):
     self.cursor = SQLiteCursor(connection=self.connection,
                                 row_type=types.ListType)
     self.assertTrue(self.cursor._getRowType() not in ALLOWED_TYPES)
예제 #4
0
 def testRowTypeInAllowedTypes(self):
     self.cursor = SQLiteCursor(connection=self.connection,
                                 row_type=types.DictionaryType)
     self.assertTrue(self.cursor._getRowType() in ALLOWED_TYPES)
예제 #5
0
 def testRowTypeDefault(self):
     self.cursor = SQLiteCursor(connection=self.connection)
     self.assertTrue(self.cursor._getRowType() in ALLOWED_TYPES)
예제 #6
0
 def testInitConnectionIsIncorrectType(self):
     self.cursor = SQLiteCursor(connection=self.connection)
     self.assertTrue('foo' not in repr(self.cursor.connection))
예제 #7
0
 def testInitConnectionIsCorrectType(self):
     self.cursor = SQLiteCursor(connection=self.connection)
     self.assertTrue('sqlite3.Connection' in repr(self.cursor.connection))
예제 #8
0
 def testInitConnectionIsNotNone(self):
     self.cursor = SQLiteCursor(connection=self.connection)
     self.assertTrue(self.cursor.connection is not None)
예제 #9
0
 def testInitConnectionIsNone(self):
     self.cursor = SQLiteCursor(connection=None)
     self.assertEqual(self.cursor.connection, None)
예제 #10
0
 def testConnectName(self):
     self.cursor = SQLiteCursor(connection=self.connection)
     results = self.cursor.execute("SELECT * FROM test WHERE name=?",
                                 ('Glenn',))
     self.assertEqual(results[0][1], 'Glenn')