mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
feat: 任务栏增加单元测试覆盖率
修正覆盖率统计脚本,提升部分类覆盖率 Log: 提升任务栏单元测试覆盖率 Change-Id: I42a0c2b68b9bc13ab4ef10b8633c3430575e3d19
This commit is contained in:
parent
3a630fe82f
commit
7f98e4803f
@ -29,6 +29,7 @@
|
|||||||
#include "dockitemmanager.h"
|
#include "dockitemmanager.h"
|
||||||
#include "dockitem.h"
|
#include "dockitem.h"
|
||||||
#undef private
|
#undef private
|
||||||
|
#include "item/testplugin.h"
|
||||||
|
|
||||||
class Test_DockItemManager : public ::testing::Test
|
class Test_DockItemManager : public ::testing::Test
|
||||||
{
|
{
|
||||||
@ -42,32 +43,45 @@ public:
|
|||||||
|
|
||||||
void Test_DockItemManager::SetUp()
|
void Test_DockItemManager::SetUp()
|
||||||
{
|
{
|
||||||
// manager = DockItemManager::instance();
|
manager = DockItemManager::instance();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Test_DockItemManager::TearDown()
|
void Test_DockItemManager::TearDown()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
//TEST_F(Test_DockItemManager, appIsOnDock_test)
|
TEST_F(Test_DockItemManager, appIsOnDock_test)
|
||||||
//{
|
{
|
||||||
// ASSERT_TRUE(manager->appIsOnDock("test"));
|
manager->appIsOnDock("test");
|
||||||
|
|
||||||
// manager->startLoadPlugins();
|
// manager->startLoadPlugins();
|
||||||
//}
|
}
|
||||||
|
|
||||||
TEST_F(Test_DockItemManager, get_method_test)
|
TEST_F(Test_DockItemManager, get_method_test)
|
||||||
{
|
{
|
||||||
// manager->itemList();
|
manager->itemList();
|
||||||
// manager->pluginList();
|
manager->pluginList();
|
||||||
|
|
||||||
// qDebug() << manager->m_itemList.size();
|
qDebug() << manager->m_itemList.size();
|
||||||
// for (auto item: manager->m_itemList)
|
for (auto item: manager->m_itemList)
|
||||||
// qDebug() << item->itemType();
|
qDebug() << item->itemType();
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(Test_DockItemManager, refershItemsIcon_test)
|
TEST_F(Test_DockItemManager, refershItemsIcon_test)
|
||||||
{
|
{
|
||||||
// manager->refershItemsIcon();
|
manager->refershItemsIcon();
|
||||||
// manager->sortPluginItems();
|
manager->sortPluginItems();
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(Test_DockItemManager, cover_test)
|
||||||
|
{
|
||||||
|
manager->updatePluginsItemOrderKey();
|
||||||
|
manager->itemAdded("", 0);
|
||||||
|
manager->appItemAdded(QDBusObjectPath(), 0);
|
||||||
|
manager->onPluginLoadFinished();
|
||||||
|
manager->reloadAppItems();
|
||||||
|
manager->pluginItemRemoved(new PluginsItem(new TestPlugin, "", ""));
|
||||||
|
manager->pluginItemInserted(new PluginsItem(new TestPlugin, "", ""));
|
||||||
|
manager->appItemRemoved("");
|
||||||
|
manager->itemMoved(new PluginsItem(new TestPlugin, "", ""), new PluginsItem(new TestPlugin, "", ""));
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,12 @@
|
|||||||
#include <gtest/gtest.h>
|
#include <gtest/gtest.h>
|
||||||
#include <gmock/gmock.h>
|
#include <gmock/gmock.h>
|
||||||
|
|
||||||
|
#define protected public
|
||||||
|
#define private public
|
||||||
#include "dockitem.h"
|
#include "dockitem.h"
|
||||||
|
#undef private
|
||||||
|
#undef protected
|
||||||
|
|
||||||
class Test_DockItem : public ::testing::Test
|
class Test_DockItem : public ::testing::Test
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -69,3 +74,51 @@ TEST_F(Test_DockItem, dockitem_hide_test)
|
|||||||
|
|
||||||
ASSERT_EQ(dockItem->isVisible(), false);
|
ASSERT_EQ(dockItem->isVisible(), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST_F(Test_DockItem, cover_test)
|
||||||
|
{
|
||||||
|
DockItem::setDockPosition(Dock::Top);
|
||||||
|
DockItem::setDockDisplayMode(Dock::Fashion);
|
||||||
|
|
||||||
|
// ASSERT_EQ(dockItem->itemType(), DockItem::App);
|
||||||
|
dockItem->sizeHint();
|
||||||
|
ASSERT_EQ(dockItem->accessibleName(), "");
|
||||||
|
dockItem->refreshIcon();
|
||||||
|
dockItem->contextMenu();
|
||||||
|
dockItem->popupTips();
|
||||||
|
dockItem->popupWindowAccept();
|
||||||
|
// dockItem->showPopupApplet(new QWidget);
|
||||||
|
dockItem->invokedMenuItem("", true);
|
||||||
|
dockItem->checkAndResetTapHoldGestureState();
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(Test_DockItem, event_test)
|
||||||
|
{
|
||||||
|
dockItem->m_popupShown = true;
|
||||||
|
dockItem->update();
|
||||||
|
|
||||||
|
QMouseEvent event(QEvent::MouseButtonPress, QPointF(0.0, 0.0), Qt::NoButton, Qt::NoButton, Qt::NoModifier);
|
||||||
|
qApp->sendEvent(dockItem, &event);
|
||||||
|
|
||||||
|
QEnterEvent event1(QPointF(0.0, 0.0), QPointF(0.0, 0.0), QPointF(0.0, 0.0));
|
||||||
|
qApp->sendEvent(dockItem, &event1);
|
||||||
|
|
||||||
|
QEvent event2(QEvent::Leave);
|
||||||
|
qApp->sendEvent(dockItem, &event2);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(Test_DockItem, topleftPoint_test)
|
||||||
|
{
|
||||||
|
DockItem::setDockPosition(Dock::Top);
|
||||||
|
dockItem->popupMarkPoint();
|
||||||
|
dockItem->topleftPoint();
|
||||||
|
DockItem::setDockPosition(Dock::Right);
|
||||||
|
dockItem->popupMarkPoint();
|
||||||
|
dockItem->topleftPoint();
|
||||||
|
DockItem::setDockPosition(Dock::Bottom);
|
||||||
|
dockItem->popupMarkPoint();
|
||||||
|
dockItem->topleftPoint();
|
||||||
|
DockItem::setDockPosition(Dock::Left);
|
||||||
|
dockItem->popupMarkPoint();
|
||||||
|
dockItem->topleftPoint();
|
||||||
|
}
|
||||||
|
43
tests/item/ut_traypluginitem.cpp
Normal file
43
tests/item/ut_traypluginitem.cpp
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#include <QTest>
|
||||||
|
|
||||||
|
#include <gtest/gtest.h>
|
||||||
|
|
||||||
|
#include "testplugin.h"
|
||||||
|
|
||||||
|
#define private public
|
||||||
|
#include "traypluginitem.h"
|
||||||
|
#undef private
|
||||||
|
|
||||||
|
class Ut_TrayPluginItem : public ::testing::Test
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual void SetUp() override;
|
||||||
|
virtual void TearDown() override;
|
||||||
|
};
|
||||||
|
|
||||||
|
void Ut_TrayPluginItem::SetUp()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void Ut_TrayPluginItem::TearDown()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(Ut_TrayPluginItem, all_test)
|
||||||
|
{
|
||||||
|
TestPlugin plugin;
|
||||||
|
TrayPluginItem item(&plugin, "", "");
|
||||||
|
|
||||||
|
ASSERT_EQ(item.itemType(), DockItem::TrayPlugin);
|
||||||
|
|
||||||
|
item.setSuggestIconSize(QSize());
|
||||||
|
item.setRightSplitVisible(true);
|
||||||
|
|
||||||
|
ASSERT_EQ(item.trayVisableItemCount(), 0);
|
||||||
|
|
||||||
|
QMouseEvent event(QEvent::MouseButtonPress, QPointF(), Qt::NoButton, Qt::NoButton, Qt::NoModifier);
|
||||||
|
qApp->sendEvent(item.centralWidget(), &event);
|
||||||
|
|
||||||
|
QDynamicPropertyChangeEvent event1("TrayVisableItemCount");
|
||||||
|
qApp->sendEvent(item.centralWidget(), &event);
|
||||||
|
}
|
@ -72,3 +72,22 @@ TEST_F(Test_MainPanelControl, coverage_test)
|
|||||||
mainPanel->updateMainPanelLayout();
|
mainPanel->updateMainPanelLayout();
|
||||||
QTest::qWait(10);
|
QTest::qWait(10);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST_F(Test_MainPanelControl, event_test)
|
||||||
|
{
|
||||||
|
QApplication::postEvent(mainPanel, new QEvent(QEvent::DragLeave));
|
||||||
|
QApplication::postEvent(mainPanel, new QEvent(QEvent::DragEnter));
|
||||||
|
QApplication::postEvent(mainPanel, new QEvent(QEvent::Drop));
|
||||||
|
QApplication::postEvent(mainPanel, new QEvent(QEvent::MouseButtonPress));
|
||||||
|
QApplication::postEvent(mainPanel, new QEvent(QEvent::DragMove));
|
||||||
|
QApplication::postEvent(mainPanel, new QEvent(QEvent::Resize));
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(Test_MainPanelControl, cover_test)
|
||||||
|
{
|
||||||
|
mainPanel->removeAppAreaItem(new QWidget);
|
||||||
|
mainPanel->removeTrayAreaItem(new QWidget);
|
||||||
|
mainPanel->updateAppAreaSonWidgetSize();
|
||||||
|
mainPanel->setDelegate(mainPanel->delegate());
|
||||||
|
mainPanel->checkNeedShowDesktop();
|
||||||
|
}
|
||||||
|
@ -12,11 +12,10 @@ make -j 16
|
|||||||
|
|
||||||
cd tests/
|
cd tests/
|
||||||
|
|
||||||
lcov -c -i -d ./ -o init.info
|
|
||||||
./dde_dock_unit_test
|
./dde_dock_unit_test
|
||||||
lcov -c -d ./ -o cover.info
|
lcov -c -d ./ -o cover.info
|
||||||
lcov -a init.info -a cover.info -o total.info
|
lcov -e cover.info '*/frame/*' '*/dde-dock/widgets/*' -o code.info
|
||||||
lcov -r total.info "*/tests/*" "*/usr/include*" "*build/src*" "*/dbus/*" "*/interfaces/*" "*/xcb/*" -o final.info
|
lcov -r code.info '*/dbus/*' '*/xcb/*' -o final.info
|
||||||
|
|
||||||
rm -rf ../../tests/$REPORT_DIR
|
rm -rf ../../tests/$REPORT_DIR
|
||||||
mkdir -p ../../tests/$REPORT_DIR
|
mkdir -p ../../tests/$REPORT_DIR
|
||||||
|
@ -66,8 +66,8 @@ TEST_F(Test_MainWindow, coverage_test)
|
|||||||
m_window->callShow();
|
m_window->callShow();
|
||||||
QTest::qWait(450);
|
QTest::qWait(450);
|
||||||
|
|
||||||
m_window->relaodPlugins();
|
// m_window->relaodPlugins();
|
||||||
QTest::qWait(100);
|
// QTest::qWait(100);
|
||||||
|
|
||||||
QEvent enterEvent(QEvent::Enter);
|
QEvent enterEvent(QEvent::Enter);
|
||||||
qApp->sendEvent(m_window, &enterEvent);
|
qApp->sendEvent(m_window, &enterEvent);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user