Merge branch 'release'

This commit is contained in:
Veronica Berglyd Olsen
2024-07-14 16:43:43 +02:00
3 changed files with 9 additions and 1 deletions
+1
View File
@@ -356,6 +356,7 @@ class NWProject:
self.setProjectChanged(False)
self._valid = True
self._state = NWProjectState.READY
self._storage.lockSession() # Lock only after a successful open. See issue #1977.
SHARED.newStatusMessage(self.tr("Opened Project: {0}").format(self._data.name))
+6 -1
View File
@@ -235,7 +235,6 @@ class NWStorage:
if child.is_dir() and child.name.startswith("data_"):
legacy.legacyDataFolder(basePath, child)
self._writeLockFile()
self._ready = True
return NWStorageOpen.READY
@@ -249,6 +248,12 @@ class NWStorage:
return True
return True
def lockSession(self) -> None:
"""Lock the session when the project is successfully opened."""
if self._ready:
self._writeLockFile()
return
def closeSession(self) -> None:
"""Run tasks related to closing the session."""
self._clearLockFile()
+2
View File
@@ -142,7 +142,9 @@ def testCoreStorage_InitProjectStorage(monkeypatch, mockGUI, fncPath, mockRnd):
storage.clear()
# Open twice, where second should fail due to lockfile
# Note that locking is only possible after a successful open
assert storage.initProjectStorage(fncPath) == NWStorageOpen.READY
storage.lockSession()
assert storage.initProjectStorage(fncPath) == NWStorageOpen.LOCKED
assert isinstance(storage.lockStatus, list)
assert len(storage.lockStatus) == 4