11package com .box .sdkgen .metadatataxonomies ;
22
33import static com .box .sdkgen .commons .CommonsManager .getDefaultClient ;
4+ import static com .box .sdkgen .internal .utils .UtilsManager .convertToString ;
45import static com .box .sdkgen .internal .utils .UtilsManager .delayInSeconds ;
56import static com .box .sdkgen .internal .utils .UtilsManager .getEnvVar ;
67import static com .box .sdkgen .internal .utils .UtilsManager .getUuid ;
1011import com .box .sdkgen .managers .metadatataxonomies .AddMetadataTaxonomyLevelRequestBody ;
1112import com .box .sdkgen .managers .metadatataxonomies .CreateMetadataTaxonomyNodeRequestBody ;
1213import com .box .sdkgen .managers .metadatataxonomies .CreateMetadataTaxonomyRequestBody ;
14+ import com .box .sdkgen .managers .metadatataxonomies .UpdateMetadataTaxonomyLevelByIdRequestBody ;
1315import com .box .sdkgen .managers .metadatataxonomies .UpdateMetadataTaxonomyNodeRequestBody ;
1416import 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 ;
1522import com .box .sdkgen .schemas .metadatataxonomies .MetadataTaxonomies ;
1623import com .box .sdkgen .schemas .metadatataxonomy .MetadataTaxonomy ;
1724import com .box .sdkgen .schemas .metadatataxonomylevel .MetadataTaxonomyLevel ;
1825import com .box .sdkgen .schemas .metadatataxonomylevels .MetadataTaxonomyLevels ;
1926import com .box .sdkgen .schemas .metadatataxonomynode .MetadataTaxonomyNode ;
2027import com .box .sdkgen .schemas .metadatataxonomynodes .MetadataTaxonomyNodes ;
28+ import com .box .sdkgen .schemas .metadatatemplate .MetadataTemplate ;
2129import java .util .Arrays ;
2230import 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 ());
0 commit comments