dde-dock/tests/plugins/dcc-dock-settings-plugin/ut_gsettings_watcher.cpp
范朋程 95e85b7119 fix: 添加命名空间,防止和控制中心中的类产生符号冲突
GSettingWatcher这个类在控制中心和个性化的任务栏配置插件中均存在,用命名空间进行区分

Log:
Bug: https://pms.uniontech.com/zentao/bug-view-101282.html
Influence: 控制中心闪退问题
Change-Id: If71613fcdf4d7f7f931c8df58e4aac93c7098686
2021-11-05 10:19:57 +08:00

43 lines
1.0 KiB
C++

#include "gsetting_watcher.h"
#include <QWidget>
#include <gtest/gtest.h>
using namespace dcc_dock_plugin;
class Test_GSettingWatcher : public QObject, public ::testing::Test
{};
TEST_F(Test_GSettingWatcher, bind)
{
GSettingWatcher watcher("com.deepin.dde.control-center", "personalization");
QWidget widget;
watcher.bind("displayMode", &widget);
watcher.bind("displayMode", nullptr);
watcher.bind("invalid", &widget);
watcher.bind("", &widget);
watcher.bind("", nullptr);
}
TEST_F(Test_GSettingWatcher, setStatus)
{
GSettingWatcher watcher("com.deepin.dde.control-center", "personalization");
QWidget widget;
watcher.bind("displayMode", &widget);
watcher.setStatus("displayMode", &widget);
}
TEST_F(Test_GSettingWatcher, onStatusModeChanged)
{
GSettingWatcher watcher("com.deepin.dde.control-center", "personalization");
QWidget widget;
watcher.bind("displayMode", &widget);
watcher.onStatusModeChanged("displayMode");
watcher.onStatusModeChanged("invalid");
watcher.onStatusModeChanged("");
}