Skip to content

Commit f8e32f7

Browse files
committedApr 7, 2019
unit test for 2826ba3
1 parent 4a87cc9 commit f8e32f7

File tree

4 files changed

+19
-9
lines changed

4 files changed

+19
-9
lines changed
 

‎tests/src/python/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,6 @@ ADD_PYTHON_TEST(PyQgsPanelWidgetStack test_qgspanelwidgetstack.py)
155155
ADD_PYTHON_TEST(PyQgsPoint test_qgspoint.py)
156156
ADD_PYTHON_TEST(PyQgsPointClusterRenderer test_qgspointclusterrenderer.py)
157157
ADD_PYTHON_TEST(PyQgsPointDisplacementRenderer test_qgspointdisplacementrenderer.py)
158-
ADD_PYTHON_TEST(PyQgsPostgresDomain test_qgspostgresdomain.py)
159158
ADD_PYTHON_TEST(PyQgsProcessingRecentAlgorithmLog test_qgsprocessingrecentalgorithmslog.py)
160159
ADD_PYTHON_TEST(PyQgsProcessingInPlace test_qgsprocessinginplace.py)
161160
ADD_PYTHON_TEST(PyQgsProcessingAlgRunner test_qgsprocessingalgrunner.py)
@@ -262,6 +261,7 @@ ENDIF (WITH_DESKTOP)
262261

263262
IF (ENABLE_PGTEST)
264263
ADD_PYTHON_TEST(PyQgsPostgresProvider test_provider_postgres.py)
264+
ADD_PYTHON_TEST(PyQgsPostgresDomain test_qgspostgresdomain.py)
265265
ADD_PYTHON_TEST(PyQgsPostgresTransaction test_qgspostgrestransaction.py)
266266
ADD_PYTHON_TEST(PyQgsRelationEditWidget test_qgsrelationeditwidget.py)
267267
ADD_PYTHON_TEST(PyQgsVectorLayerTools test_qgsvectorlayertools.py)

‎tests/src/python/test_provider_postgres.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -441,7 +441,7 @@ def testTransactionDirty(self):
441441
ft1 = vl.getFeatures('pk=1')
442442
self.assertFalse(ft1.nextFeature(f))
443443

444-
def testTransactionConstrains(self):
444+
def testTransactionConstraints(self):
445445
# create a vector layer based on postgres
446446
vl = QgsVectorLayer(self.dbconn + ' sslmode=disable key=\'id\' table="qgis_test"."check_constraints" sql=', 'test', 'postgres')
447447
self.assertTrue(vl.isValid())
@@ -626,7 +626,7 @@ def testJson(self):
626626
fi = vl.getFeatures(QgsFeatureRequest())
627627
f = QgsFeature()
628628

629-
#test list
629+
# test list
630630
fi.nextFeature(f)
631631
value_idx = vl.fields().lookupField('jvalue')
632632
self.assertIsInstance(f.attributes()[value_idx], list)
@@ -638,7 +638,7 @@ def testJson(self):
638638
self.assertEqual(f.attributes()[value_idx], [4, 5, 6])
639639
self.assertEqual(f.attributes()[value_idx], [4.0, 5.0, 6.0])
640640

641-
#test dict
641+
# test dict
642642
fi.nextFeature(f)
643643
value_idx = vl.fields().lookupField('jvalue')
644644
self.assertIsInstance(f.attributes()[value_idx], dict)
@@ -1248,6 +1248,12 @@ def uncompiledFilters(self):
12481248
def partiallyCompiledFilters(self):
12491249
return set([])
12501250

1251+
def testConstraints(self):
1252+
for key in ["key1", "key2"]:
1253+
idx = self.vl.dataProvider().fieldNameIndex(key)
1254+
self.assertTrue(idx >= 0)
1255+
self.assertFalse(self.vl.dataProvider().fieldConstraints(idx) & QgsFieldConstraints.ConstraintUnique)
1256+
12511257

12521258
if __name__ == '__main__':
12531259
unittest.main()

‎tests/testdata/provider/testdata_pg.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
set -e
44

5-
echo "SET client_min_messages TO WARNING;" >> ~/.psqlrc
5+
DB=${DB:-qgis_test}
66

77
SCRIPTS="
88
tests/testdata/provider/testdata_pg.sql
@@ -15,8 +15,8 @@ SCRIPTS="
1515
tests/testdata/provider/testdata_pg_json.sql
1616
"
1717

18-
dropdb qgis_test 2> /dev/null || true
19-
createdb qgis_test -E UTF8 -T template0 || exit 1
18+
dropdb --if-exists $DB
19+
createdb $DB -E UTF8 -T template0
2020
for f in ${SCRIPTS}; do
21-
psql -q --echo-errors -f $f qgis_test -v ON_ERROR_STOP=1
21+
psql -q --echo-errors -c "SET client_min_messages TO WARNING;" -f $f $DB -v ON_ERROR_STOP=1
2222
done

‎tests/testdata/provider/testdata_pg.sql

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,9 @@ CREATE EXTENSION IF NOT EXISTS postgis;
2323

2424
DROP SCHEMA IF EXISTS qgis_test CASCADE;
2525
CREATE SCHEMA qgis_test;
26-
26+
GRANT ALL ON SCHEMA qgis_test TO public;
27+
ALTER DEFAULT PRIVILEGES IN SCHEMA qgis_test GRANT ALL ON TABLES TO public;
28+
ALTER DEFAULT PRIVILEGES IN SCHEMA qgis_test GRANT ALL ON SEQUENCES TO public;
2729

2830
SET default_tablespace = '';
2931

@@ -467,6 +469,8 @@ INSERT INTO qgis_test.rename_table (field1,field2) VALUES ('a','b');
467469
-- Table for editor widget types
468470
--
469471

472+
DROP TABLE IF EXISTS qgis_editor_widget_styles;
473+
470474
CREATE TABLE qgis_editor_widget_styles
471475
(
472476
schema_name TEXT NOT NULL,

0 commit comments

Comments
 (0)
Please sign in to comment.