_post_ids = []
_id = 1
def gen_document():
global _post_ids, _id
if _id == 1:
doc_type, is_o2m = 'post', 0
else:
doc_type, is_o2m = choice([('post', 0), ('comment', 1), ('revision', 1)])
doc = {'_id': str(_id), 'type': doc_type}
if is_o2m:
doc.update({'post_id': str(choice(_post_ids))})
else:
_post_ids.append(_id)
_id += 1
return doc