From 8e705b4383aa272090987bf877d4ce4cb0525c76 Mon Sep 17 00:00:00 2001 From: Steven Winship <39765413+stevenwinship@users.noreply.github.com> Date: Mon, 15 Jun 2026 14:22:15 -0400 Subject: [PATCH] Fixing flaky IT tests --- .../harvard/iq/dataverse/api/DataRetrieverApiIT.java | 12 ++++++++---- .../iq/dataverse/api/DataverseFeaturedItemsIT.java | 4 ++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DataRetrieverApiIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DataRetrieverApiIT.java index 5f0dd2d4179..10aa145698b 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DataRetrieverApiIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DataRetrieverApiIT.java @@ -187,10 +187,14 @@ public void testRetrieveMyDataCollections() throws InterruptedException { // The count should show the list size to be only Root Dataverse count items = retrieveMyCollectionListResponse.getBody().jsonPath().getList("data.items"); assertEquals(rootCount, items.size()); - // Verify the name and alias of the Root Dataverse. We don't know the id so just make sure it's in the response - assertNotNull(items.get(0).get("id")); - assertEquals("Root", items.get(0).get("name")); - assertEquals("root", items.get(0).get("alias")); + // Verify the alias of the Root Dataverse is in the response + boolean found = false; + for (int i = 0; i < items.size(); i++) { + if ("root".equalsIgnoreCase(items.get(i).get("alias"))) { + found = true; + } + } + assertTrue(found, "Root dataverse not found in my collection list"); // Superuser gets the list of Dataverses/Collections it has access to retrieveMyCollectionListResponse = UtilIT.retrieveMyCollectionList(superUserApiToken, null); diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DataverseFeaturedItemsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DataverseFeaturedItemsIT.java index 744d16243b5..d7dc47bccea 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DataverseFeaturedItemsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DataverseFeaturedItemsIT.java @@ -89,7 +89,7 @@ public void testCreateFeaturedItemWithDvOdbject() { } @Test - public void testCreateFeaturedItemWithBadDvOdbjectIds() { + public void testCreateFeaturedItemWithBadDvObjectIds() { // Set up a new published dataverse and dataset String apiToken = createUserAndGetApiToken(); String dataverseAlias = createDataverseAndGetAlias(apiToken); @@ -100,7 +100,7 @@ public void testCreateFeaturedItemWithBadDvOdbjectIds() { UtilIT.publishDatasetViaNativeApi(datasetId, "major", apiToken).prettyPrint(); String datasetPersistentIdBad = datasetPersistentId + "BAD"; String dataverseAliasBad = dataverseAlias + "BAD"; - String fieldIdBad = "999"; + String fieldIdBad = String.valueOf(Integer.MAX_VALUE); // Test with bad Dataset id should return bad request with not found message Response createFeatureItemResponse = UtilIT.createDataverseFeaturedItem(dataverseAlias, apiToken, null, 0, null, "dataset", datasetPersistentIdBad);