File tree Expand file tree Collapse file tree
doc_scan/session/retrieve
tests/doc_scan/session/retrieve Expand file tree Collapse file tree Original file line number Diff line number Diff line change 66)
77from yoti_python_sdk .doc_scan .session .retrieve .page_response import PageResponse
88from yoti_python_sdk .doc_scan .session .retrieve .resource_response import ResourceResponse
9+ from yoti_python_sdk .doc_scan .session .retrieve .task_response import (
10+ TextExtractionTaskResponse ,
11+ )
912
1013
1114class IdDocumentResourceResponse (ResourceResponse ):
@@ -71,3 +74,16 @@ def document_fields(self):
7174 :rtype: DocumentFieldsResponse
7275 """
7376 return self .__document_fields
77+
78+ @property
79+ def text_extraction_tasks (self ):
80+ """
81+ Returns a list of text extraction tasks associated
82+ with the id document
83+
84+ :return: list of text extraction tasks
85+ :rtype: list[TextExtractionTaskResponse]
86+ """
87+ return [
88+ task for task in self .tasks if isinstance (task , TextExtractionTaskResponse )
89+ ]
Original file line number Diff line number Diff line change 66)
77from yoti_python_sdk .doc_scan .session .retrieve .liveness_resource_response import (
88 LivenessResourceResponse ,
9- )
10- from yoti_python_sdk .doc_scan .session .retrieve .liveness_resource_response import (
119 ZoomLivenessResourceResponse ,
1210)
1311
@@ -75,3 +73,17 @@ def liveness_capture(self):
7573 :rtype: list[LivenessResourceResponse]
7674 """
7775 return self .__liveness_capture
76+
77+ @property
78+ def zoom_liveness_resources (self ):
79+ """
80+ Returns a filtered list of zoom liveness capture resources
81+
82+ :return: list of zoom liveness captures
83+ :rtype: list[ZoomLivenessResourceResponse]
84+ """
85+ return [
86+ liveness
87+ for liveness in self .__liveness_capture
88+ if isinstance (liveness , ZoomLivenessResourceResponse )
89+ ]
Original file line number Diff line number Diff line change @@ -156,4 +156,10 @@ class TextExtractionTaskResponse(TaskResponse):
156156 Represents a Text Extraction task response
157157 """
158158
159- pass
159+ @property
160+ def generated_text_data_checks (self ):
161+ return [
162+ check
163+ for check in self .generated_checks
164+ if isinstance (check , GeneratedTextDataCheckResponse )
165+ ]
Original file line number Diff line number Diff line change @@ -68,6 +68,14 @@ def test_should_parse_tasks_with_type(self):
6868 assert isinstance (result .tasks [0 ], TextExtractionTaskResponse )
6969 assert isinstance (result .tasks [1 ], TaskResponse )
7070
71+ def test_should_filter_text_extraction_tasks (self ):
72+ data = {"tasks" : self .SOME_TASKS }
73+
74+ result = IdDocumentResourceResponse (data )
75+
76+ assert len (result .tasks ) == 2
77+ assert len (result .text_extraction_tasks ) == 1
78+
7179
7280if __name__ == "__main__" :
7381 unittest .main ()
Original file line number Diff line number Diff line change @@ -34,6 +34,19 @@ def test_should_parse_with_none(self):
3434 assert len (result .id_documents ) == 0
3535 assert len (result .liveness_capture ) == 0
3636
37+ def test_should_filter_zoom_liveness_resources (self ):
38+ data = {
39+ "liveness_capture" : [
40+ {"liveness_type" : "ZOOM" },
41+ {"liveness_type" : "someUnknown" },
42+ ]
43+ }
44+
45+ result = ResourceContainer (data )
46+
47+ assert len (result .liveness_capture ) == 2
48+ assert len (result .zoom_liveness_resources ) == 1
49+
3750
3851if __name__ == "__main__" :
3952 unittest .main ()
Original file line number Diff line number Diff line change 99from yoti_python_sdk .doc_scan .session .retrieve .generated_check_response import (
1010 GeneratedTextDataCheckResponse ,
1111)
12- from yoti_python_sdk .doc_scan .session .retrieve .task_response import TaskResponse
12+ from yoti_python_sdk .doc_scan .session .retrieve .task_response import (
13+ TaskResponse ,
14+ TextExtractionTaskResponse ,
15+ )
1316
1417
1518class TaskResponseTest (unittest .TestCase ):
@@ -74,6 +77,14 @@ def test_should_parse_with_none(self):
7477 assert len (result .generated_checks ) == 0
7578 assert len (result .generated_media ) == 0
7679
80+ def test_should_filter_generated_text_data_checks (self ):
81+ data = {"generated_checks" : self .SOME_GENERATED_CHECKS }
82+
83+ result = TextExtractionTaskResponse (data )
84+
85+ assert len (result .generated_checks ) == 2
86+ assert len (result .generated_text_data_checks ) == 1
87+
7788
7889if __name__ == "__main__" :
7990 unittest .main ()
You can’t perform that action at this time.
0 commit comments