mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-08 00:05:09 -04:00
Add unit tests
This commit is contained in:
parent
91e25e8051
commit
122bf8dba9
@ -115,7 +115,7 @@ bool QgsLayoutItemRegistry::removeLayoutItemType( int typeId )
|
|||||||
if ( !mMetadata.contains( typeId ) )
|
if ( !mMetadata.contains( typeId ) )
|
||||||
return false;
|
return false;
|
||||||
mMetadata.remove( typeId );
|
mMetadata.remove( typeId );
|
||||||
emit multiFrameTypeRemoved( typeId );
|
emit typeRemoved( typeId );
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ bool QgsLayoutItemRegistry::removeLayoutMultiFrameType( int typeId )
|
|||||||
if ( !mMultiFrameMetadata.contains( typeId ) )
|
if ( !mMultiFrameMetadata.contains( typeId ) )
|
||||||
return false;
|
return false;
|
||||||
mMultiFrameMetadata.remove( typeId );
|
mMultiFrameMetadata.remove( typeId );
|
||||||
emit typeRemoved( typeId );
|
emit multiFrameTypeRemoved( typeId );
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -261,6 +261,23 @@ void TestQgsLayoutItem::registry()
|
|||||||
registry.resolvePaths( 2, props, QgsPathResolver(), true );
|
registry.resolvePaths( 2, props, QgsPathResolver(), true );
|
||||||
QVERIFY( props.isEmpty() );
|
QVERIFY( props.isEmpty() );
|
||||||
|
|
||||||
|
// Test remove item type
|
||||||
|
QgsLayoutItemMetadata *metadata_42 = new QgsLayoutItemMetadata( 42, QStringLiteral( "my other type" ), QStringLiteral( "my other types" ), create, resolve );
|
||||||
|
QVERIFY( registry.addLayoutItemType( metadata_42 ) );
|
||||||
|
QCOMPARE( registry.itemTypes().count(), 2 );
|
||||||
|
QCOMPARE( spyTypeAdded.value( 1 ).at( 0 ).toInt(), 42 );
|
||||||
|
|
||||||
|
const QSignalSpy spyTypeRemoved( ®istry, &QgsLayoutItemRegistry::typeRemoved );
|
||||||
|
QVERIFY( registry.removeLayoutItemType( 2 ) ); // Remove by id
|
||||||
|
QCOMPARE( spyTypeRemoved.count(), 1 );
|
||||||
|
QCOMPARE( spyTypeRemoved.value( 0 ).at( 0 ).toInt(), 2 );
|
||||||
|
QCOMPARE( registry.itemTypes().count(), 1 );
|
||||||
|
|
||||||
|
QVERIFY( registry.removeLayoutItemType( metadata_42 ) ); // Remove by metadata
|
||||||
|
QCOMPARE( spyTypeRemoved.count(), 2 );
|
||||||
|
QCOMPARE( spyTypeRemoved.value( 1 ).at( 0 ).toInt(), 42 );
|
||||||
|
QCOMPARE( registry.itemTypes().count(), 0 );
|
||||||
|
|
||||||
// test populate
|
// test populate
|
||||||
QgsLayoutItemRegistry reg2;
|
QgsLayoutItemRegistry reg2;
|
||||||
QVERIFY( reg2.itemTypes().isEmpty() );
|
QVERIFY( reg2.itemTypes().isEmpty() );
|
||||||
|
@ -538,6 +538,23 @@ void TestQgsLayoutMultiFrame::registry()
|
|||||||
QCOMPARE( props.size(), 1 );
|
QCOMPARE( props.size(), 1 );
|
||||||
registry.resolvePaths( QgsLayoutItemRegistry::PluginItem + 1, props, QgsPathResolver(), true );
|
registry.resolvePaths( QgsLayoutItemRegistry::PluginItem + 1, props, QgsPathResolver(), true );
|
||||||
QVERIFY( props.isEmpty() );
|
QVERIFY( props.isEmpty() );
|
||||||
|
|
||||||
|
// Test remove multi frame type
|
||||||
|
QgsLayoutMultiFrameMetadata *metadata_42 = new QgsLayoutMultiFrameMetadata( QgsLayoutItemRegistry::PluginItem + 42, QStringLiteral( "TestMultiFrame42" ), create, resolve );
|
||||||
|
QVERIFY( registry.addLayoutMultiFrameType( metadata_42 ) );
|
||||||
|
QCOMPARE( registry.itemTypes().count(), 2 );
|
||||||
|
QCOMPARE( spyTypeAdded.value( 1 ).at( 0 ).toInt(), QgsLayoutItemRegistry::PluginItem + 42 );
|
||||||
|
|
||||||
|
const QSignalSpy spyTypeRemoved( ®istry, &QgsLayoutItemRegistry::multiFrameTypeRemoved );
|
||||||
|
QVERIFY( registry.removeLayoutMultiFrameType( QgsLayoutItemRegistry::PluginItem + 1 ) ); // Remove by id
|
||||||
|
QCOMPARE( spyTypeRemoved.count(), 1 );
|
||||||
|
QCOMPARE( spyTypeRemoved.value( 0 ).at( 0 ).toInt(), QgsLayoutItemRegistry::PluginItem + 1 );
|
||||||
|
QCOMPARE( registry.itemTypes().count(), 1 );
|
||||||
|
|
||||||
|
QVERIFY( registry.removeLayoutMultiFrameType( metadata_42 ) ); // Remove by metadata
|
||||||
|
QCOMPARE( spyTypeRemoved.count(), 2 );
|
||||||
|
QCOMPARE( spyTypeRemoved.value( 1 ).at( 0 ).toInt(), QgsLayoutItemRegistry::PluginItem + 42 );
|
||||||
|
QCOMPARE( registry.itemTypes().count(), 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
void TestQgsLayoutMultiFrame::deleteFrame()
|
void TestQgsLayoutMultiFrame::deleteFrame()
|
||||||
|
@ -328,6 +328,27 @@ void TestQgsLayoutView::guiRegistry()
|
|||||||
QCOMPARE( item->type(), QgsLayoutItemRegistry::LayoutItem + 101 );
|
QCOMPARE( item->type(), QgsLayoutItemRegistry::LayoutItem + 101 );
|
||||||
QCOMPARE( static_cast<TestItem *>( item )->mFlag, 2 );
|
QCOMPARE( static_cast<TestItem *>( item )->mFlag, 2 );
|
||||||
delete item;
|
delete item;
|
||||||
|
|
||||||
|
// test removing item metadata
|
||||||
|
QCOMPARE( registry.itemMetadataIds().count(), 3 );
|
||||||
|
const QSignalSpy spyTypeRemoved( ®istry, &QgsLayoutItemGuiRegistry::typeRemoved );
|
||||||
|
QVERIFY( registry.removeLayoutItemGuiMetadata( QgsLayoutItemRegistry::LayoutItem + 101 ) );
|
||||||
|
QCOMPARE( registry.itemMetadataIds().count(), 2 );
|
||||||
|
QVERIFY( registry.removeLayoutItemGuiMetadata( QgsLayoutItemRegistry::LayoutItem + 101 ) );
|
||||||
|
QCOMPARE( registry.itemMetadataIds().count(), 1 );
|
||||||
|
QVERIFY( registry.removeLayoutItemGuiMetadata( QgsLayoutItemRegistry::LayoutItem + 101 ) );
|
||||||
|
QCOMPARE( registry.itemMetadataIds().count(), 0 );
|
||||||
|
QCOMPARE( registry.removeLayoutItemGuiMetadata( QgsLayoutItemRegistry::LayoutItem + 101 ), false );
|
||||||
|
QCOMPARE( spyTypeRemoved.count(), 3 );
|
||||||
|
QCOMPARE( registry.itemMetadataIds().count(), 0 );
|
||||||
|
|
||||||
|
// test removing item group
|
||||||
|
const QSignalSpy spyGroupRemoved( ®istry, &QgsLayoutItemGuiRegistry::groupRemoved );
|
||||||
|
QVERIFY( registry.removeItemGroup( QStringLiteral( "g1" ) ) );
|
||||||
|
QCOMPARE( spyGroupRemoved.count(), 1 );
|
||||||
|
QCOMPARE( spyGroupRemoved.at( 0 ).at( 0 ).toString(), QStringLiteral( "g1" ) );
|
||||||
|
// can't remove group again
|
||||||
|
QVERIFY( !registry.removeItemGroup( QStringLiteral( "g1" ) ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
void TestQgsLayoutView::rubberBand()
|
void TestQgsLayoutView::rubberBand()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user