@@ -110,6 +110,7 @@ class TestQgsLegendRenderer : public QObject
110
110
111
111
void testBasic ();
112
112
void testBigMarker ();
113
+ void testMapUnits ();
113
114
void testLongSymbolText ();
114
115
void testThreeColumns ();
115
116
void testFilterByMap ();
@@ -290,6 +291,42 @@ void TestQgsLegendRenderer::testBigMarker()
290
291
QVERIFY ( _verifyImage ( testName, mReport ) );
291
292
}
292
293
294
+ void TestQgsLegendRenderer::testMapUnits ()
295
+ {
296
+ QString testName = " legend_mapunits" ;
297
+
298
+ QgsMarkerSymbolV2* sym = new QgsMarkerSymbolV2 ();
299
+ sym->setColor ( Qt::red );
300
+ sym->setSize ( 100 );
301
+ sym->setSizeUnit ( QgsSymbolV2::MapUnit );
302
+ QgsCategorizedSymbolRendererV2* catRenderer = dynamic_cast <QgsCategorizedSymbolRendererV2*>( mVL3 ->rendererV2 () );
303
+ QVERIFY ( catRenderer );
304
+ catRenderer->updateCategorySymbol ( 0 , sym );
305
+
306
+ sym = new QgsMarkerSymbolV2 ();
307
+ sym->setColor ( Qt::green );
308
+ sym->setSize ( 300 );
309
+ sym->setSizeUnit ( QgsSymbolV2::MapUnit );
310
+ catRenderer->updateCategorySymbol ( 1 , sym );
311
+
312
+ sym = new QgsMarkerSymbolV2 ();
313
+ sym->setColor ( Qt::blue );
314
+ sym->setSize ( 5 );
315
+ sym->setSizeUnit ( QgsSymbolV2::MM );
316
+ catRenderer->updateCategorySymbol ( 2 , sym );
317
+
318
+ QgsLayerTreeGroup* root = new QgsLayerTreeGroup ();
319
+ root->addLayer ( mVL3 );
320
+ QgsLayerTreeModel legendModel ( root );
321
+
322
+ QgsLegendSettings settings;
323
+ _setStandardTestFont ( settings );
324
+ settings.setMmPerMapUnit ( 0.1 );
325
+ settings.setMapScale ( 1000 );
326
+ _renderLegend ( testName, &legendModel, settings );
327
+ QVERIFY ( _verifyImage ( testName, mReport ) );
328
+ }
329
+
293
330
void TestQgsLegendRenderer::testLongSymbolText ()
294
331
{
295
332
QString testName = " legend_long_symbol_text" ;
0 commit comments