def test_repr(self):
     person = Person("Curie", "Marie", "Skłodowska")
     timestamp = "2019-11-14T14:31:39.629853"
     person._id = ObjectId("5dcd7273b35ba17779361c4e")
     person.created_time = datetime.fromisoformat(timestamp)
     value = f"_id='5dcd7273b35ba17779361c4e'," \
         "given='Marie',middle='Skłodowska'," \
         f"last_name='Curie',created_time='{timestamp}'"
     self.assertEqual(value, repr(person))
 def test_repr(self):
     person = Person("Curie", "Marie", "Skłodowska")
     person.id = 1
     timestamp = "2019-11-14T14:31:39.629853"
     person.created_time = datetime.fromisoformat(timestamp)
     value = f"id='1'," \
         "given='Marie',middle='Skłodowska'," \
         f"family='Curie',created_time='{timestamp}'"
     self.assertEqual(value, repr(person))
Exemple #3
0
    def find(self,
             given: Optional[str] = None,
             middle: Optional[str] = None,
             family: Optional[str] = None) -> Iterable:
        """ Initialize a Person """
        if not (given or middle or family):
            raise ValueError("all arguments are empty or None")
        query = {}
        if given is not None:
            query["given"] = given
        if middle is not None:
            query["middle"] = middle
        if family is not None:
            query["family"] = family

        for p in self.collection.find(query):
            person = Person(p["family"], p["given"], p["middle"])
            person._id = p["_id"]
            person.created_time = p["created_time"]
            yield person
 def populate_person(row: Row) -> Person:
     """ Populate a Person from a Row """
     person = Person(row["given"], row["middle"], row["family"])
     person.id = row["id"]
     person.created_time = row["created_time"]
     return person