id summary reporter owner description type status component version severity resolution keywords cc stage has_patch needs_docs needs_tests needs_better_patch easy ui_ux 9858 Add POSTGIS_TEMPLATE setting for GIS Test Runner Aryeh Leib Taurog jbronn "After setting up geodjango with PostgreSQL 8.3, PostGIS 1.3.3, and the win32 geodjango installer, an attempt to run the gis tests fails. I am using the django 1.0.2 release (and geodjango code included therewith) under Python 2.5 on Win XP Pro The source of the error seems to be that the addgeometrycolumn procedure does not exist in the test database. from settings.py: {{{ #!python TEST_RUNNER = 'django.contrib.gis.tests.run_gis_tests' POSTGIS_SQL_PATH = 'D:/generic/PostgreSQL/8.3/share/contrib' }}} from test output: {{{ Installing custom SQL for geoapp.Country model Failed to install custom SQL for geoapp.Country model: function addgeometrycolumn(unknown, unknown, integer, unknown, integer) does not exist LINE 1: SELECT AddGeometryColumn('geoapp_country', 'mpoly', 4326, 'M... ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts. }}} complete log file attached. The geodjango docs state that a spacial database is created using the template template_postgis. In tracing the error noted above, I discovered that the test database is created with no template. This seems to account for the missing procedure. I patched source:django/tags/releases/1.0.2/django/contrib/gis/db/backend/postgis/creation.py with a modified '''_create_with_cursor''', called by '''create_spatial_db''', using a new setting to specify the template name. It seems to me that '''get_cmd_options''' should similarly be modified. The tests are successful with my patch applied (log file attached) I'm perplexed to find no mention of this anywhere. Is there something I'm missing? Does the gis test work for everyone else without using the template?" closed GIS 1.0 fixed test template_postgis create_spatial_db vim@… stryderjzw@… Accepted 1 0 0 0 0 0