Add tests for IPluginDiagnose and IPluginFileMapper.

This commit is contained in:
Mikaël Capelle
2022-05-04 19:09:02 +02:00
parent 639c3cf71d
commit 94bd8b82b4
4 changed files with 196 additions and 0 deletions
+39
View File
@@ -0,0 +1,39 @@
# -*- encoding: utf-8 -*-
import mobase
class DummyDiagnose(mobase.IPluginDiagnose):
def activeProblems(self) -> list[int]:
return [1, 2]
def shortDescription(self, key: int) -> str:
return f"short-{key}"
def fullDescription(self, key: int) -> str:
return f"long-{key}"
def hasGuidedFix(self, key: int) -> bool:
return key == 1
class DummyDiagnoseAndGame(mobase.IPluginDiagnose, mobase.IPluginGame):
def __init__(self):
mobase.IPluginDiagnose.__init__(self)
mobase.IPluginGame.__init__(self)
def activeProblems(self) -> list[int]:
return [5, 7]
def shortDescription(self, key: int) -> str:
return f"short-{key}"
def fullDescription(self, key: int) -> str:
return f"long-{key}"
def hasGuidedFix(self, key: int) -> bool:
return key == 7
def createPlugins() -> list[mobase.IPlugin]:
return [DummyDiagnose(), DummyDiagnoseAndGame()]
+34
View File
@@ -0,0 +1,34 @@
# -*- encoding: utf-8 -*-
import mobase
class DummyFileMapper(mobase.IPluginFileMapper):
def mappings(self) -> list[mobase.Mapping]:
return [
mobase.Mapping(
source="the source", destination="the destination", is_directory=False
),
mobase.Mapping(
source="the other source",
destination="the other destination",
is_directory=True,
),
]
class DummyFileMapperAndGame(mobase.IPluginFileMapper, mobase.IPluginGame):
def __init__(self):
mobase.IPluginFileMapper.__init__(self)
mobase.IPluginGame.__init__(self)
def mappings(self) -> list[mobase.Mapping]:
return [
mobase.Mapping(
source="the source", destination="the destination", is_directory=False
),
]
def createPlugins() -> list[mobase.IPlugin]:
return [DummyFileMapper(), DummyFileMapperAndGame()]