Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions tests/config.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
PORT = getenv('DB2I_PORT') or 3306
19 changes: 7 additions & 12 deletions tests/test_binary.py
Original file line number Diff line number Diff line change
@@ -1,25 +1,20 @@
import mysql.connector as mariadb
import datetime
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

def create_insert_select(fields, values):
conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB)
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT)
cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} ({fields}) engine=ibmdb2i")
cursor.execute(f"INSERT INTO {TABLE} VALUES({values})")
cursor.execute(f"CREATE TABLE {config.TABLE} ({fields}) engine=ibmdb2i")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES({values})")
conn.commit()
cursor.execute(f"SELECT HEX(x), HEX(y), HEX (z) FROM {TABLE}")
cursor.execute(f"SELECT HEX(x), HEX(y), HEX (z) FROM {config.TABLE}")
data = cursor.fetchone()
print(f'Data: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 8 additions & 11 deletions tests/test_char.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
import mysql.connector as mariadb
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

EXPECTED = getenv('DB2I_EXPECTED') or 'Hello World'

def create_insert_select(charset, collation="general_ci", expected=EXPECTED, encoding=None):
Expand All @@ -15,24 +12,24 @@ def create_insert_select(charset, collation="general_ci", expected=EXPECTED, enc
conn_charset = 'utf8' if is_unicode else charset
conn_collation = 'utf8_general_ci' if is_unicode else collation

conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB,
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT,
charset=conn_charset, collation=conn_collation, use_unicode=use_unicode)

cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} (i char(255)) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {TABLE} VALUES(%s)", (expected,))
cursor.execute(f"CREATE TABLE {config.TABLE} (i char(255)) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES(%s)", (expected,))
conn.commit()
cursor.execute(f"SELECT i FROM {TABLE}")
cursor.execute(f"SELECT i FROM {config.TABLE}")
data = cursor.fetchone()
if encoding:
data = data[0].decode(encoding)
else:
data = data[0]

print(f'Data is: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 7 additions & 12 deletions tests/test_dates.py
Original file line number Diff line number Diff line change
@@ -1,25 +1,20 @@
import mysql.connector as mariadb
import datetime
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

def create_insert_select(fields, values):
conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB)
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT)
cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} ({fields}) engine=ibmdb2i")
cursor.execute(f"INSERT INTO {TABLE} VALUES({values})")
cursor.execute(f"CREATE TABLE {config.TABLE} ({fields}) engine=ibmdb2i")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES({values})")
conn.commit()
cursor.execute(f"SELECT * FROM {TABLE}")
cursor.execute(f"SELECT * FROM {config.TABLE}")
data = cursor.fetchone()
print(f'Data: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 8 additions & 11 deletions tests/test_longtext.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
import mysql.connector as mariadb
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

EXPECTED = getenv('DB2I_EXPECTED') or 'Hello World'

def create_insert_select(charset, collation="general_ci", expected=EXPECTED, encoding=None):
Expand All @@ -15,24 +12,24 @@ def create_insert_select(charset, collation="general_ci", expected=EXPECTED, enc
conn_charset = 'utf8' if is_unicode else charset
conn_collation = 'utf8_general_ci' if is_unicode else collation

conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB,
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT,
charset=conn_charset, collation=conn_collation, use_unicode=use_unicode)

cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} (i longtext) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {TABLE} VALUES(%s)", (expected,))
cursor.execute(f"CREATE TABLE {config.TABLE} (i longtext) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES(%s)", (expected,))
conn.commit()
cursor.execute(f"SELECT i FROM {TABLE}")
cursor.execute(f"SELECT i FROM {config.TABLE}")
data = cursor.fetchone()
if encoding:
data = data[0].decode(encoding)
else:
data = data[0]

print(f'Data is: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 8 additions & 11 deletions tests/test_mediumtext.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
import mysql.connector as mariadb
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

EXPECTED = getenv('DB2I_EXPECTED') or 'Hello World'

def create_insert_select(charset, collation="general_ci", expected=EXPECTED, encoding=None):
Expand All @@ -15,24 +12,24 @@ def create_insert_select(charset, collation="general_ci", expected=EXPECTED, enc
conn_charset = 'utf8' if is_unicode else charset
conn_collation = 'utf8_general_ci' if is_unicode else collation

conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB,
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT,
charset=conn_charset, collation=conn_collation, use_unicode=use_unicode)

cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} (i mediumtext) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {TABLE} VALUES(%s)", (expected,))
cursor.execute(f"CREATE TABLE {config.TABLE} (i mediumtext) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES(%s)", (expected,))
conn.commit()
cursor.execute(f"SELECT i FROM {TABLE}")
cursor.execute(f"SELECT i FROM {config.TABLE}")
data = cursor.fetchone()
if encoding:
data = data[0].decode(encoding)
else:
data = data[0]

