mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
feat: PluginsItem类添加单元测试
PluginsItem类添加单元测试 Log: PluginsItem类添加单元测试 Change-Id: Ie5d5b8704425daa77dfa58d8a39a1c67f2601b1c
This commit is contained in:
parent
ad798181eb
commit
8cfd66964b
53
tests/item/testplugin.cpp
Normal file
53
tests/item/testplugin.cpp
Normal file
@ -0,0 +1,53 @@
|
||||
#include "testplugin.h"
|
||||
|
||||
#include <QWidget>
|
||||
|
||||
TestPlugin::TestPlugin()
|
||||
: m_sortKey(0)
|
||||
, m_type(Normal)
|
||||
{
|
||||
}
|
||||
|
||||
const QString TestPlugin::pluginName() const
|
||||
{
|
||||
return QString(Name);
|
||||
}
|
||||
|
||||
const QString TestPlugin::pluginDisplayName() const
|
||||
{
|
||||
return QString(Name);
|
||||
}
|
||||
|
||||
void TestPlugin::init(PluginProxyInterface *)
|
||||
{
|
||||
}
|
||||
|
||||
QWidget *TestPlugin::itemWidget(const QString &)
|
||||
{
|
||||
return new QWidget;
|
||||
}
|
||||
|
||||
int TestPlugin::itemSortKey(const QString &)
|
||||
{
|
||||
return m_sortKey;
|
||||
}
|
||||
|
||||
void TestPlugin::setSortKey(const QString &, const int order)
|
||||
{
|
||||
m_sortKey = order;
|
||||
}
|
||||
|
||||
PluginsItemInterface::PluginSizePolicy TestPlugin::pluginSizePolicy() const
|
||||
{
|
||||
return PluginsItemInterface::Custom;
|
||||
}
|
||||
|
||||
PluginsItemInterface::PluginType TestPlugin::type()
|
||||
{
|
||||
return m_type;
|
||||
}
|
||||
|
||||
void TestPlugin::setType(const PluginType type)
|
||||
{
|
||||
m_type = type;
|
||||
}
|
30
tests/item/testplugin.h
Normal file
30
tests/item/testplugin.h
Normal file
@ -0,0 +1,30 @@
|
||||
#ifndef TESTPLUGIN_H
|
||||
#define TESTPLUGIN_H
|
||||
|
||||
#include "pluginsiteminterface.h"
|
||||
|
||||
const QString Name = "Test";
|
||||
|
||||
class TestPlugin : public PluginsItemInterface
|
||||
{
|
||||
public:
|
||||
TestPlugin();
|
||||
|
||||
virtual const QString pluginName() const override;
|
||||
virtual const QString pluginDisplayName() const override;
|
||||
virtual void init(PluginProxyInterface *proxyInter) override;
|
||||
virtual QWidget *itemWidget(const QString &itemKey) override;
|
||||
virtual int itemSortKey(const QString &itemKey) override;
|
||||
virtual void setSortKey(const QString &itemKey, const int order) override;
|
||||
virtual PluginSizePolicy pluginSizePolicy() const override;
|
||||
virtual PluginType type() override;
|
||||
|
||||
public:
|
||||
void setType(const PluginType type);
|
||||
|
||||
private:
|
||||
int m_sortKey;
|
||||
PluginType m_type;
|
||||
};
|
||||
|
||||
#endif // TESTPLUGIN_H
|
90
tests/item/ut_pluginsitem.cpp
Normal file
90
tests/item/ut_pluginsitem.cpp
Normal file
@ -0,0 +1,90 @@
|
||||
#include <QTest>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "testplugin.h"
|
||||
|
||||
#define private public
|
||||
#include "pluginsitem.h"
|
||||
#undef private
|
||||
|
||||
using namespace ::testing;
|
||||
|
||||
class Ut_PluginsItem : public ::testing::Test
|
||||
{
|
||||
public:
|
||||
virtual void SetUp() override;
|
||||
virtual void TearDown() override;
|
||||
};
|
||||
|
||||
void Ut_PluginsItem::SetUp()
|
||||
{
|
||||
}
|
||||
|
||||
void Ut_PluginsItem::TearDown()
|
||||
{
|
||||
}
|
||||
|
||||
TEST_F(Ut_PluginsItem, itemSortKey_test)
|
||||
{
|
||||
TestPlugin plugin;
|
||||
PluginsItem item(&plugin, "", "");
|
||||
|
||||
ASSERT_EQ(item.itemSortKey(), 0);
|
||||
|
||||
item.setItemSortKey(99);
|
||||
ASSERT_EQ(item.itemSortKey(), 99);
|
||||
|
||||
item.detachPluginWidget();
|
||||
|
||||
ASSERT_EQ(item.pluginName(), Name);
|
||||
}
|
||||
|
||||
TEST_F(Ut_PluginsItem, pluginSizePolicy_test)
|
||||
{
|
||||
TestPlugin plugin;
|
||||
PluginsItem item(&plugin, "", "1.2.0");
|
||||
|
||||
ASSERT_EQ(item.pluginSizePolicy(), PluginsItemInterface::System);
|
||||
|
||||
PluginsItem item1(&plugin, "", "1.3.0");
|
||||
ASSERT_EQ(item1.pluginSizePolicy(), PluginsItemInterface::Custom);
|
||||
}
|
||||
|
||||
TEST_F(Ut_PluginsItem, itemType_test)
|
||||
{
|
||||
TestPlugin plugin;
|
||||
PluginsItem item(&plugin, "", "");
|
||||
|
||||
plugin.setType(PluginsItemInterface::Normal);
|
||||
ASSERT_EQ(item.itemType(), PluginsItem::Plugins);
|
||||
|
||||
plugin.setType(PluginsItemInterface::Fixed);
|
||||
ASSERT_EQ(item.itemType(), PluginsItem::FixedPlugin);
|
||||
}
|
||||
|
||||
TEST_F(Ut_PluginsItem, cover)
|
||||
{
|
||||
TestPlugin plugin;
|
||||
PluginsItem item(&plugin, "", "");
|
||||
|
||||
item.sizeHint();
|
||||
|
||||
ASSERT_TRUE(item.centralWidget());
|
||||
|
||||
item.setDraging(true);
|
||||
item.refreshIcon();
|
||||
item.onGSettingsChanged("");
|
||||
item.startDrag();
|
||||
item.mouseClicked();
|
||||
}
|
||||
|
||||
TEST_F(Ut_PluginsItem, event_test)
|
||||
{
|
||||
TestPlugin plugin;
|
||||
PluginsItem item(&plugin, "", "");
|
||||
|
||||
QTest::mousePress(&item, Qt::LeftButton, Qt::NoModifier);
|
||||
QTest::mousePress(&item, Qt::RightButton, Qt::NoModifier);
|
||||
QTest::mouseMove(&item, QPoint());
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user