crowdin-api 1.14.0 → 1.15.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/.rubocop.yml +4 -0
- data/.rubocop_todo.yml +1 -0
- data/AGENTS.md +63 -0
- data/CLAUDE.md +1 -0
- data/Gemfile.lock +1 -1
- data/README.md +1 -1
- data/lib/crowdin-api/api_resources/advisor.rb +86 -0
- data/lib/crowdin-api/api_resources/ai.rb +974 -0
- data/lib/crowdin-api/api_resources/applications.rb +247 -10
- data/lib/crowdin-api/api_resources/bundles.rb +45 -29
- data/lib/crowdin-api/api_resources/clients.rb +23 -0
- data/lib/crowdin-api/api_resources/custom_spellcheckers.rb +36 -0
- data/lib/crowdin-api/api_resources/dictionaries.rb +5 -5
- data/lib/crowdin-api/api_resources/distributions.rb +15 -15
- data/lib/crowdin-api/api_resources/external_qa_checks.rb +36 -0
- data/lib/crowdin-api/api_resources/fields.rb +78 -0
- data/lib/crowdin-api/api_resources/glossaries.rb +62 -50
- data/lib/crowdin-api/api_resources/integrations.rb +201 -0
- data/lib/crowdin-api/api_resources/labels.rb +32 -0
- data/lib/crowdin-api/api_resources/languages.rb +16 -0
- data/lib/crowdin-api/api_resources/machine_translation_engines.rb +17 -0
- data/lib/crowdin-api/api_resources/notifications.rb +15 -6
- data/lib/crowdin-api/api_resources/organization.rb +33 -0
- data/lib/crowdin-api/api_resources/organization_webhooks.rb +71 -0
- data/lib/crowdin-api/api_resources/placeholders.rb +182 -0
- data/lib/crowdin-api/api_resources/projects.rb +137 -41
- data/lib/crowdin-api/api_resources/reports.rb +310 -26
- data/lib/crowdin-api/api_resources/screenshots.rb +48 -0
- data/lib/crowdin-api/api_resources/security_logs.rb +63 -0
- data/lib/crowdin-api/api_resources/source_files.rb +370 -65
- data/lib/crowdin-api/api_resources/source_strings.rb +62 -0
- data/lib/crowdin-api/api_resources/storages.rb +11 -11
- data/lib/crowdin-api/api_resources/string_comments.rb +46 -0
- data/lib/crowdin-api/api_resources/string_corrections.rb +21 -6
- data/lib/crowdin-api/api_resources/string_translations.rb +96 -0
- data/lib/crowdin-api/api_resources/style_guides.rb +71 -0
- data/lib/crowdin-api/api_resources/tasks.rb +140 -10
- data/lib/crowdin-api/api_resources/teams.rb +99 -0
- data/lib/crowdin-api/api_resources/translation_memory.rb +138 -0
- data/lib/crowdin-api/api_resources/translation_status.rb +65 -0
- data/lib/crowdin-api/api_resources/translations.rb +122 -2
- data/lib/crowdin-api/api_resources/users.rb +136 -6
- data/lib/crowdin-api/api_resources/vendors.rb +2 -0
- data/lib/crowdin-api/api_resources/webhooks.rb +16 -0
- data/lib/crowdin-api/api_resources/workflows.rb +24 -0
- data/lib/crowdin-api/client/version.rb +1 -1
- data/lib/crowdin-api/core/request.rb +1 -1
- data/lib/crowdin-api.rb +3 -1
- data/spec/api_resources/advisor_spec.rb +45 -0
- data/spec/api_resources/ai_spec.rb +863 -0
- data/spec/api_resources/applications_spec.rb +138 -0
- data/spec/api_resources/bundles_spec.rb +8 -0
- data/spec/api_resources/clients_spec.rb +13 -0
- data/spec/api_resources/custom_spellcheckers_spec.rb +21 -0
- data/spec/api_resources/external_qa_checks_spec.rb +21 -0
- data/spec/api_resources/fields_spec.rb +45 -0
- data/spec/api_resources/glossaries_spec.rb +18 -0
- data/spec/api_resources/integrations_spec.rb +117 -0
- data/spec/api_resources/organization_spec.rb +21 -0
- data/spec/api_resources/organization_webhooks_spec.rb +45 -0
- data/spec/api_resources/placeholders_spec.rb +103 -0
- data/spec/api_resources/projects_spec.rb +58 -0
- data/spec/api_resources/reports_spec.rb +221 -0
- data/spec/api_resources/security_logs_spec.rb +39 -0
- data/spec/api_resources/source_files_spec.rb +182 -0
- data/spec/api_resources/source_strings_spec.rb +26 -0
- data/spec/api_resources/string_comments_spec.rb +18 -0
- data/spec/api_resources/string_corrections_spec.rb +25 -19
- data/spec/api_resources/string_translations_spec.rb +26 -0
- data/spec/api_resources/style_guides_spec.rb +45 -0
- data/spec/api_resources/tasks_spec.rb +60 -0
- data/spec/api_resources/teams_spec.rb +42 -0
- data/spec/api_resources/translation_memory_spec.rb +58 -0
- data/spec/api_resources/translation_status_spec.rb +26 -0
- data/spec/api_resources/translations_spec.rb +42 -0
- data/spec/api_resources/users_spec.rb +84 -0
- data/spec/api_resources/workflows_spec.rb +10 -0
- metadata +27 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
describe Crowdin::ApiResources::StyleGuides do
|
|
4
|
+
describe 'Default endpoints' do
|
|
5
|
+
describe '#list_style_guides' do
|
|
6
|
+
it 'when request are valid', :default do
|
|
7
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/style-guides")
|
|
8
|
+
result = @crowdin.list_style_guides({})
|
|
9
|
+
expect(result).to eq(200)
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
describe '#create_style_guide' do
|
|
14
|
+
it 'when request are valid', :default do
|
|
15
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/style-guides")
|
|
16
|
+
result = @crowdin.create_style_guide({})
|
|
17
|
+
expect(result).to eq(200)
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
describe '#delete_style_guide' do
|
|
22
|
+
it 'when request are valid', :default do
|
|
23
|
+
stub_request(:delete, "https://api.crowdin.com/#{target_api_url}/style-guides/1")
|
|
24
|
+
result = @crowdin.delete_style_guide(1)
|
|
25
|
+
expect(result).to eq(200)
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe '#get_style_guide' do
|
|
30
|
+
it 'when request are valid', :default do
|
|
31
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/style-guides/1")
|
|
32
|
+
result = @crowdin.get_style_guide(1)
|
|
33
|
+
expect(result).to eq(200)
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
describe '#edit_style_guide' do
|
|
38
|
+
it 'when request are valid', :default do
|
|
39
|
+
stub_request(:patch, "https://api.crowdin.com/#{target_api_url}/style-guides/1")
|
|
40
|
+
result = @crowdin.edit_style_guide(1, [])
|
|
41
|
+
expect(result).to eq(200)
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -121,4 +121,64 @@ describe Crowdin::ApiResources::Tasks do
|
|
|
121
121
|
end
|
|
122
122
|
end
|
|
123
123
|
end
|
|
124
|
+
|
|
125
|
+
describe 'Default endpoints' do
|
|
126
|
+
describe '#list_project_task_settings_templates' do
|
|
127
|
+
it 'when request are valid', :default do
|
|
128
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/tasks/settings-templates")
|
|
129
|
+
result = @crowdin.list_project_task_settings_templates({}, project_id)
|
|
130
|
+
expect(result).to eq(200)
|
|
131
|
+
end
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
describe '#add_project_task_settings_template' do
|
|
135
|
+
it 'when request are valid', :default do
|
|
136
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/tasks/settings-templates")
|
|
137
|
+
result = @crowdin.add_project_task_settings_template({}, project_id)
|
|
138
|
+
expect(result).to eq(200)
|
|
139
|
+
end
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
describe '#delete_project_task_settings_template' do
|
|
143
|
+
it 'when request are valid', :default do
|
|
144
|
+
stub_request(:delete, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/tasks/settings-templates/1")
|
|
145
|
+
result = @crowdin.delete_project_task_settings_template(1, project_id)
|
|
146
|
+
expect(result).to eq(200)
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
describe '#get_project_task_settings_template' do
|
|
151
|
+
it 'when request are valid', :default do
|
|
152
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/tasks/settings-templates/1")
|
|
153
|
+
result = @crowdin.get_project_task_settings_template(1, project_id)
|
|
154
|
+
expect(result).to eq(200)
|
|
155
|
+
end
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
describe '#edit_project_task_settings_template' do
|
|
159
|
+
it 'when request are valid', :default do
|
|
160
|
+
stub_request(:patch, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/tasks/settings-templates/1")
|
|
161
|
+
result = @crowdin.edit_project_task_settings_template(1, [], project_id)
|
|
162
|
+
expect(result).to eq(200)
|
|
163
|
+
end
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
describe '#list_specific_user_tasks' do
|
|
167
|
+
it 'when request are valid', :default do
|
|
168
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/users/1/tasks")
|
|
169
|
+
result = @crowdin.list_specific_user_tasks({}, 1)
|
|
170
|
+
expect(result).to eq(200)
|
|
171
|
+
end
|
|
172
|
+
end
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
describe 'Enterprise endpoints' do
|
|
176
|
+
describe '#list_specific_user_tasks' do
|
|
177
|
+
it 'when request are valid', :enterprise do
|
|
178
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/tasks")
|
|
179
|
+
result = @crowdin.list_specific_user_tasks({})
|
|
180
|
+
expect(result).to eq(200)
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
end
|
|
124
184
|
end
|
|
@@ -97,4 +97,46 @@ describe Crowdin::ApiResources::Teams do
|
|
|
97
97
|
end
|
|
98
98
|
end
|
|
99
99
|
end
|
|
100
|
+
|
|
101
|
+
describe 'Enterprise endpoints' do
|
|
102
|
+
describe '#list_group_teams' do
|
|
103
|
+
it 'when request are valid', :enterprise do
|
|
104
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/groups/1/teams")
|
|
105
|
+
result = @crowdin.list_group_teams(1, {})
|
|
106
|
+
expect(result).to eq(200)
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
describe '#update_group_teams' do
|
|
111
|
+
it 'when request are valid', :enterprise do
|
|
112
|
+
stub_request(:patch, "https://domain.api.crowdin.com/#{target_api_url}/groups/1/teams")
|
|
113
|
+
result = @crowdin.update_group_teams(1, [])
|
|
114
|
+
expect(result).to eq(200)
|
|
115
|
+
end
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
describe '#get_group_team' do
|
|
119
|
+
it 'when request are valid', :enterprise do
|
|
120
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/groups/1/teams/1")
|
|
121
|
+
result = @crowdin.get_group_team(1, 1)
|
|
122
|
+
expect(result).to eq(200)
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
describe '#list_team_projects_permissions' do
|
|
127
|
+
it 'when request are valid', :enterprise do
|
|
128
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/teams/1/projects/permissions")
|
|
129
|
+
result = @crowdin.list_team_projects_permissions(1, {})
|
|
130
|
+
expect(result).to eq(200)
|
|
131
|
+
end
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
describe '#edit_team_projects_permissions' do
|
|
135
|
+
it 'when request are valid', :enterprise do
|
|
136
|
+
stub_request(:patch, "https://domain.api.crowdin.com/#{target_api_url}/teams/1/projects/permissions")
|
|
137
|
+
result = @crowdin.edit_team_projects_permissions(1, [])
|
|
138
|
+
expect(result).to eq(200)
|
|
139
|
+
end
|
|
140
|
+
end
|
|
141
|
+
end
|
|
100
142
|
end
|
|
@@ -132,4 +132,62 @@ describe Crowdin::ApiResources::TranslationMemory do
|
|
|
132
132
|
end
|
|
133
133
|
end
|
|
134
134
|
end
|
|
135
|
+
|
|
136
|
+
describe 'Default endpoints' do
|
|
137
|
+
describe '#concordance_search_in_tms' do
|
|
138
|
+
it 'when request are valid', :default do
|
|
139
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/tms/concordance")
|
|
140
|
+
result = @crowdin.concordance_search_in_tms({})
|
|
141
|
+
expect(result).to eq(200)
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
describe '#list_tm_segments' do
|
|
146
|
+
it 'when request are valid', :default do
|
|
147
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/tms/1/segments")
|
|
148
|
+
result = @crowdin.list_tm_segments(1, {})
|
|
149
|
+
expect(result).to eq(200)
|
|
150
|
+
end
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
describe '#tm_segment_batch_operations' do
|
|
154
|
+
it 'when request are valid', :default do
|
|
155
|
+
stub_request(:patch, "https://api.crowdin.com/#{target_api_url}/tms/1/segments")
|
|
156
|
+
result = @crowdin.tm_segment_batch_operations(1, [])
|
|
157
|
+
expect(result).to eq(200)
|
|
158
|
+
end
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
describe '#create_tm_segment' do
|
|
162
|
+
it 'when request are valid', :default do
|
|
163
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/tms/1/segments")
|
|
164
|
+
result = @crowdin.create_tm_segment(1, {})
|
|
165
|
+
expect(result).to eq(200)
|
|
166
|
+
end
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
describe '#delete_tm_segment' do
|
|
170
|
+
it 'when request are valid', :default do
|
|
171
|
+
stub_request(:delete, "https://api.crowdin.com/#{target_api_url}/tms/1/segments/1")
|
|
172
|
+
result = @crowdin.delete_tm_segment(1, 1)
|
|
173
|
+
expect(result).to eq(200)
|
|
174
|
+
end
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
describe '#get_tm_segment' do
|
|
178
|
+
it 'when request are valid', :default do
|
|
179
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/tms/1/segments/1")
|
|
180
|
+
result = @crowdin.get_tm_segment(1, 1)
|
|
181
|
+
expect(result).to eq(200)
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
describe '#edit_tm_segment' do
|
|
186
|
+
it 'when request are valid', :default do
|
|
187
|
+
stub_request(:patch, "https://api.crowdin.com/#{target_api_url}/tms/1/segments/1")
|
|
188
|
+
result = @crowdin.edit_tm_segment(1, 1, [])
|
|
189
|
+
expect(result).to eq(200)
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
end
|
|
135
193
|
end
|
|
@@ -58,4 +58,30 @@ describe Crowdin::ApiResources::TranslationStatus do
|
|
|
58
58
|
end
|
|
59
59
|
end
|
|
60
60
|
end
|
|
61
|
+
|
|
62
|
+
describe 'Default endpoints' do
|
|
63
|
+
describe '#revalidate_qa_checks' do
|
|
64
|
+
it 'when request are valid', :default do
|
|
65
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/qa-checks/revalidate")
|
|
66
|
+
result = @crowdin.revalidate_qa_checks({}, project_id)
|
|
67
|
+
expect(result).to eq(200)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
describe '#cancel_qa_checks_revalidation' do
|
|
72
|
+
it 'when request are valid', :default do
|
|
73
|
+
stub_request(:delete, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/qa-checks/revalidate/1")
|
|
74
|
+
result = @crowdin.cancel_qa_checks_revalidation(1, project_id)
|
|
75
|
+
expect(result).to eq(200)
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
describe '#qa_checks_revalidation_status' do
|
|
80
|
+
it 'when request are valid', :default do
|
|
81
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/qa-checks/revalidate/1")
|
|
82
|
+
result = @crowdin.qa_checks_revalidation_status(1, project_id)
|
|
83
|
+
expect(result).to eq(200)
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
61
87
|
end
|
|
@@ -169,4 +169,46 @@ describe Crowdin::ApiResources::Translations do
|
|
|
169
169
|
end
|
|
170
170
|
end
|
|
171
171
|
end
|
|
172
|
+
|
|
173
|
+
describe 'Default endpoints' do
|
|
174
|
+
describe '#auto_translation_batch_operations' do
|
|
175
|
+
it 'when request are valid', :default do
|
|
176
|
+
stub_request(:patch, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/pre-translations")
|
|
177
|
+
result = @crowdin.auto_translation_batch_operations([], project_id)
|
|
178
|
+
expect(result).to eq(200)
|
|
179
|
+
end
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
describe '#import_translations' do
|
|
183
|
+
it 'when request are valid', :default do
|
|
184
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/translations/imports")
|
|
185
|
+
result = @crowdin.import_translations({}, project_id)
|
|
186
|
+
expect(result).to eq(200)
|
|
187
|
+
end
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
describe '#import_translations_status' do
|
|
191
|
+
it 'when request are valid', :default do
|
|
192
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/translations/imports/1")
|
|
193
|
+
result = @crowdin.import_translations_status(1, project_id)
|
|
194
|
+
expect(result).to eq(200)
|
|
195
|
+
end
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
describe '#import_translations_report' do
|
|
199
|
+
it 'when request are valid', :default do
|
|
200
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/translations/imports/1/report")
|
|
201
|
+
result = @crowdin.import_translations_report(1, project_id)
|
|
202
|
+
expect(result).to eq(200)
|
|
203
|
+
end
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
describe '#validate_text_by_qa_checks' do
|
|
207
|
+
it 'when request are valid', :default do
|
|
208
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/translations/validate-qa-checks")
|
|
209
|
+
result = @crowdin.validate_text_by_qa_checks([], project_id)
|
|
210
|
+
expect(result).to eq(200)
|
|
211
|
+
end
|
|
212
|
+
end
|
|
213
|
+
end
|
|
172
214
|
end
|
|
@@ -31,6 +31,12 @@ describe Crowdin::ApiResources::Users do
|
|
|
31
31
|
|
|
32
32
|
describe 'Enterprise endpoints' do
|
|
33
33
|
describe '#add_project_member' do
|
|
34
|
+
it 'when request are valid', :default do
|
|
35
|
+
stub_request(:post, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/members")
|
|
36
|
+
add_project_member = @crowdin.add_project_member({}, project_id)
|
|
37
|
+
expect(add_project_member).to eq(200)
|
|
38
|
+
end
|
|
39
|
+
|
|
34
40
|
it 'when request are valid', :enterprise do
|
|
35
41
|
stub_request(:post, "https://domain.api.crowdin.com/#{target_api_url}/projects/#{project_id}/members")
|
|
36
42
|
add_project_member = @crowdin.add_project_member({}, project_id)
|
|
@@ -41,6 +47,12 @@ describe Crowdin::ApiResources::Users do
|
|
|
41
47
|
describe '#get_project_member_permissions' do
|
|
42
48
|
let(:member_id) { 1 }
|
|
43
49
|
|
|
50
|
+
it 'when request are valid', :default do
|
|
51
|
+
stub_request(:get, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/members/#{member_id}")
|
|
52
|
+
get_project_member_permissions = @crowdin.get_project_member_permissions(member_id, project_id)
|
|
53
|
+
expect(get_project_member_permissions).to eq(200)
|
|
54
|
+
end
|
|
55
|
+
|
|
44
56
|
it 'when request are valid', :enterprise do
|
|
45
57
|
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/projects/#{project_id}/members/#{member_id}")
|
|
46
58
|
get_project_member_permissions = @crowdin.get_project_member_permissions(member_id, project_id)
|
|
@@ -51,6 +63,12 @@ describe Crowdin::ApiResources::Users do
|
|
|
51
63
|
describe '#replace_project_permissions' do
|
|
52
64
|
let(:member_id) { 1 }
|
|
53
65
|
|
|
66
|
+
it 'when request are valid', :default do
|
|
67
|
+
stub_request(:put, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/members/#{member_id}")
|
|
68
|
+
replace_project_permissions = @crowdin.replace_project_permissions(member_id, {}, project_id)
|
|
69
|
+
expect(replace_project_permissions).to eq(200)
|
|
70
|
+
end
|
|
71
|
+
|
|
54
72
|
it 'when request are valid', :enterprise do
|
|
55
73
|
stub_request(:put, "https://domain.api.crowdin.com/#{target_api_url}/projects/#{project_id}/members/#{member_id}")
|
|
56
74
|
replace_project_permissions = @crowdin.replace_project_permissions(member_id, {}, project_id)
|
|
@@ -61,6 +79,12 @@ describe Crowdin::ApiResources::Users do
|
|
|
61
79
|
describe '#delete_member_from_project' do
|
|
62
80
|
let(:member_id) { 1 }
|
|
63
81
|
|
|
82
|
+
it 'when request are valid', :default do
|
|
83
|
+
stub_request(:delete, "https://api.crowdin.com/#{target_api_url}/projects/#{project_id}/members/#{member_id}")
|
|
84
|
+
delete_member_from_project = @crowdin.delete_member_from_project(member_id, {}, project_id)
|
|
85
|
+
expect(delete_member_from_project).to eq(200)
|
|
86
|
+
end
|
|
87
|
+
|
|
64
88
|
it 'when request are valid', :enterprise do
|
|
65
89
|
stub_request(:delete, "https://domain.api.crowdin.com/#{target_api_url}/projects/#{project_id}/members/#{member_id}")
|
|
66
90
|
delete_member_from_project = @crowdin.delete_member_from_project(member_id, {}, project_id)
|
|
@@ -114,4 +138,64 @@ describe Crowdin::ApiResources::Users do
|
|
|
114
138
|
end
|
|
115
139
|
end
|
|
116
140
|
end
|
|
141
|
+
|
|
142
|
+
describe 'Default endpoints' do
|
|
143
|
+
describe '#edit_authenticated_user' do
|
|
144
|
+
it 'when request are valid', :default do
|
|
145
|
+
stub_request(:patch, "https://api.crowdin.com/#{target_api_url}/user")
|
|
146
|
+
result = @crowdin.edit_authenticated_user([])
|
|
147
|
+
expect(result).to eq(200)
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
describe 'Enterprise endpoints' do
|
|
153
|
+
describe '#list_group_managers' do
|
|
154
|
+
it 'when request are valid', :enterprise do
|
|
155
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/groups/1/managers")
|
|
156
|
+
result = @crowdin.list_group_managers(1, {})
|
|
157
|
+
expect(result).to eq(200)
|
|
158
|
+
end
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
describe '#update_group_managers' do
|
|
162
|
+
it 'when request are valid', :enterprise do
|
|
163
|
+
stub_request(:patch, "https://domain.api.crowdin.com/#{target_api_url}/groups/1/managers")
|
|
164
|
+
result = @crowdin.update_group_managers(1, [])
|
|
165
|
+
expect(result).to eq(200)
|
|
166
|
+
end
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
describe '#get_group_manager' do
|
|
170
|
+
it 'when request are valid', :enterprise do
|
|
171
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/groups/1/managers/1")
|
|
172
|
+
result = @crowdin.get_group_manager(1, 1)
|
|
173
|
+
expect(result).to eq(200)
|
|
174
|
+
end
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
describe '#list_user_projects_contributions' do
|
|
178
|
+
it 'when request are valid', :enterprise do
|
|
179
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/users/1/projects/contributions")
|
|
180
|
+
result = @crowdin.list_user_projects_contributions(1, {})
|
|
181
|
+
expect(result).to eq(200)
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
describe '#list_user_projects_permissions' do
|
|
186
|
+
it 'when request are valid', :enterprise do
|
|
187
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/users/1/projects/permissions")
|
|
188
|
+
result = @crowdin.list_user_projects_permissions(1, {})
|
|
189
|
+
expect(result).to eq(200)
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
describe '#edit_user_projects_permissions' do
|
|
194
|
+
it 'when request are valid', :enterprise do
|
|
195
|
+
stub_request(:patch, "https://domain.api.crowdin.com/#{target_api_url}/users/1/projects/permissions")
|
|
196
|
+
result = @crowdin.edit_user_projects_permissions(1, [])
|
|
197
|
+
expect(result).to eq(200)
|
|
198
|
+
end
|
|
199
|
+
end
|
|
200
|
+
end
|
|
117
201
|
end
|
|
@@ -38,4 +38,14 @@ describe Crowdin::ApiResources::Workflows do
|
|
|
38
38
|
end
|
|
39
39
|
end
|
|
40
40
|
end
|
|
41
|
+
|
|
42
|
+
describe 'Enterprise endpoints' do
|
|
43
|
+
describe '#list_workflow_step_strings' do
|
|
44
|
+
it 'when request are valid', :enterprise do
|
|
45
|
+
stub_request(:get, "https://domain.api.crowdin.com/#{target_api_url}/projects/#{project_id}/workflow-steps/1/strings")
|
|
46
|
+
result = @crowdin.list_workflow_step_strings(1, {}, project_id)
|
|
47
|
+
expect(result).to eq(200)
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
41
51
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: crowdin-api
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.15.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Crowdin
|
|
@@ -194,6 +194,8 @@ files:
|
|
|
194
194
|
- ".rspec"
|
|
195
195
|
- ".rubocop.yml"
|
|
196
196
|
- ".rubocop_todo.yml"
|
|
197
|
+
- AGENTS.md
|
|
198
|
+
- CLAUDE.md
|
|
197
199
|
- CODE_OF_CONDUCT.md
|
|
198
200
|
- CONTRIBUTING.md
|
|
199
201
|
- Gemfile
|
|
@@ -204,24 +206,36 @@ files:
|
|
|
204
206
|
- bin/crowdin-console
|
|
205
207
|
- crowdin-api.gemspec
|
|
206
208
|
- lib/crowdin-api.rb
|
|
209
|
+
- lib/crowdin-api/api_resources/advisor.rb
|
|
210
|
+
- lib/crowdin-api/api_resources/ai.rb
|
|
207
211
|
- lib/crowdin-api/api_resources/applications.rb
|
|
208
212
|
- lib/crowdin-api/api_resources/bundles.rb
|
|
213
|
+
- lib/crowdin-api/api_resources/clients.rb
|
|
214
|
+
- lib/crowdin-api/api_resources/custom_spellcheckers.rb
|
|
209
215
|
- lib/crowdin-api/api_resources/dictionaries.rb
|
|
210
216
|
- lib/crowdin-api/api_resources/distributions.rb
|
|
217
|
+
- lib/crowdin-api/api_resources/external_qa_checks.rb
|
|
218
|
+
- lib/crowdin-api/api_resources/fields.rb
|
|
211
219
|
- lib/crowdin-api/api_resources/glossaries.rb
|
|
220
|
+
- lib/crowdin-api/api_resources/integrations.rb
|
|
212
221
|
- lib/crowdin-api/api_resources/labels.rb
|
|
213
222
|
- lib/crowdin-api/api_resources/languages.rb
|
|
214
223
|
- lib/crowdin-api/api_resources/machine_translation_engines.rb
|
|
215
224
|
- lib/crowdin-api/api_resources/notifications.rb
|
|
225
|
+
- lib/crowdin-api/api_resources/organization.rb
|
|
226
|
+
- lib/crowdin-api/api_resources/organization_webhooks.rb
|
|
227
|
+
- lib/crowdin-api/api_resources/placeholders.rb
|
|
216
228
|
- lib/crowdin-api/api_resources/projects.rb
|
|
217
229
|
- lib/crowdin-api/api_resources/reports.rb
|
|
218
230
|
- lib/crowdin-api/api_resources/screenshots.rb
|
|
231
|
+
- lib/crowdin-api/api_resources/security_logs.rb
|
|
219
232
|
- lib/crowdin-api/api_resources/source_files.rb
|
|
220
233
|
- lib/crowdin-api/api_resources/source_strings.rb
|
|
221
234
|
- lib/crowdin-api/api_resources/storages.rb
|
|
222
235
|
- lib/crowdin-api/api_resources/string_comments.rb
|
|
223
236
|
- lib/crowdin-api/api_resources/string_corrections.rb
|
|
224
237
|
- lib/crowdin-api/api_resources/string_translations.rb
|
|
238
|
+
- lib/crowdin-api/api_resources/style_guides.rb
|
|
225
239
|
- lib/crowdin-api/api_resources/tasks.rb
|
|
226
240
|
- lib/crowdin-api/api_resources/teams.rb
|
|
227
241
|
- lib/crowdin-api/api_resources/translation_memory.rb
|
|
@@ -240,24 +254,36 @@ files:
|
|
|
240
254
|
- lib/crowdin-api/core/graphql_extensions.rb
|
|
241
255
|
- lib/crowdin-api/core/request.rb
|
|
242
256
|
- lib/crowdin-api/core/send_request.rb
|
|
257
|
+
- spec/api_resources/advisor_spec.rb
|
|
258
|
+
- spec/api_resources/ai_spec.rb
|
|
243
259
|
- spec/api_resources/applications_spec.rb
|
|
244
260
|
- spec/api_resources/bundles_spec.rb
|
|
261
|
+
- spec/api_resources/clients_spec.rb
|
|
262
|
+
- spec/api_resources/custom_spellcheckers_spec.rb
|
|
245
263
|
- spec/api_resources/dictionaries_spec.rb
|
|
246
264
|
- spec/api_resources/distributions_spec.rb
|
|
265
|
+
- spec/api_resources/external_qa_checks_spec.rb
|
|
266
|
+
- spec/api_resources/fields_spec.rb
|
|
247
267
|
- spec/api_resources/glossaries_spec.rb
|
|
268
|
+
- spec/api_resources/integrations_spec.rb
|
|
248
269
|
- spec/api_resources/labels_spec.rb
|
|
249
270
|
- spec/api_resources/languages_spec.rb
|
|
250
271
|
- spec/api_resources/machine_translation_engines_spec.rb
|
|
251
272
|
- spec/api_resources/notifications_spec.rb
|
|
273
|
+
- spec/api_resources/organization_spec.rb
|
|
274
|
+
- spec/api_resources/organization_webhooks_spec.rb
|
|
275
|
+
- spec/api_resources/placeholders_spec.rb
|
|
252
276
|
- spec/api_resources/projects_spec.rb
|
|
253
277
|
- spec/api_resources/reports_spec.rb
|
|
254
278
|
- spec/api_resources/screenshots_spec.rb
|
|
279
|
+
- spec/api_resources/security_logs_spec.rb
|
|
255
280
|
- spec/api_resources/source_files_spec.rb
|
|
256
281
|
- spec/api_resources/source_strings_spec.rb
|
|
257
282
|
- spec/api_resources/storages_spec.rb
|
|
258
283
|
- spec/api_resources/string_comments_spec.rb
|
|
259
284
|
- spec/api_resources/string_corrections_spec.rb
|
|
260
285
|
- spec/api_resources/string_translations_spec.rb
|
|
286
|
+
- spec/api_resources/style_guides_spec.rb
|
|
261
287
|
- spec/api_resources/tasks_spec.rb
|
|
262
288
|
- spec/api_resources/teams_spec.rb
|
|
263
289
|
- spec/api_resources/translation_memory_spec.rb
|