2 * Copyright 2013 Canonical Ltd.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation; version 3.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Lesser General Public License for more details.
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 * Nick Dedekind <nick.dedekind@canonical.com>
20#include "modelactionrootstate.h"
22#include <unitymenumodel.h>
26class RootActionStateTest : public QObject
31 void testDeleteRootActionState()
33 UnityMenuModel* menuModel = new UnityMenuModel();
34 ActionStateParser* originalParser = menuModel->actionStateParser();
35 ModelActionRootState* rootState = new ModelActionRootState();
37 rootState->setMenu(menuModel);
40 QCOMPARE(menuModel->actionStateParser(), originalParser);
44 void testDeleteUnityMenuModel()
46 UnityMenuModel* menuModel = new UnityMenuModel();
47 ModelActionRootState* rootState = new ModelActionRootState();
49 rootState->setMenu(menuModel);
51 QCOMPARE(rootState->menu(), menuModel);
53 QVERIFY(rootState->menu() == nullptr);
57 void testToQVariantIcons()
59 GVariantBuilder builderIcons;
60 g_variant_builder_init(&builderIcons, G_VARIANT_TYPE("av"));
61 for (int i = 0; i < 3; i ++) {
63 GIcon* icon = nullptr;
64 icon = g_icon_new_for_string (QString("testIcon%1").arg(i).toUtf8().constData(), nullptr);
66 g_variant_builder_add(&builderIcons,
68 g_icon_serialize (icon));
72 GVariantBuilder builderParams;
73 g_variant_builder_init(&builderParams, G_VARIANT_TYPE_ARRAY);
74 GVariant* icons = g_variant_builder_end (&builderIcons);
75 g_variant_ref_sink (icons);
76 g_variant_builder_add (&builderParams, "{sv}", g_strdup ("icons"), icons, nullptr);
78 GVariant* params = g_variant_builder_end (&builderParams);
80 RootStateParser rootState;
81 QVariant result = rootState.toQVariant(params);
82 g_variant_unref(params);
84 QVariantMap paramResult = result.toMap();
85 QVERIFY(paramResult.contains("icons"));
87 QStringList serializedIcons = paramResult["icons"].toStringList();
88 QVERIFY(serializedIcons[0] == "image://theme/testIcon0");
89 QVERIFY(serializedIcons[1] == "image://theme/testIcon1");
90 QVERIFY(serializedIcons[2] == "image://theme/testIcon2");
94QTEST_GUILESS_MAIN(RootActionStateTest)
95#include "RootActionStateTest.moc"
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list