31
31
from qgis .core import (QgsVectorLayer , QgsFeatureRequest )
32
32
from processing .core .ProcessingConfig import ProcessingConfig
33
33
34
- import os .path
35
- import errno
36
- import shutil
37
-
38
- dataFolder = os .path .join (os .path .dirname (__file__ ), '../../../../tests/testdata/' )
39
- tmpBaseFolder = os .path .join (os .sep , 'tmp' , 'qgis_test' , str (os .getpid ()))
40
-
41
-
42
- def mkDirP (path ):
43
- try :
44
- os .makedirs (path )
45
- except OSError as exc :
46
- if exc .errno == errno .EEXIST and os .path .isdir (path ):
47
- pass
48
- else :
49
- raise
50
-
51
34
start_app ()
52
35
53
36
54
37
class VectorTest (unittest .TestCase ):
55
38
56
- @classmethod
57
- def setUpClass (cls ):
58
- mkDirP (tmpBaseFolder )
59
-
60
- @classmethod
61
- def tearDownClass (cls ):
62
- shutil .rmtree (tmpBaseFolder )
63
- pass
64
-
65
- # See http://hub.qgis.org/issues/15698
66
- def test_ogrLayerName (self ):
67
- tmpdir = os .path .join (tmpBaseFolder , 'ogrLayerName' )
68
- os .mkdir (tmpdir )
69
-
70
- def linkTestfile (f , t ):
71
- os .link (os .path .join (dataFolder , f ), os .path .join (tmpdir , t ))
72
-
73
39
# URI from OGR provider
74
- linkTestfile ('geom_data.csv' , 'a.csv' )
75
- name = vector .ogrLayerName (tmpdir )
76
- self .assertEqual (name , 'a' )
77
-
78
40
# URI from OGR provider
79
- linkTestfile ('wkt_data.csv' , 'b.csv' )
80
- name = vector .ogrLayerName (tmpdir + '|layerid=0' )
81
- self .assertEqual (name , 'a' )
82
- name = vector .ogrLayerName (tmpdir + '|layerid=1' )
83
- self .assertEqual (name , 'b' )
84
-
85
41
# URI from OGR provider
86
- name = vector .ogrLayerName (tmpdir + '|layerid=2' )
87
- self .assertEqual (name , 'invalid-layerid' )
88
-
89
42
# URI from OGR provider
90
- name = vector .ogrLayerName (tmpdir + '|layername=f' )
91
- self .assertEqual (name , 'f' ) # layername takes precedence
92
-
93
43
# URI from OGR provider
94
- name = vector .ogrLayerName (tmpdir + '|layerid=0|layername=f2' )
95
- self .assertEqual (name , 'f2' ) # layername takes precedence
96
-
97
44
# URI from OGR provider
98
- name = vector .ogrLayerName (tmpdir + '|layername=f2|layerid=0' )
99
- self .assertEqual (name , 'f2' ) # layername takes precedence
100
45
101
46
# URI from Sqlite provider
102
47
name = vector .ogrLayerName ('dbname=\' /tmp/x.sqlite\' table="t" (geometry) sql=' )
@@ -105,7 +50,6 @@ def linkTestfile(f, t):
105
50
# URI from PostgreSQL provider
106
51
name = vector .ogrLayerName ('port=5493 sslmode=disable key=\' edge_id\' srid=0 type=LineString table="city_data"."edge" (geom) sql=' )
107
52
self .assertEqual (name , 'city_data.edge' )
108
-
109
53
def testFeatures (self ):
110
54
ProcessingConfig .initialize ()
111
55
0 commit comments