From a72af9cba542ebde03047d7fc24ff1f2c3f5639b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Blin?= <sebastien.blin@savoirfairelinux.com> Date: Tue, 13 Feb 2024 10:21:35 -0500 Subject: [PATCH] tests: add example for mocking datas Change-Id: I060a991726bc8c1cd57f267d97833dcd04519bab --- .../components/AccountComboBoxPopup.qml | 1 + tests/qml/src/tst_AccountComboBox.qml | 51 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 tests/qml/src/tst_AccountComboBox.qml diff --git a/src/app/mainview/components/AccountComboBoxPopup.qml b/src/app/mainview/components/AccountComboBoxPopup.qml index 2f1b633a5..745ec4915 100644 --- a/src/app/mainview/components/AccountComboBoxPopup.qml +++ b/src/app/mainview/components/AccountComboBoxPopup.qml @@ -223,6 +223,7 @@ Popup { JamiListView { id: listView + objectName: "accountList" Layout.fillHeight: true Layout.preferredWidth: parent.width diff --git a/tests/qml/src/tst_AccountComboBox.qml b/tests/qml/src/tst_AccountComboBox.qml new file mode 100644 index 000000000..47479a4b7 --- /dev/null +++ b/tests/qml/src/tst_AccountComboBox.qml @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2024 Savoir-faire Linux Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <https://www.gnu.org/licenses/>. + */ +import QtQuick +import QtTest + +import net.jami.Adapters 1.1 +import net.jami.Models 1.1 +import net.jami.Constants 1.1 +import net.jami.Enums 1.1 + +import "../../../src/app/" +import "../../../src/app/mainview" +import "../../../src/app/mainview/components" +import "../../../src/app/commoncomponents" + +TestWrapper { + AccountComboBoxPopup { + id: uut + + function loadMockData() { + return JSON.parse('[\ + {"Alias":"Foo","ID":"a2d724d18a943e6c","NotificationCount":0,"Status":5,"Type":1,"Username":"foo"}, \ + {"Alias":"Bar","ID":"8a22b7d0176327db","NotificationCount":0,"Status":5,"Type":1,"Username":"bar"}, \ + {"Alias":"TEST JAMI","ID":"3b7d2b9e2af83a47","NotificationCount":0,"Status":5,"Type":2,"Username":"696"}, \ + {"Alias":"Whatever","ID":"131ad59045a9a146","NotificationCount":0,"Status":5,"Type":1,"Username":"whatever"}]') + } + + TestCase { + name: "Check model size" + function test_checkModelSize() { + var accountList = findChild(uut, "accountList") + accountList.model = uut.loadMockData() + compare(accountList.model.length, 4) + } + } + } +} -- GitLab