mirror of
https://github.com/django/django.git
synced 2025-10-24 14:16:09 +00:00
Fixed #33379 -- Added minimum database version checks.
Thanks Tim Graham for the review.
This commit is contained in:
committed by
Mariusz Felisiak
parent
737542390a
commit
9ac3ef59f9
@@ -1,14 +1,15 @@
|
||||
import unittest
|
||||
from unittest import mock
|
||||
|
||||
from django.db import DatabaseError, connection
|
||||
from django.db import DatabaseError, NotSupportedError, connection
|
||||
from django.db.models import BooleanField
|
||||
from django.test import TransactionTestCase
|
||||
from django.test import TestCase, TransactionTestCase
|
||||
|
||||
from ..models import Square, VeryLongModelNameZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
|
||||
|
||||
|
||||
@unittest.skipUnless(connection.vendor == "oracle", "Oracle tests")
|
||||
class Tests(unittest.TestCase):
|
||||
class Tests(TestCase):
|
||||
def test_quote_name(self):
|
||||
"""'%' chars are escaped for query execution."""
|
||||
name = '"SOME%NAME"'
|
||||
@@ -56,6 +57,17 @@ class Tests(unittest.TestCase):
|
||||
field.set_attributes_from_name("is_nice")
|
||||
self.assertIn('"IS_NICE" IN (0,1)', field.db_check(connection))
|
||||
|
||||
@mock.patch.object(
|
||||
connection,
|
||||
"get_database_version",
|
||||
return_value=(18, 1),
|
||||
)
|
||||
def test_check_database_version_supported(self, mocked_get_database_version):
|
||||
msg = "Oracle 19 or later is required (found 18.1)."
|
||||
with self.assertRaisesMessage(NotSupportedError, msg):
|
||||
connection.check_database_version_supported()
|
||||
self.assertTrue(mocked_get_database_version.called)
|
||||
|
||||
|
||||
@unittest.skipUnless(connection.vendor == "oracle", "Oracle tests")
|
||||
class TransactionalTests(TransactionTestCase):
|
||||
|
||||
Reference in New Issue
Block a user