Skip to content

Commit f2a36eb

Browse files
committed
test for enums
1 parent 5eb62b0 commit f2a36eb

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

tests/test_suite.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from enum import Enum
2+
13
from sqlalchemy.testing.suite import FetchLimitOffsetTest as _FetchLimitOffsetTest
24
from sqlalchemy.testing.suite import CompoundSelectTest as _CompoundSelectTest
35
from sqlalchemy.testing.suite import CTETest as _CTETest
@@ -187,3 +189,41 @@ def test_expect_bytes(self):
187189
select(self.tables.data),
188190
[(b"test", b"test")],
189191
)
192+
193+
194+
class SomeType(str, Enum):
195+
FIRST = "first value"
196+
SECOND = "second value"
197+
198+
199+
class IRISEnumTest(fixtures.TablesTest):
200+
__backend__ = True
201+
202+
@classmethod
203+
def define_tables(cls, metadata):
204+
Table(
205+
"data",
206+
metadata,
207+
Column("val", String(50)),
208+
)
209+
210+
@classmethod
211+
def insert_data(cls, connection):
212+
connection.execute(
213+
cls.tables.data.insert(),
214+
[
215+
{"val": SomeType.FIRST},
216+
{"val": SomeType.SECOND},
217+
{"val": None},
218+
],
219+
)
220+
221+
def _assert_result(self, select, result):
222+
with config.db.connect() as conn:
223+
eq_(conn.execute(select).fetchall(), result)
224+
225+
def test_expect_bytes(self):
226+
self._assert_result(
227+
select(self.tables.data),
228+
[(SomeType.FIRST,), (SomeType.SECOND,), (None,)],
229+
)

0 commit comments

Comments
 (0)