@@ -431,7 +431,7 @@ void TestQgsFeature::dataStream()
431
431
QCOMPARE ( *resultFeature.constGeometry ()->asWkb (), *originalFeature.constGeometry ()->asWkb () );
432
432
QCOMPARE ( resultFeature.isValid (), originalFeature.isValid () );
433
433
434
- // also test with feature without geometry
434
+ // also test with feature empty geometry
435
435
originalFeature.setGeometry ( new QgsGeometry () );
436
436
QByteArray ba2;
437
437
QDataStream ds2 ( &ba2, QIODevice::ReadWrite );
@@ -444,6 +444,20 @@ void TestQgsFeature::dataStream()
444
444
QCOMPARE ( resultFeature.attributes (), originalFeature.attributes () );
445
445
QVERIFY ( resultFeature.constGeometry ()->isEmpty () );
446
446
QCOMPARE ( resultFeature.isValid (), originalFeature.isValid () );
447
+
448
+ // test with feature with null geometry
449
+ originalFeature.setGeometry ( 0 );
450
+ QByteArray ba3;
451
+ QDataStream ds3 ( &ba3, QIODevice::ReadWrite );
452
+ ds3 << originalFeature;
453
+
454
+ ds3.device ()->seek ( 0 );
455
+ ds3 >> resultFeature;
456
+
457
+ QCOMPARE ( resultFeature.id (), originalFeature.id () );
458
+ QCOMPARE ( resultFeature.attributes (), originalFeature.attributes () );
459
+ QVERIFY ( resultFeature.constGeometry ()->isEmpty () );
460
+ QCOMPARE ( resultFeature.isValid (), originalFeature.isValid () );
447
461
}
448
462
449
463
QTEST_MAIN ( TestQgsFeature )
0 commit comments