Fix tests

This commit is contained in:
Veronica Berglyd Olsen
2025-06-19 21:32:11 +02:00
parent efa82e1761
commit 0d94a84724
15 changed files with 230 additions and 124 deletions
+21 -21
View File
@@ -2074,7 +2074,7 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
origText = docEditor.getText()
# Select the Word "est"
docEditor.setCursorPosition(645)
docEditor.setCursorPosition(663)
docEditor._makeSelection(QTextCursor.SelectionType.WordUnderCursor)
cursor = docEditor.textCursor()
assert cursor.selectedText() == "est"
@@ -2087,11 +2087,11 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
# Find next by enter key
monkeypatch.setattr(docSearch.searchBox, "hasFocus", lambda: True)
qtbot.keyClick(docSearch.searchBox, Qt.Key.Key_Return, delay=KEY_DELAY)
assert abs(docEditor.getCursorPosition() - 1299) < 3
assert abs(docEditor.getCursorPosition() - 1317) < 3
# Find next by button
qtbot.mouseClick(docSearch.searchButton, QtMouseLeft, delay=KEY_DELAY)
assert abs(docEditor.getCursorPosition() - 1513) < 3
assert abs(docEditor.getCursorPosition() - 1531) < 3
# Activate loop search
docSearch.toggleLoop.activate(QAction.ActionEvent.Trigger)
@@ -2100,7 +2100,7 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
# Find next by menu Search > Find Next
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 647) < 3
assert abs(docEditor.getCursorPosition() - 665) < 3
# Close search
docSearch.cancelSearch.activate(QAction.ActionEvent.Trigger)
@@ -2139,13 +2139,13 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
# Set valid RegEx
docSearch.setSearchText(r"\bSus")
qtbot.mouseClick(docSearch.searchButton, QtMouseLeft, delay=KEY_DELAY)
assert abs(docEditor.getCursorPosition() - 223) < 3
assert abs(docEditor.getCursorPosition() - 241) < 3
# Find next and then prev
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 324) < 3
assert abs(docEditor.getCursorPosition() - 342) < 3
nwGUI.mainMenu.aFindPrev.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 223) < 3
assert abs(docEditor.getCursorPosition() - 241) < 3
# Make RegEx case sensitive
docSearch.toggleCase.activate(QAction.ActionEvent.Trigger)
@@ -2154,11 +2154,11 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
# Find next/prev (one result)
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 626) < 3
assert abs(docEditor.getCursorPosition() - 644) < 3
nwGUI.mainMenu.aFindPrev.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 626) < 3
assert abs(docEditor.getCursorPosition() - 644) < 3
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 626) < 3
assert abs(docEditor.getCursorPosition() - 644) < 3
# Trigger replace
nwGUI.mainMenu.aReplace.activate(QAction.ActionEvent.Trigger)
@@ -2175,22 +2175,22 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
assert CONFIG.searchMatchCap is True
# Replace "Sus" with "Foo" via menu
docEditor.setCursorPosition(605)
docEditor.setCursorPosition(623)
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
nwGUI.mainMenu.aReplaceNext.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[623:634] == "Foopendisse"
assert docEditor.getText()[641:652] == "Foopendisse"
# Find next/prev to loop file
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 223) < 3
assert abs(docEditor.getCursorPosition() - 241) < 3
nwGUI.mainMenu.aFindPrev.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 1805) < 3
assert abs(docEditor.getCursorPosition() - 1823) < 3
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 223) < 3
assert abs(docEditor.getCursorPosition() - 241) < 3
# Replace "sus" with "foo" via replace button
qtbot.mouseClick(docSearch.replaceButton, QtMouseLeft, delay=KEY_DELAY)
assert docEditor.getText()[220:228] == "foocipit"
assert docEditor.getText()[238:246] == "foocipit"
# Revert last two replaces
assert docEditor.docAction(nwDocAction.UNDO)
@@ -2204,7 +2204,7 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
# Close search and select "est" again
docSearch.cancelSearch.activate(QAction.ActionEvent.Trigger)
docEditor.setCursorPosition(645)
docEditor.setCursorPosition(663)
docEditor._makeSelection(QTextCursor.SelectionType.WordUnderCursor)
cursor = docEditor.textCursor()
assert cursor.selectedText() == "est"
@@ -2221,9 +2221,9 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
# Only one match
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 647) < 3
assert abs(docEditor.getCursorPosition() - 665) < 3
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 647) < 3
assert abs(docEditor.getCursorPosition() - 665) < 3
# Enable next doc search
docSearch.toggleProject.activate(QAction.ActionEvent.Trigger)
@@ -2234,9 +2234,9 @@ def testGuiEditor_Search(qtbot, monkeypatch, nwGUI, prjLipsum):
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert docEditor.docHandle == "2426c6f0ca922" # Next document
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 620) < 3
assert abs(docEditor.getCursorPosition() - 651) < 3
nwGUI.mainMenu.aFindNext.activate(QAction.ActionEvent.Trigger)
assert abs(docEditor.getCursorPosition() - 1127) < 3
assert abs(docEditor.getCursorPosition() - 1157) < 3
# Next doc, no match
assert CONFIG.searchNextFile is True
+40 -39
View File
@@ -68,154 +68,155 @@ def testGuiMainMenu_EditFormat(qtbot, monkeypatch, nwGUI, prjLipsum):
assert docEditor.docAction(nwDocAction.COPY) is False
assert nwGUI.openProject(prjLipsum) is True
x = 72
# Split By Chapter
assert nwGUI.openDocument("4c4f28287af27") is True
docEditor.setCursorPosition(57)
cleanText = docEditor.getText()[54:101]
docEditor.setCursorPosition(x+3)
cleanText = docEditor.getText()[x:x+47]
# Bold
mainMenu.aFmtBold.activate(QAction.ActionEvent.Trigger)
fmtStr = "**Pellentesque** nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:105] == fmtStr
assert docEditor.getText()[x:x+51] == fmtStr
mainMenu.aFmtBold.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Italic
mainMenu.aFmtItalic.activate(QAction.ActionEvent.Trigger)
fmtStr = "_Pellentesque_ nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:103] == fmtStr
assert docEditor.getText()[x:x+49] == fmtStr
mainMenu.aFmtItalic.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Strikethrough
mainMenu.aFmtStrike.activate(QAction.ActionEvent.Trigger)
fmtStr = "~~Pellentesque~~ nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:105] == fmtStr
assert docEditor.getText()[x:x+51] == fmtStr
mainMenu.aFmtStrike.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Should get us back to plain
mainMenu.aFmtBold.activate(QAction.ActionEvent.Trigger)
mainMenu.aFmtItalic.activate(QAction.ActionEvent.Trigger)
mainMenu.aFmtItalic.activate(QAction.ActionEvent.Trigger)
mainMenu.aFmtBold.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Double Quotes
mainMenu.aFmtDQuote.activate(QAction.ActionEvent.Trigger)
fmtStr = "“Pellentesque” nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:103] == fmtStr
assert docEditor.getText()[x:x+49] == fmtStr
mainMenu.aEditUndo.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Single Quotes
mainMenu.aFmtSQuote.activate(QAction.ActionEvent.Trigger)
fmtStr = "Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:103] == fmtStr
assert docEditor.getText()[x:x+49] == fmtStr
mainMenu.aEditUndo.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Block Formats
# =============
# cSpell:ignore Pellentesque erat nulla posuere commodo
docEditor.setCursorPosition(57)
docEditor.setCursorPosition(x+3)
# Header 1
mainMenu.aFmtHead1.activate(QAction.ActionEvent.Trigger)
fmtStr = "# Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:103] == fmtStr
assert docEditor.getText()[x:x+49] == fmtStr
# Header 2
mainMenu.aFmtHead2.activate(QAction.ActionEvent.Trigger)
fmtStr = "## Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:104] == fmtStr
assert docEditor.getText()[x:x+50] == fmtStr
# Header 3
mainMenu.aFmtHead3.activate(QAction.ActionEvent.Trigger)
fmtStr = "### Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:105] == fmtStr
assert docEditor.getText()[x:x+51] == fmtStr
# Header 4
mainMenu.aFmtHead4.activate(QAction.ActionEvent.Trigger)
fmtStr = "#### Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:106] == fmtStr
assert docEditor.getText()[x:x+52] == fmtStr
# Title Format
mainMenu.aFmtTitle.activate(QAction.ActionEvent.Trigger)
fmtStr = "#! Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:104] == fmtStr
assert docEditor.getText()[x:x+50] == fmtStr
# Unnumbered Chapter
mainMenu.aFmtUnNum.activate(QAction.ActionEvent.Trigger)
fmtStr = "##! Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:105] == fmtStr
assert docEditor.getText()[x:x+51] == fmtStr
# Hard Scene
mainMenu.aFmtHardSc.activate(QAction.ActionEvent.Trigger)
fmtStr = "###! Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:106] == fmtStr
assert docEditor.getText()[x:x+52] == fmtStr
# Clear Format
mainMenu.aFmtNoFormat.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Comment On
mainMenu.aFmtComment.activate(QAction.ActionEvent.Trigger)
fmtStr = "% Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:103] == fmtStr
assert docEditor.getText()[x:x+49] == fmtStr
# Comment Off
mainMenu.aFmtComment.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Check comment with no space before text
docEditor.setCursorPosition(54)
docEditor.setCursorPosition(x)
docEditor.insertText("%")
fmtStr = "%Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:102] == fmtStr
assert docEditor.getText()[x:x+48] == fmtStr
mainMenu.aFmtNoFormat.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Undo/Redo
mainMenu.aEditUndo.activate(QAction.ActionEvent.Trigger)
fmtStr = "%Pellentesque nec erat ut nulla posuere commodo."
assert docEditor.getText()[54:102] == fmtStr
assert docEditor.getText()[x:x+48] == fmtStr
mainMenu.aEditRedo.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:101] == cleanText
assert docEditor.getText()[x:x+47] == cleanText
# Cut, Copy and Paste
docEditor.setCursorPosition(54)
docEditor.setCursorPosition(x)
docEditor._makeSelection(QTextCursor.SelectionType.WordUnderCursor)
mainMenu.aEditCut.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:104] == (
assert docEditor.getText()[x:x+50] == (
" nec erat ut nulla posuere commodo. Curabitur nisi"
)
mainMenu.aEditPaste.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:104] == (
assert docEditor.getText()[x:x+50] == (
"Pellentesque nec erat ut nulla posuere commodo. Cu"
)
docEditor.setCursorPosition(54)
docEditor.setCursorPosition(x)
docEditor._makeSelection(QTextCursor.SelectionType.WordUnderCursor)
mainMenu.aEditCopy.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:104] == (
assert docEditor.getText()[x:x+50] == (
"Pellentesque nec erat ut nulla posuere commodo. Cu"
)
docEditor.setCursorPosition(54)
docEditor.setCursorPosition(x)
mainMenu.aEditPaste.activate(QAction.ActionEvent.Trigger)
assert docEditor.getText()[54:104] == (
assert docEditor.getText()[x:x+50] == (
"PellentesquePellentesque nec erat ut nulla posuere"
)
mainMenu.aEditUndo.activate(QAction.ActionEvent.Trigger)
# Select Paragraph/All
docEditor.setCursorPosition(57)
docEditor.setCursorPosition(x+3)
mainMenu.aSelectPar.activate(QAction.ActionEvent.Trigger)
cursor = docEditor.textCursor()
assert cursor.selectedText() == (
@@ -228,10 +229,10 @@ def testGuiMainMenu_EditFormat(qtbot, monkeypatch, nwGUI, prjLipsum):
"nunc lacus, imperdiet nec posuere ac, interdum non lectus."
)
docEditor.setCursorPosition(57)
docEditor.setCursorPosition(x+3)
mainMenu.aSelectAll.activate(QAction.ActionEvent.Trigger)
cursor = docEditor.textCursor()
assert len(cursor.selectedText()) == 1910
assert len(cursor.selectedText()) == 1928
# Clear the Text
docEditor.clear()