forked from AG_QGIS/Plugin_SN_Basis
Anpassung an den Wrappern für sn_plan41
This commit is contained in:
104
tests/test_dateipruefer.py
Normal file
104
tests/test_dateipruefer.py
Normal file
@@ -0,0 +1,104 @@
|
||||
# sn_basis/test/test_dateipruefer.py
|
||||
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
from unittest.mock import patch
|
||||
|
||||
from sn_basis.modules.Dateipruefer import Dateipruefer
|
||||
|
||||
|
||||
class TestDateipruefer(unittest.TestCase):
|
||||
|
||||
# -----------------------------------------------------
|
||||
# 1. Leere Eingabe erlaubt
|
||||
# -----------------------------------------------------
|
||||
def test_leereingabe_erlaubt(self):
|
||||
pruefer = Dateipruefer(
|
||||
pfad="",
|
||||
leereingabe_erlaubt=True
|
||||
)
|
||||
|
||||
result = pruefer.pruefe()
|
||||
|
||||
self.assertFalse(result.ok)
|
||||
self.assertEqual(result.aktion, "leereingabe_erlaubt")
|
||||
self.assertIsNone(result.kontext)
|
||||
|
||||
# -----------------------------------------------------
|
||||
# 2. Leere Eingabe nicht erlaubt
|
||||
# -----------------------------------------------------
|
||||
def test_leereingabe_nicht_erlaubt(self):
|
||||
pruefer = Dateipruefer(
|
||||
pfad="",
|
||||
leereingabe_erlaubt=False
|
||||
)
|
||||
|
||||
result = pruefer.pruefe()
|
||||
|
||||
self.assertFalse(result.ok)
|
||||
self.assertEqual(result.aktion, "leereingabe_nicht_erlaubt")
|
||||
self.assertIsNone(result.kontext)
|
||||
|
||||
# -----------------------------------------------------
|
||||
# 3. Standarddatei vorschlagen
|
||||
# -----------------------------------------------------
|
||||
def test_standarddatei_vorschlagen(self):
|
||||
pruefer = Dateipruefer(
|
||||
pfad="",
|
||||
standarddatei="/tmp/std.txt"
|
||||
)
|
||||
|
||||
result = pruefer.pruefe()
|
||||
|
||||
self.assertFalse(result.ok)
|
||||
self.assertEqual(result.aktion, "standarddatei_vorschlagen")
|
||||
self.assertEqual(result.kontext, Path("/tmp/std.txt"))
|
||||
|
||||
# -----------------------------------------------------
|
||||
# 4. Temporäre Datei erlaubt
|
||||
# -----------------------------------------------------
|
||||
def test_temporaer_erlaubt(self):
|
||||
pruefer = Dateipruefer(
|
||||
pfad="",
|
||||
temporaer_erlaubt=True
|
||||
)
|
||||
|
||||
result = pruefer.pruefe()
|
||||
|
||||
self.assertFalse(result.ok)
|
||||
self.assertEqual(result.aktion, "temporaer_erlaubt")
|
||||
self.assertIsNone(result.kontext)
|
||||
|
||||
# -----------------------------------------------------
|
||||
# 5. Datei existiert nicht
|
||||
# -----------------------------------------------------
|
||||
@patch("sn_basis.modules.Dateipruefer.file_exists", return_value=False)
|
||||
def test_datei_nicht_gefunden(self, mock_exists):
|
||||
pruefer = Dateipruefer(
|
||||
pfad="/tmp/nichtvorhanden.txt"
|
||||
)
|
||||
|
||||
result = pruefer.pruefe()
|
||||
|
||||
self.assertFalse(result.ok)
|
||||
self.assertEqual(result.aktion, "datei_nicht_gefunden")
|
||||
self.assertEqual(result.kontext, Path("/tmp/nichtvorhanden.txt"))
|
||||
|
||||
# -----------------------------------------------------
|
||||
# 6. Datei existiert
|
||||
# -----------------------------------------------------
|
||||
@patch("sn_basis.modules.Dateipruefer.file_exists", return_value=True)
|
||||
def test_datei_ok(self, mock_exists):
|
||||
pruefer = Dateipruefer(
|
||||
pfad="/tmp/test.txt"
|
||||
)
|
||||
|
||||
result = pruefer.pruefe()
|
||||
|
||||
self.assertTrue(result.ok)
|
||||
self.assertEqual(result.aktion, "ok")
|
||||
self.assertEqual(result.kontext, Path("/tmp/test.txt"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user