Skip to content

Commit 27ffd31

Browse files
committed
Adding tests for the BOOLEAN type
1 parent 867a8d0 commit 27ffd31

File tree

6 files changed

+25
-6
lines changed

6 files changed

+25
-6
lines changed

interbase/test/files/create-test-db-dialect-1.sql

+2-1
Original file line numberDiff line numberDiff line change
@@ -612,7 +612,8 @@ CREATE TABLE T2
612612
C13 DOUBLE PRECISION,
613613
C14 DECIMAL(8, 4),
614614
C15 DECIMAL(8, 4),
615-
C16 BLOB SUB_TYPE 0 SEGMENT SIZE 80
615+
C16 BLOB SUB_TYPE 0 SEGMENT SIZE 80,
616+
C17 BOOLEAN DEFAULT FALSE
616617
);
617618

618619
/* Table: T3, Owner: SYSDBA */
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
del test2020v4.ib
2-
"C:\Program Files (x86)\Embarcadero\InterBase\bin\isql" -i create-test-db.sql
2+
"C:\Program Files\Embarcadero\InterBase\bin\isql" -i create-test-db.sql

interbase/test/files/create-test-db.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -340,6 +340,7 @@ CREATE TABLE JOB
340340
MAX_SALARY SALARY NOT NULL,
341341
JOB_REQUIREMENT BLOB SUB_TYPE TEXT SEGMENT SIZE 80,
342342
LANGUAGE_REQ VARCHAR(255)[5],
343+
IS_TEMPORARY BOOLEAN DEFAULT FALSE,
343344
CONSTRAINT RDB$PRIMARY2 PRIMARY KEY (JOB_CODE, JOB_GRADE, JOB_COUNTRY)
344345
);
345346

@@ -611,7 +612,8 @@ CREATE TABLE T2
611612
C13 DOUBLE PRECISION,
612613
C14 DECIMAL(8, 4),
613614
C15 DECIMAL(8, 4),
614-
C16 BLOB SUB_TYPE 0 SEGMENT SIZE 80
615+
C16 BLOB SUB_TYPE 0 SEGMENT SIZE 80,
616+
C17 BOOLEAN DEFAULT FALSE
615617
);
616618

617619
/* Table: T3, Owner: SYSDBA */

interbase/test/test_cursor.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,8 @@ def test_description(self):
136136
"('MAX_SALARY', <class 'decimal.Decimal'>, " +
137137
("20, 8, 10" if IBTEST_SQL_DIALECT == 3 else "17, 8, None") + ", -2, False), "
138138
"('JOB_REQUIREMENT', <class 'str'>, 0, 8, 0, 1, True), "
139-
"('LANGUAGE_REQ', <class 'list'>, -1, 8, 0, 0, True))"
139+
"('LANGUAGE_REQ', <class 'list'>, -1, 8, 0, 0, True), "
140+
"('IS_TEMPORARY', <class 'bool'>, 5, 2, 0, 0, True))"
140141
)
141142

142143
cursor.execute('select * from proj_dept_budget')

interbase/test/test_insert_data.py

+14
Original file line numberDiff line numberDiff line change
@@ -226,3 +226,17 @@ def test_insert_numeric_decimal(self):
226226
]
227227
)
228228

229+
def test_insert_boolean(self):
230+
cur = self.con.cursor()
231+
cur.execute('insert into T2 (C1, C17) values (?, ?)', (0, False))
232+
cur.execute('insert into T2 (C1, C17) values (?, ?)', (1, True))
233+
self.con.commit()
234+
235+
cur.execute('select C1, C17 from T2 where C17 = ?', (False,))
236+
row = cur.fetchone()
237+
self.assertFalse(row is None or len(row) != 2)
238+
self.assertEqual(row[1], False)
239+
240+
cur.execute('select C1, C17 from T2 where C17 = ?', (True,))
241+
rows = cur.fetchall()
242+
self.assertListEqual(rows, [(1, True)])

interbase/test/test_schema.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ def testSchemaFromConnection(self):
152152
self.assertEqual(len(s.generators),2)
153153
self.assertEqual(len(s.sysgenerators),10)
154154
self.assertEqual(len(s.domains),15)
155-
self.assertEqual(len(s.sysdomains), 256)
155+
self.assertEqual(len(s.sysdomains), 258)
156156
self.assertEqual(len(s.indices),28)
157157
self.assertEqual(len(s.sysindices),77)
158158
self.assertEqual(len(s.tables),15)
@@ -1006,7 +1006,7 @@ def testProcedureParameter(self):
10061006
#
10071007
self.assertEqual(c.procedure.name,'GET_EMP_PROJ')
10081008
self.assertEqual(c.sequence,0)
1009-
self.assertEqual(c.domain.name,'RDB$94')
1009+
self.assertEqual(c.domain.name,'RDB$96')
10101010
self.assertEqual(c.datatype,'SMALLINT')
10111011
self.assertEqual(c.type_from,interbase.schema.PROCPAR_DATATYPE)
10121012
self.assertIsNone(c.default)
@@ -2337,6 +2337,7 @@ def testVisitor(self):
23372337
"MAX_SALARY SALARY NOT NULL,\n " \
23382338
"JOB_REQUIREMENT BLOB SUB_TYPE TEXT SEGMENT SIZE 80,\n " \
23392339
"LANGUAGE_REQ VARCHAR(255)[5],\n " \
2340+
"IS_TEMPORARY BOOLEAN DEFAULT FALSE,\n " \
23402341
"CONSTRAINT RDB$PRIMARY2\n PRIMARY KEY (JOB_CODE,JOB_GRADE,JOB_COUNTRY)\n)\n" \
23412342
"CREATE PROCEDURE SHOW_LANGS (\n CODE VARCHAR(5),\n " \
23422343
"GRADE SMALLINT,\n CTY VARCHAR(15)\n)\nRETURNS (LANGUAGES VARCHAR(15))\nAS\n\n" \

0 commit comments

Comments
 (0)