Feat: add add_tribe in service

This commit is contained in:
2022-12-30 07:19:48 +01:00
parent 6f5b479426
commit b8a769b96d
3 changed files with 124 additions and 32 deletions

View File

@@ -91,35 +91,3 @@ def build_student(
Student(name=faker.name(), tribe=tribe) for _ in range(students_per_tribe)
]
return students
class FakeTribeRepository(AbstractRepository):
def __init__(self, tribes):
self._tribes = {t.name: t for t in tribes}
def add(self, tribe):
if tribe.name not in self._tribes.keys():
self._tribes[tribe.name] = tribe
raise KeyError(f"{tribe} already exists")
def update(self, name, tribe):
try:
self._tribes.pop(name)
self._tribes[tribe.name] = tribe
except KeyError:
raise KeyError(f"The tribe {tribe} does not exists")
def list(self):
return list(self._tribes.values())
def get(self, name):
try:
return self._tribes[name]
except KeyError:
raise KeyError(f"The tribe {tribe} does not exists")
def delete(self, name):
try:
self._tribes.pop(name)
except KeyError:
raise KeyError(f"The tribe {tribe} does not exists")