11package com .crowdin .client .translations ;
22
3- import com .crowdin .client .core .model .DownloadLink ;
4- import com .crowdin .client .core .model .PatchOperation ;
5- import com .crowdin .client .core .model .PatchRequest ;
6- import com .crowdin .client .core .model .ResponseList ;
7- import com .crowdin .client .core .model .ResponseObject ;
3+ import com .crowdin .client .core .model .*;
84import com .crowdin .client .framework .RequestMock ;
95import com .crowdin .client .framework .TestClient ;
10- import com .crowdin .client .translations .model .ApplyPreTranslationRequest ;
11- import com .crowdin .client .translations .model .ApplyPreTranslationStringsBasedRequest ;
12- import com .crowdin .client .translations .model .AutoApproveOption ;
13- import com .crowdin .client .translations .model .BuildProjectDirectoryTranslationRequest ;
14- import com .crowdin .client .translations .model .BuildProjectFileTranslationRequest ;
15- import com .crowdin .client .translations .model .CharTransformation ;
16- import com .crowdin .client .translations .model .CrowdinTranslationCraeteProjectPseudoBuildForm ;
17- import com .crowdin .client .translations .model .CrowdinTranslationCreateProjectBuildForm ;
18- import com .crowdin .client .translations .model .CrowdinTranslationCreateProjectPseudoBuildForm ;
19- import com .crowdin .client .translations .model .ExportProjectTranslationRequest ;
20- import com .crowdin .client .translations .model .Method ;
21- import com .crowdin .client .translations .model .PreTranslation ;
22- import com .crowdin .client .translations .model .PreTranslationStatus ;
23- import com .crowdin .client .translations .model .ProjectBuild ;
24- import com .crowdin .client .translations .model .UploadTranslationsRequest ;
25- import com .crowdin .client .translations .model .UploadTranslationsResponse ;
26- import com .crowdin .client .translations .model .UploadTranslationsStringsRequest ;
27- import com .crowdin .client .translations .model .UploadTranslationsStringsResponse ;
28- import com .crowdin .client .translations .model .PreTranslationReportResponse ;
29-
6+ import com .crowdin .client .translations .model .*;
307import org .apache .http .client .methods .HttpDelete ;
318import org .apache .http .client .methods .HttpGet ;
329import org .apache .http .client .methods .HttpPatch ;
@@ -53,6 +30,8 @@ public class TranslationsApiTest extends TestClient {
5330 private final Long storageId = 14L ;
5431 private final Long buildId = 2L ;
5532 private final String link = "test.com" ;
33+ private final String importId = "import-123" ;
34+ private final String importIdStringsBased = "import-strings-123" ;
5635
5736 @ Override
5837 public List <RequestMock > getMocks () {
@@ -73,8 +52,14 @@ public List<RequestMock> getMocks() {
7352 RequestMock .build (String .format ("%s/projects/%d/translations/exports" , this .url , projectId ), HttpPost .METHOD_NAME , "api/translations/exportProjectTranslationRequest.json" , "api/translations/exportProjectTranslationResponse.json" ),
7453 RequestMock .build (this .url + "/projects/" + projectId + "/pre-translations" , HttpGet .METHOD_NAME , "api/translations/listPreTranslations.json" ),
7554 RequestMock .build (this .url + "/projects/" + projectId + "/pre-translations/" + preTranslationId , HttpPatch .METHOD_NAME , "api/translations/editPreTranslationRequest.json" , "api/translations/editPreTranslationResponse.json" ),
76- RequestMock .build (this .url + "/projects/" + projectId + "/pre-translations/" + preTranslationId + "/report" , HttpGet .METHOD_NAME , "api/translations/preTranslationReportResponse.json" )
77- );
55+ RequestMock .build (this .url + "/projects/" + projectId + "/pre-translations/" + preTranslationId + "/report" , HttpGet .METHOD_NAME , "api/translations/preTranslationReportResponse.json" ),
56+ RequestMock .build (this .url + "/projects/" + projectId + "/translations/imports" , HttpPost .METHOD_NAME , "api/translations/importTranslationsRequest.json" , "api/translations/importTranslationsResponse.json" ),
57+ RequestMock .build (this .url + "/projects/" + projectId + "/translations/imports" , HttpPost .METHOD_NAME , "api/translations/importTranslationsStringsBasedRequest.json" , "api/translations/importTranslationsStringsBasedResponse.json" ),
58+ RequestMock .build (this .url + "/projects/" + projectId + "/translations/imports/" + importId , HttpGet .METHOD_NAME , "api/translations/importTranslationsResponse.json" ),
59+ RequestMock .build (this .url + "/projects/" + projectId + "/translations/imports/" + importIdStringsBased , HttpGet .METHOD_NAME , "api/translations/importTranslationsStringsBasedResponse.json" ),
60+ RequestMock .build (this .url + "/projects/" + projectId + "/translations/imports/" + importId + "/report" , HttpGet .METHOD_NAME , "api/translations/importTranslationsReportResponse.json" ),
61+ RequestMock .build (this .url + "/projects/" + projectId + "/translations/imports/" + importIdStringsBased + "/report" , HttpGet .METHOD_NAME , "api/translations/importTranslationsStringsBasedReportResponse.json" )
62+ );
7863 }
7964
8065 @ Test
@@ -270,7 +255,7 @@ public void editPreTranslationTest() {
270255 assertEquals (language , preTranslationResponseObject .getData ().getAttributes ().getLanguageIds ().get (0 ));
271256 assertEquals (fileId , preTranslationResponseObject .getData ().getAttributes ().getFileIds ().get (0 ));
272257 }
273-
258+
274259 @ Test
275260 public void getPreTranslationReportTest () {
276261 ResponseObject <PreTranslationReportResponse > response = this .getTranslationsApi ().getPreTranslationReport (projectId , preTranslationId );
@@ -296,7 +281,57 @@ public void getPreTranslationReportTest() {
296281 assertEquals (6 , skipped .get ("ai_error" ));
297282
298283 Map <String , Integer > skippedQaCheckCategories = language .getSkippedQaCheckCategories ();
299- assertEquals (1 , skippedQaCheckCategories .get ("duplicate" ));
284+ assertEquals (1 , skippedQaCheckCategories .get ("duplicate" ));
300285 assertEquals (1 , skippedQaCheckCategories .get ("spellcheck" ));
301286 }
287+
288+ @ Test
289+ public void importTranslationsTest () {
290+ ImportTranslationsRequest request = new ImportTranslationsRequest ();
291+ request .setStorageId (storageId );
292+ request .setFileId (fileId );
293+ request .setTranslateHidden (true );
294+ request .setLanguageIds (singletonList ("uk" ));
295+ ResponseObject <ImportTranslationsStatus > importTranslationsStatusResponseObject = this .getTranslationsApi ().importTranslations (projectId , request );
296+ assertEquals (importId , importTranslationsStatusResponseObject .getData ().getIdentifier ());
297+ }
298+
299+ @ Test
300+ public void importTranslationStringsBasedTest () {
301+ ImportTranslationsStringsBasedRequest request = new ImportTranslationsStringsBasedRequest ();
302+ request .setStorageId (storageId );
303+ request .setBranchId (branchId );
304+ request .setAddToTm (true );
305+ request .setLanguageIds (singletonList ("es" ));
306+ ResponseObject <ImportTranslationsStringsBasedStatus > importTranslationsStringsBasedStatusResponseObject = this .getTranslationsApi ().importTranslations (projectId , request );
307+ assertEquals (importIdStringsBased , importTranslationsStringsBasedStatusResponseObject .getData ().getIdentifier ());
308+ }
309+
310+ @ Test
311+ public void importTranslationsStatusTest () {
312+ ResponseObject <ImportTranslationsStatus > importTranslationsStatusResponseObject = this .getTranslationsApi ().importTranslationsStatus (projectId , importId );
313+ assertEquals (importId , importTranslationsStatusResponseObject .getData ().getIdentifier ());
314+ }
315+
316+ @ Test
317+ public void importTranslationStringsBasedStatusTest () {
318+ ResponseObject <ImportTranslationsStringsBasedStatus > importTranslationsStringsBasedStatusResponseObject = this .getTranslationsApi ().importTranslationsStringsBasedStatus (projectId , importIdStringsBased );
319+ assertEquals (importIdStringsBased , importTranslationsStringsBasedStatusResponseObject .getData ().getIdentifier ());
320+ }
321+
322+ @ Test
323+ public void getImportTranslationsReportTest () {
324+ ResponseObject <ImportTranslationsReportResponse > response = this .getTranslationsApi ().importTranslationsReport (projectId , importId );
325+ assertEquals (1 , response .getData ().getLanguages ().size ());
326+ assertEquals (1 , response .getData ().getLanguages ().get (0 ).getFiles ().size ());
327+ assertEquals (fileId , response .getData ().getLanguages ().get (0 ).getFiles ().get (0 ).getId ());
328+ }
329+
330+ @ Test
331+ public void getImportTranslationStringsBasedReportTest () {
332+ ResponseObject <ImportTranslationsStringsBasedReportResponse > response = this .getTranslationsApi ().importTranslationsStringsBasedReport (projectId , importIdStringsBased );
333+ assertEquals (1 , response .getData ().getLanguages ().size ());
334+ assertEquals (1 , response .getData ().getLanguages ().get (0 ).getBranches ().size ());
335+ assertEquals (branchId , response .getData ().getLanguages ().get (0 ).getBranches ().get (0 ).getId ());
336+ }
302337}
0 commit comments