18
18
QgsValueMapFieldFormatter , QgsValueRelationFieldFormatter ,
19
19
QgsRelationReferenceFieldFormatter , QgsRangeFieldFormatter , QgsSettings )
20
20
21
+ from qgis .PyQt .QtCore import QCoreApplication
21
22
from qgis .testing import start_app , unittest
22
23
23
24
start_app ()
@@ -199,19 +200,33 @@ def test_representValue(self):
199
200
200
201
class TestQgsRangeFieldFormatter (unittest .TestCase ):
201
202
203
+ @classmethod
204
+ def setUpClass (cls ):
205
+ """Run before all tests"""
206
+ QCoreApplication .setOrganizationName ("QGIS_Test" )
207
+ QCoreApplication .setOrganizationDomain ("QGIS_TestPyQgsColorScheme.com" )
208
+ QCoreApplication .setApplicationName ("QGIS_TestPyQgsColorScheme" )
209
+ QgsSettings ().clear ()
210
+ start_app ()
211
+
202
212
def test_representValue (self ):
203
213
204
- layer = QgsVectorLayer ("point?field=int:integer&field=double:double" ,
214
+ layer = QgsVectorLayer ("point?field=int:integer&field=double:double&field=long:long " ,
205
215
"layer" , "memory" )
206
216
self .assertTrue (layer .isValid ())
207
217
QgsProject .instance ().addMapLayers ([layer ])
208
218
209
219
fieldFormatter = QgsRangeFieldFormatter ()
210
220
211
- # Precision is ignored for integers
221
+ # Precision is ignored for integers and longlongs
212
222
self .assertEqual (fieldFormatter .representValue (layer , 0 , {'Precision' : 1 }, None , '123' ), '123' )
213
223
self .assertEqual (fieldFormatter .representValue (layer , 0 , {'Precision' : 1 }, None , '123000' ), '123000' )
224
+ self .assertEqual (fieldFormatter .representValue (layer , 0 , {'Precision' : 1 }, None , '9999999' ), '9999999' ) # no scientific notation for integers!
214
225
self .assertEqual (fieldFormatter .representValue (layer , 0 , {'Precision' : 1 }, None , None ), 'NULL' )
226
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , '123' ), '123' )
227
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , '123000' ), '123000' )
228
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , '9999999' ), '9999999' ) # no scientific notation for long longs!
229
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , None ), 'NULL' )
215
230
216
231
self .assertEqual (fieldFormatter .representValue (layer , 1 , {'Precision' : 1 }, None , None ), 'NULL' )
217
232
self .assertEqual (fieldFormatter .representValue (layer , 1 , {'Precision' : 1 }, None , '123' ), '123.0' )
@@ -235,6 +250,13 @@ def test_representValue(self):
235
250
QgsSettings ().setValue ("locale/overrideFlag" , True )
236
251
QgsSettings ().setValue ("locale/userLocale" , 'it' )
237
252
253
+ self .assertEqual (fieldFormatter .representValue (layer , 0 , {'Precision' : 1 }, None , '9999999' ),
254
+ '9999999' ) # no scientific notation for integers!
255
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , '123' ), '123' )
256
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , '123000' ), '123000' )
257
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , '9999999' ), '9999999' ) # no scientific notation for long longs!
258
+ self .assertEqual (fieldFormatter .representValue (layer , 2 , {'Precision' : 1 }, None , None ), 'NULL' )
259
+
238
260
self .assertEqual (fieldFormatter .representValue (layer , 1 , {'Precision' : 2 }, None , None ), 'NULL' )
239
261
self .assertEqual (fieldFormatter .representValue (layer , 1 , {'Precision' : 2 }, None , '123000' ), '123000,00' )
240
262
self .assertEqual (fieldFormatter .representValue (layer , 1 , {'Precision' : 2 }, None , '0' ), '0,00' )
0 commit comments