Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linphone-desktop
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
linphone-desktop
Commits
38a4df60
Commit
38a4df60
authored
Jul 19, 2017
by
Ronan Abhamon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(tests/main-view): add a `showAboutPopup` method
parent
55b07cb1
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
50 additions
and
21 deletions
+50
-21
TestUtils.cpp
src/tests/TestUtils.cpp
+18
-11
TestUtils.hpp
src/tests/TestUtils.hpp
+12
-2
MainViewTest.cpp
src/tests/main-view/MainViewTest.cpp
+18
-8
MainViewTest.hpp
src/tests/main-view/MainViewTest.hpp
+1
-0
About.qml
ui/views/App/Main/Dialogs/About.qml
+1
-0
No files found.
src/tests/TestUtils.cpp
View file @
38a4df60
...
...
@@ -24,6 +24,7 @@
#undef QT_NO_DEBUG
#endif // ifdef QT_NO_DEBUG
#include <QTest>
#include <QtGlobal>
#include "../app/App.hpp"
...
...
@@ -32,6 +33,19 @@
// =============================================================================
void
TestUtils
::
executeKeySequence
(
QQuickWindow
*
window
,
QKeySequence
sequence
)
{
for
(
int
i
=
0
;
i
<
sequence
.
count
();
++
i
)
{
int
key
=
sequence
[
i
];
QTest
::
keyClick
(
window
,
Qt
::
Key
(
key
&
~
Qt
::
KeyboardModifierMask
),
Qt
::
KeyboardModifiers
(
key
&
Qt
::
KeyboardModifierMask
)
);
}
}
// -----------------------------------------------------------------------------
static
void
printItemTree
(
const
QQuickItem
*
item
,
QString
&
output
,
int
spaces
)
{
output
.
append
(
QString
().
leftJustified
(
spaces
,
' '
));
output
.
append
(
item
->
metaObject
()
->
className
());
...
...
@@ -66,7 +80,7 @@ QQuickItem *TestUtils::getMainLoaderFromMainWindow () {
// -----------------------------------------------------------------------------
QQuickItem
*
TestUtils
::
getVirtualWindow
(
const
QQuickWindow
*
window
)
{
QQuickItem
*
TestUtils
::
getVirtualWindow
Content
(
const
QQuickWindow
*
window
)
{
Q_CHECK_PTR
(
window
);
QList
<
QQuickItem
*>
items
=
window
->
contentItem
()
->
childItems
();
...
...
@@ -82,16 +96,9 @@ QQuickItem *TestUtils::getVirtualWindow (const QQuickWindow *window) {
QQuickItem
*
virtualWindow
=
items
.
at
(
1
);
Q_ASSERT
(
!
strncmp
(
virtualWindow
->
metaObject
()
->
className
(),
name
,
sizeof
name
-
1
));
return
virtualWindow
;
}
// -----------------------------------------------------------------------------
QQuickItem
*
TestUtils
::
getVirtualWindowContainer
(
const
QQuickItem
*
virtualWindow
)
{
Q_CHECK_PTR
(
virtualWindow
);
QList
<
QQuickItem
*>
items
=
virtualWindow
->
childItems
();
items
=
virtualWindow
->
childItems
();
Q_ASSERT
(
items
.
size
()
==
2
);
return
items
.
at
(
1
);
items
=
items
.
at
(
1
)
->
childItems
();
return
items
.
empty
()
?
nullptr
:
items
.
at
(
0
);
}
src/tests/TestUtils.hpp
View file @
38a4df60
...
...
@@ -25,10 +25,20 @@
// =============================================================================
#define CHECK_VIRTUAL_WINDOW_CONTENT_INFO(WINDOW, TYPE, NAME) \
do { \
QQuickItem *virtualWindowContent = TestUtils::getVirtualWindowContent(WINDOW); \
QVERIFY(virtualWindowContent); \
QVERIFY(!strncmp(virtualWindowContent->metaObject()->className(), TYPE, sizeof TYPE - 1)); \
QCOMPARE(virtualWindowContent->objectName(), QStringLiteral(NAME)); \
} while (0)
namespace
TestUtils
{
void
executeKeySequence
(
QQuickWindow
*
window
,
QKeySequence
sequence
);
void
printItemTree
(
const
QQuickItem
*
item
);
QQuickItem
*
getMainLoaderFromMainWindow
();
QQuickItem
*
getVirtualWindow
(
const
QQuickWindow
*
window
);
QQuickItem
*
getVirtualWindowCont
ainer
(
const
QQuickItem
*
virtualW
indow
);
QQuickItem
*
getVirtualWindowCont
ent
(
const
QQuickWindow
*
w
indow
);
}
src/tests/main-view/MainViewTest.cpp
View file @
38a4df60
...
...
@@ -29,6 +29,22 @@
// =============================================================================
void
MainViewTest
::
showAboutPopup
()
{
QQuickWindow
*
mainWindow
=
App
::
getInstance
()
->
getMainWindow
();
// Open popup.
TestUtils
::
executeKeySequence
(
mainWindow
,
QKeySequence
::
HelpContents
);
QTest
::
qWait
(
1000
);
CHECK_VIRTUAL_WINDOW_CONTENT_INFO
(
mainWindow
,
"DialogPlus_QMLTYPE_"
,
"__about"
);
// Close popup.
QTest
::
mouseClick
(
mainWindow
,
Qt
::
LeftButton
,
Qt
::
KeyboardModifiers
(),
QPoint
(
476
,
392
));
QTest
::
qWait
(
1000
);
QVERIFY
(
!
TestUtils
::
getVirtualWindowContent
(
mainWindow
));
}
void
MainViewTest
::
showManageAccountsPopup
()
{
QQuickWindow
*
mainWindow
=
App
::
getInstance
()
->
getMainWindow
();
...
...
@@ -36,17 +52,11 @@ void MainViewTest::showManageAccountsPopup () {
QTest
::
mouseClick
(
mainWindow
,
Qt
::
LeftButton
,
Qt
::
KeyboardModifiers
(),
QPoint
(
100
,
35
));
QTest
::
qWait
(
1000
);
const
char
name
[]
=
"DialogPlus_QMLTYPE_"
;
QQuickItem
*
virtualWindow
=
TestUtils
::
getVirtualWindow
(
mainWindow
);
QQuickItem
*
virtualWindowContent
=
TestUtils
::
getVirtualWindowContainer
(
virtualWindow
)
->
childItems
().
at
(
0
);
QVERIFY
(
virtualWindowContent
);
QVERIFY
(
!
strncmp
(
virtualWindowContent
->
metaObject
()
->
className
(),
name
,
sizeof
name
-
1
));
QCOMPARE
(
virtualWindowContent
->
objectName
(),
QStringLiteral
(
"__manageAccounts"
));
CHECK_VIRTUAL_WINDOW_CONTENT_INFO
(
mainWindow
,
"DialogPlus_QMLTYPE_"
,
"__manageAccounts"
);
// Close popup.
QTest
::
mouseClick
(
mainWindow
,
Qt
::
LeftButton
,
Qt
::
KeyboardModifiers
(),
QPoint
(
476
,
392
));
QTest
::
qWait
(
1000
);
QVERIFY
(
TestUtils
::
getVirtualWindowContainer
(
virtualWindow
)
->
childItems
().
empty
(
));
QVERIFY
(
!
TestUtils
::
getVirtualWindowContent
(
mainWindow
));
}
src/tests/main-view/MainViewTest.hpp
View file @
38a4df60
...
...
@@ -32,5 +32,6 @@ public:
~
MainViewTest
()
=
default
;
private
slots
:
void
showAboutPopup
();
void
showManageAccountsPopup
();
};
ui/views/App/Main/Dialogs/About.qml
View file @
38a4df60
...
...
@@ -19,6 +19,7 @@ DialogPlus {
]
centeredButtons
:
true
objectName
:
'
__about
'
height
:
AboutStyle
.
height
width
:
AboutStyle
.
width
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment