Add test coverage of new features

This commit is contained in:
Veronica Berglyd Olsen
2024-10-26 23:28:34 +02:00
parent ceabc666c3
commit f2fc19b168
5 changed files with 117 additions and 8 deletions
+18 -2
View File
@@ -22,9 +22,12 @@ from __future__ import annotations
import sys
from unittest.mock import MagicMock
import pytest
from PyQt5.QtCore import pyqtSlot
from PyQt5.QtCore import QUrl, pyqtSlot
from PyQt5.QtGui import QDesktopServices
from PyQt5.QtPrintSupport import QPrintPreviewDialog
from PyQt5.QtWidgets import QAction, QListWidgetItem
@@ -225,13 +228,26 @@ def testToolManuscript_Features(monkeypatch, qtbot, nwGUI, projPath, mockRnd):
assert (item := listView.topLevelItem(3)) and item.data(0, keyRole) == "000000000000c:T0006"
assert (item := listView.topLevelItem(4)) and item.data(0, keyRole) == "000000000000e:T0001"
# Click Outline
# Click outline
item = listView.topLevelItem(4)
assert item is not None
with qtbot.waitSignal(manus.buildOutline.outlineEntryClicked) as signal:
manus.buildOutline._onItemClick(item)
assert signal.args == ["000000000000e:T0001"]
# Preview Navigation
assert manus.docPreview.source() == QUrl("#000000000000e:T0001")
manus.docPreview.navigateTo("000000000000c:T0002")
assert manus.docPreview.source() == QUrl("#000000000000c:T0002")
manus.docPreview._linkClicked(QUrl("#000000000000c:T0003"))
assert manus.docPreview.source() == QUrl("#000000000000c:T0003")
with monkeypatch.context() as mp:
openUrl = MagicMock()
mp.setattr(QDesktopServices, "openUrl", openUrl)
manus.docPreview._linkClicked(QUrl("http://www.example.com"))
assert openUrl.called is True
assert openUrl.call_args[0][0] == QUrl("http://www.example.com")
# Check Preview Stats
assert manus.docStats.mainStack.currentWidget() == manus.docStats.minWidget
assert manus.docStats.minWordCount.text() == "25"