Verify deleted-device exclusion in owner view and capture pairing guidance
This commit is contained in:
1 parent
eb6ec1f2ca
commit
891e580b7c
1 file changed
+7
@@ -15,6 +15,7 @@
|
||||
#include <QAbstractItemModelTester>
|
||||
#include <QMenu>
|
||||
#include <QMessageBox>
|
||||
#include <QDir>
|
||||
#include <QPainter>
|
||||
#include <QMouseEvent>
|
||||
#include <QScopeGuard>
|
||||
@@ -194,6 +195,7 @@ private slots:
|
||||
auto* dialog = window.findChild<QInputDialog*>("devgroupIncomingPin"); QVERIFY(dialog && dialog->isVisible());
|
||||
QVERIFY(dialog->labelText().contains("personal device subgroup"));
|
||||
QVERIFY(dialog->labelText().contains("simply close this window"));
|
||||
QVERIFY(dialog->grab().save(QDir::tempPath() + "/device-link-pin-help.png"));
|
||||
auto* box = dialog->findChild<QDialogButtonBox*>(); QVERIFY(box); QVERIFY(!box->button(QDialogButtonBox::Ok)->isEnabled());
|
||||
dialog->setTextValue("1234"); QVERIFY(box->button(QDialogButtonBox::Ok)->isEnabled()); dialog->accept();
|
||||
QCOMPARE(devgroupRequests.back().action, CHAT_DEVGROUP_ACCEPT);
|
||||
@@ -233,6 +235,10 @@ private slots:
|
||||
if (scenario == "grouped" || scenario == "unnamed-group") member[164] = 42;
|
||||
if (scenario == "grouped") memcpy(member.data() + 196, "Devices", 8);
|
||||
fill(panel, "123", member);
|
||||
if (scenario == "deleted") { // Владелец канала видит удалённую строку, но связывать её также нельзя.
|
||||
panel.model()->setChannel("123", true);
|
||||
panel.onMemberList("123", 1, reinterpret_cast<const uint8_t*>(member.constData()), member.size());
|
||||
}
|
||||
auto* view = panel.findChild<QListView*>();
|
||||
auto* grouped = qobject_cast<GroupedMemberModel*>(view->model()); QVERIFY(grouped);
|
||||
if (grouped->index(0, 0).data(GroupedMemberModel::GroupHeaderRole).toBool()) QVERIFY(grouped->toggle(0));
|
||||
@@ -264,6 +270,7 @@ private slots:
|
||||
auto* dialog = panel.findChild<QMessageBox*>("linkMyDeviceConfirmation"); QVERIFY(dialog);
|
||||
const auto close = qScopeGuard([dialog] { dialog->reject(); });
|
||||
QVERIFY(devgroupRequests.empty()); QVERIFY(dialog->text().contains("shared keys"));
|
||||
if (scenario == "cancel") QVERIFY(dialog->grab().save(QDir::tempPath() + "/device-link-confirmation.png"));
|
||||
QPushButton* link = nullptr;
|
||||
for (auto* button : dialog->buttons()) if (button->text() == "Start linking") link = qobject_cast<QPushButton*>(button);
|
||||
QVERIFY(link && link->isEnabled());
|
||||
|
||||
Reference in new issue
Block a user