Directory: | ./ |
---|---|
File: | autotests/client/plasma_virtual_desktop.cpp |
Date: | 2024-01-22 17:25:27 |
Exec | Total | Coverage | |
---|---|---|---|
Lines: | 328 | 328 | 100.0% |
Branches: | 691 | 1472 | 46.9% |
Line | Branch | Exec | Source |
---|---|---|---|
1 | /******************************************************************** | ||
2 | Copyright 2018 Marco Martin <mart@kde.org> | ||
3 | |||
4 | This library is free software; you can redistribute it and/or | ||
5 | modify it under the terms of the GNU Lesser General Public | ||
6 | License as published by the Free Software Foundation; either | ||
7 | version 2.1 of the License, or (at your option) version 3, or any | ||
8 | later version accepted by the membership of KDE e.V. (or its | ||
9 | successor approved by the membership of KDE e.V.), which shall | ||
10 | act as a proxy defined in Section 6 of version 3 of the license. | ||
11 | |||
12 | This library is distributed in the hope that it will be useful, | ||
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
15 | Lesser General Public License for more details. | ||
16 | |||
17 | You should have received a copy of the GNU Lesser General Public | ||
18 | License along with this library. If not, see <http://www.gnu.org/licenses/>. | ||
19 | *********************************************************************/ | ||
20 | #include <QtTest> | ||
21 | |||
22 | #include "../../src/client/compositor.h" | ||
23 | #include "../../src/client/connection_thread.h" | ||
24 | #include "../../src/client/event_queue.h" | ||
25 | #include "../../src/client/plasmavirtualdesktop.h" | ||
26 | #include "../../src/client/plasmawindowmanagement.h" | ||
27 | #include "../../src/client/region.h" | ||
28 | #include "../../src/client/registry.h" | ||
29 | #include "../../src/client/surface.h" | ||
30 | |||
31 | #include "../../server/compositor.h" | ||
32 | #include "../../server/display.h" | ||
33 | #include "../../server/plasma_virtual_desktop.h" | ||
34 | #include "../../server/plasma_window.h" | ||
35 | #include "../../server/region.h" | ||
36 | |||
37 | #include "../../tests/globals.h" | ||
38 | |||
39 | class TestVirtualDesktop : public QObject | ||
40 | { | ||
41 | Q_OBJECT | ||
42 | public: | ||
43 | explicit TestVirtualDesktop(QObject* parent = nullptr); | ||
44 | private Q_SLOTS: | ||
45 | void init(); | ||
46 | void cleanup(); | ||
47 | |||
48 | void testCreate(); | ||
49 | void testSetRows(); | ||
50 | void testConnectNewClient(); | ||
51 | void testDestroy(); | ||
52 | void testActivate(); | ||
53 | |||
54 | void testEnterLeaveDesktop(); | ||
55 | void testAllDesktops(); | ||
56 | void testCreateRequested(); | ||
57 | void testRemoveRequested(); | ||
58 | |||
59 | private: | ||
60 | 1 | struct { | |
61 | std::unique_ptr<Wrapland::Server::Display> display; | ||
62 | Wrapland::Server::globals globals; | ||
63 | 1 | Wrapland::Server::PlasmaWindow* plasma_window{nullptr}; | |
64 | 1 | Wrapland::Server::PlasmaVirtualDesktopManager* plasma_vd{nullptr}; | |
65 | } server; | ||
66 | |||
67 | Wrapland::Client::ConnectionThread* m_connection; | ||
68 | Wrapland::Client::Compositor* m_compositor; | ||
69 | Wrapland::Client::PlasmaVirtualDesktopManagement* m_plasmaVirtualDesktopManagement; | ||
70 | Wrapland::Client::EventQueue* m_queue; | ||
71 | Wrapland::Client::PlasmaWindowManagement* m_windowManagement; | ||
72 | Wrapland::Client::PlasmaWindow* m_window; | ||
73 | |||
74 | QThread* m_thread; | ||
75 | }; | ||
76 | |||
77 | constexpr auto socket_name{"wrapland-test-wayland-virtual-desktop-0"}; | ||
78 | |||
79 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
2 | TestVirtualDesktop::TestVirtualDesktop(QObject* parent) |
80 | 1 | : QObject(parent) | |
81 | 1 | , m_connection(nullptr) | |
82 | 1 | , m_compositor(nullptr) | |
83 | 1 | , m_queue(nullptr) | |
84 | 1 | , m_thread(nullptr) | |
85 | 1 | { | |
86 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | qRegisterMetaType<uint32_t>(); |
87 | 1 | } | |
88 | |||
89 | 9 | void TestVirtualDesktop::init() | |
90 | { | ||
91 | 9 | server.display = std::make_unique<Wrapland::Server::Display>(); | |
92 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | server.display->set_socket_name(socket_name); |
93 | 9 | server.display->start(); | |
94 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QVERIFY(server.display->running()); |
95 | |||
96 | // setup connection | ||
97 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_connection = new Wrapland::Client::ConnectionThread; |
98 | 9 | QSignalSpy connectedSpy(m_connection, &Wrapland::Client::ConnectionThread::establishedChanged); | |
99 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(connectedSpy.isValid()); |
100 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | m_connection->setSocketName(socket_name); |
101 | |||
102 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | m_thread = new QThread(this); |
103 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_connection->moveToThread(m_thread); |
104 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_thread->start(); |
105 | |||
106 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_connection->establishConnection(); |
107 |
6/12✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 9 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 9 times.
|
9 | QVERIFY(connectedSpy.count() || connectedSpy.wait()); |
108 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
|
9 | QCOMPARE(connectedSpy.count(), 1); |
109 | |||
110 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | m_queue = new Wrapland::Client::EventQueue(this); |
111 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(!m_queue->isValid()); |
112 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_queue->setup(m_connection); |
113 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(m_queue->isValid()); |
114 | |||
115 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | Wrapland::Client::Registry registry; |
116 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy compositorSpy(®istry, &Wrapland::Client::Registry::compositorAnnounced); |
117 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(compositorSpy.isValid()); |
118 | |||
119 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy plasmaVirtualDesktopManagementSpy( |
120 | ®istry, &Wrapland::Client::Registry::plasmaVirtualDesktopManagementAnnounced); | ||
121 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(plasmaVirtualDesktopManagementSpy.isValid()); |
122 | |||
123 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy windowManagementSpy(®istry, |
124 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | SIGNAL(plasmaWindowManagementAnnounced(quint32, quint32))); |
125 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(windowManagementSpy.isValid()); |
126 | |||
127 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(!registry.eventQueue()); |
128 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | registry.setEventQueue(m_queue); |
129 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QCOMPARE(registry.eventQueue(), m_queue); |
130 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | registry.create(m_connection->display()); |
131 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(registry.isValid()); |
132 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | registry.setup(); |
133 | |||
134 | 18 | server.globals.compositor | |
135 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | = std::make_unique<Wrapland::Server::Compositor>(server.display.get()); |
136 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QVERIFY(compositorSpy.wait()); |
137 |
4/8✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
|
18 | m_compositor = registry.createCompositor(compositorSpy.first().first().value<quint32>(), |
138 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | compositorSpy.first().last().value<quint32>(), |
139 | this); | ||
140 | |||
141 | 18 | server.globals.plasma_virtual_desktop_manager | |
142 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | = std::make_unique<Wrapland::Server::PlasmaVirtualDesktopManager>(server.display.get()); |
143 | 9 | server.plasma_vd = server.globals.plasma_virtual_desktop_manager.get(); | |
144 | |||
145 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QVERIFY(plasmaVirtualDesktopManagementSpy.wait()); |
146 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_plasmaVirtualDesktopManagement = registry.createPlasmaVirtualDesktopManagement( |
147 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | plasmaVirtualDesktopManagementSpy.first().first().value<quint32>(), |
148 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | plasmaVirtualDesktopManagementSpy.first().last().value<quint32>(), |
149 | this); | ||
150 | |||
151 | 18 | server.globals.plasma_window_manager | |
152 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | = std::make_unique<Wrapland::Server::PlasmaWindowManager>(server.display.get()); |
153 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | server.globals.plasma_window_manager->setVirtualDesktopManager(server.plasma_vd); |
154 | |||
155 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QVERIFY(windowManagementSpy.wait()); |
156 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | m_windowManagement = registry.createPlasmaWindowManagement( |
157 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | windowManagementSpy.first().first().value<quint32>(), |
158 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | windowManagementSpy.first().last().value<quint32>(), |
159 | this); | ||
160 | |||
161 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy windowSpy(m_windowManagement, |
162 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | SIGNAL(windowCreated(Wrapland::Client::PlasmaWindow*))); |
163 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(windowSpy.isValid()); |
164 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | server.plasma_window = server.globals.plasma_window_manager->createWindow(); |
165 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | server.plasma_window->setPid(1337); |
166 | |||
167 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QVERIFY(windowSpy.wait()); |
168 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | m_window = windowSpy.first().first().value<Wrapland::Client::PlasmaWindow*>(); |
169 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
|
9 | } |
170 | |||
171 | 9 | void TestVirtualDesktop::cleanup() | |
172 | { | ||
173 | #define CLEANUP(variable) \ | ||
174 | if (variable) { \ | ||
175 | delete variable; \ | ||
176 | variable = nullptr; \ | ||
177 | } | ||
178 |
2/4✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
|
9 | CLEANUP(m_compositor) |
179 |
2/4✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
|
9 | CLEANUP(m_plasmaVirtualDesktopManagement) |
180 |
2/4✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
|
9 | CLEANUP(server.plasma_window) |
181 |
2/4✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
|
9 | CLEANUP(m_windowManagement) |
182 |
2/4✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
|
9 | CLEANUP(m_queue) |
183 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
|
9 | if (m_connection) { |
184 | 9 | m_connection->deleteLater(); | |
185 | 9 | m_connection = nullptr; | |
186 | 9 | } | |
187 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
|
9 | if (m_thread) { |
188 | 9 | m_thread->quit(); | |
189 | 9 | m_thread->wait(); | |
190 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
|
9 | delete m_thread; |
191 | 9 | m_thread = nullptr; | |
192 | 9 | } | |
193 | #undef CLEANUP | ||
194 | |||
195 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | server = {}; |
196 | 9 | } | |
197 | |||
198 | 9 | void TestVirtualDesktop::testCreate() | |
199 | { | ||
200 | 9 | QSignalSpy desktopCreatedSpy(m_plasmaVirtualDesktopManagement, | |
201 | &Wrapland::Client::PlasmaVirtualDesktopManagement::desktopCreated); | ||
202 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy managementDoneSpy(m_plasmaVirtualDesktopManagement, |
203 | &Wrapland::Client::PlasmaVirtualDesktopManagement::done); | ||
204 | |||
205 | // on this createDesktop bind() isn't called already, the desktopadded signals will be sent | ||
206 | // after bind happened | ||
207 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | auto serverDesktop1 = server.plasma_vd->createDesktop("0-1"); |
208 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | serverDesktop1->setName("Desktop 1"); |
209 | |||
210 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | desktopCreatedSpy.wait(); |
211 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QList<QVariant> arguments = desktopCreatedSpy.takeFirst(); |
212 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(arguments.at(0).toString(), QStringLiteral("0-1")); |
213 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QCOMPARE(arguments.at(1).toUInt(), (quint32)0); |
214 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | server.plasma_vd->sendDone(); |
215 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | managementDoneSpy.wait(); |
216 | |||
217 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | auto desktop1 = m_plasmaVirtualDesktopManagement->desktops().first(); |
218 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy desktop1DoneSpy(desktop1, &Wrapland::Client::PlasmaVirtualDesktop::done); |
219 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QVERIFY(desktop1DoneSpy.isValid()); |
220 | |||
221 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | serverDesktop1->sendDone(); |
222 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | desktop1DoneSpy.wait(); |
223 | |||
224 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop1->id(), QStringLiteral("0-1")); |
225 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop1->name(), QStringLiteral("Desktop 1")); |
226 | |||
227 | // on those createDesktop the bind will already be done | ||
228 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | auto serverDesktop2 = server.plasma_vd->createDesktop("0-2"); |
229 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | serverDesktop2->setName("Desktop 2"); |
230 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | desktopCreatedSpy.wait(); |
231 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | arguments = desktopCreatedSpy.takeFirst(); |
232 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(arguments.at(0).toString(), QStringLiteral("0-2")); |
233 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | QCOMPARE(arguments.at(1).toUInt(), (quint32)1); |
234 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 9 times.
|
9 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().length(), 2); |
235 | |||
236 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | Wrapland::Server::PlasmaVirtualDesktop* desktop3Int = server.plasma_vd->createDesktop("0-3"); |
237 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | desktop3Int->setName("Desktop 3"); |
238 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | desktopCreatedSpy.wait(); |
239 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | arguments = desktopCreatedSpy.takeFirst(); |
240 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(arguments.at(0).toString(), QStringLiteral("0-3")); |
241 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 9 times.
|
9 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().length(), 3); |
242 | |||
243 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | server.plasma_vd->sendDone(); |
244 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | managementDoneSpy.wait(); |
245 | |||
246 | // get the clients | ||
247 | 9 | Wrapland::Client::PlasmaVirtualDesktop* desktop2 | |
248 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | = m_plasmaVirtualDesktopManagement->desktops()[1]; |
249 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy desktop2DoneSpy(desktop2, &Wrapland::Client::PlasmaVirtualDesktop::done); |
250 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | serverDesktop2->sendDone(); |
251 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | desktop2DoneSpy.wait(); |
252 | |||
253 | 9 | Wrapland::Client::PlasmaVirtualDesktop* desktop3 | |
254 |
2/4✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
|
9 | = m_plasmaVirtualDesktopManagement->desktops()[2]; |
255 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | QSignalSpy desktop3DoneSpy(desktop3, &Wrapland::Client::PlasmaVirtualDesktop::done); |
256 |
1/2✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
|
9 | desktop3Int->sendDone(); |
257 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
|
9 | desktop3DoneSpy.wait(); |
258 | |||
259 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop1->id(), QStringLiteral("0-1")); |
260 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop1->name(), QStringLiteral("Desktop 1")); |
261 | |||
262 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop2->id(), QStringLiteral("0-2")); |
263 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop2->name(), QStringLiteral("Desktop 2")); |
264 | |||
265 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop3->id(), QStringLiteral("0-3")); |
266 |
5/10✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 9 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 9 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 9 times.
|
9 | QCOMPARE(desktop3->name(), QStringLiteral("Desktop 3")); |
267 | |||
268 | // coherence of order between client and server | ||
269 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 9 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 9 times.
|
9 | QCOMPARE(server.plasma_vd->desktops().size(), 3); |
270 |
3/6✓ Branch 0 taken 9 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 9 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 9 times.
|
9 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().length(), 3); |
271 | |||
272 |
3/4✓ Branch 0 taken 36 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 27 times.
✓ Branch 3 taken 9 times.
|
36 | for (int i = 0; i < m_plasmaVirtualDesktopManagement->desktops().length(); ++i) { |
273 |
8/16✓ Branch 0 taken 27 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 27 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 27 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 27 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 27 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 27 times.
✗ Branch 11 not taken.
✓ Branch 12 taken 27 times.
✗ Branch 13 not taken.
✓ Branch 14 taken 27 times.
✗ Branch 15 not taken.
|
27 | QCOMPARE(server.plasma_vd->desktops().at(i)->id(), |
274 | m_plasmaVirtualDesktopManagement->desktops().at(i)->id().toStdString()); | ||
275 | 27 | } | |
276 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 9 times.
|
9 | } |
277 | |||
278 | 1 | void TestVirtualDesktop::testSetRows() | |
279 | { | ||
280 | // rebuild some desktops | ||
281 | 1 | testCreate(); | |
282 | |||
283 | 1 | QSignalSpy rowsChangedSpy(m_plasmaVirtualDesktopManagement, | |
284 | &Wrapland::Client::PlasmaVirtualDesktopManagement::rowsChanged); | ||
285 | |||
286 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | server.plasma_vd->setRows(3); |
287 |
5/10✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
|
1 | QVERIFY(rowsChangedSpy.wait()); |
288 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->rows(), 3); |
289 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
290 | |||
291 | 1 | void TestVirtualDesktop::testConnectNewClient() | |
292 | { | ||
293 | // rebuild some desktops | ||
294 | 1 | testCreate(); | |
295 | |||
296 | 1 | Wrapland::Client::Registry registry; | |
297 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(!registry.eventQueue()); |
298 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | registry.setEventQueue(m_queue); |
299 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QCOMPARE(registry.eventQueue(), m_queue); |
300 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | registry.create(m_connection->display()); |
301 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(registry.isValid()); |
302 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | registry.setup(); |
303 | |||
304 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy plasmaVirtualDesktopManagementSpy( |
305 | ®istry, &Wrapland::Client::Registry::plasmaVirtualDesktopManagementAnnounced); | ||
306 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(plasmaVirtualDesktopManagementSpy.isValid()); |
307 | |||
308 |
5/10✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
|
1 | QVERIFY(plasmaVirtualDesktopManagementSpy.wait()); |
309 | |||
310 | 1 | Wrapland::Client::PlasmaVirtualDesktopManagement* otherPlasmaVirtualDesktopManagement | |
311 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | = registry.createPlasmaVirtualDesktopManagement( |
312 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | plasmaVirtualDesktopManagementSpy.first().first().value<quint32>(), |
313 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | plasmaVirtualDesktopManagementSpy.first().last().value<quint32>(), |
314 | this); | ||
315 | |||
316 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy managementDoneSpy(otherPlasmaVirtualDesktopManagement, |
317 | &Wrapland::Client::PlasmaVirtualDesktopManagement::done); | ||
318 | |||
319 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | managementDoneSpy.wait(); |
320 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(otherPlasmaVirtualDesktopManagement->desktops().length(), 3); |
321 | |||
322 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | delete otherPlasmaVirtualDesktopManagement; |
323 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
324 | |||
325 | 1 | void TestVirtualDesktop::testDestroy() | |
326 | { | ||
327 | // rebuild some desktops | ||
328 | 1 | testCreate(); | |
329 | |||
330 | 1 | auto serverDesktop1 = server.plasma_vd->desktops().front(); | |
331 | 1 | Wrapland::Client::PlasmaVirtualDesktop* desktop1 | |
332 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | = m_plasmaVirtualDesktopManagement->desktops().first(); |
333 | |||
334 | 1 | QSignalSpy serverDesktop1DestroyedSpy(serverDesktop1, &QObject::destroyed); | |
335 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy desktop1DestroyedSpy(desktop1, &QObject::destroyed); |
336 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy desktop1RemovedSpy(desktop1, &Wrapland::Client::PlasmaVirtualDesktop::removed); |
337 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_vd->removeDesktop("0-1"); |
338 | |||
339 | // test that both server and client desktop interfaces go away | ||
340 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | desktop1DestroyedSpy.wait(); |
341 |
12/58✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 17 not taken.
✓ Branch 18 taken 1 times.
✗ Branch 19 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
✗ Branch 26 not taken.
✗ Branch 27 not taken.
✗ Branch 28 not taken.
✗ Branch 29 not taken.
✗ Branch 30 not taken.
✗ Branch 31 not taken.
✗ Branch 32 not taken.
✗ Branch 33 not taken.
✗ Branch 34 not taken.
✗ Branch 35 not taken.
✗ Branch 36 not taken.
✗ Branch 37 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 40 not taken.
✗ Branch 41 not taken.
✗ Branch 42 not taken.
✗ Branch 43 not taken.
✗ Branch 44 not taken.
✗ Branch 45 not taken.
✗ Branch 46 not taken.
✗ Branch 47 not taken.
✗ Branch 48 not taken.
✗ Branch 49 not taken.
✗ Branch 50 not taken.
✗ Branch 51 not taken.
✗ Branch 52 not taken.
✗ Branch 53 not taken.
✓ Branch 54 taken 1 times.
✗ Branch 55 not taken.
✗ Branch 56 not taken.
✓ Branch 57 taken 1 times.
|
1 | QTRY_COMPARE(serverDesktop1DestroyedSpy.count(), 1); |
342 |
12/58✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 17 not taken.
✓ Branch 18 taken 1 times.
✗ Branch 19 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
✗ Branch 26 not taken.
✗ Branch 27 not taken.
✗ Branch 28 not taken.
✗ Branch 29 not taken.
✗ Branch 30 not taken.
✗ Branch 31 not taken.
✗ Branch 32 not taken.
✗ Branch 33 not taken.
✗ Branch 34 not taken.
✗ Branch 35 not taken.
✗ Branch 36 not taken.
✗ Branch 37 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 40 not taken.
✗ Branch 41 not taken.
✗ Branch 42 not taken.
✗ Branch 43 not taken.
✗ Branch 44 not taken.
✗ Branch 45 not taken.
✗ Branch 46 not taken.
✗ Branch 47 not taken.
✗ Branch 48 not taken.
✗ Branch 49 not taken.
✗ Branch 50 not taken.
✗ Branch 51 not taken.
✗ Branch 52 not taken.
✗ Branch 53 not taken.
✓ Branch 54 taken 1 times.
✗ Branch 55 not taken.
✗ Branch 56 not taken.
✓ Branch 57 taken 1 times.
|
1 | QTRY_COMPARE(desktop1RemovedSpy.count(), 1); |
343 |
12/58✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
✓ Branch 14 taken 1 times.
✗ Branch 15 not taken.
✗ Branch 16 not taken.
✗ Branch 17 not taken.
✓ Branch 18 taken 1 times.
✗ Branch 19 not taken.
✓ Branch 20 taken 1 times.
✗ Branch 21 not taken.
✓ Branch 22 taken 1 times.
✗ Branch 23 not taken.
✗ Branch 24 not taken.
✗ Branch 25 not taken.
✗ Branch 26 not taken.
✗ Branch 27 not taken.
✗ Branch 28 not taken.
✗ Branch 29 not taken.
✗ Branch 30 not taken.
✗ Branch 31 not taken.
✗ Branch 32 not taken.
✗ Branch 33 not taken.
✗ Branch 34 not taken.
✗ Branch 35 not taken.
✗ Branch 36 not taken.
✗ Branch 37 not taken.
✗ Branch 38 not taken.
✗ Branch 39 not taken.
✗ Branch 40 not taken.
✗ Branch 41 not taken.
✗ Branch 42 not taken.
✗ Branch 43 not taken.
✗ Branch 44 not taken.
✗ Branch 45 not taken.
✗ Branch 46 not taken.
✗ Branch 47 not taken.
✗ Branch 48 not taken.
✗ Branch 49 not taken.
✗ Branch 50 not taken.
✗ Branch 51 not taken.
✗ Branch 52 not taken.
✗ Branch 53 not taken.
✓ Branch 54 taken 1 times.
✗ Branch 55 not taken.
✗ Branch 56 not taken.
✓ Branch 57 taken 1 times.
|
1 | QTRY_COMPARE(desktop1DestroyedSpy.count(), 1); |
344 | |||
345 | // coherence of order between client and server | ||
346 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(server.plasma_vd->desktops().size(), 2); |
347 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().length(), 2); |
348 | |||
349 |
3/4✓ Branch 0 taken 3 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 2 times.
|
3 | for (int i = 0; i < m_plasmaVirtualDesktopManagement->desktops().length(); ++i) { |
350 |
8/16✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 2 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 2 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 2 times.
✗ Branch 11 not taken.
✓ Branch 12 taken 2 times.
✗ Branch 13 not taken.
✓ Branch 14 taken 2 times.
✗ Branch 15 not taken.
|
2 | QCOMPARE(server.plasma_vd->desktops().at(i)->id(), |
351 | m_plasmaVirtualDesktopManagement->desktops().at(i)->id().toStdString()); | ||
352 | 2 | } | |
353 | |||
354 | // Test the desktopRemoved signal of the manager, remove another desktop as the signals can't be | ||
355 | // tested at the same time | ||
356 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy desktopManagerRemovedSpy( |
357 | 1 | m_plasmaVirtualDesktopManagement, | |
358 | &Wrapland::Client::PlasmaVirtualDesktopManagement::desktopRemoved); | ||
359 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_vd->removeDesktop("0-2"); |
360 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | desktopManagerRemovedSpy.wait(); |
361 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(desktopManagerRemovedSpy.takeFirst().at(0).toString(), QStringLiteral("0-2")); |
362 | |||
363 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(server.plasma_vd->desktops().size(), 1); |
364 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().length(), 1); |
365 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
366 | |||
367 | 1 | void TestVirtualDesktop::testActivate() | |
368 | { | ||
369 | // rebuild some desktops | ||
370 | 1 | testCreate(); | |
371 | |||
372 | 1 | Wrapland::Server::PlasmaVirtualDesktop* serverDesktop1 = server.plasma_vd->desktops().front(); | |
373 | 1 | Wrapland::Client::PlasmaVirtualDesktop* desktop1 | |
374 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | = m_plasmaVirtualDesktopManagement->desktops().first(); |
375 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QVERIFY(desktop1->isActive()); |
376 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QVERIFY(serverDesktop1->active()); |
377 | |||
378 | 1 | Wrapland::Server::PlasmaVirtualDesktop* serverDesktop2 = server.plasma_vd->desktops()[1]; | |
379 | 1 | Wrapland::Client::PlasmaVirtualDesktop* desktop2 | |
380 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | = m_plasmaVirtualDesktopManagement->desktops()[1]; |
381 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QVERIFY(!serverDesktop2->active()); |
382 | |||
383 | 1 | QSignalSpy requestActivateSpy(serverDesktop2, | |
384 | &Wrapland::Server::PlasmaVirtualDesktop::activateRequested); | ||
385 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy activatedSpy(desktop2, &Wrapland::Client::PlasmaVirtualDesktop::activated); |
386 | |||
387 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | desktop2->requestActivate(); |
388 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | requestActivateSpy.wait(); |
389 | |||
390 | // This simulates a compositor which supports only one active desktop at a time | ||
391 |
3/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 3 times.
|
4 | for (auto deskInt : server.plasma_vd->desktops()) { |
392 |
5/8✓ Branch 0 taken 3 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 3 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 3 times.
✓ Branch 6 taken 1 times.
✓ Branch 7 taken 2 times.
|
3 | if (deskInt->id() == desktop2->id().toStdString()) { |
393 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | deskInt->setActive(true); |
394 | 1 | } else { | |
395 |
1/2✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
|
2 | deskInt->setActive(false); |
396 | } | ||
397 | } | ||
398 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | activatedSpy.wait(); |
399 | |||
400 | // correct state in the server | ||
401 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(serverDesktop2->active()); |
402 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(!serverDesktop1->active()); |
403 | // correct state in the client | ||
404 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(serverDesktop2->active()); |
405 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(!serverDesktop1->active()); |
406 | |||
407 | // Test the deactivated signal | ||
408 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy deactivatedSpy(desktop2, &Wrapland::Client::PlasmaVirtualDesktop::deactivated); |
409 | |||
410 |
3/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✓ Branch 3 taken 3 times.
|
4 | for (auto* deskInt : server.plasma_vd->desktops()) { |
411 |
5/8✓ Branch 0 taken 3 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 3 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 3 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✓ Branch 7 taken 2 times.
|
3 | if (deskInt->id() == desktop1->id().toStdString()) { |
412 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | deskInt->setActive(true); |
413 | 1 | } else { | |
414 |
1/2✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
|
2 | deskInt->setActive(false); |
415 | } | ||
416 | } | ||
417 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | deactivatedSpy.wait(); |
418 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
419 | |||
420 | 1 | void TestVirtualDesktop::testEnterLeaveDesktop() | |
421 | { | ||
422 | 1 | testCreate(); | |
423 | |||
424 | 1 | QSignalSpy enterRequestedSpy( | |
425 | 1 | server.plasma_window, &Wrapland::Server::PlasmaWindow::enterPlasmaVirtualDesktopRequested); | |
426 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | m_window->requestEnterVirtualDesktop(QStringLiteral("0-1")); |
427 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | enterRequestedSpy.wait(); |
428 | |||
429 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(enterRequestedSpy.takeFirst().at(0).toString(), QStringLiteral("0-1")); |
430 | |||
431 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy virtualDesktopEnteredSpy( |
432 | 1 | m_window, &Wrapland::Client::PlasmaWindow::plasmaVirtualDesktopEntered); | |
433 | |||
434 | // agree to the request | ||
435 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_window->addPlasmaVirtualDesktop("0-1"); |
436 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(server.plasma_window->plasmaVirtualDesktops().size(), 1); |
437 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QCOMPARE(server.plasma_window->plasmaVirtualDesktops().front(), "0-1"); |
438 | |||
439 | // check if the client received the enter | ||
440 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopEnteredSpy.wait(); |
441 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(virtualDesktopEnteredSpy.takeFirst().at(0).toString(), QStringLiteral("0-1")); |
442 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 1); |
443 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().first(), QStringLiteral("0-1")); |
444 | |||
445 | // add another desktop, server side | ||
446 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_window->addPlasmaVirtualDesktop("0-3"); |
447 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopEnteredSpy.wait(); |
448 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(virtualDesktopEnteredSpy.takeFirst().at(0).toString(), QStringLiteral("0-3")); |
449 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(server.plasma_window->plasmaVirtualDesktops().size(), 2); |
450 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 2); |
451 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops()[1], QStringLiteral("0-3")); |
452 | |||
453 | // try to add an invalid desktop | ||
454 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_window->addPlasmaVirtualDesktop("invalid"); |
455 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 2); |
456 | |||
457 | // remove a desktop | ||
458 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy leaveRequestedSpy( |
459 | 1 | server.plasma_window, &Wrapland::Server::PlasmaWindow::leavePlasmaVirtualDesktopRequested); | |
460 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | m_window->requestLeaveVirtualDesktop(QStringLiteral("0-1")); |
461 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | leaveRequestedSpy.wait(); |
462 | |||
463 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(leaveRequestedSpy.takeFirst().at(0).toString(), QStringLiteral("0-1")); |
464 | |||
465 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy virtualDesktopLeftSpy(m_window, |
466 | &Wrapland::Client::PlasmaWindow::plasmaVirtualDesktopLeft); | ||
467 | |||
468 | // agree to the request | ||
469 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_window->removePlasmaVirtualDesktop("0-1"); |
470 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(server.plasma_window->plasmaVirtualDesktops().size(), 1); |
471 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QCOMPARE(server.plasma_window->plasmaVirtualDesktops().front(), "0-3"); |
472 | |||
473 | // check if the client received the leave | ||
474 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopLeftSpy.wait(); |
475 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(virtualDesktopLeftSpy.takeFirst().at(0).toString(), QStringLiteral("0-1")); |
476 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 1); |
477 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().first(), QStringLiteral("0-3")); |
478 | |||
479 | // Destroy desktop 2 | ||
480 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_vd->removeDesktop("0-3"); |
481 | // the window should receive a left signal from the destroyed desktop | ||
482 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopLeftSpy.wait(); |
483 | |||
484 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 0); |
485 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
486 | |||
487 | 1 | void TestVirtualDesktop::testAllDesktops() | |
488 | { | ||
489 | 1 | testCreate(); | |
490 | 1 | QSignalSpy virtualDesktopEnteredSpy( | |
491 | 1 | m_window, &Wrapland::Client::PlasmaWindow::plasmaVirtualDesktopEntered); | |
492 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy virtualDesktopLeftSpy(m_window, |
493 | &Wrapland::Client::PlasmaWindow::plasmaVirtualDesktopLeft); | ||
494 | |||
495 | // in the beginning the window is on desktop 1 and desktop 3 | ||
496 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_window->addPlasmaVirtualDesktop("0-1"); |
497 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_window->addPlasmaVirtualDesktop("0-3"); |
498 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopEnteredSpy.wait(); |
499 | |||
500 | // setting on all desktops | ||
501 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 2); |
502 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | server.plasma_window->setOnAllDesktops(true); |
503 | // setting on all desktops, the window will leave every desktop | ||
504 | |||
505 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopLeftSpy.wait(); |
506 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 1 times.
|
1 | QCOMPARE(virtualDesktopLeftSpy.count(), 2); |
507 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 0); |
508 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(m_window->isOnAllDesktops()); |
509 | |||
510 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 0); |
511 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(m_window->isOnAllDesktops()); |
512 | |||
513 | // return to the active desktop (0-1) | ||
514 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | server.plasma_window->setOnAllDesktops(false); |
515 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | virtualDesktopEnteredSpy.wait(); |
516 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_window->plasmaVirtualDesktops().length(), 1); |
517 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QCOMPARE(server.plasma_window->plasmaVirtualDesktops().front(), "0-1"); |
518 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QVERIFY(!m_window->isOnAllDesktops()); |
519 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
520 | |||
521 | 1 | void TestVirtualDesktop::testCreateRequested() | |
522 | { | ||
523 | // rebuild some desktops | ||
524 | 1 | testCreate(); | |
525 | |||
526 | 1 | QSignalSpy desktopCreateRequestedSpy( | |
527 | 1 | server.plasma_vd, &Wrapland::Server::PlasmaVirtualDesktopManager::desktopCreateRequested); | |
528 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy desktopCreatedSpy(m_plasmaVirtualDesktopManagement, |
529 | &Wrapland::Client::PlasmaVirtualDesktopManagement::desktopCreated); | ||
530 | |||
531 | // listen for createdRequested | ||
532 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | m_plasmaVirtualDesktopManagement->requestCreateVirtualDesktop(QStringLiteral("Desktop"), 1); |
533 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | desktopCreateRequestedSpy.wait(); |
534 |
5/10✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
|
1 | QCOMPARE(desktopCreateRequestedSpy.first().first().value<std::string>(), "Desktop"); |
535 |
4/8✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
|
1 | QCOMPARE(desktopCreateRequestedSpy.first().at(1).value<uint32_t>(), (uint32_t)1); |
536 | |||
537 | // actually create | ||
538 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | server.plasma_vd->createDesktop("0-4", 1); |
539 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | Wrapland::Server::PlasmaVirtualDesktop* desktopInt = server.plasma_vd->desktops().at(1); |
540 | |||
541 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | QCOMPARE(desktopInt->id(), "0-4"); |
542 |
2/4✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
|
1 | desktopInt->setName("Desktop"); |
543 | |||
544 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | desktopCreatedSpy.wait(); |
545 | |||
546 |
7/14✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 1 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✓ Branch 13 taken 1 times.
|
1 | QCOMPARE(desktopCreatedSpy.first().first().toString(), QStringLiteral("0-4")); |
547 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().count(), 4); |
548 | |||
549 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | auto desktop = m_plasmaVirtualDesktopManagement->desktops().at(1); |
550 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | QSignalSpy desktopDoneSpy(desktop, &Wrapland::Client::PlasmaVirtualDesktop::done); |
551 |
1/2✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
|
1 | desktopInt->sendDone(); |
552 | // desktopDoneSpy.wait(); | ||
553 | // check the order is correct | ||
554 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().at(0)->id(), QStringLiteral("0-1")); |
555 |
5/10✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
|
1 | QCOMPARE(desktop->id(), QStringLiteral("0-4")); |
556 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().at(2)->id(), QStringLiteral("0-2")); |
557 |
6/12✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 1 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 1 times.
|
1 | QCOMPARE(m_plasmaVirtualDesktopManagement->desktops().at(3)->id(), QStringLiteral("0-3")); |
558 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
559 | |||
560 | 1 | void TestVirtualDesktop::testRemoveRequested() | |
561 | { | ||
562 | // rebuild some desktops | ||
563 | 1 | testCreate(); | |
564 | |||
565 | 1 | QSignalSpy desktopRemoveRequestedSpy( | |
566 | 1 | server.plasma_vd, &Wrapland::Server::PlasmaVirtualDesktopManager::desktopRemoveRequested); | |
567 | |||
568 | // request a remove, just check the request arrived, ignore the request. | ||
569 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | m_plasmaVirtualDesktopManagement->requestRemoveVirtualDesktop(QStringLiteral("0-1")); |
570 |
3/6✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
|
1 | desktopRemoveRequestedSpy.wait(); |
571 |
5/10✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✓ Branch 9 taken 1 times.
|
1 | QCOMPARE(desktopRemoveRequestedSpy.first().first().value<std::string>(), "0-1"); |
572 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 1 times.
|
1 | } |
573 | |||
574 |
4/8✓ Branch 0 taken 1 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✓ Branch 4 taken 1 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 1 times.
✗ Branch 7 not taken.
|
1 | QTEST_GUILESS_MAIN(TestVirtualDesktop) |
575 | #include "plasma_virtual_desktop.moc" | ||
576 |