Skip to content

Commit 7a47be2

Browse files
committedMay 26, 2013
Fix to handling of double precision values, and improved test cases for this
1 parent 8cbf901 commit 7a47be2

File tree

3 files changed

+16
-16
lines changed

3 files changed

+16
-16
lines changed
 

‎src/providers/delimitedtext/qgsdelimitedtextprovider.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1212,7 +1212,7 @@ void QgsDelimitedTextProvider::fetchAttribute( QgsFeature& feature, int fieldIdx
12121212
}
12131213
case QVariant::Double:
12141214
{
1215-
int dvalue;
1215+
double dvalue;
12161216
bool ok = false;
12171217
if ( ! value.isEmpty() )
12181218
{
@@ -1222,7 +1222,7 @@ void QgsDelimitedTextProvider::fetchAttribute( QgsFeature& feature, int fieldIdx
12221222
}
12231223
else
12241224
{
1225-
dvalue = QVariant( QString( value ).replace( mDecimalPoint, "." ) ).toDouble( &ok );
1225+
dvalue = QString(value).replace( mDecimalPoint, "." ).toDouble( &ok );
12261226
}
12271227
}
12281228
if ( ok )

‎tests/src/python/test_qgsdelimitedtextprovider_wanted.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -392,10 +392,10 @@ def test_010_read_coordinates():
392392
2L: {
393393
'id': u'1',
394394
'description': u'Basic point',
395-
'geom_x': u'10',
396-
'geom_y': u'20',
395+
'geom_x': u'10.5',
396+
'geom_y': u'20.82',
397397
'#fid': 2L,
398-
'#geometry': 'POINT(10.0 20.0)',
398+
'#geometry': 'POINT(10.5 20.82)',
399399
},
400400
3L: {
401401
'id': u'2',
@@ -779,8 +779,8 @@ def test_016_decimal_point():
779779
'id': u'2',
780780
'description': u'Comma as decimal point 2',
781781
'geom_x': u'12',
782-
'geom_y': u'25',
783-
'other': u'-38',
782+
'geom_y': u'25.003',
783+
'other': u'-38.55',
784784
'text field': u'Plain text field',
785785
'#fid': 3L,
786786
'#geometry': 'POINT(12.0 25.003)',
@@ -2071,7 +2071,7 @@ def test_034_csvt_file():
20712071
'id': u'1',
20722072
'description': u'Test csvt 1',
20732073
'f1': u'1',
2074-
'f2': u'1',
2074+
'f2': u'1.2',
20752075
'f3': u'01',
20762076
'f4': u'text',
20772077
'f5': u'times',
@@ -2082,7 +2082,7 @@ def test_034_csvt_file():
20822082
'id': u'2',
20832083
'description': u'Test csvt 2',
20842084
'f1': u'3',
2085-
'f2': u'1',
2085+
'f2': u'1.5',
20862086
'f3': u'99',
20872087
'f4': u'23.5',
20882088
'f5': u'80',
@@ -2104,7 +2104,7 @@ def test_035_csvt_file2():
21042104
'id': u'1',
21052105
'description': u'Test csvt 1',
21062106
'f1': u'1',
2107-
'f2': u'1',
2107+
'f2': u'1.2',
21082108
'f3': u'1',
21092109
'f4': u'text',
21102110
'f5': u'0',
@@ -2115,7 +2115,7 @@ def test_035_csvt_file2():
21152115
'id': u'2',
21162116
'description': u'Test csvt 2',
21172117
'f1': u'3',
2118-
'f2': u'1',
2118+
'f2': u'1.5',
21192119
'f3': u'99',
21202120
'f4': u'23.5',
21212121
'f5': u'80',
@@ -2137,7 +2137,7 @@ def test_036_csvt_file_invalid_types():
21372137
'id': u'1',
21382138
'description': u'Test csvt 1',
21392139
'f1': u'1',
2140-
'f2': u'1',
2140+
'f2': u'1.2',
21412141
'f3': u'1',
21422142
'f4': u'text',
21432143
'f5': u'times',
@@ -2148,7 +2148,7 @@ def test_036_csvt_file_invalid_types():
21482148
'id': u'2',
21492149
'description': u'Test csvt 2',
21502150
'f1': u'3',
2151-
'f2': u'1',
2151+
'f2': u'1.5',
21522152
'f3': u'99',
21532153
'f4': u'23.5',
21542154
'f5': u'80',
@@ -2172,7 +2172,7 @@ def test_037_csvt_file_invalid_file():
21722172
'id': u'1',
21732173
'description': u'Test csvt 1',
21742174
'f1': u'1',
2175-
'f2': u'1',
2175+
'f2': u'1.2',
21762176
'f3': u'1',
21772177
'f4': u'text',
21782178
'f5': u'times',
@@ -2183,7 +2183,7 @@ def test_037_csvt_file_invalid_file():
21832183
'id': u'2',
21842184
'description': u'Test csvt 2',
21852185
'f1': u'3',
2186-
'f2': u'1',
2186+
'f2': u'1.5',
21872187
'f3': u'99',
21882188
'f4': u'23.5',
21892189
'f5': u'80',
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
id,description,geom_x,geom_y
2-
1,Basic point,10.0,20.0
2+
1,Basic point,10.5,20.82
33
2,Integer point,11,22
44
3,Invalid coordinate format,ten,20.0
55
4,Final point,13.0,23.0

0 commit comments

Comments
 (0)
Please sign in to comment.