forked from crowdin/crowdin-api-client-java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathStyleGuidesApiTest.java
More file actions
88 lines (77 loc) · 4.03 KB
/
StyleGuidesApiTest.java
File metadata and controls
88 lines (77 loc) · 4.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
package com.crowdin.client.styleguide;
import com.crowdin.client.core.model.PatchOperation;
import com.crowdin.client.core.model.PatchRequest;
import com.crowdin.client.core.model.ResponseList;
import com.crowdin.client.core.model.ResponseObject;
import com.crowdin.client.framework.RequestMock;
import com.crowdin.client.framework.TestClient;
import com.crowdin.client.styleguide.model.AddStyleGuideRequest;
import com.crowdin.client.styleguide.model.StyleGuide;
import org.apache.http.client.methods.HttpDelete;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPatch;
import org.apache.http.client.methods.HttpPost;
import org.junit.jupiter.api.Test;
import java.util.Arrays;
import java.util.List;
import static java.util.Collections.singletonList;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class StyleGuidesApiTest extends TestClient {
private final Long styleGuideId = 2L;
private final Long storageId = 1L;
private final String name = "Be My Eyes iOS's Style Guide";
private final String aiInstructions = "string";
private final List<String> languageIds = Arrays.asList("uk", "fr", "de");
private final List<Long> projectIds = Arrays.asList(1L, 2L, 3L);
private final Boolean isShared = false;
@Override
public List<RequestMock> getMocks() {
return Arrays.asList(
RequestMock.build(this.url + "/style-guides", HttpGet.METHOD_NAME, "api/styleguide/listStyleGuides.json"),
RequestMock.build(this.url + "/style-guides", HttpPost.METHOD_NAME, "api/styleguide/addStyleGuideRequest.json", "api/styleguide/styleGuide.json"),
RequestMock.build(this.url + "/style-guides/" + styleGuideId, HttpGet.METHOD_NAME, "api/styleguide/styleGuide.json"),
RequestMock.build(this.url + "/style-guides/" + styleGuideId, HttpDelete.METHOD_NAME),
RequestMock.build(this.url + "/style-guides/" + styleGuideId, HttpPatch.METHOD_NAME, "api/styleguide/editStyleGuide.json", "api/styleguide/styleGuide.json")
);
}
@Test
public void listStyleGuidesTest() {
ResponseList<StyleGuide> styleGuideResponseList = this.getStyleGuidesApi().listStyleGuide(null, null, null);
assertEquals(styleGuideResponseList.getData().size(), 1);
assertEquals(styleGuideResponseList.getData().get(0).getData().getId(), styleGuideId);
assertEquals(styleGuideResponseList.getData().get(0).getData().getName(), name);
}
@Test
public void addStyleGuideTest() {
AddStyleGuideRequest request = new AddStyleGuideRequest();
request.setName(name);
request.setAiInstructions(aiInstructions);
request.setLanguageIds(languageIds);
request.setProjectIds(projectIds);
request.setIsShared(isShared);
request.setStorageId(storageId);
ResponseObject<StyleGuide> styleGuideResponseObject = this.getStyleGuidesApi().addStyleGuide(request);
assertEquals(styleGuideResponseObject.getData().getId(), styleGuideId);
assertEquals(styleGuideResponseObject.getData().getName(), name);
}
@Test
public void getStyleGuideTest() {
ResponseObject<StyleGuide> styleGuideResponseObject = this.getStyleGuidesApi().getStyleGuide(styleGuideId);
assertEquals(styleGuideResponseObject.getData().getId(), styleGuideId);
assertEquals(styleGuideResponseObject.getData().getName(), name);
}
@Test
public void deleteStyleGuideTest() {
this.getStyleGuidesApi().deleteStyleGuide(styleGuideId);
}
@Test
public void editStyleGuideTest() {
PatchRequest request = new PatchRequest();
request.setOp(PatchOperation.REPLACE);
request.setValue(name);
request.setPath("/name");
ResponseObject<StyleGuide> styleGuideResponseObject = this.getStyleGuidesApi().editStyleGuide(styleGuideId, singletonList(request));
assertEquals(styleGuideResponseObject.getData().getId(), styleGuideId);
assertEquals(styleGuideResponseObject.getData().getName(), name);
}
}