deepl-rb 3.9.0 → 3.10.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/.gitlab-ci.yml +70 -52
- data/.rubocop.yml +26 -0
- data/CHANGELOG.md +429 -18
- data/Gemfile +4 -0
- data/README.md +981 -223
- data/Rakefile +18 -5
- data/VERSION +1 -1
- data/deepl-rb.gemspec +6 -6
- data/lib/deepl/admin_client.rb +183 -0
- data/lib/deepl/api.rb +30 -6
- data/lib/deepl/app_info.rb +20 -0
- data/lib/deepl/client.rb +969 -0
- data/lib/deepl/configuration.rb +56 -10
- data/lib/deepl/constants/admin_usage_group_by.rb +13 -0
- data/lib/deepl/constants/custom_tag_usage_aggregate_by.rb +13 -0
- data/lib/deepl/constants/document_status_code.rb +17 -0
- data/lib/deepl/constants/language_include.rb +17 -0
- data/lib/deepl/constants/language_resource_name.rb +21 -0
- data/lib/deepl/constants/tag_handling_version.rb +14 -0
- data/lib/deepl/deprecation.rb +42 -0
- data/lib/deepl/document_api.rb +41 -22
- data/lib/deepl/exceptions/bad_request.rb +1 -3
- data/lib/deepl/exceptions/connection_error.rb +37 -0
- data/lib/deepl/exceptions/document_not_ready_error.rb +17 -0
- data/lib/deepl/exceptions/document_translation_error.rb +17 -1
- data/lib/deepl/exceptions/error.rb +13 -1
- data/lib/deepl/exceptions/not_found.rb +8 -3
- data/lib/deepl/exceptions/not_supported.rb +6 -0
- data/lib/deepl/exceptions/request_error.rb +19 -2
- data/lib/deepl/exceptions/server_error.rb +7 -1
- data/lib/deepl/exceptions/validation_error.rb +14 -0
- data/lib/deepl/requests/admin/base.rb +94 -0
- data/lib/deepl/requests/admin/create_developer_key.rb +38 -0
- data/lib/deepl/requests/admin/custom_tag_usage_analytics.rb +38 -0
- data/lib/deepl/requests/admin/list_developer_keys.rb +28 -0
- data/lib/deepl/requests/admin/update_developer_key.rb +35 -0
- data/lib/deepl/requests/admin/usage_analytics.rb +36 -0
- data/lib/deepl/requests/base.rb +229 -59
- data/lib/deepl/requests/correct.rb +57 -0
- data/lib/deepl/requests/document/download.rb +11 -3
- data/lib/deepl/requests/document/get_status.rb +2 -2
- data/lib/deepl/requests/document/upload.rb +43 -10
- data/lib/deepl/requests/glossary/create.rb +6 -2
- data/lib/deepl/requests/glossary/language_pairs.rb +20 -4
- data/lib/deepl/requests/language_resources.rb +41 -0
- data/lib/deepl/requests/languages.rb +28 -4
- data/lib/deepl/requests/languages_for_resource.rb +54 -0
- data/lib/deepl/requests/multilingual_glossary/create.rb +37 -0
- data/lib/deepl/requests/multilingual_glossary/destroy.rb +36 -0
- data/lib/deepl/requests/multilingual_glossary/destroy_dictionary.rb +51 -0
- data/lib/deepl/requests/multilingual_glossary/entries.rb +66 -0
- data/lib/deepl/requests/multilingual_glossary/find.rb +35 -0
- data/lib/deepl/requests/multilingual_glossary/helpers.rb +63 -0
- data/lib/deepl/requests/multilingual_glossary/list.rb +39 -0
- data/lib/deepl/requests/multilingual_glossary/replace_dictionary.rb +41 -0
- data/lib/deepl/requests/multilingual_glossary/update.rb +40 -0
- data/lib/deepl/requests/rephrase.rb +5 -9
- data/lib/deepl/requests/spoken_terms/create.rb +37 -0
- data/lib/deepl/requests/spoken_terms/destroy.rb +36 -0
- data/lib/deepl/requests/spoken_terms/destroy_term_list.rb +41 -0
- data/lib/deepl/requests/spoken_terms/entries.rb +46 -0
- data/lib/deepl/requests/spoken_terms/find.rb +35 -0
- data/lib/deepl/requests/spoken_terms/helpers.rb +67 -0
- data/lib/deepl/requests/spoken_terms/list.rb +35 -0
- data/lib/deepl/requests/spoken_terms/replace_term_list.rb +41 -0
- data/lib/deepl/requests/spoken_terms/update.rb +40 -0
- data/lib/deepl/requests/style_profile/base.rb +83 -0
- data/lib/deepl/requests/style_profile/create.rb +35 -0
- data/lib/deepl/requests/style_profile/destroy.rb +34 -0
- data/lib/deepl/requests/style_profile/find.rb +33 -0
- data/lib/deepl/requests/style_profile/list.rb +43 -0
- data/lib/deepl/requests/style_profile/update.rb +35 -0
- data/lib/deepl/requests/style_rule/create.rb +1 -1
- data/lib/deepl/requests/style_rule/create_custom_instruction.rb +4 -2
- data/lib/deepl/requests/style_rule/destroy.rb +4 -2
- data/lib/deepl/requests/style_rule/destroy_custom_instruction.rb +5 -3
- data/lib/deepl/requests/style_rule/find.rb +4 -2
- data/lib/deepl/requests/style_rule/find_custom_instruction.rb +5 -3
- data/lib/deepl/requests/style_rule/helpers.rb +35 -0
- data/lib/deepl/requests/style_rule/list.rb +1 -1
- data/lib/deepl/requests/style_rule/update.rb +4 -2
- data/lib/deepl/requests/style_rule/update_configured_rules.rb +4 -2
- data/lib/deepl/requests/style_rule/update_custom_instruction.rb +5 -3
- data/lib/deepl/requests/translate.rb +52 -20
- data/lib/deepl/requests/translation_memory/base.rb +1 -4
- data/lib/deepl/requests/translation_memory/create_export.rb +1 -1
- data/lib/deepl/requests/translation_memory/create_import.rb +1 -1
- data/lib/deepl/requests/translation_memory/destroy.rb +1 -1
- data/lib/deepl/requests/translation_memory/download_export.rb +4 -0
- data/lib/deepl/requests/translation_memory/find.rb +1 -1
- data/lib/deepl/requests/translation_memory/find_job.rb +1 -1
- data/lib/deepl/requests/translation_memory/list.rb +2 -1
- data/lib/deepl/requests/translation_memory/segments.rb +3 -2
- data/lib/deepl/requests/translation_memory/storage_base.rb +40 -8
- data/lib/deepl/requests/translation_memory/upload_file.rb +1 -1
- data/lib/deepl/requests/usage.rb +28 -1
- data/lib/deepl/requests/write_improvements.rb +35 -0
- data/lib/deepl/resources/admin_usage_report.rb +73 -0
- data/lib/deepl/resources/custom_tag_usage_report.rb +59 -0
- data/lib/deepl/resources/developer_key.rb +57 -0
- data/lib/deepl/resources/document_handle.rb +24 -25
- data/lib/deepl/resources/document_translation_status.rb +23 -4
- data/lib/deepl/resources/language.rb +10 -2
- data/lib/deepl/resources/language_resource.rb +57 -0
- data/lib/deepl/resources/language_support.rb +56 -0
- data/lib/deepl/resources/multilingual_glossary.rb +112 -0
- data/lib/deepl/resources/spoken_terms.rb +61 -0
- data/lib/deepl/resources/style_profile.rb +44 -0
- data/lib/deepl/resources/style_rule.rb +3 -0
- data/lib/deepl/resources/text.rb +18 -2
- data/lib/deepl/resources/translation_memory.rb +8 -2
- data/lib/deepl/resources/translation_memory_import.rb +1 -1
- data/lib/deepl/resources/translation_memory_job.rb +23 -3
- data/lib/deepl/resources/translation_memory_segments.rb +8 -6
- data/lib/deepl/resources/usage.rb +93 -4
- data/lib/deepl/style_rule_api.rb +11 -0
- data/lib/deepl/translation_memory_api.rb +104 -24
- data/lib/deepl/utils/client_builder.rb +54 -0
- data/lib/deepl/utils/document_poller.rb +70 -0
- data/lib/deepl/utils/exception_builder.rb +3 -2
- data/lib/deepl/utils/http_client_builder.rb +79 -0
- data/lib/deepl/utils/number_parser.rb +34 -0
- data/lib/deepl/utils/term_validator.rb +33 -0
- data/lib/deepl/utils/time_parser.rb +14 -0
- data/lib/deepl.rb +166 -41
- data/lib/http_client_options.rb +21 -1
- data/lib/version.rb +1 -1
- data/spec/fixtures.rb +33 -0
- data/spec/offline/admin_client_spec.rb +551 -0
- data/spec/offline/client_spec.rb +273 -0
- data/spec/{api → offline}/configuration_spec.rb +45 -3
- data/spec/{constants → offline}/constants_spec.rb +23 -1
- data/spec/offline/correct_text_spec.rb +50 -0
- data/spec/offline/deprecation_spec.rb +32 -0
- data/spec/offline/errors_spec.rb +92 -0
- data/spec/offline/glossaries_spec.rb +98 -0
- data/spec/offline/http_client_spec.rb +319 -0
- data/spec/offline/languages_spec.rb +155 -0
- data/spec/offline/module_methods_spec.rb +13 -0
- data/spec/offline/multilingual_glossaries_spec.rb +358 -0
- data/spec/offline/offline_helper.rb +71 -0
- data/spec/offline/rephrase_text_spec.rb +73 -0
- data/spec/offline/spoken_terms_spec.rb +215 -0
- data/spec/offline/style_profiles_spec.rb +266 -0
- data/spec/offline/style_rules_spec.rb +318 -0
- data/spec/offline/translate_document_spec.rb +606 -0
- data/spec/offline/translate_text_spec.rb +286 -0
- data/spec/offline/translation_memories_client_spec.rb +256 -0
- data/spec/offline/translation_memories_spec.rb +463 -0
- data/spec/offline/usage_spec.rb +151 -0
- data/spec/real_api/admin_client_spec.rb +77 -0
- data/spec/real_api/correct_text_spec.rb +20 -0
- data/spec/real_api/glossaries_spec.rb +28 -0
- data/spec/real_api/languages_spec.rb +27 -0
- data/spec/real_api/multilingual_glossaries_spec.rb +53 -0
- data/spec/real_api/proxy_spec.rb +41 -0
- data/spec/real_api/real_api_helper.rb +65 -0
- data/spec/real_api/rephrase_text_spec.rb +16 -0
- data/spec/real_api/spoken_terms_spec.rb +56 -0
- data/spec/real_api/style_profiles_spec.rb +46 -0
- data/spec/real_api/style_rules_spec.rb +46 -0
- data/spec/real_api/translate_document_spec.rb +18 -0
- data/spec/real_api/translate_text_spec.rb +16 -0
- data/spec/real_api/translation_memories_spec.rb +56 -0
- data/spec/real_api/usage_spec.rb +20 -0
- data/spec/spec_helper.rb +1 -50
- metadata +116 -76
- data/.circleci/config.yml +0 -27
- data/.github/workflows/add_issues_to_kanban.yml +0 -16
- data/spec/api/api_spec.rb +0 -20
- data/spec/api/deepl_spec.rb +0 -262
- data/spec/integration_tests/document_api_spec.rb +0 -211
- data/spec/integration_tests/document_error_paths_spec.rb +0 -33
- data/spec/integration_tests/glossary_api_spec.rb +0 -114
- data/spec/integration_tests/glossary_error_paths_spec.rb +0 -107
- data/spec/integration_tests/integration_test_utils.rb +0 -178
- data/spec/integration_tests/languages_api_spec.rb +0 -54
- data/spec/integration_tests/languages_error_paths_spec.rb +0 -25
- data/spec/integration_tests/rephrase_api_spec.rb +0 -90
- data/spec/integration_tests/rephrase_error_paths_spec.rb +0 -53
- data/spec/integration_tests/smoke_test_spec.rb +0 -24
- data/spec/integration_tests/style_rule_api_spec.rb +0 -117
- data/spec/integration_tests/style_rule_error_paths_spec.rb +0 -45
- data/spec/integration_tests/translate_api_spec.rb +0 -117
- data/spec/integration_tests/translate_error_paths_spec.rb +0 -48
- data/spec/integration_tests/translation_memory_api_spec.rb +0 -244
- data/spec/integration_tests/translation_memory_error_paths_spec.rb +0 -87
- data/spec/integration_tests/usage_api_spec.rb +0 -29
- data/spec/integration_tests/usage_error_paths_spec.rb +0 -18
- data/spec/requests/document/upload_spec.rb +0 -130
- data/spec/requests/extra_body_parameters_types_spec.rb +0 -82
- data/spec/requests/glossary/create_spec.rb +0 -44
- data/spec/requests/glossary/destroy_spec.rb +0 -27
- data/spec/requests/glossary/entries_spec.rb +0 -27
- data/spec/requests/glossary/find_spec.rb +0 -28
- data/spec/requests/glossary/language_pairs_spec.rb +0 -27
- data/spec/requests/glossary/list_spec.rb +0 -27
- data/spec/requests/languages_spec.rb +0 -27
- data/spec/requests/rephrase_spec.rb +0 -46
- data/spec/requests/style_rule/create_custom_instruction_spec.rb +0 -30
- data/spec/requests/style_rule/create_spec.rb +0 -29
- data/spec/requests/style_rule/destroy_custom_instruction_spec.rb +0 -28
- data/spec/requests/style_rule/destroy_spec.rb +0 -27
- data/spec/requests/style_rule/find_custom_instruction_spec.rb +0 -29
- data/spec/requests/style_rule/find_spec.rb +0 -28
- data/spec/requests/style_rule/list_spec.rb +0 -27
- data/spec/requests/style_rule/update_configured_rules_spec.rb +0 -31
- data/spec/requests/style_rule/update_custom_instruction_spec.rb +0 -32
- data/spec/requests/style_rule/update_spec.rb +0 -29
- data/spec/requests/translate_spec.rb +0 -338
- data/spec/requests/translation_memory/create_export_spec.rb +0 -37
- data/spec/requests/translation_memory/create_import_spec.rb +0 -61
- data/spec/requests/translation_memory/destroy_spec.rb +0 -36
- data/spec/requests/translation_memory/download_export_spec.rb +0 -54
- data/spec/requests/translation_memory/find_job_spec.rb +0 -37
- data/spec/requests/translation_memory/find_spec.rb +0 -36
- data/spec/requests/translation_memory/list_spec.rb +0 -27
- data/spec/requests/translation_memory/segments_spec.rb +0 -58
- data/spec/requests/translation_memory/upload_file_spec.rb +0 -55
- data/spec/requests/usage_spec.rb +0 -27
- data/spec/resources/custom_instruction_spec.rb +0 -32
- data/spec/resources/glossary_spec.rb +0 -38
- data/spec/resources/language_pair_spec.rb +0 -23
- data/spec/resources/language_spec.rb +0 -45
- data/spec/resources/style_rule_spec.rb +0 -68
- data/spec/resources/text_spec.rb +0 -23
- data/spec/resources/translation_memory_export_spec.rb +0 -38
- data/spec/resources/translation_memory_import_spec.rb +0 -30
- data/spec/resources/translation_memory_job_spec.rb +0 -109
- data/spec/resources/translation_memory_segments_spec.rb +0 -78
- data/spec/resources/translation_memory_spec.rb +0 -52
- data/spec/resources/usage_spec.rb +0 -35
- data/spec/support/live_mock_server.rb +0 -12
- data/spec/support/managed_glossary.rb +0 -65
- data/spec/support/managed_style_rule.rb +0 -17
- data/spec/support/managed_translation_memory.rb +0 -55
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright 2022 Daniel Herzog
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::Glossary::Entries do
|
|
9
|
-
subject(:entries_obj) { described_class.new(api, id) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:id) { '9ab5dac2-b7b2-4b4a-808a-e8e305df5ecb' }
|
|
19
|
-
|
|
20
|
-
describe '#initialize' do
|
|
21
|
-
context 'when building a request' do
|
|
22
|
-
it 'creates a request object' do
|
|
23
|
-
expect(entries_obj).to be_a(described_class)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Copyright 2022 Daniel Herzog
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::Glossary::Find do
|
|
9
|
-
subject(:glossary_find) { described_class.new(api, id, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:id) { '9ab5dac2-b7b2-4b4a-808a-e8e305df5ecb' }
|
|
19
|
-
let(:options) { {} }
|
|
20
|
-
|
|
21
|
-
describe '#initialize' do
|
|
22
|
-
context 'when building a request' do
|
|
23
|
-
it 'creates a request object' do
|
|
24
|
-
expect(glossary_find).to be_a(described_class)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright 2022 Daniel Herzog
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::Glossary::LanguagePairs do
|
|
9
|
-
subject(:language_pairs_obj) { described_class.new(api, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:options) { {} }
|
|
19
|
-
|
|
20
|
-
describe '#initialize' do
|
|
21
|
-
context 'when building a request' do
|
|
22
|
-
it 'creates a request object' do
|
|
23
|
-
expect(language_pairs_obj).to be_a(described_class)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright 2022 Daniel Herzog
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::Glossary::List do
|
|
9
|
-
subject(:glossary_list) { described_class.new(api, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:options) { {} }
|
|
19
|
-
|
|
20
|
-
describe '#initialize' do
|
|
21
|
-
context 'when building a request' do
|
|
22
|
-
it 'creates a request object' do
|
|
23
|
-
expect(glossary_list).to be_a(described_class)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright 2021 Daniel Herzog
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::Languages do
|
|
9
|
-
subject(:languages_obj) { described_class.new(api, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:options) { {} }
|
|
19
|
-
|
|
20
|
-
describe '#initialize' do
|
|
21
|
-
context 'when building a request' do
|
|
22
|
-
it 'creates a request object' do
|
|
23
|
-
expect(languages_obj).to be_a(described_class)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
# Copyright 2025 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::Rephrase do
|
|
9
|
-
around do |tests|
|
|
10
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
11
|
-
tests.call
|
|
12
|
-
ENV.replace(tmp_env)
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
let(:api) { build_deepl_api }
|
|
16
|
-
let(:text) do
|
|
17
|
-
'As Gregor Samsa awoke one morning from uneasy dreams he found himself transformed.'
|
|
18
|
-
end
|
|
19
|
-
let(:target_lang) { 'EN' }
|
|
20
|
-
|
|
21
|
-
describe '#initialize' do
|
|
22
|
-
context 'when passing additional headers' do
|
|
23
|
-
it 'merges the headers into the request headers' do
|
|
24
|
-
request = described_class.new(api, text, target_lang, nil, nil, {},
|
|
25
|
-
{ 'X-DeepL-Reporting-Tag' => 'my-tag' })
|
|
26
|
-
expect(request.send(:headers)).to include('X-DeepL-Reporting-Tag' => 'my-tag')
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
it 'defaults to no additional headers' do
|
|
30
|
-
request = described_class.new(api, text, target_lang)
|
|
31
|
-
expect(request.send(:headers).keys).to contain_exactly('Authorization', 'User-Agent')
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
context 'with a writing style and tone from the provided constants applied' do
|
|
36
|
-
let(:writing_style) { DeepL::Constants::WritingStyle::BUSINESS }
|
|
37
|
-
let(:tone) { DeepL::Constants::Tone::FRIENDLY }
|
|
38
|
-
|
|
39
|
-
it 'has the correct writing style and tone applied' do
|
|
40
|
-
request = described_class.new(api, text, target_lang, writing_style, tone)
|
|
41
|
-
expect(request.writing_style).to eq('business')
|
|
42
|
-
expect(request.tone).to eq('friendly')
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::CreateCustomInstruction do
|
|
9
|
-
subject(:create_instruction) { described_class.new(api, style_id, label, prompt, nil, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
19
|
-
let(:label) { 'Test Instruction' }
|
|
20
|
-
let(:prompt) { 'Always use formal language' }
|
|
21
|
-
let(:options) { {} }
|
|
22
|
-
|
|
23
|
-
describe '#initialize' do
|
|
24
|
-
context 'when building a request' do
|
|
25
|
-
it 'creates a request object' do
|
|
26
|
-
expect(create_instruction).to be_a(described_class)
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
end
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::Create do
|
|
9
|
-
subject(:create) { described_class.new(api, name, language, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:name) { 'Test Style Rule' }
|
|
19
|
-
let(:language) { 'en' }
|
|
20
|
-
let(:options) { {} }
|
|
21
|
-
|
|
22
|
-
describe '#initialize' do
|
|
23
|
-
context 'when building a request' do
|
|
24
|
-
it 'creates a request object' do
|
|
25
|
-
expect(create).to be_a(described_class)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::DestroyCustomInstruction do
|
|
9
|
-
subject(:destroy_instruction) { described_class.new(api, style_id, instruction_id) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
19
|
-
let(:instruction_id) { 'test-instruction-id' }
|
|
20
|
-
|
|
21
|
-
describe '#initialize' do
|
|
22
|
-
context 'when building a request' do
|
|
23
|
-
it 'creates a request object' do
|
|
24
|
-
expect(destroy_instruction).to be_a(described_class)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::Destroy do
|
|
9
|
-
subject(:destroy) { described_class.new(api, style_id) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
19
|
-
|
|
20
|
-
describe '#initialize' do
|
|
21
|
-
context 'when building a request' do
|
|
22
|
-
it 'creates a request object' do
|
|
23
|
-
expect(destroy).to be_a(described_class)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::FindCustomInstruction do
|
|
9
|
-
subject(:find_instruction) { described_class.new(api, style_id, instruction_id, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
19
|
-
let(:instruction_id) { 'test-instruction-id' }
|
|
20
|
-
let(:options) { {} }
|
|
21
|
-
|
|
22
|
-
describe '#initialize' do
|
|
23
|
-
context 'when building a request' do
|
|
24
|
-
it 'creates a request object' do
|
|
25
|
-
expect(find_instruction).to be_a(described_class)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::Find do
|
|
9
|
-
subject(:style_rule_find) { described_class.new(api, style_id, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
19
|
-
let(:options) { {} }
|
|
20
|
-
|
|
21
|
-
describe '#initialize' do
|
|
22
|
-
context 'when building a request' do
|
|
23
|
-
it 'creates a request object' do
|
|
24
|
-
expect(style_rule_find).to be_a(described_class)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::List do
|
|
9
|
-
subject(:style_rule_list) { described_class.new(api, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:options) { {} }
|
|
19
|
-
|
|
20
|
-
describe '#initialize' do
|
|
21
|
-
context 'when building a request' do
|
|
22
|
-
it 'creates a request object' do
|
|
23
|
-
expect(style_rule_list).to be_a(described_class)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::UpdateConfiguredRules do
|
|
9
|
-
subject(:update_configured_rules) do
|
|
10
|
-
described_class.new(api, style_id, configured_rules, options)
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
around do |tests|
|
|
14
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
15
|
-
tests.call
|
|
16
|
-
ENV.replace(tmp_env)
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
let(:api) { build_deepl_api }
|
|
20
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
21
|
-
let(:configured_rules) { { 'dates_and_times' => { 'calendar_era' => 'use_bc_and_ad' } } }
|
|
22
|
-
let(:options) { {} }
|
|
23
|
-
|
|
24
|
-
describe '#initialize' do
|
|
25
|
-
context 'when building a request' do
|
|
26
|
-
it 'creates a request object' do
|
|
27
|
-
expect(update_configured_rules).to be_a(described_class)
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::UpdateCustomInstruction do
|
|
9
|
-
subject(:update_instruction) do
|
|
10
|
-
described_class.new(api, style_id, instruction_id, label, prompt, nil, {})
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
around do |tests|
|
|
14
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
15
|
-
tests.call
|
|
16
|
-
ENV.replace(tmp_env)
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
let(:api) { build_deepl_api }
|
|
20
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
21
|
-
let(:instruction_id) { 'test-instruction-id' }
|
|
22
|
-
let(:label) { 'Updated Label' }
|
|
23
|
-
let(:prompt) { 'Use casual language' }
|
|
24
|
-
|
|
25
|
-
describe '#initialize' do
|
|
26
|
-
context 'when building a request' do
|
|
27
|
-
it 'creates a request object' do
|
|
28
|
-
expect(update_instruction).to be_a(described_class)
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
end
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
# Copyright 2026 DeepL SE (https://www.deepl.com)
|
|
2
|
-
# Use of this source code is governed by an MIT
|
|
3
|
-
# license that can be found in the LICENSE.md file.
|
|
4
|
-
# frozen_string_literal: true
|
|
5
|
-
|
|
6
|
-
require 'spec_helper'
|
|
7
|
-
|
|
8
|
-
describe DeepL::Requests::StyleRule::Update do
|
|
9
|
-
subject(:update) { described_class.new(api, style_id, name, options) }
|
|
10
|
-
|
|
11
|
-
around do |tests|
|
|
12
|
-
tmp_env = replace_env_preserving_deepl_vars_except_mock_server
|
|
13
|
-
tests.call
|
|
14
|
-
ENV.replace(tmp_env)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
let(:api) { build_deepl_api }
|
|
18
|
-
let(:style_id) { 'dca2e053-8ae5-45e6-a0d2-881156e7f4e4' }
|
|
19
|
-
let(:name) { 'Updated Name' }
|
|
20
|
-
let(:options) { {} }
|
|
21
|
-
|
|
22
|
-
describe '#initialize' do
|
|
23
|
-
context 'when building a request' do
|
|
24
|
-
it 'creates a request object' do
|
|
25
|
-
expect(update).to be_a(described_class)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|