Update tests and test coverage
This commit is contained in:
@@ -26,7 +26,7 @@ import pytest
|
||||
|
||||
from PyQt6.QtCore import QEvent, QItemSelectionModel, QModelIndex, QPointF
|
||||
from PyQt6.QtGui import QMouseEvent
|
||||
from PyQt6.QtWidgets import QMenu, QMessageBox
|
||||
from PyQt6.QtWidgets import QMenu
|
||||
|
||||
from novelwriter import CONFIG, SHARED
|
||||
from novelwriter.dialogs.docmerge import GuiDocMerge
|
||||
@@ -34,6 +34,7 @@ from novelwriter.dialogs.docsplit import GuiDocSplit
|
||||
from novelwriter.dialogs.editlabel import GuiEditLabel
|
||||
from novelwriter.enum import nwDocMode, nwItemClass, nwItemLayout, nwItemType
|
||||
from novelwriter.gui.projtree import _TreeContextMenu
|
||||
from novelwriter.shared import _GuiAlert
|
||||
from novelwriter.types import (
|
||||
QtAccepted, QtModNone, QtMouseLeft, QtMouseMiddle, QtRejected,
|
||||
QtScrollAlwaysOff, QtScrollAsNeeded
|
||||
@@ -627,7 +628,7 @@ def testGuiProjTree_DeleteRequest(qtbot, caplog, monkeypatch, nwGUI, projPath, m
|
||||
|
||||
# User can cancel move to trash
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
||||
mp.setattr(_GuiAlert, "finalState", False)
|
||||
projTree.processDeleteRequest(hScenes, askFirst=True)
|
||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
||||
@@ -645,7 +646,7 @@ def testGuiProjTree_DeleteRequest(qtbot, caplog, monkeypatch, nwGUI, projPath, m
|
||||
|
||||
# User can block permanent deletion
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
||||
mp.setattr(_GuiAlert, "finalState", False)
|
||||
projTree.processDeleteRequest(hScenes[0:2], askFirst=True)
|
||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
||||
@@ -677,7 +678,7 @@ def testGuiProjTree_DeleteRequest(qtbot, caplog, monkeypatch, nwGUI, projPath, m
|
||||
|
||||
# Trash can be completely emptied, but user can block it
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr(QMessageBox, "result", lambda *a: QMessageBox.StandardButton.No)
|
||||
mp.setattr(_GuiAlert, "finalState", False)
|
||||
projTree.emptyTrash()
|
||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||
"Novel", "Title Page", "Chapter Folder", "Plot", "Characters", "Trash",
|
||||
@@ -995,7 +996,7 @@ def testGuiProjTree_Duplicate(qtbot, monkeypatch, nwGUI, projPath, mockRnd):
|
||||
|
||||
# Duplicate title page, but select no
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr(QMessageBox, "result", lambda *a: QtRejected)
|
||||
mp.setattr(_GuiAlert, "finalState", False)
|
||||
projTree.duplicateFromHandle(C.hTitlePage)
|
||||
assert [n.item.itemName for n in tree.model.root.allChildren()] == [
|
||||
"Novel", "Title Page", "New Folder", "New Chapter", "New Scene",
|
||||
@@ -1302,7 +1303,7 @@ def testGuiProjTree_ContextMenu(qtbot, monkeypatch, nwGUI, projPath, mockRnd):
|
||||
|
||||
# Click no on the dialog
|
||||
with monkeypatch.context() as mp:
|
||||
mp.setattr(QMessageBox, "result", lambda *a: QtRejected)
|
||||
mp.setattr(_GuiAlert, "finalState", False)
|
||||
ctxMenu._convertFolderToFile(nwItemLayout.DOCUMENT)
|
||||
assert nodeOne.item.isFolderType()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user