Пример #1
0
    def test_connection_with_wrong_username(self):
        getConfig(config_file_path, DEBUG, reload=True)\
            .set('MySql', 'password', 'asdasd')\
            .set('MySql', 'username', 'gioacchino')

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(False, mysqlConn.connect())
Пример #2
0
    def test_connectionion_success(self):
        getConfig(config_file_path, DEBUG, reload=True)

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(True, mysqlConn.connect())
        self.assertEqual(True, mysqlConn.testConnection())
        self.assertEqual(True, mysqlConn.close())
Пример #3
0
    def test_batch_closing_connection_before_finish(self):
        self.assertEqual(True, utils.deleteElements(tableName))

        getConfig(config_file_path, DEBUG,
                  reload=True).set('General', 'batchsize', 2)

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(True, mysqlConn.connect())

        self.assertEqual(
            MySqlDBConnector.SUCCESS,
            mysqlConn.insertData(tableName, {
                'a': 1,
                'b': 2,
                'c': 3,
                'd': 4
            }))
        self.assertEqual(1, mysqlConn.conn.in_transaction)
        self.assertEqual(1, mysqlConn.commandsSent)

        self.assertEqual(0, utils.countElements(tableName))

        self.assertEqual(True,
                         mysqlConn.close())  # <--- committing on closing..

        self.assertEqual(1, utils.countElements(tableName))
Пример #4
0
    def test_execute_query_without_connection(self):
        getConfig(config_file_path, DEBUG, reload=True)

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(
            False,
            mysqlConn.executeQuery('INSERT INTO ' + tableName +
                                   ' VALUES(1,2,3,4)'))
Пример #5
0
    def test_insert_data_not_enough_data(self):
        getConfig(config_file_path, DEBUG,
                  reload=True).set('General', 'batchsize', 1)

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(True, mysqlConn.connect())
        self.assertEqual(
            False,
            mysqlConn.executeQuery('INSERT INTO ' + tableName +
                                   ' VALUES(1,2)'))
        self.assertEqual(True, mysqlConn.close())
Пример #6
0
    def test_negative_batchsize(self):
        getConfig(config_file_path, DEBUG,
                  reload=True).set('General', 'batchsize', -1)

        mysqlConn = MySqlDBConnector(config_file_path)

        self.assertEqual(True, mysqlConn.connect())
        self.assertEqual(
            False, mysqlConn.insertData(tableName, {
                'a': 4,
                'b': 2,
                'c': 3
            }))
        self.assertEqual(True, mysqlConn.close())
Пример #7
0
    def test_insert_data_wrong_table(self):
        getConfig(config_file_path, DEBUG,
                  reload=True).set('General', 'batchsize', 1)

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(True, mysqlConn.connect())
        self.assertEqual(
            False,
            mysqlConn.insertData('lest_fable', {
                'a': 1,
                'b': 2,
                'c': 3,
                'd': 4
            }))
        self.assertEqual(True, mysqlConn.close())
Пример #8
0
class UtilsMySql(Utils):
    def __init__(self, config_file_path):
        self.mySqlConnector = MySqlDBConnector(config_file_path)
        self.mySqlConnector.connect()

    def deleteElements(self, name):
        if self.mySqlConnector.testConnection():
            self.mySqlConnector.executeQuery('delete from ' + name)
            return True
        else:
            return False

    def countElements(self, name):
        if self.mySqlConnector.testConnection():
            self.mySqlConnector.executeQuery('SELECT COUNT(*) FROM ' + name)
            return int(self.mySqlConnector.cursor.fetchone()[0])
        else:
            return False
Пример #9
0
    def test_batch_insert(self):
        self.assertEqual(True, utils.deleteElements(tableName))

        getConfig(config_file_path, DEBUG,
                  reload=True).set('General', 'batchsize', 2)

        mysqlConn = MySqlDBConnector(config_file_path)
        self.assertEqual(True, mysqlConn.connect())

        self.assertEqual(
            MySqlDBConnector.SUCCESS,
            mysqlConn.insertData(tableName, {
                'a': 1,
                'b': 2,
                'c': 3,
                'd': 4
            }))
        self.assertEqual(1, mysqlConn.conn.in_transaction)
        self.assertEqual(1, mysqlConn.commandsSent)

        self.assertEqual(0, utils.countElements(tableName))

        self.assertEqual(
            MySqlDBConnector.SUCCESS_AND_COMMIT,
            mysqlConn.insertData(tableName, {
                'a': 5,
                'b': 6,
                'c': 7,
                'd': 8
            }))
        self.assertEqual(0, mysqlConn.conn.in_transaction)
        self.assertEqual(0, mysqlConn.commandsSent)

        self.assertEqual(2, utils.countElements(tableName))

        self.assertEqual(True, mysqlConn.close())
Пример #10
0
 def test_close_not_opened_connection(self):
     getConfig(config_file_path, DEBUG, reload=True)
     mysqlConn = MySqlDBConnector(config_file_path)
     self.assertEqual(False, mysqlConn.testConnection())
     self.assertEqual(False, mysqlConn.close())
Пример #11
0
 def test_connection_with_wrong_port(self):
     getConfig(config_file_path, DEBUG,
               reload=True).set('MySql', 'port', '9991')
     mysqlConn = MySqlDBConnector(config_file_path)
     self.assertEqual(False, mysqlConn.connect())
Пример #12
0
 def test_connection_with_wrong_database(self):
     getConfig(config_file_path, DEBUG,
               reload=True).set('MySql', 'dbname', 'evttttest')
     mysqlConn = MySqlDBConnector(config_file_path)
     self.assertEqual(False, mysqlConn.connect())
Пример #13
0
 def __init__(self, config_file_path):
     self.mySqlConnector = MySqlDBConnector(config_file_path)
     self.mySqlConnector.connect()