deepl-rb 3.0.1 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -0
- data/README.md +28 -0
- data/Rakefile +6 -0
- data/VERSION +1 -1
- data/deepl-rb.gemspec +4 -3
- data/lib/deepl/configuration.rb +1 -1
- data/lib/deepl/requests/translate.rb +2 -2
- data/lib/deepl/resources/text.rb +3 -2
- data/spec/fixtures/vcr_cassettes/deepl_document.yml +2 -2
- data/spec/fixtures/vcr_cassettes/deepl_document_download.yml +2 -2
- data/spec/fixtures/vcr_cassettes/deepl_glossaries.yml +30 -30
- data/spec/fixtures/vcr_cassettes/deepl_languages.yml +1 -1
- data/spec/fixtures/vcr_cassettes/deepl_translate.yml +9 -9
- data/spec/fixtures/vcr_cassettes/deepl_usage.yml +3 -3
- data/spec/fixtures/vcr_cassettes/glossaries.yml +40 -40
- data/spec/fixtures/vcr_cassettes/languages.yml +3 -3
- data/spec/fixtures/vcr_cassettes/translate_texts.yml +250 -27
- data/spec/fixtures/vcr_cassettes/usage.yml +4 -4
- data/spec/requests/translate_spec.rb +51 -0
- data/spec/resources/text_spec.rb +1 -1
- metadata +7 -3
@@ -14,7 +14,7 @@ http_interactions:
|
|
14
14
|
Accept:
|
15
15
|
- "*/*"
|
16
16
|
User-Agent:
|
17
|
-
- deepl-ruby/
|
17
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
18
18
|
Content-Type:
|
19
19
|
- application/x-www-form-urlencoded
|
20
20
|
response:
|
@@ -53,7 +53,7 @@ http_interactions:
|
|
53
53
|
Accept:
|
54
54
|
- "*/*"
|
55
55
|
User-Agent:
|
56
|
-
- deepl-ruby/
|
56
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
57
57
|
Content-Type:
|
58
58
|
- application/x-www-form-urlencoded
|
59
59
|
response:
|
@@ -91,7 +91,7 @@ http_interactions:
|
|
91
91
|
Accept:
|
92
92
|
- "*/*"
|
93
93
|
User-Agent:
|
94
|
-
- deepl-ruby/
|
94
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
95
95
|
Content-Type:
|
96
96
|
- application/x-www-form-urlencoded
|
97
97
|
response:
|
@@ -130,7 +130,7 @@ http_interactions:
|
|
130
130
|
Accept:
|
131
131
|
- "*/*"
|
132
132
|
User-Agent:
|
133
|
-
- deepl-ruby/
|
133
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
134
134
|
Content-Type:
|
135
135
|
- application/x-www-form-urlencoded
|
136
136
|
response:
|
@@ -166,7 +166,7 @@ http_interactions:
|
|
166
166
|
Accept:
|
167
167
|
- "*/*"
|
168
168
|
User-Agent:
|
169
|
-
- deepl-ruby/
|
169
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
170
170
|
Content-Type:
|
171
171
|
- application/x-www-form-urlencoded
|
172
172
|
response:
|
@@ -202,7 +202,7 @@ http_interactions:
|
|
202
202
|
Accept:
|
203
203
|
- "*/*"
|
204
204
|
User-Agent:
|
205
|
-
- deepl-ruby/
|
205
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
206
206
|
Content-Type:
|
207
207
|
- application/x-www-form-urlencoded
|
208
208
|
response:
|
@@ -236,7 +236,7 @@ http_interactions:
|
|
236
236
|
Accept:
|
237
237
|
- "*/*"
|
238
238
|
User-Agent:
|
239
|
-
- deepl-ruby/
|
239
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
240
240
|
Content-Type:
|
241
241
|
- application/x-www-form-urlencoded
|
242
242
|
response:
|
@@ -273,7 +273,7 @@ http_interactions:
|
|
273
273
|
Accept:
|
274
274
|
- "*/*"
|
275
275
|
User-Agent:
|
276
|
-
- deepl-ruby/
|
276
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
277
277
|
Content-Type:
|
278
278
|
- application/x-www-form-urlencoded
|
279
279
|
response:
|
@@ -311,7 +311,7 @@ http_interactions:
|
|
311
311
|
Accept:
|
312
312
|
- "*/*"
|
313
313
|
User-Agent:
|
314
|
-
- deepl-ruby/
|
314
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
315
315
|
Content-Type:
|
316
316
|
- application/x-www-form-urlencoded
|
317
317
|
response:
|
@@ -352,7 +352,7 @@ http_interactions:
|
|
352
352
|
Accept:
|
353
353
|
- "*/*"
|
354
354
|
User-Agent:
|
355
|
-
- deepl-ruby/
|
355
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
356
356
|
Content-Type:
|
357
357
|
- application/x-www-form-urlencoded
|
358
358
|
response:
|
@@ -393,7 +393,7 @@ http_interactions:
|
|
393
393
|
Accept:
|
394
394
|
- "*/*"
|
395
395
|
User-Agent:
|
396
|
-
- deepl-ruby/
|
396
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
397
397
|
Content-Type:
|
398
398
|
- application/x-www-form-urlencoded
|
399
399
|
response:
|
@@ -4866,7 +4866,7 @@ http_interactions:
|
|
4866
4866
|
Authorization:
|
4867
4867
|
- DeepL-Auth-Key VALID_TOKEN
|
4868
4868
|
User-Agent:
|
4869
|
-
- deepl-ruby/
|
4869
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
4870
4870
|
Content-Type:
|
4871
4871
|
- application/json
|
4872
4872
|
Accept-Encoding:
|
@@ -4907,7 +4907,7 @@ http_interactions:
|
|
4907
4907
|
Authorization:
|
4908
4908
|
- DeepL-Auth-Key invalid
|
4909
4909
|
User-Agent:
|
4910
|
-
- deepl-ruby/
|
4910
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
4911
4911
|
Content-Type:
|
4912
4912
|
- application/json
|
4913
4913
|
Accept-Encoding:
|
@@ -4947,7 +4947,7 @@ http_interactions:
|
|
4947
4947
|
Authorization:
|
4948
4948
|
- DeepL-Auth-Key VALID_TOKEN
|
4949
4949
|
User-Agent:
|
4950
|
-
- deepl-ruby/
|
4950
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
4951
4951
|
Content-Type:
|
4952
4952
|
- application/json
|
4953
4953
|
Accept-Encoding:
|
@@ -4991,7 +4991,7 @@ http_interactions:
|
|
4991
4991
|
Authorization:
|
4992
4992
|
- DeepL-Auth-Key invalid
|
4993
4993
|
User-Agent:
|
4994
|
-
- deepl-ruby/
|
4994
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
4995
4995
|
Content-Type:
|
4996
4996
|
- application/json
|
4997
4997
|
Accept-Encoding:
|
@@ -5031,7 +5031,7 @@ http_interactions:
|
|
5031
5031
|
Authorization:
|
5032
5032
|
- DeepL-Auth-Key VALID_TOKEN
|
5033
5033
|
User-Agent:
|
5034
|
-
- deepl-ruby/
|
5034
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
5035
5035
|
Content-Type:
|
5036
5036
|
- application/json
|
5037
5037
|
Accept-Encoding:
|
@@ -9513,7 +9513,7 @@ http_interactions:
|
|
9513
9513
|
Authorization:
|
9514
9514
|
- DeepL-Auth-Key VALID_TOKEN
|
9515
9515
|
User-Agent:
|
9516
|
-
- deepl-ruby/
|
9516
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9517
9517
|
Content-Type:
|
9518
9518
|
- application/json
|
9519
9519
|
Accept-Encoding:
|
@@ -9597,7 +9597,7 @@ http_interactions:
|
|
9597
9597
|
Authorization:
|
9598
9598
|
- DeepL-Auth-Key VALID_TOKEN
|
9599
9599
|
User-Agent:
|
9600
|
-
- deepl-ruby/
|
9600
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9601
9601
|
Content-Type:
|
9602
9602
|
- application/json
|
9603
9603
|
Accept-Encoding:
|
@@ -9642,7 +9642,7 @@ http_interactions:
|
|
9642
9642
|
Authorization:
|
9643
9643
|
- DeepL-Auth-Key VALID_TOKEN
|
9644
9644
|
User-Agent:
|
9645
|
-
- deepl-ruby/
|
9645
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9646
9646
|
Content-Type:
|
9647
9647
|
- application/json
|
9648
9648
|
Accept-Encoding:
|
@@ -9687,7 +9687,7 @@ http_interactions:
|
|
9687
9687
|
Authorization:
|
9688
9688
|
- DeepL-Auth-Key VALID_TOKEN
|
9689
9689
|
User-Agent:
|
9690
|
-
- deepl-ruby/
|
9690
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9691
9691
|
Content-Type:
|
9692
9692
|
- application/json
|
9693
9693
|
Accept-Encoding:
|
@@ -9768,7 +9768,7 @@ http_interactions:
|
|
9768
9768
|
Authorization:
|
9769
9769
|
- DeepL-Auth-Key VALID_TOKEN
|
9770
9770
|
User-Agent:
|
9771
|
-
- deepl-ruby/
|
9771
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9772
9772
|
Content-Type:
|
9773
9773
|
- application/json
|
9774
9774
|
Accept-Encoding:
|
@@ -9811,7 +9811,7 @@ http_interactions:
|
|
9811
9811
|
Authorization:
|
9812
9812
|
- DeepL-Auth-Key VALID_TOKEN
|
9813
9813
|
User-Agent:
|
9814
|
-
- deepl-ruby/
|
9814
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9815
9815
|
Content-Type:
|
9816
9816
|
- application/json
|
9817
9817
|
Accept-Encoding:
|
@@ -9853,7 +9853,7 @@ http_interactions:
|
|
9853
9853
|
Authorization:
|
9854
9854
|
- DeepL-Auth-Key VALID_TOKEN
|
9855
9855
|
User-Agent:
|
9856
|
-
- deepl-ruby/
|
9856
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9857
9857
|
Content-Type:
|
9858
9858
|
- application/json
|
9859
9859
|
Accept-Encoding:
|
@@ -9900,7 +9900,7 @@ http_interactions:
|
|
9900
9900
|
Authorization:
|
9901
9901
|
- DeepL-Auth-Key VALID_TOKEN
|
9902
9902
|
User-Agent:
|
9903
|
-
- deepl-ruby/
|
9903
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9904
9904
|
Content-Type:
|
9905
9905
|
- application/json
|
9906
9906
|
Accept-Encoding:
|
@@ -9945,7 +9945,7 @@ http_interactions:
|
|
9945
9945
|
Authorization:
|
9946
9946
|
- DeepL-Auth-Key VALID_TOKEN
|
9947
9947
|
User-Agent:
|
9948
|
-
- deepl-ruby/
|
9948
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
9949
9949
|
Content-Type:
|
9950
9950
|
- application/json
|
9951
9951
|
Accept-Encoding:
|
@@ -10071,7 +10071,7 @@ http_interactions:
|
|
10071
10071
|
Authorization:
|
10072
10072
|
- DeepL-Auth-Key VALID_TOKEN
|
10073
10073
|
User-Agent:
|
10074
|
-
- deepl-ruby/
|
10074
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
10075
10075
|
Content-Type:
|
10076
10076
|
- application/json
|
10077
10077
|
Accept-Encoding:
|
@@ -10116,7 +10116,7 @@ http_interactions:
|
|
10116
10116
|
Authorization:
|
10117
10117
|
- DeepL-Auth-Key invalid
|
10118
10118
|
User-Agent:
|
10119
|
-
- deepl-ruby/
|
10119
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
10120
10120
|
Content-Type:
|
10121
10121
|
- application/json
|
10122
10122
|
Accept-Encoding:
|
@@ -10146,4 +10146,227 @@ http_interactions:
|
|
10146
10146
|
encoding: UTF-8
|
10147
10147
|
string: ''
|
10148
10148
|
recorded_at: Tue, 09 Jul 2024 10:04:32 GMT
|
10149
|
+
- request:
|
10150
|
+
method: post
|
10151
|
+
uri: https://api.deepl.com/v2/translate
|
10152
|
+
body:
|
10153
|
+
encoding: UTF-8
|
10154
|
+
string: '{"text":["That is hot!"],"source_lang":"EN","target_lang":"ES","context":""}'
|
10155
|
+
headers:
|
10156
|
+
Authorization:
|
10157
|
+
- DeepL-Auth-Key VALID_TOKEN
|
10158
|
+
User-Agent:
|
10159
|
+
- deepl-ruby/3.0.2 (darwin22) ruby/3.2.1
|
10160
|
+
Content-Type:
|
10161
|
+
- application/json
|
10162
|
+
Accept-Encoding:
|
10163
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
10164
|
+
Accept:
|
10165
|
+
- "*/*"
|
10166
|
+
response:
|
10167
|
+
status:
|
10168
|
+
code: 200
|
10169
|
+
message: OK
|
10170
|
+
headers:
|
10171
|
+
Date:
|
10172
|
+
- Wed, 25 Sep 2024 16:07:59 GMT
|
10173
|
+
Content-Type:
|
10174
|
+
- application/json
|
10175
|
+
Transfer-Encoding:
|
10176
|
+
- chunked
|
10177
|
+
Vary:
|
10178
|
+
- Accept-Encoding
|
10179
|
+
Access-Control-Allow-Origin:
|
10180
|
+
- "*"
|
10181
|
+
Strict-Transport-Security:
|
10182
|
+
- max-age=63072000; includeSubDomains; preload
|
10183
|
+
Server-Timing:
|
10184
|
+
- l7_lb_tls;dur=88, l7_lb_idle;dur=0, l7_lb_receive;dur=0, l7_lb_total;dur=126
|
10185
|
+
Access-Control-Expose-Headers:
|
10186
|
+
- Server-Timing, X-Trace-ID
|
10187
|
+
X-Trace-Id:
|
10188
|
+
- 53712edb2fc24c7f9d59e341bd80977a
|
10189
|
+
body:
|
10190
|
+
encoding: ASCII-8BIT
|
10191
|
+
string: !binary |-
|
10192
|
+
eyJ0cmFuc2xhdGlvbnMiOlt7ImRldGVjdGVkX3NvdXJjZV9sYW5ndWFnZSI6IkVOIiwidGV4dCI6IsKhRXNvIGVzdMOhIGNhbGllbnRlISJ9XX0=
|
10193
|
+
recorded_at: Wed, 25 Sep 2024 16:07:59 GMT
|
10194
|
+
- request:
|
10195
|
+
method: post
|
10196
|
+
uri: https://api.deepl.com/v2/translate
|
10197
|
+
body:
|
10198
|
+
encoding: UTF-8
|
10199
|
+
string: '{"text":["That is hot!"],"source_lang":"EN","target_lang":"ES","context":"He
|
10200
|
+
did not like the jalapenos in his meal."}'
|
10201
|
+
headers:
|
10202
|
+
Authorization:
|
10203
|
+
- DeepL-Auth-Key VALID_TOKEN
|
10204
|
+
User-Agent:
|
10205
|
+
- deepl-ruby/3.0.2 (darwin22) ruby/3.2.1
|
10206
|
+
Content-Type:
|
10207
|
+
- application/json
|
10208
|
+
Accept-Encoding:
|
10209
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
10210
|
+
Accept:
|
10211
|
+
- "*/*"
|
10212
|
+
response:
|
10213
|
+
status:
|
10214
|
+
code: 200
|
10215
|
+
message: OK
|
10216
|
+
headers:
|
10217
|
+
Date:
|
10218
|
+
- Wed, 25 Sep 2024 16:08:00 GMT
|
10219
|
+
Content-Type:
|
10220
|
+
- application/json
|
10221
|
+
Transfer-Encoding:
|
10222
|
+
- chunked
|
10223
|
+
Vary:
|
10224
|
+
- Accept-Encoding
|
10225
|
+
Access-Control-Allow-Origin:
|
10226
|
+
- "*"
|
10227
|
+
Strict-Transport-Security:
|
10228
|
+
- max-age=63072000; includeSubDomains; preload
|
10229
|
+
Server-Timing:
|
10230
|
+
- l7_lb_tls;dur=67, l7_lb_idle;dur=0, l7_lb_receive;dur=0, l7_lb_total;dur=124
|
10231
|
+
Access-Control-Expose-Headers:
|
10232
|
+
- Server-Timing, X-Trace-ID
|
10233
|
+
X-Trace-Id:
|
10234
|
+
- 1704af9968bf4570b155c12cc0ae0665
|
10235
|
+
body:
|
10236
|
+
encoding: ASCII-8BIT
|
10237
|
+
string: !binary |-
|
10238
|
+
eyJ0cmFuc2xhdGlvbnMiOlt7ImRldGVjdGVkX3NvdXJjZV9sYW5ndWFnZSI6IkVOIiwidGV4dCI6IsKhRXNvIGVzIHBpY2FudGUhIn1dfQ==
|
10239
|
+
recorded_at: Wed, 25 Sep 2024 16:08:00 GMT
|
10240
|
+
- request:
|
10241
|
+
method: post
|
10242
|
+
uri: https://api.deepl.com/v2/translate
|
10243
|
+
body:
|
10244
|
+
encoding: UTF-8
|
10245
|
+
string: '{"text":["Sample text"],"source_lang":"EN","target_lang":"DE","model_type":"quality_optimized"}'
|
10246
|
+
headers:
|
10247
|
+
Authorization:
|
10248
|
+
- DeepL-Auth-Key VALID_TOKEN
|
10249
|
+
User-Agent:
|
10250
|
+
- deepl-ruby/3.0.2 (darwin22) ruby/3.2.1
|
10251
|
+
Content-Type:
|
10252
|
+
- application/json
|
10253
|
+
Accept-Encoding:
|
10254
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
10255
|
+
Accept:
|
10256
|
+
- "*/*"
|
10257
|
+
response:
|
10258
|
+
status:
|
10259
|
+
code: 200
|
10260
|
+
message: OK
|
10261
|
+
headers:
|
10262
|
+
Date:
|
10263
|
+
- Fri, 08 Nov 2024 15:57:39 GMT
|
10264
|
+
Content-Type:
|
10265
|
+
- application/json
|
10266
|
+
Transfer-Encoding:
|
10267
|
+
- chunked
|
10268
|
+
Vary:
|
10269
|
+
- Accept-Encoding
|
10270
|
+
Access-Control-Allow-Origin:
|
10271
|
+
- "*"
|
10272
|
+
Strict-Transport-Security:
|
10273
|
+
- max-age=63072000; includeSubDomains; preload
|
10274
|
+
Server-Timing:
|
10275
|
+
- l7_lb_tls;dur=89, l7_lb_idle;dur=0, l7_lb_receive;dur=0, l7_lb_total;dur=165
|
10276
|
+
Access-Control-Expose-Headers:
|
10277
|
+
- Server-Timing, X-Trace-ID
|
10278
|
+
X-Trace-Id:
|
10279
|
+
- 7d71b768eebc41da8c5b820c33e7cdc1
|
10280
|
+
body:
|
10281
|
+
encoding: ASCII-8BIT
|
10282
|
+
string: '{"translations":[{"detected_source_language":"EN","text":"Mustertext","model_type_used":"quality_optimized"}]}'
|
10283
|
+
recorded_at: Fri, 08 Nov 2024 15:57:39 GMT
|
10284
|
+
- request:
|
10285
|
+
method: post
|
10286
|
+
uri: https://api.deepl.com/v2/translate
|
10287
|
+
body:
|
10288
|
+
encoding: UTF-8
|
10289
|
+
string: '{"text":["Sample text"],"source_lang":"EN","target_lang":"DE","model_type":"prefer_quality_optimized"}'
|
10290
|
+
headers:
|
10291
|
+
Authorization:
|
10292
|
+
- DeepL-Auth-Key VALID_TOKEN
|
10293
|
+
User-Agent:
|
10294
|
+
- deepl-ruby/3.0.2 (darwin22) ruby/3.2.1
|
10295
|
+
Content-Type:
|
10296
|
+
- application/json
|
10297
|
+
Accept-Encoding:
|
10298
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
10299
|
+
Accept:
|
10300
|
+
- "*/*"
|
10301
|
+
response:
|
10302
|
+
status:
|
10303
|
+
code: 200
|
10304
|
+
message: OK
|
10305
|
+
headers:
|
10306
|
+
Date:
|
10307
|
+
- Mon, 11 Nov 2024 10:58:59 GMT
|
10308
|
+
Content-Type:
|
10309
|
+
- application/json
|
10310
|
+
Transfer-Encoding:
|
10311
|
+
- chunked
|
10312
|
+
Vary:
|
10313
|
+
- Accept-Encoding
|
10314
|
+
Access-Control-Allow-Origin:
|
10315
|
+
- "*"
|
10316
|
+
Strict-Transport-Security:
|
10317
|
+
- max-age=63072000; includeSubDomains; preload
|
10318
|
+
Server-Timing:
|
10319
|
+
- l7_lb_tls;dur=98, l7_lb_idle;dur=1, l7_lb_receive;dur=0, l7_lb_total;dur=320
|
10320
|
+
Access-Control-Expose-Headers:
|
10321
|
+
- Server-Timing, X-Trace-ID
|
10322
|
+
X-Trace-Id:
|
10323
|
+
- 0fa07be47b3b458ebf50268ca2efe7fe
|
10324
|
+
body:
|
10325
|
+
encoding: ASCII-8BIT
|
10326
|
+
string: '{"translations":[{"detected_source_language":"EN","text":"Mustertext","model_type_used":"quality_optimized"}]}'
|
10327
|
+
recorded_at: Mon, 11 Nov 2024 10:58:59 GMT
|
10328
|
+
- request:
|
10329
|
+
method: post
|
10330
|
+
uri: https://api.deepl.com/v2/translate
|
10331
|
+
body:
|
10332
|
+
encoding: UTF-8
|
10333
|
+
string: '{"text":["Sample text"],"source_lang":"EN","target_lang":"DE","model_type":"latency_optimized"}'
|
10334
|
+
headers:
|
10335
|
+
Authorization:
|
10336
|
+
- DeepL-Auth-Key VALID_TOKEN
|
10337
|
+
User-Agent:
|
10338
|
+
- deepl-ruby/3.0.2 (darwin22) ruby/3.2.1
|
10339
|
+
Content-Type:
|
10340
|
+
- application/json
|
10341
|
+
Accept-Encoding:
|
10342
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
10343
|
+
Accept:
|
10344
|
+
- "*/*"
|
10345
|
+
response:
|
10346
|
+
status:
|
10347
|
+
code: 200
|
10348
|
+
message: OK
|
10349
|
+
headers:
|
10350
|
+
Date:
|
10351
|
+
- Fri, 15 Nov 2024 11:35:22 GMT
|
10352
|
+
Content-Type:
|
10353
|
+
- application/json
|
10354
|
+
Transfer-Encoding:
|
10355
|
+
- chunked
|
10356
|
+
Vary:
|
10357
|
+
- Accept-Encoding
|
10358
|
+
Access-Control-Allow-Origin:
|
10359
|
+
- "*"
|
10360
|
+
Strict-Transport-Security:
|
10361
|
+
- max-age=63072000; includeSubDomains; preload
|
10362
|
+
Server-Timing:
|
10363
|
+
- l7_lb_tls;dur=136, l7_lb_idle;dur=2, l7_lb_receive;dur=0, l7_lb_total;dur=156
|
10364
|
+
Access-Control-Expose-Headers:
|
10365
|
+
- Server-Timing, X-Trace-ID
|
10366
|
+
X-Trace-Id:
|
10367
|
+
- de2645cb65c3418db54e3bdefd35fe52
|
10368
|
+
body:
|
10369
|
+
encoding: ASCII-8BIT
|
10370
|
+
string: '{"translations":[{"detected_source_language":"EN","text":"Beispieltext","model_type_used":"latency_optimized"}]}'
|
10371
|
+
recorded_at: Fri, 15 Nov 2024 11:35:22 GMT
|
10149
10372
|
recorded_with: VCR 6.2.0
|
@@ -14,7 +14,7 @@ http_interactions:
|
|
14
14
|
Accept:
|
15
15
|
- "*/*"
|
16
16
|
User-Agent:
|
17
|
-
- deepl-ruby/
|
17
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
18
18
|
response:
|
19
19
|
status:
|
20
20
|
code: 200
|
@@ -46,7 +46,7 @@ http_interactions:
|
|
46
46
|
Authorization:
|
47
47
|
- DeepL-Auth-Key VALID_TOKEN
|
48
48
|
User-Agent:
|
49
|
-
- deepl-ruby/
|
49
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
50
50
|
Accept-Encoding:
|
51
51
|
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
52
52
|
Accept:
|
@@ -88,7 +88,7 @@ http_interactions:
|
|
88
88
|
Authorization:
|
89
89
|
- DeepL-Auth-Key VALID_TOKEN
|
90
90
|
User-Agent:
|
91
|
-
- deepl-ruby/
|
91
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
92
92
|
Accept-Encoding:
|
93
93
|
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
94
94
|
Accept:
|
@@ -132,7 +132,7 @@ http_interactions:
|
|
132
132
|
Authorization:
|
133
133
|
- DeepL-Auth-Key VALID_TOKEN
|
134
134
|
User-Agent:
|
135
|
-
- deepl-ruby/
|
135
|
+
- deepl-ruby/3.0.2 (darwin23) ruby/3.3.3
|
136
136
|
Content-Type:
|
137
137
|
- application/json
|
138
138
|
Accept-Encoding:
|
@@ -190,6 +190,18 @@ describe DeepL::Requests::Translate do
|
|
190
190
|
expect(request.options[:formality]).to eq('more')
|
191
191
|
end
|
192
192
|
end
|
193
|
+
|
194
|
+
context 'when using `model_type` options' do
|
195
|
+
it 'works with a nil value' do
|
196
|
+
request = described_class.new(api, nil, nil, nil, model_type: nil)
|
197
|
+
expect(request.options[:model_type]).to be_nil
|
198
|
+
end
|
199
|
+
|
200
|
+
it 'works with a string' do
|
201
|
+
request = described_class.new(api, nil, nil, nil, model_type: 'latency_optimized')
|
202
|
+
expect(request.options[:model_type]).to eq('latency_optimized')
|
203
|
+
end
|
204
|
+
end
|
193
205
|
end
|
194
206
|
|
195
207
|
describe '#request' do
|
@@ -292,6 +304,45 @@ describe DeepL::Requests::Translate do
|
|
292
304
|
end
|
293
305
|
end
|
294
306
|
|
307
|
+
context 'when performing a valid request with context' do
|
308
|
+
let(:text) { 'That is hot!' }
|
309
|
+
|
310
|
+
context 'when context is empty' do
|
311
|
+
let(:options) { { context: '' } }
|
312
|
+
|
313
|
+
it 'translates correctly with empty context' do
|
314
|
+
res = translate.request
|
315
|
+
expect(res).to be_a(DeepL::Resources::Text)
|
316
|
+
expect(res.text).to eq('¡Eso está caliente!')
|
317
|
+
end
|
318
|
+
end
|
319
|
+
|
320
|
+
context 'when context is set' do
|
321
|
+
let(:options) { { context: 'He did not like the jalapenos in his meal.' } }
|
322
|
+
|
323
|
+
it 'translates correctly with context taken into account' do
|
324
|
+
res = translate.request
|
325
|
+
expect(res).to be_a(DeepL::Resources::Text)
|
326
|
+
expect(res.text).to eq('¡Eso es picante!')
|
327
|
+
end
|
328
|
+
end
|
329
|
+
end
|
330
|
+
|
331
|
+
context 'when performing a request with a model type' do
|
332
|
+
let(:target_lang) { 'DE' }
|
333
|
+
|
334
|
+
%w[quality_optimized latency_optimized prefer_quality_optimized].each do |model_type_str|
|
335
|
+
it "translates correctly with #{model_type_str} models" do
|
336
|
+
options = { model_type: model_type_str }
|
337
|
+
translate = described_class.new(api, text, source_lang, target_lang, options)
|
338
|
+
res = translate.request
|
339
|
+
expect(res).to be_a(DeepL::Resources::Text)
|
340
|
+
expected_model_type = model_type_str.sub(/^prefer_/, '')
|
341
|
+
expect(res.model_type_used).to eq(expected_model_type)
|
342
|
+
end
|
343
|
+
end
|
344
|
+
end
|
345
|
+
|
295
346
|
context 'when performing a bad request' do
|
296
347
|
context 'when using an invalid token' do
|
297
348
|
let(:api) do
|
data/spec/resources/text_spec.rb
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
require 'spec_helper'
|
7
7
|
|
8
8
|
describe DeepL::Resources::Text do
|
9
|
-
subject(:text) { described_class.new('Target', 'es', nil, nil) }
|
9
|
+
subject(:text) { described_class.new('Target', 'es', nil, nil, nil) }
|
10
10
|
|
11
11
|
describe '#initialize' do
|
12
12
|
context 'when building a basic object' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: deepl-rb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- DeepL SE
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-11-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: juwelier
|
@@ -137,7 +137,11 @@ files:
|
|
137
137
|
homepage: https://github.com/DeepLcom/deepl-rb
|
138
138
|
licenses:
|
139
139
|
- MIT
|
140
|
-
metadata:
|
140
|
+
metadata:
|
141
|
+
bug_tracker_uri: https://github.com/DeepLcom/deepl-rb/issues
|
142
|
+
changelog_uri: https://github.com/DeepLcom/deepl-rb/blob/main/CHANGELOG.md
|
143
|
+
documentation_uri: https://github.com/DeepLcom/deepl-rb/blob/main/README.md
|
144
|
+
homepage_uri: https://github.com/DeepLcom/deepl-rb
|
141
145
|
post_install_message:
|
142
146
|
rdoc_options: []
|
143
147
|
require_paths:
|