summaryrefslogtreecommitdiff
path: root/tests/postgres_tests/test_array.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/postgres_tests/test_array.py')
-rw-r--r--tests/postgres_tests/test_array.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/tests/postgres_tests/test_array.py b/tests/postgres_tests/test_array.py
index 447d511c9f..465eac1785 100644
--- a/tests/postgres_tests/test_array.py
+++ b/tests/postgres_tests/test_array.py
@@ -1,4 +1,5 @@
import decimal
+import enum
import json
import unittest
import uuid
@@ -16,9 +17,9 @@ from . import (
PostgreSQLSimpleTestCase, PostgreSQLTestCase, PostgreSQLWidgetTestCase,
)
from .models import (
- ArrayFieldSubclass, CharArrayModel, DateTimeArrayModel, IntegerArrayModel,
- NestedIntegerArrayModel, NullableIntegerArrayModel, OtherTypesArrayModel,
- PostgreSQLModel, Tag,
+ ArrayEnumModel, ArrayFieldSubclass, CharArrayModel, DateTimeArrayModel,
+ IntegerArrayModel, NestedIntegerArrayModel, NullableIntegerArrayModel,
+ OtherTypesArrayModel, PostgreSQLModel, Tag,
)
try:
@@ -357,6 +358,16 @@ class TestQuerying(PostgreSQLTestCase):
[self.objs[3]]
)
+ def test_enum_lookup(self):
+ class TestEnum(enum.Enum):
+ VALUE_1 = 'value_1'
+
+ instance = ArrayEnumModel.objects.create(array_of_enums=[TestEnum.VALUE_1])
+ self.assertSequenceEqual(
+ ArrayEnumModel.objects.filter(array_of_enums__contains=[TestEnum.VALUE_1]),
+ [instance]
+ )
+
def test_unsupported_lookup(self):
msg = "Unsupported lookup '0_bar' for ArrayField or join on the field not permitted."
with self.assertRaisesMessage(FieldError, msg):