Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F7893209
tst_JoinRoomPage.qml
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
3 KB
Referenced Files
None
Subscribers
None
tst_JoinRoomPage.qml
View Options
/*
* This file is part of kazv.
* SPDX-FileCopyrightText: 2024 tusooa <tusooa@kazv.moe>
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
import
QtQuick
2.15
import
QtQuick
.
Layouts
1.15
import
QtTest
1.0
import
'../../contents/ui'
as
Kazv
import
'test-helpers.js'
as
Helpers
import
'test-helpers'
as
TestHelpers
import
moe
.
kazv
.
mxc
.
kazv
0.0
as
MK
Item
{
id: item
width:
800
height:
600
property
var
promiseComp:
Component
{
TestHelpers
.
MatrixPromiseMock
{}
}
property
var
l10n:
Helpers
.
fluentMock
property
var
showPassiveNotification:
()
=>
{}
property
var
matrixSdk:
TestHelpers
.
MatrixSdkMock
{
property
var
_joinRoomCalled
:
0
property
var
_joinRoomArgs
:
({})
property
var
_joinRoomPromise
:
undefined
function
joinRoom
(
room
,
serverNames
)
{
++
item
.
matrixSdk
.
_joinRoomCalled
;
item
.
matrixSdk
.
_joinRoomArgs
=
{
room
,
serverNames
,
};
item
.
matrixSdk
.
_joinRoomPromise
=
promiseComp
.
createObject
(
item
);
return
item
.
matrixSdk
.
_joinRoomPromise
;
}
}
property
var
sdkVars:
({})
property
var
pageStack:
({
removePage
(
page
)
{
++
item
.
pageStack
.
_removePageCalled
;
},
_removePageCalled
:
0
,
})
Kazv
.
JoinRoomPage
{
id: joinRoomPage
}
TestCase
{
id: joinRoomPageTest
name:
'JoinRoomPageTest'
when:
windowShown
function
cleanup
()
{
item
.
matrixSdk
.
_joinRoomCalled
=
0
;
item
.
matrixSdk
.
_joinRoomArgs
=
{};
item
.
matrixSdk
.
_joinRoomPromise
=
undefined
;
item
.
pageStack
.
_removePageCalled
=
0
;
}
function
test_joinRoomWithServers
()
{
findChild
(
joinRoomPage
,
'idOrAliasInput'
).
text
=
'#foo:example.com'
;
findChild
(
joinRoomPage
,
'serversInput'
).
text
=
'example.com\nexample.org'
;
const
button
=
findChild
(
joinRoomPage
,
'joinRoomButton'
);
verify
(
button
.
enabled
);
mouseClick
(
button
);
tryVerify
(()
=>
item
.
matrixSdk
.
_joinRoomCalled
===
1
,
1000
);
console
.
log
(
JSON
.
stringify
(
item
.
matrixSdk
.
_joinRoomArgs
));
verify
(
Helpers
.
deepEqual
(
item
.
matrixSdk
.
_joinRoomArgs
,
{
room:
'#foo:example.com'
,
serverNames:
[
'example.com'
,
'example.org'
],
}));
item
.
matrixSdk
.
_joinRoomPromise
.
resolve
(
true
,
{});
tryVerify
(()
=>
item
.
pageStack
.
_removePageCalled
===
1
);
}
function
test_joinRoomWithoutServers
()
{
findChild
(
joinRoomPage
,
'idOrAliasInput'
).
text
=
'#foo:example.com'
;
findChild
(
joinRoomPage
,
'serversInput'
).
text
=
''
;
const
button
=
findChild
(
joinRoomPage
,
'joinRoomButton'
);
verify
(
button
.
enabled
);
mouseClick
(
button
);
tryVerify
(()
=>
item
.
matrixSdk
.
_joinRoomCalled
===
1
,
1000
);
verify
(
Helpers
.
deepEqual
(
item
.
matrixSdk
.
_joinRoomArgs
,
{
room:
'#foo:example.com'
,
serverNames:
[],
}));
item
.
matrixSdk
.
_joinRoomPromise
.
resolve
(
true
,
{});
tryVerify
(()
=>
item
.
pageStack
.
_removePageCalled
===
1
);
}
function
test_joinRoomFailure
()
{
findChild
(
joinRoomPage
,
'idOrAliasInput'
).
text
=
'#foo:example.com'
;
findChild
(
joinRoomPage
,
'serversInput'
).
text
=
''
;
const
button
=
findChild
(
joinRoomPage
,
'joinRoomButton'
);
verify
(
button
.
enabled
);
mouseClick
(
button
);
tryVerify
(()
=>
item
.
matrixSdk
.
_joinRoomCalled
===
1
,
1000
);
item
.
matrixSdk
.
_joinRoomPromise
.
resolve
(
false
,
{});
tryVerify
(()
=>
item
.
pageStack
.
_removePageCalled
===
0
);
}
}
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Oct 2, 4:51 AM (1 d, 6 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
471328
Default Alt Text
tst_JoinRoomPage.qml (3 KB)
Attached To
Mode
rK kazv
Attached
Detach File
Event Timeline
Log In to Comment