def document_not_inserted(): return DocumentTestModel( test_int=42, test_list=[SubDocument(test_str="foo"), SubDocument(test_str="bar")], test_str="kipasa", )
async def test_update_with_session(document: DocumentTestModel, session): buf_len = len(document.test_list) to_insert = SubDocument(test_str="test") await document.update( update_query={"$push": { "test_list": to_insert.dict() }}, session=session, ) new_document = await DocumentTestModel.get(document.id, session=session) assert len(new_document.test_list) == buf_len + 1
def generate_documents(number: int, test_str: str = None, random: bool = False) -> List[DocumentTestModel]: return [ DocumentTestModel( test_int=randint(0, 1000000) if random else i, test_list=[ SubDocument(test_str="foo"), SubDocument(test_str="bar"), ], test_str="kipasa" if test_str is None else test_str, ) for i in range(number) ]