PythonRMV/src/pyrmv/classes/Journey.py
profitroll f31fa65d78
Some checks reported warnings
Tests / test (3.11) (push) Has been cancelled
Tests / test (3.8) (push) Has been cancelled
Tests / test (3.9) (push) Has been cancelled
Tests / test (3.10) (push) Has been cancelled
Small refactor and isort+black formatting
2023-11-24 11:21:02 +01:00

23 lines
804 B
Python

from typing import Any, Mapping
from pyrmv.classes.Message import Message
from pyrmv.classes.Stop import Stop
class Journey:
"""Journey object."""
def __init__(self, data: Mapping[str, Any]):
self.stops = []
self.ref = data["ref"]
self.direction = data["Directions"]["Direction"][0]["value"]
self.direction_flag = data["Directions"]["Direction"][0]["flag"]
self.stops.extend(Stop(stop) for stop in data["Stops"]["Stop"])
self.messages = []
if "Messages" in data:
self.messages.extend(Message(message) for message in data["Messages"]["Message"])
def __str__(self) -> str:
return f"Journey with total of {len(self.stops)} stops and {len(self.messages)} messages heading {self.direction} ({self.direction_flag})"