19 lines
715 B
Python
19 lines
715 B
Python
from unittest import mock, skipUnless
|
|
|
|
from django.db import OperationalError, connection
|
|
from django.test import TestCase
|
|
|
|
|
|
@skipUnless(connection.vendor == 'sqlite', 'SQLite tests.')
|
|
class FeaturesTests(TestCase):
|
|
def test_supports_json_field_operational_error(self):
|
|
if hasattr(connection.features, 'supports_json_field'):
|
|
del connection.features.supports_json_field
|
|
msg = 'unable to open database file'
|
|
with mock.patch(
|
|
'django.db.backends.base.base.BaseDatabaseWrapper.cursor',
|
|
side_effect=OperationalError(msg),
|
|
):
|
|
with self.assertRaisesMessage(OperationalError, msg):
|
|
connection.features.supports_json_field
|