Commit ab90c470 authored by Claude Paroz's avatar Claude Paroz
Browse files

Fixed table cleanup in GIS migration tests

parent 1667e736
Loading
Loading
Loading
Loading
+14 −11
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@ from django.contrib.gis.tests.utils import HAS_SPATIAL_DB
from django.db import connection, migrations, models
from django.db.migrations.migration import Migration
from django.db.migrations.state import ProjectState
from django.db.utils import DatabaseError
from django.test import TransactionTestCase

if HAS_SPATIAL_DB:
@@ -21,6 +22,19 @@ if HAS_SPATIAL_DB:
class OperationTests(TransactionTestCase):
    available_apps = ["django.contrib.gis.tests.gis_migrations"]

    def tearDown(self):
        # Delete table after testing
        with connection.cursor() as cursor:
            try:
                cursor.execute("DROP TABLE %s" % connection.ops.quote_name("gis_neighborhood"))
            except DatabaseError:
                pass
            else:
                if HAS_GEOMETRY_COLUMNS:
                    cursor.execute("DELETE FROM geometry_columns WHERE %s = %%s" % (
                        GeometryColumns.table_name_col(),), ["gis_neighborhood"])
        super(OperationTests, self).tearDown()

    def get_table_description(self, table):
        with connection.cursor() as cursor:
            return connection.introspection.get_table_description(cursor, table)
@@ -38,17 +52,6 @@ class OperationTests(TransactionTestCase):
            return migration.apply(project_state, editor)

    def set_up_test_model(self):
        # Delete the tables if they already exist
        with connection.cursor() as cursor:
            try:
                cursor.execute("DROP TABLE %s" % connection.ops.quote_name("gis_neighborhood"))
            except:
                pass
            else:
                if HAS_GEOMETRY_COLUMNS:
                    cursor.execute("DELETE FROM geometry_columns WHERE %s = %%s" % (
                        GeometryColumns.table_name_col(),), ["gis_neighborhood"])

        operations = [migrations.CreateModel(
            "Neighborhood",
            [
+3 −3
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@ from django.db.migrations.migration import Migration
from django.db.migrations.state import ProjectState
from django.db.models.fields import NOT_PROVIDED
from django.db.transaction import atomic
from django.db.utils import IntegrityError
from django.db.utils import IntegrityError, DatabaseError

from .test_base import MigrationTestBase

@@ -37,11 +37,11 @@ class OperationTests(MigrationTestBase):
        with connection.cursor() as cursor:
            try:
                cursor.execute("DROP TABLE %s_pony" % app_label)
            except:
            except DatabaseError:
                pass
            try:
                cursor.execute("DROP TABLE %s_stable" % app_label)
            except:
            except DatabaseError:
                pass
        # Make the "current" state
        operations = [migrations.CreateModel(