print(f'Data is: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 7 additions & 12 deletions tests/test_numbers.py
Original file line number Diff line number Diff line change
@@ -1,25 +1,20 @@
import mysql.connector as mariadb
from decimal import *
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

def create_insert_select(fields, values):
conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB)
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT)
cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} ({fields}) engine=ibmdb2i")
cursor.execute(f"INSERT INTO {TABLE} VALUES({values})")
cursor.execute(f"CREATE TABLE {config.TABLE} ({fields}) engine=ibmdb2i")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES({values})")
conn.commit()
cursor.execute(f"SELECT * FROM {TABLE}")
cursor.execute(f"SELECT * FROM {config.TABLE}")
data = cursor.fetchone()
print(f'Data is:{data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 8 additions & 11 deletions tests/test_tinytext.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
import mysql.connector as mariadb
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

EXPECTED = getenv('DB2I_EXPECTED') or 'Hello World'

def create_insert_select(charset, collation="general_ci", expected=EXPECTED, encoding=None):
Expand All @@ -15,24 +12,24 @@ def create_insert_select(charset, collation="general_ci", expected=EXPECTED, enc
conn_charset = 'utf8' if is_unicode else charset
conn_collation = 'utf8_general_ci' if is_unicode else collation

conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB,
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT,
charset=conn_charset, collation=conn_collation, use_unicode=use_unicode)

cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} (i tinytext) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {TABLE} VALUES(%s)", (expected,))
cursor.execute(f"CREATE TABLE {config.TABLE} (i tinytext) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES(%s)", (expected,))
conn.commit()
cursor.execute(f"SELECT i FROM {TABLE}")
cursor.execute(f"SELECT i FROM {config.TABLE}")
data = cursor.fetchone()
if encoding:
data = data[0].decode(encoding)
else:
data = data[0]

print(f'Data is: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down
19 changes: 8 additions & 11 deletions tests/test_varchar.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
import mysql.connector as mariadb
from os import getenv

TABLE = getenv('DB2I_TABLE') or 'test'
DB = getenv('DB2I_DB') or 'db2itest'
HOST = getenv('DB2I_HOST') or '127.0.0.1'
USER = getenv('DB2I_USER') or 'root'
PASS = getenv('DB2I_PASS') or ''
import config

EXPECTED = getenv('DB2I_EXPECTED') or 'Hello World'

def create_insert_select(charset, collation="general_ci", expected=EXPECTED, encoding=None):
Expand All @@ -15,24 +12,24 @@ def create_insert_select(charset, collation="general_ci", expected=EXPECTED, enc
conn_charset = 'utf8' if is_unicode else charset
conn_collation = 'utf8_general_ci' if is_unicode else collation

conn = mariadb.connect(user=USER, password=PASS, host=HOST, database=DB,
conn = mariadb.connect(user=config.USER, password=config.PASS, host=config.HOST, database=config.DB, port=config.PORT,
charset=conn_charset, collation=conn_collation, use_unicode=use_unicode)

cursor = conn.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {TABLE}")
cursor.execute(f"DROP TABLE IF EXISTS {config.TABLE}")
conn.commit()
cursor.execute(f"CREATE TABLE {TABLE} (i varchar(256)) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {TABLE} VALUES(%s)", (expected,))
cursor.execute(f"CREATE TABLE {config.TABLE} (i varchar(256)) engine=ibmdb2i CHARACTER SET '{charset}' COLLATE '{collation}'")
cursor.execute(f"INSERT INTO {config.TABLE} VALUES(%s)", (expected,))
conn.commit()
cursor.execute(f"SELECT i FROM {TABLE}")
cursor.execute(f"SELECT i FROM {config.TABLE}")
data = cursor.fetchone()
if encoding:
data = data[0].decode(encoding)
else:
data = data[0]

print(f'Data is: {data}')
cursor.execute(f"DROP TABLE {TABLE}")
cursor.execute(f"DROP TABLE {config.TABLE}")
conn.commit()
cursor.close()
conn.close()
Expand Down