Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
aggregate1
  • Loading branch information
codex-spec committed Jul 24, 2021
commit 06944988d22f7171d1107b9f8631cc8dd811b47e
4 changes: 2 additions & 2 deletions app/coordinates.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@


class Coordinates:
"""
"""
A position on earth using decimal coordinates (latitude and longitude).
"""

Expand All @@ -13,11 +13,11 @@ def __init__(self, latitude, longitude):
def serialize(self):
"""
Serializes the coordinates into a dict.

:returns: The serialized coordinates.
:rtype: dict
"""
return {"latitude": self.latitude, "longitude": self.longitude}

def __str__(self):
return "lat: %s, long: %s" % (self.latitude, self.longitude)
© 2021 GitHub, Inc.
49 changes: 22 additions & 27 deletions app/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,40 +22,35 @@ class LatestResponse(BaseModel):
latest: Latest


class Timeline(BaseModel):
"""
Timeline model.
"""
class Timeline(basemodel):

timeline: Dict[str, int] = {}
def __init__(self, timeline):

@validator("timeline")
@classmethod
def sort_timeline(cls, value):
"""Sort the timeline history before inserting into the model"""
return dict(sorted(value.items()))
self.timeline = timeline

@property
def latest(self):
"""Get latest available history value."""
return list(self.timeline.values())[-1] if self.timeline else 0


def serialize(self):
"""
Serialize the model into dict
TODO: override dict() instead of using serialize
"""
return {**self.dict(), "latest": self.latest}
class Timelines(basemodel):

def __init__(self, confirmed, deaths, recovered):

class Timelines(BaseModel):
"""
Timelines model.
"""
self.confirmed = confirmed

self.deaths = deaths

self.recovered = recovered



if __name__ == "__main__":

confirm = Timeline({'Sat':10, 'Wed':20})

death = Timeline({'Sat':10, 'Wed':20})

recovered = Timeline({'Sat':10, 'Wed':20})

confirmed: Timeline
deaths: Timeline
recovered: Timeline
timelines_1 = Timelines(confirm, death, recovered)


class Location(BaseModel):
Expand Down