Mercurial > p > mysql-python > mysqldb-2
view tests/test_MySQLdb_nonstandard.py @ 48:f4fd8c20511c MySQLdb
Read a default file in the test setUp. Since Python 2.4, int() will return longs if needed so make all long references int as in Python 3.0 there is no more long due to int/long unification (new ints are old longs).
author | adustman |
---|---|
date | Sun, 22 Feb 2009 20:01:31 +0000 |
parents | e80676c3505f |
children | 4aaed7e1d782 |
line wrap: on
line source
import unittest import _mysql import MySQLdb from MySQLdb.constants import FIELD_TYPE class TestDBAPISet(unittest.TestCase): def test_set_equality(self): self.assertTrue(MySQLdb.STRING == MySQLdb.STRING) def test_set_inequality(self): self.assertTrue(MySQLdb.STRING != MySQLdb.NUMBER) def test_set_equality_membership(self): self.assertTrue(FIELD_TYPE.VAR_STRING == MySQLdb.STRING) def test_set_inequality_membership(self): self.assertTrue(FIELD_TYPE.DATE != MySQLdb.STRING) class CoreModule(unittest.TestCase): """Core _mysql module features.""" def test_NULL(self): """Should have a NULL constant.""" self.assertEqual(_mysql.NULL, 'NULL') def test_version(self): """Version information sanity.""" self.assertTrue(isinstance(_mysql.__version__, str)) self.assertTrue(isinstance(_mysql.version_info, tuple)) self.assertEqual(len(_mysql.version_info), 5) def test_client_info(self): self.assertTrue(isinstance(_mysql.get_client_info(), str)) def test_thread_safe(self): self.assertTrue(isinstance(_mysql.thread_safe(), int)) class CoreAPI(unittest.TestCase): """Test _mysql interaction internals.""" def setUp(self): self.conn = _mysql.connect(db='test', read_default_file="~/.my.cnf") def tearDown(self): self.conn.close() def test_thread_id(self): tid = self.conn.thread_id() self.assertTrue(isinstance(tid, int), "thread_id didn't return an int.") self.assertRaises(TypeError, self.conn.thread_id, ('evil',), "thread_id shouldn't accept arguments.") def test_affected_rows(self): self.assertEquals(self.conn.affected_rows(), 0, "Should return 0 before we do anything.") def test_debug(self): # FIXME Only actually tests if you lack SUPER self.assertRaises(MySQLdb.OperationalError, self.conn.dump_debug_info) def test_charset_name(self): self.assertTrue(isinstance(self.conn.character_set_name(), str), "Should return a string.") def test_host_info(self): self.assertTrue(isinstance(self.conn.get_host_info(), str), "Should return a string.") def test_proto_info(self): self.assertTrue(isinstance(self.conn.get_proto_info(), int), "Should return an int.") def test_server_info(self): self.assertTrue(isinstance(self.conn.get_server_info(), str), "Should return an str.")