@@ -31,6 +31,7 @@ public static void setUpClass() {
3131
3232 @ Test
3333 public void testCreateFeaturedItemWithDvOdbject () {
34+ // Set up a new published dataverse and dataset
3435 String apiToken = createUserAndGetApiToken ();
3536 String dataverseAlias = createDataverseAndGetAlias (apiToken );
3637 Response createDatasetResponse = UtilIT .createRandomDatasetViaNativeApi (dataverseAlias , apiToken );
@@ -39,25 +40,30 @@ public void testCreateFeaturedItemWithDvOdbject() {
3940 UtilIT .publishDataverseViaNativeApi (dataverseAlias , apiToken );
4041 UtilIT .publishDatasetViaNativeApi (datasetId , "major" , apiToken ).prettyPrint ();
4142
43+ // Test creating a featured item of type Dataset with good persistent id. Returns OK
4244 Response createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "dataset" , datasetPersistentId );
4345 createFeatureItemResponse .prettyPrint ();
4446 createFeatureItemResponse .then ().assertThat ().statusCode (OK .getStatusCode ());
4547 JsonPath createdFeaturedItem = JsonPath .from (createFeatureItemResponse .body ().asString ());
4648 String dvObjectIdentifier = createdFeaturedItem .getString ("data.dvObjectIdentifier" );
4749 assertEquals (datasetPersistentId , dvObjectIdentifier );
4850
51+ // Test creating a featured item of type Dataverse with good dataverse alias. Returns OK
4952 createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "dataverse" , dataverseAlias );
5053 createFeatureItemResponse .prettyPrint ();
5154 createFeatureItemResponse .then ().assertThat ().statusCode (OK .getStatusCode ());
5255 createdFeaturedItem = JsonPath .from (createFeatureItemResponse .body ().asString ());
5356 dvObjectIdentifier = createdFeaturedItem .getString ("data.dvObjectIdentifier" );
5457 assertEquals (dataverseAlias , dvObjectIdentifier );
5558
59+ // Upload a file
5660 String pathToFile = "scripts/search/data/tabular/50by1000.dta" ;
5761 Response uploadFileResponse = UtilIT .uploadFileViaNative (datasetId .toString (), pathToFile , apiToken );
5862 uploadFileResponse .prettyPrint ();
5963 JsonPath uploadedFile = JsonPath .from (uploadFileResponse .body ().asString ());
6064 String fileId = String .valueOf (uploadedFile .getInt ("data.files[0].dataFile.id" ));
65+
66+ // Test creating a featured item of type Datafile with good file id. Returns OK
6167 createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "datafile" , fileId );
6268 createFeatureItemResponse .prettyPrint ();
6369 createFeatureItemResponse .then ().assertThat ().statusCode (OK .getStatusCode ());
@@ -68,6 +74,7 @@ public void testCreateFeaturedItemWithDvOdbject() {
6874
6975 @ Test
7076 public void testCreateFeaturedItemWithBadDvOdbjectIds () {
77+ // Set up a new published dataverse and dataset
7178 String apiToken = createUserAndGetApiToken ();
7279 String dataverseAlias = createDataverseAndGetAlias (apiToken );
7380 Response createDatasetResponse = UtilIT .createRandomDatasetViaNativeApi (dataverseAlias , apiToken );
@@ -108,18 +115,25 @@ public void testCreateFeaturedItemWithBadDvOdbjectIds() {
108115
109116 @ Test
110117 public void testUnpublishedPublishedDatasetFeatureItem () {
118+ // Set up a new dataverse and dataset without publishing
111119 String apiToken = createUserAndGetApiToken ();
112120 String dataverseAlias = createDataverseAndGetAlias (apiToken );
113121 UtilIT .publishDataverseViaNativeApi (dataverseAlias , apiToken );
114122 Response createDatasetResponse = UtilIT .createRandomDatasetViaNativeApi (dataverseAlias , apiToken );
115123 createDatasetResponse .prettyPrint ();
116124 String datasetId = UtilIT .getDatasetPersistentIdFromResponse (createDatasetResponse );
125+
126+ // Test creating a featured item of type Dataset with good persistent id. Returns Bad request due to the dataset not being published
117127 Response createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "dataset" , datasetId );
118128 createFeatureItemResponse .prettyPrint ();
119129 createFeatureItemResponse .then ().assertThat ()
120130 .statusCode (BAD_REQUEST .getStatusCode ())
121131 .body ("message" , equalTo (BundleUtil .getStringFromBundle ("dataverseFeaturedItems.errors.notPublished" , List .of ("Dataset" ))));
132+
133+ // Publish the Dataset
122134 UtilIT .publishDatasetViaNativeApi (datasetId , "major" , apiToken ).prettyPrint ();
135+
136+ // Test creating a featured item of type Dataset with good persistent id. Returns OK due to the dataset being published
123137 createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "dataset" , datasetId );
124138 createFeatureItemResponse .prettyPrint ();
125139 createFeatureItemResponse .then ().assertThat ()
@@ -128,6 +142,7 @@ public void testUnpublishedPublishedDatasetFeatureItem() {
128142
129143 @ Test
130144 public void testRestrictedUnrestrictedDatafileFeatureItem () {
145+ // Set up a new dataverse and dataset without publishing
131146 String apiToken = createUserAndGetApiToken ();
132147 String dataverseAlias = createDataverseAndGetAlias (apiToken );
133148 UtilIT .publishDataverseViaNativeApi (dataverseAlias , apiToken );
@@ -136,22 +151,28 @@ public void testRestrictedUnrestrictedDatafileFeatureItem() {
136151 String datasetId = String .valueOf (UtilIT .getDatasetIdFromResponse (createDatasetResponse ));
137152 UtilIT .publishDatasetViaNativeApi (datasetId , "major" , apiToken ).prettyPrint ();
138153
154+ // Upload a file
139155 String pathToFile = "scripts/search/data/tabular/50by1000.dta" ;
140156 Response uploadFileResponse = UtilIT .uploadFileViaNative (datasetId , pathToFile , apiToken );
141157 uploadFileResponse .prettyPrint ();
142158 JsonPath uploadedFile = JsonPath .from (uploadFileResponse .body ().asString ());
143159 String fileId = String .valueOf (uploadedFile .getInt ("data.files[0].dataFile.id" ));
144160 assertTrue (UtilIT .sleepForLock (datasetId , "Ingest" , apiToken , UtilIT .MAXIMUM_INGEST_LOCK_DURATION ), "Failed test if Ingest Lock exceeds max duration" );
145161
162+ // Restrict the file
146163 UtilIT .restrictFile (fileId , true , apiToken ).prettyPrint ();
147164
165+ // Test creating a featured item of type Datafile with good file id. Returns Bad request due to the datafile being restricted
148166 Response createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "datafile" , fileId );
149167 createFeatureItemResponse .prettyPrint ();
150168 createFeatureItemResponse .then ().assertThat ()
151169 .statusCode (BAD_REQUEST .getStatusCode ())
152170 .body ("message" , equalTo (BundleUtil .getStringFromBundle ("dataverseFeaturedItems.errors.restricted" )));
153171
172+ // Un-restrict the file
154173 UtilIT .restrictFile (fileId , false , apiToken ).prettyPrint ();
174+
175+ // Test creating a featured item of type Datafile with good file id. Returns OK request due to the datafile being un-restricted
155176 createFeatureItemResponse = UtilIT .createDataverseFeaturedItem (dataverseAlias , apiToken , null , 0 , null , "datafile" , fileId );
156177 createFeatureItemResponse .prettyPrint ();
157178 createFeatureItemResponse .then ().assertThat ()
@@ -180,6 +201,7 @@ public void testDeleteFeaturedItem() {
180201 .body ("data.message" , equalTo (MessageFormat .format (BundleUtil .getStringFromBundle ("dataverseFeaturedItems.delete.successful" ), featuredItemId )))
181202 .assertThat ().statusCode (OK .getStatusCode ());
182203
204+ // Show there are no featured items as they have been deleted
183205 Response listFeaturedItemsResponse = UtilIT .listDataverseFeaturedItems (dataverseAlias , apiToken );
184206 listFeaturedItemsResponse .then ()
185207 .body ("data.size()" , equalTo (0 ))
0 commit comments