def test_required_docs(session): """Verify that the required_docs() only returns docs for which the required flag is true.""" docs = [ Documents(id=111010034, label='shp doc', type=1, required=True), Documents(id=211020045, label='ath doc', type=1, required=False), Documents(id=111010056, label='shp doc', type=2, required=True), Documents(id=211020067, label='ath doc', type=2, required=True) ] session.bulk_save_objects(docs) session.commit() docs = Documents.get_required_docs('registration') for doc in docs: assert doc.required docs = Documents.get_required_docs('avdd') for doc in docs: assert doc.required
def validate_required_docs(self, data): """Validates required documents.""" required = Documents.get_required_docs('deregistration') labels = list(map(lambda document: document.label, required)) missing_required = list(filter(lambda x: x not in data['files'], labels)) if len(missing_required) > 0: raise ValidationError('This is a required Document', field_names=missing_required)