Update tests

This commit is contained in:
Veronica Berglyd Olsen
2024-04-10 01:09:11 +02:00
parent 127588699e
commit 478db63b30
3 changed files with 97 additions and 114 deletions
+2 -2
View File
@@ -494,11 +494,11 @@ def testCoreProject_StatusImport(mockGUI, fncPath, mockRnd):
# ====================
project.data.itemStatus.resetCounts()
for key in list(project.data.itemStatus.keys()):
for key in list(project.data.itemStatus._store.keys()):
assert project.data.itemStatus.remove(key) is True
project.data.itemImport.resetCounts()
for key in list(project.data.itemImport.keys()):
for key in list(project.data.itemImport._store.keys()):
assert project.data.itemImport.remove(key) is True
assert len(project.data.itemStatus) == 0
+68 -66
View File
@@ -30,6 +30,8 @@ from novelwriter.constants import nwFiles
from tools import cmpFiles, writeFile
from mocked import causeOSError
from PyQt5.QtGui import QColor
from novelwriter.core.item import NWItem
from novelwriter.core.projectxml import ProjectXMLReader, ProjectXMLWriter, XMLReadState
from novelwriter.core.projectdata import NWProjectData
@@ -167,18 +169,18 @@ def testCoreProjectXML_ReadCurrent(monkeypatch, tstPaths, fncPath):
assert data.itemImport.name("i2d7a54") == "Major"
assert data.itemImport.name("i56be10") == "Main"
assert data.itemStatus.cols("sf12341") == (100, 100, 100)
assert data.itemStatus.cols("sf24ce6") == (200, 50, 0)
assert data.itemStatus.cols("sc24b8f") == (182, 60, 0)
assert data.itemStatus.cols("s90e6c9") == (193, 129, 0)
assert data.itemStatus.cols("sd51c5b") == (193, 129, 0)
assert data.itemStatus.cols("s8ae72a") == (193, 129, 0)
assert data.itemStatus.cols("s78ea90") == (58, 180, 58)
assert data.itemStatus.cols("sf12341") == QColor(100, 100, 100)
assert data.itemStatus.cols("sf24ce6") == QColor(200, 50, 0)
assert data.itemStatus.cols("sc24b8f") == QColor(182, 60, 0)
assert data.itemStatus.cols("s90e6c9") == QColor(193, 129, 0)
assert data.itemStatus.cols("sd51c5b") == QColor(193, 129, 0)
assert data.itemStatus.cols("s8ae72a") == QColor(193, 129, 0)
assert data.itemStatus.cols("s78ea90") == QColor(58, 180, 58)
assert data.itemImport.cols("ia857f0") == (100, 100, 100)
assert data.itemImport.cols("icfb3a5") == (0, 122, 188)
assert data.itemImport.cols("i2d7a54") == (21, 0, 180)
assert data.itemImport.cols("i56be10") == (117, 0, 175)
assert data.itemImport.cols("ia857f0") == QColor(100, 100, 100)
assert data.itemImport.cols("icfb3a5") == QColor(0, 122, 188)
assert data.itemImport.cols("i2d7a54") == QColor(21, 0, 180)
assert data.itemImport.cols("i56be10") == QColor(117, 0, 175)
assert data.itemStatus.count("sf12341") == 4
assert data.itemStatus.count("sf24ce6") == 2
@@ -285,18 +287,18 @@ def testCoreProjectXML_ReadLegacy10(tstPaths, fncPath, mockRnd):
assert data.itemImport.name("i000009") == "Major"
assert data.itemImport.name("i00000a") == "Main"
assert data.itemStatus.cols("s000000") == (100, 100, 100)
assert data.itemStatus.cols("s000001") == (200, 50, 0)
assert data.itemStatus.cols("s000002") == (182, 60, 0)
assert data.itemStatus.cols("s000003") == (193, 129, 0)
assert data.itemStatus.cols("s000004") == (193, 129, 0)
assert data.itemStatus.cols("s000005") == (193, 129, 0)
assert data.itemStatus.cols("s000006") == (58, 180, 58)
assert data.itemStatus.cols("s000000") == QColor(100, 100, 100)
assert data.itemStatus.cols("s000001") == QColor(200, 50, 0)
assert data.itemStatus.cols("s000002") == QColor(182, 60, 0)
assert data.itemStatus.cols("s000003") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000004") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000005") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000006") == QColor(58, 180, 58)
assert data.itemImport.cols("i000007") == (100, 100, 100)
assert data.itemImport.cols("i000008") == (0, 122, 188)
assert data.itemImport.cols("i000009") == (21, 0, 180)
assert data.itemImport.cols("i00000a") == (117, 0, 175)
assert data.itemImport.cols("i000007") == QColor(100, 100, 100)
assert data.itemImport.cols("i000008") == QColor(0, 122, 188)
assert data.itemImport.cols("i000009") == QColor(21, 0, 180)
assert data.itemImport.cols("i00000a") == QColor(117, 0, 175)
assert data.itemStatus.count("s000000") == 0
assert data.itemStatus.count("s000001") == 0
@@ -419,18 +421,18 @@ def testCoreProjectXML_ReadLegacy11(tstPaths, fncPath, mockRnd):
assert data.itemImport.name("i000009") == "Major"
assert data.itemImport.name("i00000a") == "Main"
assert data.itemStatus.cols("s000000") == (100, 100, 100)
assert data.itemStatus.cols("s000001") == (200, 50, 0)
assert data.itemStatus.cols("s000002") == (182, 60, 0)
assert data.itemStatus.cols("s000003") == (193, 129, 0)
assert data.itemStatus.cols("s000004") == (193, 129, 0)
assert data.itemStatus.cols("s000005") == (193, 129, 0)
assert data.itemStatus.cols("s000006") == (58, 180, 58)
assert data.itemStatus.cols("s000000") == QColor(100, 100, 100)
assert data.itemStatus.cols("s000001") == QColor(200, 50, 0)
assert data.itemStatus.cols("s000002") == QColor(182, 60, 0)
assert data.itemStatus.cols("s000003") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000004") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000005") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000006") == QColor(58, 180, 58)
assert data.itemImport.cols("i000007") == (100, 100, 100)
assert data.itemImport.cols("i000008") == (0, 122, 188)
assert data.itemImport.cols("i000009") == (21, 0, 180)
assert data.itemImport.cols("i00000a") == (117, 0, 175)
assert data.itemImport.cols("i000007") == QColor(100, 100, 100)
assert data.itemImport.cols("i000008") == QColor(0, 122, 188)
assert data.itemImport.cols("i000009") == QColor(21, 0, 180)
assert data.itemImport.cols("i00000a") == QColor(117, 0, 175)
assert data.itemStatus.count("s000000") == 0
assert data.itemStatus.count("s000001") == 0
@@ -553,18 +555,18 @@ def testCoreProjectXML_ReadLegacy12(tstPaths, fncPath, mockRnd):
assert data.itemImport.name("i000009") == "Major"
assert data.itemImport.name("i00000a") == "Main"
assert data.itemStatus.cols("s000000") == (100, 100, 100)
assert data.itemStatus.cols("s000001") == (200, 50, 0)
assert data.itemStatus.cols("s000002") == (182, 60, 0)
assert data.itemStatus.cols("s000003") == (193, 129, 0)
assert data.itemStatus.cols("s000004") == (193, 129, 0)
assert data.itemStatus.cols("s000005") == (193, 129, 0)
assert data.itemStatus.cols("s000006") == (58, 180, 58)
assert data.itemStatus.cols("s000000") == QColor(100, 100, 100)
assert data.itemStatus.cols("s000001") == QColor(200, 50, 0)
assert data.itemStatus.cols("s000002") == QColor(182, 60, 0)
assert data.itemStatus.cols("s000003") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000004") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000005") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000006") == QColor(58, 180, 58)
assert data.itemImport.cols("i000007") == (100, 100, 100)
assert data.itemImport.cols("i000008") == (0, 122, 188)
assert data.itemImport.cols("i000009") == (21, 0, 180)
assert data.itemImport.cols("i00000a") == (117, 0, 175)
assert data.itemImport.cols("i000007") == QColor(100, 100, 100)
assert data.itemImport.cols("i000008") == QColor(0, 122, 188)
assert data.itemImport.cols("i000009") == QColor(21, 0, 180)
assert data.itemImport.cols("i00000a") == QColor(117, 0, 175)
assert data.itemStatus.count("s000000") == 0
assert data.itemStatus.count("s000001") == 0
@@ -690,18 +692,18 @@ def testCoreProjectXML_ReadLegacy13(tstPaths, fncPath, mockRnd):
assert data.itemImport.name("i000009") == "Major"
assert data.itemImport.name("i00000a") == "Main"
assert data.itemStatus.cols("s000000") == (100, 100, 100)
assert data.itemStatus.cols("s000001") == (200, 50, 0)
assert data.itemStatus.cols("s000002") == (182, 60, 0)
assert data.itemStatus.cols("s000003") == (193, 129, 0)
assert data.itemStatus.cols("s000004") == (193, 129, 0)
assert data.itemStatus.cols("s000005") == (193, 129, 0)
assert data.itemStatus.cols("s000006") == (58, 180, 58)
assert data.itemStatus.cols("s000000") == QColor(100, 100, 100)
assert data.itemStatus.cols("s000001") == QColor(200, 50, 0)
assert data.itemStatus.cols("s000002") == QColor(182, 60, 0)
assert data.itemStatus.cols("s000003") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000004") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000005") == QColor(193, 129, 0)
assert data.itemStatus.cols("s000006") == QColor(58, 180, 58)
assert data.itemImport.cols("i000007") == (100, 100, 100)
assert data.itemImport.cols("i000008") == (0, 122, 188)
assert data.itemImport.cols("i000009") == (21, 0, 180)
assert data.itemImport.cols("i00000a") == (117, 0, 175)
assert data.itemImport.cols("i000007") == QColor(100, 100, 100)
assert data.itemImport.cols("i000008") == QColor(0, 122, 188)
assert data.itemImport.cols("i000009") == QColor(21, 0, 180)
assert data.itemImport.cols("i00000a") == QColor(117, 0, 175)
assert data.itemStatus.count("s000000") == 0
assert data.itemStatus.count("s000001") == 0
@@ -827,18 +829,18 @@ def testCoreProjectXML_ReadLegacy14(tstPaths, fncPath, mockRnd):
assert data.itemImport.name("i2d7a54") == "Major"
assert data.itemImport.name("i56be10") == "Main"
assert data.itemStatus.cols("sf12341") == (100, 100, 100)
assert data.itemStatus.cols("sf24ce6") == (200, 50, 0)
assert data.itemStatus.cols("sc24b8f") == (182, 60, 0)
assert data.itemStatus.cols("s90e6c9") == (193, 129, 0)
assert data.itemStatus.cols("sd51c5b") == (193, 129, 0)
assert data.itemStatus.cols("s8ae72a") == (193, 129, 0)
assert data.itemStatus.cols("s78ea90") == (58, 180, 58)
assert data.itemStatus.cols("sf12341") == QColor(100, 100, 100)
assert data.itemStatus.cols("sf24ce6") == QColor(200, 50, 0)
assert data.itemStatus.cols("sc24b8f") == QColor(182, 60, 0)
assert data.itemStatus.cols("s90e6c9") == QColor(193, 129, 0)
assert data.itemStatus.cols("sd51c5b") == QColor(193, 129, 0)
assert data.itemStatus.cols("s8ae72a") == QColor(193, 129, 0)
assert data.itemStatus.cols("s78ea90") == QColor(58, 180, 58)
assert data.itemImport.cols("ia857f0") == (100, 100, 100)
assert data.itemImport.cols("icfb3a5") == (0, 122, 188)
assert data.itemImport.cols("i2d7a54") == (21, 0, 180)
assert data.itemImport.cols("i56be10") == (117, 0, 175)
assert data.itemImport.cols("ia857f0") == QColor(100, 100, 100)
assert data.itemImport.cols("icfb3a5") == QColor(0, 122, 188)
assert data.itemImport.cols("i2d7a54") == QColor(21, 0, 180)
assert data.itemImport.cols("i56be10") == QColor(117, 0, 175)
assert data.itemStatus.count("sf12341") == 4
assert data.itemStatus.count("sf24ce6") == 2
+27 -46
View File
@@ -24,7 +24,7 @@ import pytest
from tools import C
from PyQt5.QtGui import QIcon
from PyQt5.QtGui import QColor, QIcon
from novelwriter.core.status import NWStatus
from novelwriter.enum import nwStatusShape
@@ -97,34 +97,15 @@ def testCoreStatus_Iterator(mockRnd):
# Direct access
entry = nStatus[statusKeys[0]]
assert entry["cols"] == (100, 100, 100)
assert entry["name"] == "New"
assert entry["count"] == 0
assert isinstance(entry["icon"], QIcon)
assert entry.colour == QColor(100, 100, 100)
assert entry.name == "New"
assert entry.count == 0
assert isinstance(entry.icon, QIcon)
# Iterate
entries = list(nStatus)
assert len(entries) == 4
# Length
assert len(nStatus._store) == 4
assert len(nStatus) == 4
# Keys
assert list(nStatus.keys()) == statusKeys
# Items
for index, (key, entry) in enumerate(nStatus.items()):
assert key == statusKeys[index]
assert "cols" in entry
assert "name" in entry
assert "count" in entry
assert "icon" in entry
# Valuse
for entry in nStatus.values():
assert "cols" in entry
assert "name" in entry
assert "count" in entry
assert "icon" in entry
# END Test testCoreStatus_Iterator
@@ -138,23 +119,23 @@ def testCoreStatus_Entries(mockRnd):
# Have a key
nStatus.write(statusKeys[0], "Entry 1", (200, 100, 50), nwStatusShape.SQUARE)
assert nStatus[statusKeys[0]]["name"] == "Entry 1"
assert nStatus[statusKeys[0]]["cols"] == (200, 100, 50)
assert nStatus[statusKeys[0]].name == "Entry 1"
assert nStatus[statusKeys[0]].colour == QColor(200, 100, 50)
# Don't have a key
nStatus.write(None, "Entry 2", (210, 110, 60), nwStatusShape.SQUARE)
assert nStatus[statusKeys[1]]["name"] == "Entry 2"
assert nStatus[statusKeys[1]]["cols"] == (210, 110, 60)
assert nStatus[statusKeys[1]].name == "Entry 2"
assert nStatus[statusKeys[1]].colour == QColor(210, 110, 60)
# Wrong colour spec
nStatus.write(None, "Entry 3", "what?", nwStatusShape.SQUARE) # type: ignore
assert nStatus[statusKeys[2]]["name"] == "Entry 3"
assert nStatus[statusKeys[2]]["cols"] == (100, 100, 100)
assert nStatus[statusKeys[2]].name == "Entry 3"
assert nStatus[statusKeys[2]].colour == QColor(100, 100, 100)
# Wrong colour count
nStatus.write(None, "Entry 4", (10, 20), nwStatusShape.SQUARE)
assert nStatus[statusKeys[3]]["name"] == "Entry 4"
assert nStatus[statusKeys[3]]["cols"] == (100, 100, 100)
nStatus.write(None, "Entry 4", (10, 20), nwStatusShape.SQUARE) # type: ignore
assert nStatus[statusKeys[3]].name == "Entry 4"
assert nStatus[statusKeys[3]].colour == QColor(100, 100, 100)
# Check
# =====
@@ -178,11 +159,11 @@ def testCoreStatus_Entries(mockRnd):
# Colour Access
# =============
assert nStatus.cols(statusKeys[0]) == (200, 100, 50)
assert nStatus.cols(statusKeys[1]) == (210, 110, 60)
assert nStatus.cols(statusKeys[2]) == (100, 100, 100)
assert nStatus.cols(statusKeys[3]) == (100, 100, 100)
assert nStatus.cols("blablabla") == (200, 100, 50)
assert nStatus.cols(statusKeys[0]) == QColor(200, 100, 50)
assert nStatus.cols(statusKeys[1]) == QColor(210, 110, 60)
assert nStatus.cols(statusKeys[2]) == QColor(100, 100, 100)
assert nStatus.cols(statusKeys[3]) == QColor(100, 100, 100)
assert nStatus.cols("blablabla") == QColor(200, 100, 50)
# Icon Access
# ===========
@@ -217,7 +198,7 @@ def testCoreStatus_Entries(mockRnd):
# Reorder
# =======
cOrder = list(nStatus.keys())
cOrder = list(nStatus._store.keys())
assert cOrder == statusKeys
# Wrong length
@@ -226,7 +207,7 @@ def testCoreStatus_Entries(mockRnd):
# No change
assert nStatus.reorder(cOrder) is False
# Actual reaorder
# Actual re-order
nOrder = [
statusKeys[0],
statusKeys[2],
@@ -234,17 +215,17 @@ def testCoreStatus_Entries(mockRnd):
statusKeys[3],
]
assert nStatus.reorder(nOrder) is True
assert list(nStatus.keys()) == nOrder
assert list(nStatus._store.keys()) == nOrder
# Add an unknown key
wOrder = nOrder.copy()
wOrder[3] = nStatus._newKey()
assert nStatus.reorder(wOrder) is False
assert list(nStatus.keys()) == nOrder
assert list(nStatus._store.keys()) == nOrder
# Put it back
assert nStatus.reorder(cOrder) is True
assert list(nStatus.keys()) == cOrder
assert list(nStatus._store.keys()) == cOrder
# Default
# =======
@@ -254,7 +235,7 @@ def testCoreStatus_Entries(mockRnd):
assert nStatus.check("Entry 5") == ""
assert nStatus.name("blablabla") == ""
assert nStatus.cols("blablabla") == (100, 100, 100)
assert nStatus.cols("blablabla") == QColor(100, 100, 100)
assert nStatus.count("blablabla") == 0
assert isinstance(nStatus.icon("blablabla"), QIcon)