MCPcopy Create free account
hub / github.com/KDE/kdevelop / checkAreaViewsDisplay

Method checkAreaViewsDisplay

kdevplatform/sublime/tests/test_areaoperation.cpp:895–936  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

893}
894
895void TestAreaOperation::checkAreaViewsDisplay(MainWindow *mw, Area *area,
896 const QString &printedAreas, int containerCount, int splitterCount, const QString& location)
897{
898 //check area
899 AreaViewsPrinter viewsPrinter;
900 area->walkViews(viewsPrinter, area->rootIndex());
901 QCOMPARE(viewsPrinter.result, printedAreas);
902
903 //check mainwindow
904 QWidget *central = mw->centralWidget();
905 QVERIFY(central != nullptr);
906 QVERIFY(central->inherits("QWidget"));
907
908 QWidget *splitter = central->findChild<QSplitter*>();
909 QVERIFY(splitter);
910 QVERIFY(splitter->inherits("QSplitter"));
911
912 //check containers
913 const QList<Container*> containers = splitter->findChildren<Sublime::Container*>();
914 QString failMsg = QStringLiteral("\nFailure while checking area contents @ %1\n"
915 "Expected %2 containers in central splitter but got %3 \n").
916 arg(location).arg(containerCount).arg(containers.count());
917 QVERIFY2(containers.count() == containerCount, failMsg.toLatin1().data());
918
919 int widgetCount = 0;
920 for (Container* c : containers) {
921 for (int i = 0; i < c->count(); ++i)
922 {
923 QVERIFY(c->widget(i) != nullptr);
924 QVERIFY(c->widget(i)->parentWidget() != nullptr);
925 }
926 widgetCount += c->count();
927 }
928
929 ViewCounter c;
930 area->walkViews(c, area->rootIndex());
931 QCOMPARE(widgetCount, c.count);
932
933 QList<QSplitter*> splitters = splitter->findChildren<QSplitter*>();
934 splitters.append(qobject_cast<QSplitter*>(splitter));
935 QCOMPARE(splitters.count(), splitterCount);
936}
937
938///////////
939QTEST_MAIN(TestAreaOperation)

Callers

nothing calls this directly

Calls 6

walkViewsMethod · 0.80
rootIndexMethod · 0.80
countMethod · 0.45
dataMethod · 0.45
widgetMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected