cloudmersive-ocr-api-client 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +7 -0
  3. data/README.md +150 -0
  4. data/Rakefile +8 -0
  5. data/cloudmersive-ocr-api-client.gemspec +45 -0
  6. data/docs/BusinessCardRecognitionResult.md +15 -0
  7. data/docs/FieldResult.md +9 -0
  8. data/docs/FormDefinitionTemplate.md +9 -0
  9. data/docs/FormFieldDefinition.md +25 -0
  10. data/docs/FormRecognitionResult.md +12 -0
  11. data/docs/FormTableColumnDefinition.md +13 -0
  12. data/docs/FormTableDefinition.md +11 -0
  13. data/docs/GetPageAngleResult.md +9 -0
  14. data/docs/ImageOcrApi.md +571 -0
  15. data/docs/ImageToLinesWithLocationResult.md +9 -0
  16. data/docs/ImageToTextResponse.md +9 -0
  17. data/docs/ImageToWordsWithLocationResult.md +9 -0
  18. data/docs/OcrLineElement.md +9 -0
  19. data/docs/OcrPageResult.md +10 -0
  20. data/docs/OcrPageResultWithLinesWithLocation.md +10 -0
  21. data/docs/OcrPageResultWithWordsWithLocation.md +10 -0
  22. data/docs/OcrPhotoTextElement.md +14 -0
  23. data/docs/OcrWordElement.md +18 -0
  24. data/docs/PdfOcrApi.md +191 -0
  25. data/docs/PdfToLinesWithLocationResult.md +9 -0
  26. data/docs/PdfToTextResponse.md +9 -0
  27. data/docs/PdfToWordsWithLocationResult.md +9 -0
  28. data/docs/PhotoToWordsWithLocationResult.md +10 -0
  29. data/docs/Point.md +9 -0
  30. data/docs/PreprocessingApi.md +338 -0
  31. data/docs/ReceiptLineItem.md +9 -0
  32. data/docs/ReceiptRecognitionResult.md +16 -0
  33. data/docs/ReceiptsApi.md +63 -0
  34. data/docs/TableCellResult.md +9 -0
  35. data/docs/TableResult.md +9 -0
  36. data/docs/TableRowResult.md +8 -0
  37. data/git_push.sh +55 -0
  38. data/lib/cloudmersive-ocr-api-client.rb +70 -0
  39. data/lib/cloudmersive-ocr-api-client/api/image_ocr_api.rb +596 -0
  40. data/lib/cloudmersive-ocr-api-client/api/pdf_ocr_api.rb +207 -0
  41. data/lib/cloudmersive-ocr-api-client/api/preprocessing_api.rb +353 -0
  42. data/lib/cloudmersive-ocr-api-client/api/receipts_api.rb +78 -0
  43. data/lib/cloudmersive-ocr-api-client/api_client.rb +391 -0
  44. data/lib/cloudmersive-ocr-api-client/api_error.rb +38 -0
  45. data/lib/cloudmersive-ocr-api-client/configuration.rb +209 -0
  46. data/lib/cloudmersive-ocr-api-client/models/business_card_recognition_result.rb +256 -0
  47. data/lib/cloudmersive-ocr-api-client/models/field_result.rb +198 -0
  48. data/lib/cloudmersive-ocr-api-client/models/form_definition_template.rb +200 -0
  49. data/lib/cloudmersive-ocr-api-client/models/form_field_definition.rb +358 -0
  50. data/lib/cloudmersive-ocr-api-client/models/form_recognition_result.rb +232 -0
  51. data/lib/cloudmersive-ocr-api-client/models/form_table_column_definition.rb +236 -0
  52. data/lib/cloudmersive-ocr-api-client/models/form_table_definition.rb +218 -0
  53. data/lib/cloudmersive-ocr-api-client/models/get_page_angle_result.rb +196 -0
  54. data/lib/cloudmersive-ocr-api-client/models/image_to_lines_with_location_result.rb +198 -0
  55. data/lib/cloudmersive-ocr-api-client/models/image_to_text_response.rb +196 -0
  56. data/lib/cloudmersive-ocr-api-client/models/image_to_words_with_location_result.rb +198 -0
  57. data/lib/cloudmersive-ocr-api-client/models/ocr_line_element.rb +198 -0
  58. data/lib/cloudmersive-ocr-api-client/models/ocr_page_result.rb +205 -0
  59. data/lib/cloudmersive-ocr-api-client/models/ocr_page_result_with_lines_with_location.rb +208 -0
  60. data/lib/cloudmersive-ocr-api-client/models/ocr_page_result_with_words_with_location.rb +208 -0
  61. data/lib/cloudmersive-ocr-api-client/models/ocr_photo_text_element.rb +248 -0
  62. data/lib/cloudmersive-ocr-api-client/models/ocr_word_element.rb +286 -0
  63. data/lib/cloudmersive-ocr-api-client/models/pdf_to_lines_with_location_result.rb +198 -0
  64. data/lib/cloudmersive-ocr-api-client/models/pdf_to_text_response.rb +198 -0
  65. data/lib/cloudmersive-ocr-api-client/models/pdf_to_words_with_location_result.rb +198 -0
  66. data/lib/cloudmersive-ocr-api-client/models/photo_to_words_with_location_result.rb +223 -0
  67. data/lib/cloudmersive-ocr-api-client/models/point.rb +196 -0
  68. data/lib/cloudmersive-ocr-api-client/models/receipt_line_item.rb +196 -0
  69. data/lib/cloudmersive-ocr-api-client/models/receipt_recognition_result.rb +268 -0
  70. data/lib/cloudmersive-ocr-api-client/models/table_cell_result.rb +198 -0
  71. data/lib/cloudmersive-ocr-api-client/models/table_result.rb +198 -0
  72. data/lib/cloudmersive-ocr-api-client/models/table_row_result.rb +188 -0
  73. data/lib/cloudmersive-ocr-api-client/version.rb +15 -0
  74. data/spec/api/image_ocr_api_spec.rb +169 -0
  75. data/spec/api/pdf_ocr_api_spec.rb +77 -0
  76. data/spec/api/preprocessing_api_spec.rb +107 -0
  77. data/spec/api/receipts_api_spec.rb +47 -0
  78. data/spec/api_client_spec.rb +243 -0
  79. data/spec/configuration_spec.rb +42 -0
  80. data/spec/models/business_card_recognition_result_spec.rb +83 -0
  81. data/spec/models/field_result_spec.rb +47 -0
  82. data/spec/models/form_definition_template_spec.rb +47 -0
  83. data/spec/models/form_field_definition_spec.rb +143 -0
  84. data/spec/models/form_recognition_result_spec.rb +65 -0
  85. data/spec/models/form_table_column_definition_spec.rb +71 -0
  86. data/spec/models/form_table_definition_spec.rb +59 -0
  87. data/spec/models/get_page_angle_result_spec.rb +47 -0
  88. data/spec/models/image_to_lines_with_location_result_spec.rb +47 -0
  89. data/spec/models/image_to_text_response_spec.rb +47 -0
  90. data/spec/models/image_to_words_with_location_result_spec.rb +47 -0
  91. data/spec/models/ocr_line_element_spec.rb +47 -0
  92. data/spec/models/ocr_page_result_spec.rb +53 -0
  93. data/spec/models/ocr_page_result_with_lines_with_location_spec.rb +53 -0
  94. data/spec/models/ocr_page_result_with_words_with_location_spec.rb +53 -0
  95. data/spec/models/ocr_photo_text_element_spec.rb +77 -0
  96. data/spec/models/ocr_word_element_spec.rb +101 -0
  97. data/spec/models/pdf_to_lines_with_location_result_spec.rb +47 -0
  98. data/spec/models/pdf_to_text_response_spec.rb +47 -0
  99. data/spec/models/pdf_to_words_with_location_result_spec.rb +47 -0
  100. data/spec/models/photo_to_words_with_location_result_spec.rb +53 -0
  101. data/spec/models/point_spec.rb +47 -0
  102. data/spec/models/receipt_line_item_spec.rb +47 -0
  103. data/spec/models/receipt_recognition_result_spec.rb +89 -0
  104. data/spec/models/table_cell_result_spec.rb +47 -0
  105. data/spec/models/table_result_spec.rb +47 -0
  106. data/spec/models/table_row_result_spec.rb +41 -0
  107. data/spec/spec_helper.rb +111 -0
  108. metadata +109 -3
@@ -0,0 +1,77 @@
1
+ =begin
2
+ #ocrapi
3
+
4
+ #The powerful Optical Character Recognition (OCR) APIs let you convert scanned images of pages into recognized text.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for CloudmersiveOcrApiClient::PdfOcrApi
17
+ # Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen)
18
+ # Please update as you see appropriate
19
+ describe 'PdfOcrApi' do
20
+ before do
21
+ # run before each test
22
+ @instance = CloudmersiveOcrApiClient::PdfOcrApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of PdfOcrApi' do
30
+ it 'should create an instance of PdfOcrApi' do
31
+ expect(@instance).to be_instance_of(CloudmersiveOcrApiClient::PdfOcrApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for pdf_ocr_pdf_to_lines_with_location
36
+ # Convert a PDF into text lines with location
37
+ # Converts a PDF into lines/text with location information and other metdata via Optical Character Recognition. This API is intended to be run on scanned documents. If you want to OCR photos (e.g. taken with a smart phone camera), be sure to use the photo/toText API instead, as it is designed to unskew the image first.
38
+ # @param image_file PDF file to perform OCR on.
39
+ # @param [Hash] opts the optional parameters
40
+ # @option opts [String] :language Optional, language of the input document, default is English (ENG). Possible values are ENG (English), ARA (Arabic), ZHO (Chinese - Simplified), ZHO-HANT (Chinese - Traditional), ASM (Assamese), AFR (Afrikaans), AMH (Amharic), AZE (Azerbaijani), AZE-CYRL (Azerbaijani - Cyrillic), BEL (Belarusian), BEN (Bengali), BOD (Tibetan), BOS (Bosnian), BUL (Bulgarian), CAT (Catalan; Valencian), CEB (Cebuano), CES (Czech), CHR (Cherokee), CYM (Welsh), DAN (Danish), DEU (German), DZO (Dzongkha), ELL (Greek), ENM (Archaic/Middle English), EPO (Esperanto), EST (Estonian), EUS (Basque), FAS (Persian), FIN (Finnish), FRA (French), FRK (Frankish), FRM (Middle-French), GLE (Irish), GLG (Galician), GRC (Ancient Greek), HAT (Hatian), HEB (Hebrew), HIN (Hindi), HRV (Croatian), HUN (Hungarian), IKU (Inuktitut), IND (Indonesian), ISL (Icelandic), ITA (Italian), ITA-OLD (Old - Italian), JAV (Javanese), JPN (Japanese), KAN (Kannada), KAT (Georgian), KAT-OLD (Old-Georgian), KAZ (Kazakh), KHM (Central Khmer), KIR (Kirghiz), KOR (Korean), KUR (Kurdish), LAO (Lao), LAT (Latin), LAV (Latvian), LIT (Lithuanian), MAL (Malayalam), MAR (Marathi), MKD (Macedonian), MLT (Maltese), MSA (Malay), MYA (Burmese), NEP (Nepali), NLD (Dutch), NOR (Norwegian), ORI (Oriya), PAN (Panjabi), POL (Polish), POR (Portuguese), PUS (Pushto), RON (Romanian), RUS (Russian), SAN (Sanskrit), SIN (Sinhala), SLK (Slovak), SLV (Slovenian), SPA (Spanish), SPA-OLD (Old Spanish), SQI (Albanian), SRP (Serbian), SRP-LAT (Latin Serbian), SWA (Swahili), SWE (Swedish), SYR (Syriac), TAM (Tamil), TEL (Telugu), TGK (Tajik), TGL (Tagalog), THA (Thai), TIR (Tigrinya), TUR (Turkish), UIG (Uighur), UKR (Ukrainian), URD (Urdu), UZB (Uzbek), UZB-CYR (Cyrillic Uzbek), VIE (Vietnamese), YID (Yiddish)
41
+ # @option opts [String] :preprocessing Optional, preprocessing mode, default is 'Auto'. Possible values are None (no preprocessing of the image), and Auto (automatic image enhancement of the image before OCR is applied; this is recommended).
42
+ # @return [PdfToLinesWithLocationResult]
43
+ describe 'pdf_ocr_pdf_to_lines_with_location test' do
44
+ it 'should work' do
45
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
46
+ end
47
+ end
48
+
49
+ # unit tests for pdf_ocr_pdf_to_words_with_location
50
+ # Convert a PDF into words with location
51
+ # Converts a PDF into words/text with location information and other metdata via Optical Character Recognition. This API is intended to be run on scanned documents. If you want to OCR photos (e.g. taken with a smart phone camera), be sure to use the photo/toText API instead, as it is designed to unskew the image first.
52
+ # @param image_file PDF file to perform OCR on.
53
+ # @param [Hash] opts the optional parameters
54
+ # @option opts [String] :language Optional, language of the input document, default is English (ENG). Possible values are ENG (English), ARA (Arabic), ZHO (Chinese - Simplified), ZHO-HANT (Chinese - Traditional), ASM (Assamese), AFR (Afrikaans), AMH (Amharic), AZE (Azerbaijani), AZE-CYRL (Azerbaijani - Cyrillic), BEL (Belarusian), BEN (Bengali), BOD (Tibetan), BOS (Bosnian), BUL (Bulgarian), CAT (Catalan; Valencian), CEB (Cebuano), CES (Czech), CHR (Cherokee), CYM (Welsh), DAN (Danish), DEU (German), DZO (Dzongkha), ELL (Greek), ENM (Archaic/Middle English), EPO (Esperanto), EST (Estonian), EUS (Basque), FAS (Persian), FIN (Finnish), FRA (French), FRK (Frankish), FRM (Middle-French), GLE (Irish), GLG (Galician), GRC (Ancient Greek), HAT (Hatian), HEB (Hebrew), HIN (Hindi), HRV (Croatian), HUN (Hungarian), IKU (Inuktitut), IND (Indonesian), ISL (Icelandic), ITA (Italian), ITA-OLD (Old - Italian), JAV (Javanese), JPN (Japanese), KAN (Kannada), KAT (Georgian), KAT-OLD (Old-Georgian), KAZ (Kazakh), KHM (Central Khmer), KIR (Kirghiz), KOR (Korean), KUR (Kurdish), LAO (Lao), LAT (Latin), LAV (Latvian), LIT (Lithuanian), MAL (Malayalam), MAR (Marathi), MKD (Macedonian), MLT (Maltese), MSA (Malay), MYA (Burmese), NEP (Nepali), NLD (Dutch), NOR (Norwegian), ORI (Oriya), PAN (Panjabi), POL (Polish), POR (Portuguese), PUS (Pushto), RON (Romanian), RUS (Russian), SAN (Sanskrit), SIN (Sinhala), SLK (Slovak), SLV (Slovenian), SPA (Spanish), SPA-OLD (Old Spanish), SQI (Albanian), SRP (Serbian), SRP-LAT (Latin Serbian), SWA (Swahili), SWE (Swedish), SYR (Syriac), TAM (Tamil), TEL (Telugu), TGK (Tajik), TGL (Tagalog), THA (Thai), TIR (Tigrinya), TUR (Turkish), UIG (Uighur), UKR (Ukrainian), URD (Urdu), UZB (Uzbek), UZB-CYR (Cyrillic Uzbek), VIE (Vietnamese), YID (Yiddish)
55
+ # @option opts [String] :preprocessing Optional, preprocessing mode, default is 'Auto'. Possible values are None (no preprocessing of the image), and Auto (automatic image enhancement of the image before OCR is applied; this is recommended).
56
+ # @return [PdfToWordsWithLocationResult]
57
+ describe 'pdf_ocr_pdf_to_words_with_location test' do
58
+ it 'should work' do
59
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
60
+ end
61
+ end
62
+
63
+ # unit tests for pdf_ocr_post
64
+ # Converts an uploaded PDF file into text via Optical Character Recognition.
65
+ # @param image_file PDF file to perform OCR on.
66
+ # @param [Hash] opts the optional parameters
67
+ # @option opts [String] :recognition_mode Optional; possible values are 'Basic' which provides basic recognition and is not resillient to page rotation, skew or low quality images uses 1-2 API calls per page; 'Normal' which provides highly fault tolerant OCR recognition uses 26-30 API calls per page; and 'Advanced' which provides the highest quality and most fault-tolerant recognition uses 28-30 API calls per page. Default recognition mode is 'Basic'
68
+ # @option opts [String] :language Optional, language of the input document, default is English (ENG). Possible values are ENG (English), ARA (Arabic), ZHO (Chinese - Simplified), ZHO-HANT (Chinese - Traditional), ASM (Assamese), AFR (Afrikaans), AMH (Amharic), AZE (Azerbaijani), AZE-CYRL (Azerbaijani - Cyrillic), BEL (Belarusian), BEN (Bengali), BOD (Tibetan), BOS (Bosnian), BUL (Bulgarian), CAT (Catalan; Valencian), CEB (Cebuano), CES (Czech), CHR (Cherokee), CYM (Welsh), DAN (Danish), DEU (German), DZO (Dzongkha), ELL (Greek), ENM (Archaic/Middle English), EPO (Esperanto), EST (Estonian), EUS (Basque), FAS (Persian), FIN (Finnish), FRA (French), FRK (Frankish), FRM (Middle-French), GLE (Irish), GLG (Galician), GRC (Ancient Greek), HAT (Hatian), HEB (Hebrew), HIN (Hindi), HRV (Croatian), HUN (Hungarian), IKU (Inuktitut), IND (Indonesian), ISL (Icelandic), ITA (Italian), ITA-OLD (Old - Italian), JAV (Javanese), JPN (Japanese), KAN (Kannada), KAT (Georgian), KAT-OLD (Old-Georgian), KAZ (Kazakh), KHM (Central Khmer), KIR (Kirghiz), KOR (Korean), KUR (Kurdish), LAO (Lao), LAT (Latin), LAV (Latvian), LIT (Lithuanian), MAL (Malayalam), MAR (Marathi), MKD (Macedonian), MLT (Maltese), MSA (Malay), MYA (Burmese), NEP (Nepali), NLD (Dutch), NOR (Norwegian), ORI (Oriya), PAN (Panjabi), POL (Polish), POR (Portuguese), PUS (Pushto), RON (Romanian), RUS (Russian), SAN (Sanskrit), SIN (Sinhala), SLK (Slovak), SLV (Slovenian), SPA (Spanish), SPA-OLD (Old Spanish), SQI (Albanian), SRP (Serbian), SRP-LAT (Latin Serbian), SWA (Swahili), SWE (Swedish), SYR (Syriac), TAM (Tamil), TEL (Telugu), TGK (Tajik), TGL (Tagalog), THA (Thai), TIR (Tigrinya), TUR (Turkish), UIG (Uighur), UKR (Ukrainian), URD (Urdu), UZB (Uzbek), UZB-CYR (Cyrillic Uzbek), VIE (Vietnamese), YID (Yiddish)
69
+ # @option opts [String] :preprocessing Optional, preprocessing mode, default is 'Auto'. Possible values are None (no preprocessing of the image), and Auto (automatic image enhancement of the image before OCR is applied; this is recommended).
70
+ # @return [PdfToTextResponse]
71
+ describe 'pdf_ocr_post test' do
72
+ it 'should work' do
73
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
74
+ end
75
+ end
76
+
77
+ end
@@ -0,0 +1,107 @@
1
+ =begin
2
+ #ocrapi
3
+
4
+ #The powerful Optical Character Recognition (OCR) APIs let you convert scanned images of pages into recognized text.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for CloudmersiveOcrApiClient::PreprocessingApi
17
+ # Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen)
18
+ # Please update as you see appropriate
19
+ describe 'PreprocessingApi' do
20
+ before do
21
+ # run before each test
22
+ @instance = CloudmersiveOcrApiClient::PreprocessingApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of PreprocessingApi' do
30
+ it 'should create an instance of PreprocessingApi' do
31
+ expect(@instance).to be_instance_of(CloudmersiveOcrApiClient::PreprocessingApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for preprocessing_binarize
36
+ # Convert an image of text into a binarized (light and dark) view
37
+ # Perform an adaptive binarization algorithm on the input image to prepare it for further OCR operations.
38
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
39
+ # @param [Hash] opts the optional parameters
40
+ # @return [String]
41
+ describe 'preprocessing_binarize test' do
42
+ it 'should work' do
43
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
44
+ end
45
+ end
46
+
47
+ # unit tests for preprocessing_binarize_advanced
48
+ # Convert an image of text into a binary (light and dark) view with ML
49
+ # Perform an advanced adaptive, Deep Learning-based binarization algorithm on the input image to prepare it for further OCR operations. Provides enhanced accuracy than adaptive binarization. Image will be upsampled to 300 DPI if it has a DPI below 300.
50
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
51
+ # @param [Hash] opts the optional parameters
52
+ # @return [String]
53
+ describe 'preprocessing_binarize_advanced test' do
54
+ it 'should work' do
55
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
56
+ end
57
+ end
58
+
59
+ # unit tests for preprocessing_get_page_angle
60
+ # Get the angle of the page / document / receipt
61
+ # Analyzes a photo or image of a document and identifies the rotation angle of the page.
62
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
63
+ # @param [Hash] opts the optional parameters
64
+ # @return [GetPageAngleResult]
65
+ describe 'preprocessing_get_page_angle test' do
66
+ it 'should work' do
67
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
68
+ end
69
+ end
70
+
71
+ # unit tests for preprocessing_unrotate
72
+ # Detect and unrotate a document image
73
+ # Detect and unrotate an image of a document (e.g. that was scanned at an angle). Great for document scanning applications; once unskewed, this image is perfect for converting to PDF using the Convert API or optical character recognition using the OCR API.
74
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
75
+ # @param [Hash] opts the optional parameters
76
+ # @return [String]
77
+ describe 'preprocessing_unrotate test' do
78
+ it 'should work' do
79
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
80
+ end
81
+ end
82
+
83
+ # unit tests for preprocessing_unrotate_advanced
84
+ # Detect and unrotate a document image (advanced)
85
+ # Detect and unrotate an image of a document (e.g. that was scanned at an angle) using deep learning. Great for document scanning applications; once unskewed, this image is perfect for converting to PDF using the Convert API or optical character recognition using the OCR API.
86
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
87
+ # @param [Hash] opts the optional parameters
88
+ # @return [String]
89
+ describe 'preprocessing_unrotate_advanced test' do
90
+ it 'should work' do
91
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
92
+ end
93
+ end
94
+
95
+ # unit tests for preprocessing_unskew
96
+ # Detect and unskew a photo of a document
97
+ # Detect and unskew a photo of a document (e.g. taken on a cell phone) into a perfectly square image. Great for document scanning applications; once unskewed, this image is perfect for converting to PDF using the Convert API or optical character recognition using the OCR API.
98
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
99
+ # @param [Hash] opts the optional parameters
100
+ # @return [String]
101
+ describe 'preprocessing_unskew test' do
102
+ it 'should work' do
103
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
104
+ end
105
+ end
106
+
107
+ end
@@ -0,0 +1,47 @@
1
+ =begin
2
+ #ocrapi
3
+
4
+ #The powerful Optical Character Recognition (OCR) APIs let you convert scanned images of pages into recognized text.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for CloudmersiveOcrApiClient::ReceiptsApi
17
+ # Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen)
18
+ # Please update as you see appropriate
19
+ describe 'ReceiptsApi' do
20
+ before do
21
+ # run before each test
22
+ @instance = CloudmersiveOcrApiClient::ReceiptsApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of ReceiptsApi' do
30
+ it 'should create an instance of ReceiptsApi' do
31
+ expect(@instance).to be_instance_of(CloudmersiveOcrApiClient::ReceiptsApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for receipts_photo_to_csv
36
+ # Convert a photo of a receipt into a CSV file containing structured information from the receipt
37
+ # Leverage Deep Learning to automatically turn a photo of a receipt into a CSV file containing the structured information from the receipt.
38
+ # @param image_file Image file to perform OCR on. Common file formats such as PNG, JPEG are supported.
39
+ # @param [Hash] opts the optional parameters
40
+ # @return [Object]
41
+ describe 'receipts_photo_to_csv test' do
42
+ it 'should work' do
43
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
44
+ end
45
+ end
46
+
47
+ end
@@ -0,0 +1,243 @@
1
+ =begin
2
+ #ocrapi
3
+
4
+ #The powerful Optical Character Recognition (OCR) APIs let you convert scanned images of pages into recognized text.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+
15
+ describe CloudmersiveOcrApiClient::ApiClient do
16
+ context 'initialization' do
17
+ context 'URL stuff' do
18
+ context 'host' do
19
+ it 'removes http from host' do
20
+ CloudmersiveOcrApiClient.configure { |c| c.host = 'http://example.com' }
21
+ expect(CloudmersiveOcrApiClient::Configuration.default.host).to eq('example.com')
22
+ end
23
+
24
+ it 'removes https from host' do
25
+ CloudmersiveOcrApiClient.configure { |c| c.host = 'https://wookiee.com' }
26
+ expect(CloudmersiveOcrApiClient::ApiClient.default.config.host).to eq('wookiee.com')
27
+ end
28
+
29
+ it 'removes trailing path from host' do
30
+ CloudmersiveOcrApiClient.configure { |c| c.host = 'hobo.com/v4' }
31
+ expect(CloudmersiveOcrApiClient::Configuration.default.host).to eq('hobo.com')
32
+ end
33
+ end
34
+
35
+ context 'base_path' do
36
+ it "prepends a slash to base_path" do
37
+ CloudmersiveOcrApiClient.configure { |c| c.base_path = 'v4/dog' }
38
+ expect(CloudmersiveOcrApiClient::Configuration.default.base_path).to eq('/v4/dog')
39
+ end
40
+
41
+ it "doesn't prepend a slash if one is already there" do
42
+ CloudmersiveOcrApiClient.configure { |c| c.base_path = '/v4/dog' }
43
+ expect(CloudmersiveOcrApiClient::Configuration.default.base_path).to eq('/v4/dog')
44
+ end
45
+
46
+ it "ends up as a blank string if nil" do
47
+ CloudmersiveOcrApiClient.configure { |c| c.base_path = nil }
48
+ expect(CloudmersiveOcrApiClient::Configuration.default.base_path).to eq('')
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ describe 'params_encoding in #build_request' do
55
+ let(:config) { CloudmersiveOcrApiClient::Configuration.new }
56
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new(config) }
57
+
58
+ it 'defaults to nil' do
59
+ expect(CloudmersiveOcrApiClient::Configuration.default.params_encoding).to eq(nil)
60
+ expect(config.params_encoding).to eq(nil)
61
+
62
+ request = api_client.build_request(:get, '/test')
63
+ expect(request.options[:params_encoding]).to eq(nil)
64
+ end
65
+
66
+ it 'can be customized' do
67
+ config.params_encoding = :multi
68
+ request = api_client.build_request(:get, '/test')
69
+ expect(request.options[:params_encoding]).to eq(:multi)
70
+ end
71
+ end
72
+
73
+ describe 'timeout in #build_request' do
74
+ let(:config) { CloudmersiveOcrApiClient::Configuration.new }
75
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new(config) }
76
+
77
+ it 'defaults to 0' do
78
+ expect(CloudmersiveOcrApiClient::Configuration.default.timeout).to eq(0)
79
+ expect(config.timeout).to eq(0)
80
+
81
+ request = api_client.build_request(:get, '/test')
82
+ expect(request.options[:timeout]).to eq(0)
83
+ end
84
+
85
+ it 'can be customized' do
86
+ config.timeout = 100
87
+ request = api_client.build_request(:get, '/test')
88
+ expect(request.options[:timeout]).to eq(100)
89
+ end
90
+ end
91
+
92
+ describe '#build_request' do
93
+ let(:config) { CloudmersiveOcrApiClient::Configuration.new }
94
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new(config) }
95
+
96
+ it 'does not send multipart to request' do
97
+ expect(Typhoeus::Request).to receive(:new).with(anything, hash_not_including(:multipart))
98
+ api_client.build_request(:get, '/test')
99
+ end
100
+
101
+ context 'when the content type is multipart' do
102
+ it 'sends multipart to request' do
103
+ expect(Typhoeus::Request).to receive(:new).with(anything, hash_including(multipart: true))
104
+ api_client.build_request(:get, '/test', {header_params: { 'Content-Type' => 'multipart/form-data'}})
105
+ end
106
+ end
107
+ end
108
+
109
+ describe '#deserialize' do
110
+ it "handles Array<Integer>" do
111
+ api_client = CloudmersiveOcrApiClient::ApiClient.new
112
+ headers = { 'Content-Type' => 'application/json' }
113
+ response = double('response', headers: headers, body: '[12, 34]')
114
+ data = api_client.deserialize(response, 'Array<Integer>')
115
+ expect(data).to be_instance_of(Array)
116
+ expect(data).to eq([12, 34])
117
+ end
118
+
119
+ it 'handles Array<Array<Integer>>' do
120
+ api_client = CloudmersiveOcrApiClient::ApiClient.new
121
+ headers = { 'Content-Type' => 'application/json' }
122
+ response = double('response', headers: headers, body: '[[12, 34], [56]]')
123
+ data = api_client.deserialize(response, 'Array<Array<Integer>>')
124
+ expect(data).to be_instance_of(Array)
125
+ expect(data).to eq([[12, 34], [56]])
126
+ end
127
+
128
+ it 'handles Hash<String, String>' do
129
+ api_client = CloudmersiveOcrApiClient::ApiClient.new
130
+ headers = { 'Content-Type' => 'application/json' }
131
+ response = double('response', headers: headers, body: '{"message": "Hello"}')
132
+ data = api_client.deserialize(response, 'Hash<String, String>')
133
+ expect(data).to be_instance_of(Hash)
134
+ expect(data).to eq(:message => 'Hello')
135
+ end
136
+ end
137
+
138
+ describe "#object_to_hash" do
139
+ it 'ignores nils and includes empty arrays' do
140
+ # uncomment below to test object_to_hash for model
141
+ # api_client = CloudmersiveOcrApiClient::ApiClient.new
142
+ # _model = CloudmersiveOcrApiClient::ModelName.new
143
+ # update the model attribute below
144
+ # _model.id = 1
145
+ # update the expected value (hash) below
146
+ # expected = {id: 1, name: '', tags: []}
147
+ # expect(api_client.object_to_hash(_model)).to eq(expected)
148
+ end
149
+ end
150
+
151
+ describe '#build_collection_param' do
152
+ let(:param) { ['aa', 'bb', 'cc'] }
153
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new }
154
+
155
+ it 'works for csv' do
156
+ expect(api_client.build_collection_param(param, :csv)).to eq('aa,bb,cc')
157
+ end
158
+
159
+ it 'works for ssv' do
160
+ expect(api_client.build_collection_param(param, :ssv)).to eq('aa bb cc')
161
+ end
162
+
163
+ it 'works for tsv' do
164
+ expect(api_client.build_collection_param(param, :tsv)).to eq("aa\tbb\tcc")
165
+ end
166
+
167
+ it 'works for pipes' do
168
+ expect(api_client.build_collection_param(param, :pipes)).to eq('aa|bb|cc')
169
+ end
170
+
171
+ it 'works for multi' do
172
+ expect(api_client.build_collection_param(param, :multi)).to eq(['aa', 'bb', 'cc'])
173
+ end
174
+
175
+ it 'fails for invalid collection format' do
176
+ expect(proc { api_client.build_collection_param(param, :INVALID) }).to raise_error(RuntimeError, 'unknown collection format: :INVALID')
177
+ end
178
+ end
179
+
180
+ describe '#json_mime?' do
181
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new }
182
+
183
+ it 'works' do
184
+ expect(api_client.json_mime?(nil)).to eq false
185
+ expect(api_client.json_mime?('')).to eq false
186
+
187
+ expect(api_client.json_mime?('application/json')).to eq true
188
+ expect(api_client.json_mime?('application/json; charset=UTF8')).to eq true
189
+ expect(api_client.json_mime?('APPLICATION/JSON')).to eq true
190
+
191
+ expect(api_client.json_mime?('application/xml')).to eq false
192
+ expect(api_client.json_mime?('text/plain')).to eq false
193
+ expect(api_client.json_mime?('application/jsonp')).to eq false
194
+ end
195
+ end
196
+
197
+ describe '#select_header_accept' do
198
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new }
199
+
200
+ it 'works' do
201
+ expect(api_client.select_header_accept(nil)).to be_nil
202
+ expect(api_client.select_header_accept([])).to be_nil
203
+
204
+ expect(api_client.select_header_accept(['application/json'])).to eq('application/json')
205
+ expect(api_client.select_header_accept(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
206
+ expect(api_client.select_header_accept(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
207
+
208
+ expect(api_client.select_header_accept(['application/xml'])).to eq('application/xml')
209
+ expect(api_client.select_header_accept(['text/html', 'application/xml'])).to eq('text/html,application/xml')
210
+ end
211
+ end
212
+
213
+ describe '#select_header_content_type' do
214
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new }
215
+
216
+ it 'works' do
217
+ expect(api_client.select_header_content_type(nil)).to eq('application/json')
218
+ expect(api_client.select_header_content_type([])).to eq('application/json')
219
+
220
+ expect(api_client.select_header_content_type(['application/json'])).to eq('application/json')
221
+ expect(api_client.select_header_content_type(['application/xml', 'application/json; charset=UTF8'])).to eq('application/json; charset=UTF8')
222
+ expect(api_client.select_header_content_type(['APPLICATION/JSON', 'text/html'])).to eq('APPLICATION/JSON')
223
+ expect(api_client.select_header_content_type(['application/xml'])).to eq('application/xml')
224
+ expect(api_client.select_header_content_type(['text/plain', 'application/xml'])).to eq('text/plain')
225
+ end
226
+ end
227
+
228
+ describe '#sanitize_filename' do
229
+ let(:api_client) { CloudmersiveOcrApiClient::ApiClient.new }
230
+
231
+ it 'works' do
232
+ expect(api_client.sanitize_filename('sun')).to eq('sun')
233
+ expect(api_client.sanitize_filename('sun.gif')).to eq('sun.gif')
234
+ expect(api_client.sanitize_filename('../sun.gif')).to eq('sun.gif')
235
+ expect(api_client.sanitize_filename('/var/tmp/sun.gif')).to eq('sun.gif')
236
+ expect(api_client.sanitize_filename('./sun.gif')).to eq('sun.gif')
237
+ expect(api_client.sanitize_filename('..\sun.gif')).to eq('sun.gif')
238
+ expect(api_client.sanitize_filename('\var\tmp\sun.gif')).to eq('sun.gif')
239
+ expect(api_client.sanitize_filename('c:\var\tmp\sun.gif')).to eq('sun.gif')
240
+ expect(api_client.sanitize_filename('.\sun.gif')).to eq('sun.gif')
241
+ end
242
+ end
243
+ end