From 8b39f33d78ce5749f8ca40a7ae6823b5f6c26c09 Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Mon, 16 Feb 2015 18:10:35 -0500 Subject: [PATCH] Fixed #24290 -- Skipped postgres_tests if not running with PostgreSQL. --- tests/postgres_tests/test_array.py | 4 ---- tests/postgres_tests/test_hstore.py | 5 ----- tests/postgres_tests/test_ranges.py | 2 -- tests/postgres_tests/test_unaccent.py | 4 ---- tests/runtests.py | 7 ++++++- 5 files changed, 6 insertions(+), 16 deletions(-) diff --git a/tests/postgres_tests/test_array.py b/tests/postgres_tests/test_array.py index 770d5a1623..88e34f9ce4 100644 --- a/tests/postgres_tests/test_array.py +++ b/tests/postgres_tests/test_array.py @@ -18,7 +18,6 @@ from .models import ( ) -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') class TestSaveLoad(TestCase): def test_integer(self): @@ -94,7 +93,6 @@ class TestSaveLoad(TestCase): self.assertEqual(instance.decimals, loaded.decimals) -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') class TestQuerying(TestCase): def setUp(self): @@ -274,7 +272,6 @@ class TestMigrations(TransactionTestCase): name, path, args, kwargs = field.deconstruct() self.assertEqual(path, 'postgres_tests.models.ArrayFieldSubclass') - @unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') @override_settings(MIGRATION_MODULES={ "postgres_tests": "postgres_tests.array_default_migrations", }) @@ -291,7 +288,6 @@ class TestMigrations(TransactionTestCase): self.assertNotIn(table_name, connection.introspection.table_names(cursor)) -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') class TestSerialization(TestCase): test_data = '[{"fields": {"field": "[\\"1\\", \\"2\\"]"}, "model": "postgres_tests.integerarraymodel", "pk": null}]' diff --git a/tests/postgres_tests/test_hstore.py b/tests/postgres_tests/test_hstore.py index ac22f322b5..06544163f8 100644 --- a/tests/postgres_tests/test_hstore.py +++ b/tests/postgres_tests/test_hstore.py @@ -1,17 +1,14 @@ import json -import unittest from django.contrib.postgres import forms from django.contrib.postgres.fields import HStoreField from django.contrib.postgres.validators import KeysValidator from django.core import exceptions, serializers -from django.db import connection from django.test import TestCase from .models import HStoreModel -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') class SimpleTests(TestCase): apps = ['django.contrib.postgres'] @@ -36,7 +33,6 @@ class SimpleTests(TestCase): self.assertEqual(reloaded.field, value) -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') class TestQuerying(TestCase): def setUp(self): @@ -115,7 +111,6 @@ class TestQuerying(TestCase): ) -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') class TestSerialization(TestCase): test_data = '[{"fields": {"field": "{\\"a\\": \\"b\\"}"}, "model": "postgres_tests.hstoremodel", "pk": null}]' diff --git a/tests/postgres_tests/test_ranges.py b/tests/postgres_tests/test_ranges.py index c26382a15b..71d3301756 100644 --- a/tests/postgres_tests/test_ranges.py +++ b/tests/postgres_tests/test_ranges.py @@ -18,8 +18,6 @@ from .models import RangesModel def skipUnlessPG92(test): - if not connection.vendor == 'postgresql': - return unittest.skip('PostgreSQL required')(test) PG_VERSION = connection.pg_version if PG_VERSION < 90200: return unittest.skip('PostgreSQL >= 9.2 required')(test) diff --git a/tests/postgres_tests/test_unaccent.py b/tests/postgres_tests/test_unaccent.py index 47ccbda519..ba65155301 100644 --- a/tests/postgres_tests/test_unaccent.py +++ b/tests/postgres_tests/test_unaccent.py @@ -1,15 +1,11 @@ # -*- coding: utf-8 -*- from __future__ import unicode_literals -import unittest - -from django.db import connection from django.test import TestCase, modify_settings from .models import CharFieldModel, TextFieldModel -@unittest.skipUnless(connection.vendor == 'postgresql', 'PostgreSQL required') @modify_settings(INSTALLED_APPS={'append': 'django.contrib.postgres'}) class UnaccentTest(TestCase): diff --git a/tests/runtests.py b/tests/runtests.py index 054a6ded30..8cabb5ebae 100755 --- a/tests/runtests.py +++ b/tests/runtests.py @@ -84,7 +84,7 @@ def get_test_modules(): os.path.isfile(f) or not os.path.exists(os.path.join(dirpath, f, '__init__.py'))): continue - if not connection.vendor == 'postgresql' and f == 'postgres_tests' or f == 'postgres': + if connection.vendor != 'postgresql' and f == 'postgres_tests': continue modules.append((modpath, f)) return modules @@ -230,6 +230,11 @@ def django_tests(verbosity, interactive, failfast, keepdb, reverse, test_labels, state = setup(verbosity, test_labels) extra_tests = [] + if test_labels and 'postgres_tests' in test_labels and connection.vendor != 'postgres': + if verbosity >= 2: + print("Removed postgres_tests from tests as we're not running with PostgreSQL.") + test_labels.remove('postgres_tests') + # Run the test suite, including the extra validation tests. if not hasattr(settings, 'TEST_RUNNER'): settings.TEST_RUNNER = 'django.test.runner.DiscoverRunner'