on xenial help sign in
Add MockSessionsModel for future scenario support
commitb90caa8a0fb8994cfc03a32644c9bf50391b875d authorJosh Arenson <joshua.arenson@canonical.com> dateWed 18 Nov 2015, 16:25 (11 years ago) parent8913729
4 files changed+47−5
tests/mocks/LightDM/IntegratedLightDM/CMakeLists.txt+1−1 tests/mocks/LightDM/IntegratedLightDM/MockSessionsModel.cpp+40 tests/mocks/LightDM/IntegratedLightDM/MockSessionsModel.h+5−4 tests/qmltests/Greeter/tst_Greeter.qml+1
tests/mocks/LightDM/IntegratedLightDM/CMakeLists.txt+1−1
@@ -23,7 +23,7 @@ set(QMLPLUGIN_SRC
2323 ${CMAKE_SOURCE_DIR}/plugins/LightDM/UsersModel.cpp
2424 ${CMAKE_SOURCE_DIR}/plugins/Utils/unitysortfilterproxymodelqml.cpp
2525 MockGreeter.cpp
26− MockSessionsModel.h
26+ MockSessionsModel.cpp
2727 MockUsersModel.cpp
2828 plugin.cpp
2929 )
tests/mocks/LightDM/IntegratedLightDM/MockSessionsModel.cppnew file+40
@@ -0,0 +1,40 @@
1+/*
2+ * Copyright (C) 2015 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
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 General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ *
16+ */
17+
18+#include "MockSessionsModel.h"
19+#include <QLightDM/SessionsModel>
20+#include <QSortFilterProxyModel>
21+#include <QDebug>
22+QString MockSessionsModel::testScenario() const
23+{
24+ /*QLightDM::UsersModel* qUsersModel =
25+ static_cast<QLightDM::UsersModel*>(static_cast<QSortFilterProxyModel*>(sourceModel())->sourceModel());*/
26+
27+ return QString("Hello MockSessionsModel");
28+}
29+
30+void MockSessionsModel::setTestScenario(QString testScenario)
31+{
32+ /*QLightDM::UsersModel* qUsersModel =
33+ static_cast<QLightDM::UsersModel*>(static_cast<QSortFilterProxyModel*>(sourceModel())->sourceModel());
34+
35+ if (qUsersModel->mockMode() != mockMode) {
36+ qUsersModel->setMockMode(mockMode);
37+ Q_EMIT mockModeChanged(mockMode);
38+ }*/
39+ qDebug() << "Setting MockSessionsModel::testScenario";
40+}
tests/mocks/LightDM/IntegratedLightDM/MockSessionsModel.h+5−4
@@ -19,15 +19,16 @@
1919#define MOCK_UNITY_SESSIONSMODEL_H
2020
2121#include <SessionsModel.h>
22−#include <QLightDM/SessionsModel>
2322
24−// A wrapper class to preserve naming conventions, thus
25−// enhancing code readability
2623class MockSessionsModel : public SessionsModel
2724{
2825 Q_OBJECT
2926
30− using SessionsModel::SessionsModel;
27+ Q_PROPERTY(QString testScenario READ testScenario WRITE setTestScenario)
28+
29+public:
30+ QString testScenario() const;
31+ void setTestScenario(QString testScenario);
3132};
3233
3334#endif // MOCK_UNITY_SESSIONSMODEL_H
tests/qmltests/Greeter/tst_Greeter.qml+1
@@ -34,6 +34,7 @@ Item {
3434 // set the mock mode before loading
3535 LightDM.Greeter.mockMode = "full";
3636 LightDM.Users.mockMode = "full";
37+ console.log("TEST SAYS testScenario is: " + LightDM.Sessions.testScenario);
3738 loader.active = true;
3839 }
3940