Skip to content

Commit 14d0a65

Browse files
test(boxsdkgen): Update Metadata Taxonomies tests (box/box-codegen#909) (#1651)
1 parent 492684e commit 14d0a65

File tree

7 files changed

+120
-109
lines changed

7 files changed

+120
-109
lines changed

.codegen.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{ "engineHash": "c370934", "specHash": "a4bdc72", "version": "5.2.0" }
1+
{ "engineHash": "41c28e1", "specHash": "1617aaf", "version": "5.2.0" }

docs/sdkgen/metadatataxonomies.md

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -212,12 +212,15 @@ Returns an array of all taxonomy levels.
212212

213213
Updates an existing metadata taxonomy level.
214214

215-
This operation is performed by calling function `patchMetadataTaxonomiesIdIdLevelsId`.
215+
This operation is performed by calling function `updateMetadataTaxonomyLevelById`.
216216

217217
See the endpoint docs at
218218
[API Reference](https://developer.box.com/reference/patch-metadata-taxonomies-id-id-levels-id/).
219219

220-
*Currently we don't have an example for calling `patchMetadataTaxonomiesIdIdLevelsId` in integration tests*
220+
<!-- sample patch_metadata_taxonomies_id_id_levels_id -->
221+
```
222+
client.getMetadataTaxonomies().updateMetadataTaxonomyLevelById(namespace, taxonomyKey, 1L, new UpdateMetadataTaxonomyLevelByIdRequestBody.Builder("Continent UPDATED").description("Continent Level UPDATED").build())
223+
```
221224

222225
### Arguments
223226

@@ -227,10 +230,10 @@ See the endpoint docs at
227230
- The key of the metadata taxonomy. Example: "geography"
228231
- levelIndex `long`
229232
- The index of the metadata taxonomy level. Example: 1
230-
- requestBody `PatchMetadataTaxonomiesIdIdLevelsIdRequestBody`
231-
- Request body of patchMetadataTaxonomiesIdIdLevelsId method
232-
- headers `PatchMetadataTaxonomiesIdIdLevelsIdHeaders`
233-
- Headers of patchMetadataTaxonomiesIdIdLevelsId method
233+
- requestBody `UpdateMetadataTaxonomyLevelByIdRequestBody`
234+
- Request body of updateMetadataTaxonomyLevelById method
235+
- headers `UpdateMetadataTaxonomyLevelByIdHeaders`
236+
- Headers of updateMetadataTaxonomyLevelById method
234237

235238

236239
### Returns
@@ -488,12 +491,15 @@ This operation is performed by calling function `getMetadataTemplateFieldOptions
488491
See the endpoint docs at
489492
[API Reference](https://developer.box.com/reference/get-metadata-templates-id-id-fields-id-options/).
490493

491-
*Currently we don't have an example for calling `getMetadataTemplateFieldOptions` in integration tests*
494+
<!-- sample get_metadata_templates_id_id_fields_id_options -->
495+
```
496+
client.getMetadataTaxonomies().getMetadataTemplateFieldOptions(namespace, metadataTemplateKey, "taxonomy")
497+
```
492498

493499
### Arguments
494500

495-
- scope `GetMetadataTemplateFieldOptionsScope`
496-
- The scope of the metadata template. Example: "global"
501+
- namespace `String`
502+
- The namespace of the metadata taxonomy. Example: "enterprise_123456"
497503
- templateKey `String`
498504
- The name of the metadata template. Example: "properties"
499505
- fieldKey `String`

src/intTest/java/com/box/sdkgen/metadatataxonomies/MetadataTaxonomiesITest.java

Lines changed: 61 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.box.sdkgen.metadatataxonomies;
22

33
import static com.box.sdkgen.commons.CommonsManager.getDefaultClient;
4+
import static com.box.sdkgen.internal.utils.UtilsManager.convertToString;
45
import static com.box.sdkgen.internal.utils.UtilsManager.delayInSeconds;
56
import static com.box.sdkgen.internal.utils.UtilsManager.getEnvVar;
67
import static com.box.sdkgen.internal.utils.UtilsManager.getUuid;
@@ -10,14 +11,21 @@
1011
import com.box.sdkgen.managers.metadatataxonomies.AddMetadataTaxonomyLevelRequestBody;
1112
import com.box.sdkgen.managers.metadatataxonomies.CreateMetadataTaxonomyNodeRequestBody;
1213
import com.box.sdkgen.managers.metadatataxonomies.CreateMetadataTaxonomyRequestBody;
14+
import com.box.sdkgen.managers.metadatataxonomies.UpdateMetadataTaxonomyLevelByIdRequestBody;
1315
import com.box.sdkgen.managers.metadatataxonomies.UpdateMetadataTaxonomyNodeRequestBody;
1416
import com.box.sdkgen.managers.metadatataxonomies.UpdateMetadataTaxonomyRequestBody;
17+
import com.box.sdkgen.managers.metadatatemplates.CreateMetadataTemplateRequestBody;
18+
import com.box.sdkgen.managers.metadatatemplates.CreateMetadataTemplateRequestBodyFieldsField;
19+
import com.box.sdkgen.managers.metadatatemplates.CreateMetadataTemplateRequestBodyFieldsOptionsRulesField;
20+
import com.box.sdkgen.managers.metadatatemplates.CreateMetadataTemplateRequestBodyFieldsTypeField;
21+
import com.box.sdkgen.managers.metadatatemplates.DeleteMetadataTemplateScope;
1522
import com.box.sdkgen.schemas.metadatataxonomies.MetadataTaxonomies;
1623
import com.box.sdkgen.schemas.metadatataxonomy.MetadataTaxonomy;
1724
import com.box.sdkgen.schemas.metadatataxonomylevel.MetadataTaxonomyLevel;
1825
import com.box.sdkgen.schemas.metadatataxonomylevels.MetadataTaxonomyLevels;
1926
import com.box.sdkgen.schemas.metadatataxonomynode.MetadataTaxonomyNode;
2027
import com.box.sdkgen.schemas.metadatataxonomynodes.MetadataTaxonomyNodes;
28+
import com.box.sdkgen.schemas.metadatatemplate.MetadataTemplate;
2129
import java.util.Arrays;
2230
import org.junit.jupiter.api.Test;
2331

@@ -96,6 +104,19 @@ public void testMetadataTaxonomiesNodes() {
96104
assert taxonomyLevels.getEntries().size() == 2;
97105
assert taxonomyLevels.getEntries().get(0).getDisplayName().equals("Continent");
98106
assert taxonomyLevels.getEntries().get(1).getDisplayName().equals("Country");
107+
MetadataTaxonomyLevel updatedTaxonomyLevels =
108+
client
109+
.getMetadataTaxonomies()
110+
.updateMetadataTaxonomyLevelById(
111+
namespace,
112+
taxonomyKey,
113+
1L,
114+
new UpdateMetadataTaxonomyLevelByIdRequestBody.Builder("Continent UPDATED")
115+
.description("Continent Level UPDATED")
116+
.build());
117+
assert updatedTaxonomyLevels.getDisplayName().equals("Continent UPDATED");
118+
assert updatedTaxonomyLevels.getDescription().equals("Continent Level UPDATED");
119+
assert updatedTaxonomyLevels.getLevel() == taxonomyLevels.getEntries().get(0).getLevel();
99120
MetadataTaxonomyLevels taxonomyLevelsAfterAddition =
100121
client
101122
.getMetadataTaxonomies()
@@ -110,7 +131,11 @@ public void testMetadataTaxonomiesNodes() {
110131
MetadataTaxonomyLevels taxonomyLevelsAfterDeletion =
111132
client.getMetadataTaxonomies().deleteMetadataTaxonomyLevel(namespace, taxonomyKey);
112133
assert taxonomyLevelsAfterDeletion.getEntries().size() == 2;
113-
assert taxonomyLevelsAfterDeletion.getEntries().get(0).getDisplayName().equals("Continent");
134+
assert taxonomyLevelsAfterDeletion
135+
.getEntries()
136+
.get(0)
137+
.getDisplayName()
138+
.equals("Continent UPDATED");
114139
assert taxonomyLevelsAfterDeletion.getEntries().get(1).getDisplayName().equals("Country");
115140
MetadataTaxonomyNode continentNode =
116141
client
@@ -155,6 +180,41 @@ public void testMetadataTaxonomiesNodes() {
155180
.getMetadataTaxonomyNodeById(namespace, taxonomyKey, countryNode.getId());
156181
assert getCountryNode.getDisplayName().equals("Poland UPDATED");
157182
assert getCountryNode.getId().equals(countryNode.getId());
183+
String metadataTemplateKey = String.join("", "templateKey", getUuid());
184+
MetadataTemplate metadataTemplate =
185+
client
186+
.getMetadataTemplates()
187+
.createMetadataTemplate(
188+
new CreateMetadataTemplateRequestBody.Builder("enterprise", metadataTemplateKey)
189+
.templateKey(metadataTemplateKey)
190+
.fields(
191+
Arrays.asList(
192+
new CreateMetadataTemplateRequestBodyFieldsField.Builder(
193+
CreateMetadataTemplateRequestBodyFieldsTypeField.TAXONOMY,
194+
"taxonomy",
195+
"taxonomy")
196+
.taxonomyKey(taxonomyKey)
197+
.namespace(namespace)
198+
.optionsRules(
199+
new CreateMetadataTemplateRequestBodyFieldsOptionsRulesField
200+
.Builder()
201+
.multiSelect(true)
202+
.selectableLevels(Arrays.asList(1L))
203+
.build())
204+
.build()))
205+
.build());
206+
assert metadataTemplate.getTemplateKey().equals(metadataTemplateKey);
207+
assert metadataTemplate.getDisplayName().equals(metadataTemplateKey);
208+
assert metadataTemplate.getFields().size() == 1;
209+
assert convertToString(metadataTemplate.getFields().get(0).getType()).equals("taxonomy");
210+
MetadataTaxonomyNodes options =
211+
client
212+
.getMetadataTaxonomies()
213+
.getMetadataTemplateFieldOptions(namespace, metadataTemplateKey, "taxonomy");
214+
assert options.getEntries().size() == 1;
215+
client
216+
.getMetadataTemplates()
217+
.deleteMetadataTemplate(DeleteMetadataTemplateScope.ENTERPRISE, metadataTemplateKey);
158218
client
159219
.getMetadataTaxonomies()
160220
.deleteMetadataTaxonomyNode(namespace, taxonomyKey, countryNode.getId());

src/main/java/com/box/sdkgen/managers/metadatataxonomies/GetMetadataTemplateFieldOptionsScope.java

Lines changed: 0 additions & 63 deletions
This file was deleted.

src/main/java/com/box/sdkgen/managers/metadatataxonomies/MetadataTaxonomiesManager.java

Lines changed: 30 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -331,19 +331,19 @@ public MetadataTaxonomyLevels createMetadataTaxonomyLevel(
331331
* @param namespace The namespace of the metadata taxonomy. Example: "enterprise_123456"
332332
* @param taxonomyKey The key of the metadata taxonomy. Example: "geography"
333333
* @param levelIndex The index of the metadata taxonomy level. Example: 1
334-
* @param requestBody Request body of patchMetadataTaxonomiesIdIdLevelsId method
334+
* @param requestBody Request body of updateMetadataTaxonomyLevelById method
335335
*/
336-
public MetadataTaxonomyLevel patchMetadataTaxonomiesIdIdLevelsId(
336+
public MetadataTaxonomyLevel updateMetadataTaxonomyLevelById(
337337
String namespace,
338338
String taxonomyKey,
339339
long levelIndex,
340-
PatchMetadataTaxonomiesIdIdLevelsIdRequestBody requestBody) {
341-
return patchMetadataTaxonomiesIdIdLevelsId(
340+
UpdateMetadataTaxonomyLevelByIdRequestBody requestBody) {
341+
return updateMetadataTaxonomyLevelById(
342342
namespace,
343343
taxonomyKey,
344344
levelIndex,
345345
requestBody,
346-
new PatchMetadataTaxonomiesIdIdLevelsIdHeaders());
346+
new UpdateMetadataTaxonomyLevelByIdHeaders());
347347
}
348348

349349
/**
@@ -352,15 +352,15 @@ public MetadataTaxonomyLevel patchMetadataTaxonomiesIdIdLevelsId(
352352
* @param namespace The namespace of the metadata taxonomy. Example: "enterprise_123456"
353353
* @param taxonomyKey The key of the metadata taxonomy. Example: "geography"
354354
* @param levelIndex The index of the metadata taxonomy level. Example: 1
355-
* @param requestBody Request body of patchMetadataTaxonomiesIdIdLevelsId method
356-
* @param headers Headers of patchMetadataTaxonomiesIdIdLevelsId method
355+
* @param requestBody Request body of updateMetadataTaxonomyLevelById method
356+
* @param headers Headers of updateMetadataTaxonomyLevelById method
357357
*/
358-
public MetadataTaxonomyLevel patchMetadataTaxonomiesIdIdLevelsId(
358+
public MetadataTaxonomyLevel updateMetadataTaxonomyLevelById(
359359
String namespace,
360360
String taxonomyKey,
361361
long levelIndex,
362-
PatchMetadataTaxonomiesIdIdLevelsIdRequestBody requestBody,
363-
PatchMetadataTaxonomiesIdIdLevelsIdHeaders headers) {
362+
UpdateMetadataTaxonomyLevelByIdRequestBody requestBody,
363+
UpdateMetadataTaxonomyLevelByIdHeaders headers) {
364364
Map<String, String> headersMap = prepareParams(mergeMaps(mapOf(), headers.getExtraHeaders()));
365365
FetchResponse response =
366366
this.networkSession
@@ -837,14 +837,14 @@ public void deleteMetadataTaxonomyNode(
837837
* unless a `query` parameter is passed. With a `query` parameter specified, results are sorted in
838838
* order of relevance.
839839
*
840-
* @param scope The scope of the metadata template. Example: "global"
840+
* @param namespace The namespace of the metadata taxonomy. Example: "enterprise_123456"
841841
* @param templateKey The name of the metadata template. Example: "properties"
842842
* @param fieldKey The key of the metadata taxonomy field in the template. Example: "geography"
843843
*/
844844
public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
845-
GetMetadataTemplateFieldOptionsScope scope, String templateKey, String fieldKey) {
845+
String namespace, String templateKey, String fieldKey) {
846846
return getMetadataTemplateFieldOptions(
847-
scope,
847+
namespace,
848848
templateKey,
849849
fieldKey,
850850
new GetMetadataTemplateFieldOptionsQueryParams(),
@@ -857,18 +857,22 @@ public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
857857
* unless a `query` parameter is passed. With a `query` parameter specified, results are sorted in
858858
* order of relevance.
859859
*
860-
* @param scope The scope of the metadata template. Example: "global"
860+
* @param namespace The namespace of the metadata taxonomy. Example: "enterprise_123456"
861861
* @param templateKey The name of the metadata template. Example: "properties"
862862
* @param fieldKey The key of the metadata taxonomy field in the template. Example: "geography"
863863
* @param queryParams Query parameters of getMetadataTemplateFieldOptions method
864864
*/
865865
public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
866-
GetMetadataTemplateFieldOptionsScope scope,
866+
String namespace,
867867
String templateKey,
868868
String fieldKey,
869869
GetMetadataTemplateFieldOptionsQueryParams queryParams) {
870870
return getMetadataTemplateFieldOptions(
871-
scope, templateKey, fieldKey, queryParams, new GetMetadataTemplateFieldOptionsHeaders());
871+
namespace,
872+
templateKey,
873+
fieldKey,
874+
queryParams,
875+
new GetMetadataTemplateFieldOptionsHeaders());
872876
}
873877

874878
/**
@@ -877,18 +881,22 @@ public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
877881
* unless a `query` parameter is passed. With a `query` parameter specified, results are sorted in
878882
* order of relevance.
879883
*
880-
* @param scope The scope of the metadata template. Example: "global"
884+
* @param namespace The namespace of the metadata taxonomy. Example: "enterprise_123456"
881885
* @param templateKey The name of the metadata template. Example: "properties"
882886
* @param fieldKey The key of the metadata taxonomy field in the template. Example: "geography"
883887
* @param headers Headers of getMetadataTemplateFieldOptions method
884888
*/
885889
public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
886-
GetMetadataTemplateFieldOptionsScope scope,
890+
String namespace,
887891
String templateKey,
888892
String fieldKey,
889893
GetMetadataTemplateFieldOptionsHeaders headers) {
890894
return getMetadataTemplateFieldOptions(
891-
scope, templateKey, fieldKey, new GetMetadataTemplateFieldOptionsQueryParams(), headers);
895+
namespace,
896+
templateKey,
897+
fieldKey,
898+
new GetMetadataTemplateFieldOptionsQueryParams(),
899+
headers);
892900
}
893901

894902
/**
@@ -897,14 +905,14 @@ public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
897905
* unless a `query` parameter is passed. With a `query` parameter specified, results are sorted in
898906
* order of relevance.
899907
*
900-
* @param scope The scope of the metadata template. Example: "global"
908+
* @param namespace The namespace of the metadata taxonomy. Example: "enterprise_123456"
901909
* @param templateKey The name of the metadata template. Example: "properties"
902910
* @param fieldKey The key of the metadata taxonomy field in the template. Example: "geography"
903911
* @param queryParams Query parameters of getMetadataTemplateFieldOptions method
904912
* @param headers Headers of getMetadataTemplateFieldOptions method
905913
*/
906914
public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
907-
GetMetadataTemplateFieldOptionsScope scope,
915+
String namespace,
908916
String templateKey,
909917
String fieldKey,
910918
GetMetadataTemplateFieldOptionsQueryParams queryParams,
@@ -934,7 +942,7 @@ public MetadataTaxonomyNodes getMetadataTemplateFieldOptions(
934942
"",
935943
this.networkSession.getBaseUrls().getBaseUrl(),
936944
"/2.0/metadata_templates/",
937-
convertToString(scope),
945+
convertToString(namespace),
938946
"/",
939947
convertToString(templateKey),
940948
"/fields/",

src/main/java/com/box/sdkgen/managers/metadatataxonomies/PatchMetadataTaxonomiesIdIdLevelsIdHeaders.java renamed to src/main/java/com/box/sdkgen/managers/metadatataxonomies/UpdateMetadataTaxonomyLevelByIdHeaders.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,16 @@
44

55
import java.util.Map;
66

7-
public class PatchMetadataTaxonomiesIdIdLevelsIdHeaders {
7+
public class UpdateMetadataTaxonomyLevelByIdHeaders {
88

99
/** Extra headers that will be included in the HTTP request. */
1010
public Map<String, String> extraHeaders;
1111

12-
public PatchMetadataTaxonomiesIdIdLevelsIdHeaders() {
12+
public UpdateMetadataTaxonomyLevelByIdHeaders() {
1313
this.extraHeaders = mapOf();
1414
}
1515

16-
protected PatchMetadataTaxonomiesIdIdLevelsIdHeaders(Builder builder) {
16+
protected UpdateMetadataTaxonomyLevelByIdHeaders(Builder builder) {
1717
this.extraHeaders = builder.extraHeaders;
1818
}
1919

@@ -34,8 +34,8 @@ public Builder extraHeaders(Map<String, String> extraHeaders) {
3434
return this;
3535
}
3636

37-
public PatchMetadataTaxonomiesIdIdLevelsIdHeaders build() {
38-
return new PatchMetadataTaxonomiesIdIdLevelsIdHeaders(this);
37+
public UpdateMetadataTaxonomyLevelByIdHeaders build() {
38+
return new UpdateMetadataTaxonomyLevelByIdHeaders(this);
3939
}
4040
}
4141
}

0 commit comments

Comments
 (0)