Changeset View
Changeset View
Standalone View
Standalone View
src/tests/quick-tests/tst_StickerPicker.qml
| /* | /* | ||||
| * This file is part of kazv. | * This file is part of kazv. | ||||
| * SPDX-FileCopyrightText: 2024 tusooa <tusooa@kazv.moe> | * SPDX-FileCopyrightText: 2024 tusooa <tusooa@kazv.moe> | ||||
| * SPDX-License-Identifier: AGPL-3.0-or-later | * SPDX-License-Identifier: AGPL-3.0-or-later | ||||
| */ | */ | ||||
| import QtQuick 2.15 | import QtQuick 2.15 | ||||
| import QtQuick.Layouts 1.15 | import QtQuick.Layouts 1.15 | ||||
| import QtTest 1.0 | import QtTest 1.0 | ||||
| import '../../contents/ui' as Kazv | import '../../contents/ui' as Kazv | ||||
| import 'test-helpers.js' as Helpers | import 'test-helpers.js' as JsHelpers | ||||
| import 'test-helpers' as TestHelpers | import 'test-helpers' as QmlHelpers | ||||
| import moe.kazv.mxc.kazv 0.0 as MK | import moe.kazv.mxc.kazv 0.0 as MK | ||||
| Item { | QmlHelpers.TestItem { | ||||
| id: item | id: item | ||||
| width: 800 | |||||
| height: 600 | |||||
| property var l10n: Helpers.fluentMock | |||||
| property var matrixSdk: TestHelpers.MatrixSdkMock {} | |||||
| property var sdkVars: ({}) | |||||
| function makeSticker(sticker) { | function makeSticker(sticker) { | ||||
| return { | return { | ||||
| type: 'm.sticker', | type: 'm.sticker', | ||||
| content: { | content: { | ||||
| body: sticker.body, | body: sticker.body, | ||||
| url: sticker.mxcUri, | url: sticker.mxcUri, | ||||
| info: sticker.info, | info: sticker.info, | ||||
| }, | }, | ||||
| ▲ Show 20 Lines • Show All 75 Lines • ▼ Show 20 Lines | TestCase { | ||||
| function test_stickerPicker() { | function test_stickerPicker() { | ||||
| verify(findChild(stickerPicker, 'stickerPack0')); | verify(findChild(stickerPicker, 'stickerPack0')); | ||||
| verify(findChild(stickerPicker, 'stickerPack1')); | verify(findChild(stickerPicker, 'stickerPack1')); | ||||
| verify(findChild(stickerPicker, 'sticker0')); | verify(findChild(stickerPicker, 'sticker0')); | ||||
| verify(findChild(stickerPicker, 'sticker1')); | verify(findChild(stickerPicker, 'sticker1')); | ||||
| const stickerButton = findChild(stickerPicker, 'sticker1'); | const stickerButton = findChild(stickerPicker, 'sticker1'); | ||||
| mouseClick(stickerButton); | mouseClick(stickerButton); | ||||
| tryVerify(() => sendMessageRequestedSpy.count === 1, 1000); | tryVerify(() => sendMessageRequestedSpy.count === 1, 1000); | ||||
| verify(Helpers.deepEqual(sendMessageRequestedSpy.signalArguments[0][0], makeSticker(stickerPack0.get(1)))); | verify(JsHelpers.deepEqual(sendMessageRequestedSpy.signalArguments[0][0], makeSticker(stickerPack0.get(1)))); | ||||
| mouseClick(findChild(stickerPicker, 'stickerPack1')); | mouseClick(findChild(stickerPicker, 'stickerPack1')); | ||||
| tryVerify(() => findChild(stickerPicker, 'sticker0').sticker.mxcUri === 'mxc://example.org/some2'); | tryVerify(() => findChild(stickerPicker, 'sticker0').sticker.mxcUri === 'mxc://example.org/some2'); | ||||
| mouseClick(findChild(stickerPicker, 'sticker0')); | mouseClick(findChild(stickerPicker, 'sticker0')); | ||||
| tryVerify(() => sendMessageRequestedSpy.count === 2, 1000); | tryVerify(() => sendMessageRequestedSpy.count === 2, 1000); | ||||
| verify(Helpers.deepEqual(sendMessageRequestedSpy.signalArguments[1][0], makeSticker(stickerPack1.get(0)))); | verify(JsHelpers.deepEqual(sendMessageRequestedSpy.signalArguments[1][0], makeSticker(stickerPack1.get(0)))); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||