diff options
Diffstat (limited to 'tests/postgres_tests')
| -rw-r--r-- | tests/postgres_tests/test_hstore.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/postgres_tests/test_hstore.py b/tests/postgres_tests/test_hstore.py index 80e46e5021..13c08386e2 100644 --- a/tests/postgres_tests/test_hstore.py +++ b/tests/postgres_tests/test_hstore.py @@ -1,3 +1,6 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + import json from django.core import exceptions, serializers @@ -37,6 +40,20 @@ class SimpleTests(PostgreSQLTestCase): reloaded = HStoreModel.objects.get() self.assertEqual(reloaded.field, value) + def test_key_val_cast_to_string(self): + value = {'a': 1, 'b': 'B', 2: 'c', 'ï': 'ê', b'x': b'test'} + expected_value = {'a': '1', 'b': 'B', '2': 'c', 'ï': 'ê', 'x': 'test'} + + instance = HStoreModel.objects.create(field=value) + instance = HStoreModel.objects.get() + self.assertDictEqual(instance.field, expected_value) + + instance = HStoreModel.objects.get(field__a=1) + self.assertDictEqual(instance.field, expected_value) + + instance = HStoreModel.objects.get(field__has_keys=[2, 'a', 'ï']) + self.assertDictEqual(instance.field, expected_value) + class TestQuerying(PostgreSQLTestCase): |
