From 1298192a89bba3a8964eb02f340131dc8fed1779 Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 22:22:03 +0100 Subject: [PATCH 1/7] fix(mocks): add authority to mocked dataset For a lot of places where files are read from filesystem or other places, both authority and identifier of the dataset are required to build a proper path. When either of those is missing (=null), all sorts of NPEs will occur, as paths cannot be built with null values. In reality, this will hardly ever occur, as a missing identifier let alone authority is completely unrealistic. Yet, some functions are not validating this data very well. Adding this mock here means covering potential NPEs, but again: these are unlikely to happen outside unit tests. --- src/test/java/edu/harvard/iq/dataverse/mocks/MocksFactory.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/java/edu/harvard/iq/dataverse/mocks/MocksFactory.java b/src/test/java/edu/harvard/iq/dataverse/mocks/MocksFactory.java index cc4740e564c..05fd166c5b6 100644 --- a/src/test/java/edu/harvard/iq/dataverse/mocks/MocksFactory.java +++ b/src/test/java/edu/harvard/iq/dataverse/mocks/MocksFactory.java @@ -83,7 +83,7 @@ public static FileMetadata addFileMetadata( DataFile df ) { if ( df.getFileMetadatas() != null ) { df.getFileMetadatas().add( fmd ); } else { - df.setFileMetadatas( new LinkedList(Arrays.asList(fmd)) ); + df.setFileMetadatas( new LinkedList<>(List.of(fmd)) ); } return fmd; @@ -142,6 +142,7 @@ public static Dataverse makeDataverse() { public static Dataset makeDataset() { Dataset ds = new Dataset(); ds.setId( nextId() ); + ds.setAuthority("mockedAuthority"); ds.setIdentifier("sample-ds-" + ds.getId() ); ds.setCategoriesByName( Arrays.asList("CatOne", "CatTwo", "CatThree") ); final List files = makeFiles(10); From 682f9880f5ebfa59b713b5cbe95d60d3b6dfc5eb Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 22:23:35 +0100 Subject: [PATCH 2/7] chore(tests): migrate DataAccessTest and DatasetUtilTest to JUnit5 - Migrate to JUnit5 - Enable using @SystemProperty to avoid a messy global state after test ran --- .../dataverse/dataaccess/DataAccessTest.java | 5 +- .../iq/dataverse/dataset/DatasetUtilTest.java | 46 ++++++++++--------- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/src/test/java/edu/harvard/iq/dataverse/dataaccess/DataAccessTest.java b/src/test/java/edu/harvard/iq/dataverse/dataaccess/DataAccessTest.java index 1ff914adff9..87314762098 100644 --- a/src/test/java/edu/harvard/iq/dataverse/dataaccess/DataAccessTest.java +++ b/src/test/java/edu/harvard/iq/dataverse/dataaccess/DataAccessTest.java @@ -4,6 +4,7 @@ import edu.harvard.iq.dataverse.Dataset; import edu.harvard.iq.dataverse.Dataverse; import edu.harvard.iq.dataverse.mocks.MocksFactory; +import edu.harvard.iq.dataverse.util.testing.SystemProperty; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; @@ -53,9 +54,9 @@ void testCreateNewStorageIO_throwsOnUnsupported() { } @Test + @SystemProperty(key = "dataverse.files.file.type", value="file") + @SystemProperty(key = "dataverse.files.storage-driver-id", value="file") void testCreateNewStorageIO_createsFileAccessIObyDefault() throws IOException { - System.setProperty("dataverse.files.file.type", "file"); - System.setProperty("dataverse.files.storage-driver-id", "file"); StorageIO storageIo = DataAccess.createNewStorageIO(dataset, "valid-tag"); assertTrue(storageIo.getClass().equals(FileAccessIO.class)); } diff --git a/src/test/java/edu/harvard/iq/dataverse/dataset/DatasetUtilTest.java b/src/test/java/edu/harvard/iq/dataverse/dataset/DatasetUtilTest.java index 93eabfbf8af..1ed2d5f83ce 100644 --- a/src/test/java/edu/harvard/iq/dataverse/dataset/DatasetUtilTest.java +++ b/src/test/java/edu/harvard/iq/dataverse/dataset/DatasetUtilTest.java @@ -1,38 +1,40 @@ package edu.harvard.iq.dataverse.dataset; import edu.harvard.iq.dataverse.DataFile; -import edu.harvard.iq.dataverse.DataFileCategory; import edu.harvard.iq.dataverse.Dataset; import edu.harvard.iq.dataverse.DatasetField; import edu.harvard.iq.dataverse.DatasetFieldType; +import edu.harvard.iq.dataverse.DatasetFieldType.FieldType; import edu.harvard.iq.dataverse.DatasetVersion; import edu.harvard.iq.dataverse.FileMetadata; -import edu.harvard.iq.dataverse.DatasetFieldType.FieldType; import edu.harvard.iq.dataverse.dataaccess.ImageThumbConverter; import edu.harvard.iq.dataverse.mocks.MocksFactory; -import java.io.InputStream; +import edu.harvard.iq.dataverse.util.testing.SystemProperty; +import org.junit.jupiter.api.Test; + import java.util.ArrayList; import java.util.List; -import org.junit.Test; -import static org.junit.Assert.*; -public class DatasetUtilTest { +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +class DatasetUtilTest { /** * Test of getThumbnailCandidates method, of class DatasetUtil. */ @Test - public void testGetThumbnailCandidates() { + @SystemProperty(key = "dataverse.files.testfile.type", value = "file") + void testGetThumbnailCandidates() { assertEquals(new ArrayList<>(), DatasetUtil.getThumbnailCandidates(null, false, ImageThumbConverter.DEFAULT_CARDIMAGE_SIZE)); Dataset dataset = MocksFactory.makeDataset(); DataFile dataFile = MocksFactory.makeDataFile(); dataFile.setContentType("image/"); dataFile.setOwner(dataset); - System.setProperty("dataverse.files.testfile.type", "file"); dataFile.setStorageIdentifier("testfile://src/test/resources/images/coffeeshop.png"); - System.out.println(ImageThumbConverter.isThumbnailAvailable(dataFile)); + //System.out.println(ImageThumbConverter.isThumbnailAvailable(dataFile)); DatasetVersion version = dataset.getCreateVersion(null); List fmds = new ArrayList<>(); fmds.add(MocksFactory.addFileMetadata(dataFile)); @@ -41,12 +43,12 @@ public void testGetThumbnailCandidates() { } @Test - public void testGetThumbnailNullDataset() { + @SystemProperty(key = "dataverse.files.testfile.type", value = "file") + void testGetThumbnailNullDataset() { assertNull(DatasetUtil.getThumbnail(null, ImageThumbConverter.DEFAULT_CARDIMAGE_SIZE)); assertNull(DatasetUtil.getThumbnail(null, null, ImageThumbConverter.DEFAULT_CARDIMAGE_SIZE)); Dataset dataset = MocksFactory.makeDataset(); - System.setProperty("dataverse.files.testfile.type", "file"); dataset.setStorageIdentifier("testfile://"); dataset.setUseGenericThumbnail(true); @@ -55,8 +57,8 @@ public void testGetThumbnailNullDataset() { } @Test - public void testGetThumbnailRestricted() { - System.out.println("testGetThumbnailRestricted"); + void testGetThumbnailRestricted() { + //System.out.println("testGetThumbnailRestricted"); Dataset dataset = new Dataset(); DataFile thumbnailFile = new DataFile(); thumbnailFile.setId(42l); @@ -69,7 +71,7 @@ public void testGetThumbnailRestricted() { * Test of deleteDatasetLogo method, of class DatasetUtil. */ @Test - public void testDeleteDatasetLogo() { + void testDeleteDatasetLogo() { assertEquals(false, DatasetUtil.deleteDatasetLogo(null)); assertEquals(false, DatasetUtil.deleteDatasetLogo(new Dataset())); } @@ -78,7 +80,7 @@ public void testDeleteDatasetLogo() { * Test of getDefaultThumbnailFile method, of class DatasetUtil. */ @Test - public void testGetDefaultThumbnailFile() { + void testGetDefaultThumbnailFile() { assertNull(DatasetUtil.attemptToAutomaticallySelectThumbnailFromDataFiles(null, null)); } @@ -87,7 +89,7 @@ public void testGetDefaultThumbnailFile() { * DatasetUtil. */ @Test - public void testPersistDatasetLogoToStorageAndCreateThumbnail() { + void testPersistDatasetLogoToStorageAndCreateThumbnail() { assertNull(DatasetUtil.persistDatasetLogoToStorageAndCreateThumbnails(null, null)); //Todo: a test for this that test main logic } @@ -96,7 +98,7 @@ public void testPersistDatasetLogoToStorageAndCreateThumbnail() { * Test of getThumbnailAsInputStream method, of class DatasetUtil. */ @Test - public void testGetThumbnailAsInputStream() { + void testGetThumbnailAsInputStream() { assertNull(DatasetUtil.getThumbnailAsInputStream(null, ImageThumbConverter.DEFAULT_CARDIMAGE_SIZE)); } @@ -104,13 +106,13 @@ public void testGetThumbnailAsInputStream() { * Test of isDatasetLogoPresent method, of class DatasetUtil. */ @Test - public void testIsDatasetLogoPresent() { + void testIsDatasetLogoPresent() { Dataset dataset = MocksFactory.makeDataset(); assertEquals(false, DatasetUtil.isDatasetLogoPresent(dataset, ImageThumbConverter.DEFAULT_CARDIMAGE_SIZE)); } @Test - public void testGetDatasetSummaryField_defaultSelectionWithAndWithoutMatches() { + void testGetDatasetSummaryField_defaultSelectionWithAndWithoutMatches() { DatasetVersion version = new DatasetVersion(); List fields = new ArrayList(); @@ -127,7 +129,7 @@ public void testGetDatasetSummaryField_defaultSelectionWithAndWithoutMatches() { } @Test - public void testGetDatasetSummaryField_defaultSelectionWithoutDatasetFields() { + void testGetDatasetSummaryField_defaultSelectionWithoutDatasetFields() { DatasetVersion version = new DatasetVersion(); List fields = new ArrayList(); version.setDatasetFields(fields); @@ -137,7 +139,7 @@ public void testGetDatasetSummaryField_defaultSelectionWithoutDatasetFields() { } @Test - public void testGetDatasetSummaryField_withSelectionWithoutDatasetFields() { + void testGetDatasetSummaryField_withSelectionWithoutDatasetFields() { DatasetVersion version = new DatasetVersion(); List fields = new ArrayList(); version.setDatasetFields(fields); @@ -146,7 +148,7 @@ public void testGetDatasetSummaryField_withSelectionWithoutDatasetFields() { } @Test - public void testGetDatasetSummaryField_withSelectionWithoutMatches() { + void testGetDatasetSummaryField_withSelectionWithoutMatches() { DatasetVersion version = new DatasetVersion(); List fields = new ArrayList(); From 23cc3b52fc0413b6678056d77d9aa91c996c7f57 Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 22:27:52 +0100 Subject: [PATCH 3/7] fix(storage): avoid NPE when building path to local storage dir During unit testing it occured that sometimes parts of paths are null (there was a missing mock for authority). Changing the code structure here to catch this anytime. This hard to track cause of trouble was revealed when running tests with JDK 17, because since JDK 16 all java.nio.file.Path may not contain null elements for the first component. See also: https://stackoverflow.com/questions/68791709 --- .../iq/dataverse/dataaccess/FileAccessIO.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/dataaccess/FileAccessIO.java b/src/main/java/edu/harvard/iq/dataverse/dataaccess/FileAccessIO.java index d5f00b9868f..76ed7e34dd6 100644 --- a/src/main/java/edu/harvard/iq/dataverse/dataaccess/FileAccessIO.java +++ b/src/main/java/edu/harvard/iq/dataverse/dataaccess/FileAccessIO.java @@ -563,21 +563,26 @@ private String getDatasetDirectory() throws IOException { if (isDirectAccess()) { throw new IOException("No DvObject defined in the Data Access Object"); } - - Path datasetDirectoryPath=null; + String authorityForFS = null; + String identifierForFS = null; if (dvObject instanceof Dataset) { - datasetDirectoryPath = Paths.get(this.getDataset().getAuthorityForFileStorage(), this.getDataset().getIdentifierForFileStorage()); + authorityForFS = this.getDataset().getAuthorityForFileStorage(); + identifierForFS = this.getDataset().getIdentifierForFileStorage(); } else if (dvObject instanceof DataFile) { - datasetDirectoryPath = Paths.get(this.getDataFile().getOwner().getAuthorityForFileStorage(), this.getDataFile().getOwner().getIdentifierForFileStorage()); + authorityForFS = this.getDataFile().getOwner().getAuthorityForFileStorage(); + identifierForFS = this.getDataFile().getOwner().getIdentifierForFileStorage(); } else if (dvObject instanceof Dataverse) { throw new IOException("FileAccessIO: Dataverses are not a supported dvObject"); } - - if (datasetDirectoryPath == null) { + + if (authorityForFS == null || identifierForFS == null) { throw new IOException("Could not determine the filesystem directory of the parent dataset."); } - String datasetDirectory = Paths.get(getFilesRootDirectory(), datasetDirectoryPath.toString()).toString(); + + // Determine the final directory tree. As of JDK 16, the first component of the path MUST be non-null + // (we check for that via the setting), but also the others make no sense if they are null. + String datasetDirectory = Paths.get(getFilesRootDirectory(), authorityForFS, identifierForFS).toString(); if (dvObject.getStorageIdentifier() == null || dvObject.getStorageIdentifier().isEmpty()) { throw new IOException("Data Access: No local storage identifier defined for this datafile."); From 26358c60b0957067f22f11bfc18fa101dcd400ba Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 22:29:05 +0100 Subject: [PATCH 4/7] chore(build): upgrade to RestAssured 5.3.0 When building with Java 17, it became obvious v2.4 is not compatible with JDK 17. Upgrading required. --- modules/dataverse-parent/pom.xml | 3 ++- pom.xml | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/modules/dataverse-parent/pom.xml b/modules/dataverse-parent/pom.xml index 3911e9d5bbb..0d4ed2443df 100644 --- a/modules/dataverse-parent/pom.xml +++ b/modules/dataverse-parent/pom.xml @@ -169,7 +169,8 @@ 1.15.0 2.10.1 - + 5.3.0 + 4.13.1 5.7.0 ${junit.jupiter.version} diff --git a/pom.xml b/pom.xml index 8b6f98c5896..4014af5ed0e 100644 --- a/pom.xml +++ b/pom.xml @@ -538,9 +538,21 @@ test - com.jayway.restassured + io.rest-assured rest-assured - 2.4.0 + ${rest-assured.version} + test + + + io.rest-assured + xml-path + ${rest-assured.version} + test + + + io.rest-assured + json-path + ${rest-assured.version} test From abdadfc9c23a798b1f2e082e15e8c9f79b1087a3 Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 22:31:14 +0100 Subject: [PATCH 5/7] chore(build): migrate imports of RestAssured to new groupId io.restassured Since RestAssured 3.0 the groupID changed from "com.jayway.restassured" to simply "io.restassured". Migrating the namespace in all tests here. --- .../edu/harvard/iq/dataverse/api/AccessIT.java | 8 ++++---- .../edu/harvard/iq/dataverse/api/AdminIT.java | 6 +++--- .../iq/dataverse/api/AuxiliaryFilesIT.java | 6 +++--- .../edu/harvard/iq/dataverse/api/BagIT.java | 4 ++-- .../iq/dataverse/api/BatchImportIT.java | 6 +++--- .../iq/dataverse/api/BuiltinUsersIT.java | 10 +++++----- .../iq/dataverse/api/ConfirmEmailIT.java | 14 ++++++++------ .../harvard/iq/dataverse/api/DataCiteIT.java | 4 ++-- .../harvard/iq/dataverse/api/DatasetsIT.java | 16 ++++++++-------- .../harvard/iq/dataverse/api/DataversesIT.java | 10 +++++----- .../iq/dataverse/api/DeactivateUsersIT.java | 6 +++--- .../iq/dataverse/api/DeleteUsersIT.java | 6 +++--- .../iq/dataverse/api/DownloadFilesIT.java | 8 ++++---- .../iq/dataverse/api/DuplicateFilesIT.java | 8 ++++---- .../harvard/iq/dataverse/api/EditDDIIT.java | 6 +++--- .../iq/dataverse/api/ExternalToolsIT.java | 6 +++--- .../iq/dataverse/api/FeedbackApiIT.java | 6 +++--- .../iq/dataverse/api/FileMetadataIT.java | 8 ++++---- .../iq/dataverse/api/FileTypeDetectionIT.java | 6 +++--- .../edu/harvard/iq/dataverse/api/FilesIT.java | 8 ++++---- .../iq/dataverse/api/HarvestingClientsIT.java | 8 ++++---- .../iq/dataverse/api/HarvestingServerIT.java | 10 +++++----- .../iq/dataverse/api/InReviewWorkflowIT.java | 8 ++++---- .../edu/harvard/iq/dataverse/api/IndexIT.java | 8 ++++---- .../edu/harvard/iq/dataverse/api/InfoIT.java | 4 ++-- .../iq/dataverse/api/InvalidCharactersIT.java | 4 ++-- .../harvard/iq/dataverse/api/IpGroupsIT.java | 6 +++--- .../harvard/iq/dataverse/api/LicensesIT.java | 6 +++--- .../edu/harvard/iq/dataverse/api/LinkIT.java | 6 +++--- .../iq/dataverse/api/MakeDataCountApiIT.java | 4 ++-- .../iq/dataverse/api/MetadataBlocksIT.java | 4 ++-- .../harvard/iq/dataverse/api/MetricsIT.java | 4 ++-- .../edu/harvard/iq/dataverse/api/MoveIT.java | 8 ++++---- .../iq/dataverse/api/NotificationsIT.java | 6 +++--- .../edu/harvard/iq/dataverse/api/PidsIT.java | 6 +++--- .../edu/harvard/iq/dataverse/api/ProvIT.java | 6 +++--- .../iq/dataverse/api/RemoteStoreIT.java | 4 ++-- .../edu/harvard/iq/dataverse/api/RolesIT.java | 6 +++--- .../harvard/iq/dataverse/api/S3AccessIT.java | 8 ++++---- .../edu/harvard/iq/dataverse/api/SearchIT.java | 6 +++--- .../harvard/iq/dataverse/api/SiteMapIT.java | 4 ++-- .../iq/dataverse/api/StorageSitesIT.java | 4 ++-- .../edu/harvard/iq/dataverse/api/SwordIT.java | 6 +++--- .../harvard/iq/dataverse/api/TabularIT.java | 6 +++--- .../harvard/iq/dataverse/api/ThumbnailsIT.java | 2 +- .../edu/harvard/iq/dataverse/api/UsersIT.java | 10 +++++----- .../edu/harvard/iq/dataverse/api/UtilIT.java | 18 +++++++++--------- .../api/filesystem/FileRecordJobIT.java | 10 +++++----- .../dataverse/export/OpenAireExporterTest.java | 3 ++- 49 files changed, 170 insertions(+), 167 deletions(-) diff --git a/src/test/java/edu/harvard/iq/dataverse/api/AccessIT.java b/src/test/java/edu/harvard/iq/dataverse/api/AccessIT.java index d6aac80b435..0bfd257c16b 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/AccessIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/AccessIT.java @@ -5,10 +5,10 @@ */ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.DataFile; import static edu.harvard.iq.dataverse.api.UtilIT.API_TOKEN_HTTP_HEADER; import edu.harvard.iq.dataverse.util.FileUtil; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/AdminIT.java b/src/test/java/edu/harvard/iq/dataverse/api/AdminIT.java index bcee8d18e17..2ffe05ebd92 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/AdminIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/AdminIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.DataFile; import edu.harvard.iq.dataverse.authorization.providers.builtin.BuiltinAuthenticationProvider; import edu.harvard.iq.dataverse.authorization.providers.oauth2.impl.GitHubOAuth2AP; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/AuxiliaryFilesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/AuxiliaryFilesIT.java index 0e404f6ba97..6c9ab4e9c76 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/AuxiliaryFilesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/AuxiliaryFilesIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.io.File; import java.io.IOException; import java.nio.file.Path; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/BagIT.java b/src/test/java/edu/harvard/iq/dataverse/api/BagIT.java index 4ac76ac846d..b834a1ff98d 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/BagIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/BagIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.engine.command.impl.LocalSubmitToArchiveCommand; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import static javax.ws.rs.core.Response.Status.CREATED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/BatchImportIT.java b/src/test/java/edu/harvard/iq/dataverse/api/BatchImportIT.java index 89ad79817d8..3b920d34f61 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/BatchImportIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/BatchImportIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; import java.io.File; -import com.jayway.restassured.response.Response; +import io.restassured.response.Response; import java.util.logging.Logger; import org.junit.BeforeClass; import org.junit.Test; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/BuiltinUsersIT.java b/src/test/java/edu/harvard/iq/dataverse/api/BuiltinUsersIT.java index 0f8385409a3..4ea4726d25e 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/BuiltinUsersIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/BuiltinUsersIT.java @@ -1,10 +1,10 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.http.ContentType; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.http.ContentType; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import java.util.AbstractMap; import java.util.Arrays; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/ConfirmEmailIT.java b/src/test/java/edu/harvard/iq/dataverse/api/ConfirmEmailIT.java index e00dba2263b..c78bf1c2e9a 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/ConfirmEmailIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/ConfirmEmailIT.java @@ -1,13 +1,15 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; -import java.util.logging.Logger; -import static junit.framework.Assert.assertEquals; + +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import org.junit.BeforeClass; import org.junit.Test; + +import java.util.logging.Logger; + +import static io.restassured.RestAssured.given; import static org.hamcrest.CoreMatchers.nullValue; import static org.hamcrest.Matchers.startsWith; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DataCiteIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DataCiteIT.java index 86c3eed4297..33cb5d3ea53 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DataCiteIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DataCiteIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import static junit.framework.Assert.assertEquals; import static org.hamcrest.CoreMatchers.equalTo; import org.junit.Test; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DatasetsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DatasetsIT.java index 3c4706f10c2..4d53b354151 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DatasetsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DatasetsIT.java @@ -1,16 +1,16 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.http.ContentType; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.http.ContentType; +import io.restassured.response.Response; import java.util.logging.Logger; import org.junit.BeforeClass; import org.junit.Test; import org.mockito.Mockito; import org.skyscreamer.jsonassert.JSONAssert; import org.junit.Ignore; -import com.jayway.restassured.path.json.JsonPath; +import io.restassured.path.json.JsonPath; import java.util.List; import java.util.Map; @@ -33,9 +33,9 @@ import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.exception.ExceptionUtils; -import com.jayway.restassured.parsing.Parser; -import static com.jayway.restassured.path.json.JsonPath.with; -import com.jayway.restassured.path.xml.XmlPath; +import io.restassured.parsing.Parser; +import static io.restassured.path.json.JsonPath.with; +import io.restassured.path.xml.XmlPath; import static edu.harvard.iq.dataverse.api.UtilIT.equalToCI; import edu.harvard.iq.dataverse.authorization.groups.impl.builtin.AuthenticatedUsers; import edu.harvard.iq.dataverse.datavariable.VarGroup; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DataversesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DataversesIT.java index 75215bb700e..f463c92a32f 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DataversesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DataversesIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import static com.jayway.restassured.path.json.JsonPath.with; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import static io.restassured.path.json.JsonPath.with; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.Dataverse; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import edu.harvard.iq.dataverse.util.BundleUtil; @@ -32,7 +32,7 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import java.nio.file.Files; -import com.jayway.restassured.path.json.JsonPath; +import io.restassured.path.json.JsonPath; import static javax.ws.rs.core.Response.Status.OK; import org.hamcrest.CoreMatchers; import org.hamcrest.Matchers; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DeactivateUsersIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DeactivateUsersIT.java index de2a1d422c0..e162efdf4f9 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DeactivateUsersIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DeactivateUsersIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.authorization.DataverseRole; import java.util.ArrayList; import java.util.Collections; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DeleteUsersIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DeleteUsersIT.java index cae1d0e210a..cbe569b54d8 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DeleteUsersIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DeleteUsersIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.authorization.DataverseRole; import java.io.File; import java.io.IOException; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DownloadFilesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DownloadFilesIT.java index 7d5adf95507..21e408c858c 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DownloadFilesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DownloadFilesIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Headers; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.http.Headers; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/DuplicateFilesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/DuplicateFilesIT.java index 6227e96fdfa..0972f66387d 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/DuplicateFilesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/DuplicateFilesIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.parsing.Parser; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.parsing.Parser; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.io.File; import java.io.IOException; import java.nio.file.Files; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/EditDDIIT.java b/src/test/java/edu/harvard/iq/dataverse/api/EditDDIIT.java index 1775649c3dd..e12f76327f8 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/EditDDIIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/EditDDIIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import static edu.harvard.iq.dataverse.api.AccessIT.apiToken; import static edu.harvard.iq.dataverse.api.AccessIT.datasetId; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/ExternalToolsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/ExternalToolsIT.java index 5508a6c57dc..1de7b8d6d6b 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/ExternalToolsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/ExternalToolsIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.io.IOException; import java.io.StringReader; import javax.json.Json; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/FeedbackApiIT.java b/src/test/java/edu/harvard/iq/dataverse/api/FeedbackApiIT.java index bfe4a58abbf..f59e879d55f 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/FeedbackApiIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/FeedbackApiIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import javax.json.Json; import javax.json.JsonObjectBuilder; import static javax.ws.rs.core.Response.Status.CREATED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/FileMetadataIT.java b/src/test/java/edu/harvard/iq/dataverse/api/FileMetadataIT.java index 1ca7c99be8e..676948f7aa4 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/FileMetadataIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/FileMetadataIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.http.ContentType; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.http.ContentType; +import io.restassured.response.Response; import org.apache.commons.io.IOUtils; import org.junit.After; import org.junit.AfterClass; @@ -12,7 +12,7 @@ import java.util.UUID; -import static com.jayway.restassured.RestAssured.given; +import static io.restassured.RestAssured.given; import static javax.ws.rs.core.Response.Status.OK; import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.fail; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/FileTypeDetectionIT.java b/src/test/java/edu/harvard/iq/dataverse/api/FileTypeDetectionIT.java index 10ac9192205..8cc8aba63bb 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/FileTypeDetectionIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/FileTypeDetectionIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import javax.json.Json; import javax.json.JsonObjectBuilder; import static javax.ws.rs.core.Response.Status.CREATED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/FilesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/FilesIT.java index 950260d1400..d23b7fe7e47 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/FilesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/FilesIT.java @@ -1,13 +1,13 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import java.util.logging.Logger; import org.junit.Test; import org.junit.BeforeClass; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.path.xml.XmlPath; +import io.restassured.path.json.JsonPath; +import io.restassured.path.xml.XmlPath; import static edu.harvard.iq.dataverse.api.AccessIT.apiToken; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import edu.harvard.iq.dataverse.util.BundleUtil; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/HarvestingClientsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/HarvestingClientsIT.java index 094eb0df77c..f173d87203c 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/HarvestingClientsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/HarvestingClientsIT.java @@ -2,11 +2,11 @@ import java.util.logging.Logger; import java.util.logging.Level; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.path.json.JsonPath; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.path.json.JsonPath; import org.junit.Test; -import com.jayway.restassured.response.Response; +import io.restassured.response.Response; import static javax.ws.rs.core.Response.Status.CREATED; import static javax.ws.rs.core.Response.Status.UNAUTHORIZED; import static javax.ws.rs.core.Response.Status.ACCEPTED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/HarvestingServerIT.java b/src/test/java/edu/harvard/iq/dataverse/api/HarvestingServerIT.java index 94a8e373848..18ec83adfc3 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/HarvestingServerIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/HarvestingServerIT.java @@ -2,15 +2,15 @@ import java.util.logging.Level; import java.util.logging.Logger; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; import org.junit.BeforeClass; import org.junit.AfterClass; import org.junit.Test; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; -import com.jayway.restassured.response.Response; -import com.jayway.restassured.path.xml.XmlPath; -import com.jayway.restassured.path.xml.element.Node; +import io.restassured.response.Response; +import io.restassured.path.xml.XmlPath; +import io.restassured.path.xml.element.Node; import java.util.ArrayList; import java.util.Collections; import static javax.ws.rs.core.Response.Status.OK; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/InReviewWorkflowIT.java b/src/test/java/edu/harvard/iq/dataverse/api/InReviewWorkflowIT.java index 89aeaa6b2ee..53bbd07db7f 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/InReviewWorkflowIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/InReviewWorkflowIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.path.xml.XmlPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.path.xml.XmlPath; +import io.restassured.response.Response; import static edu.harvard.iq.dataverse.api.AccessIT.apiToken; import edu.harvard.iq.dataverse.authorization.DataverseRole; import java.util.logging.Logger; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/IndexIT.java b/src/test/java/edu/harvard/iq/dataverse/api/IndexIT.java index 313c4c2cfaf..2790a019723 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/IndexIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/IndexIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import static edu.harvard.iq.dataverse.api.UtilIT.API_TOKEN_HTTP_HEADER; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import java.util.ArrayList; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/InfoIT.java b/src/test/java/edu/harvard/iq/dataverse/api/InfoIT.java index 73a1171bf1b..2c782bc53ef 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/InfoIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/InfoIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.response.Response; +import static io.restassured.RestAssured.given; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import org.junit.Test; import static org.hamcrest.CoreMatchers.equalTo; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/InvalidCharactersIT.java b/src/test/java/edu/harvard/iq/dataverse/api/InvalidCharactersIT.java index 2fb412ef1cc..e1587abe04f 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/InvalidCharactersIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/InvalidCharactersIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import java.io.File; import java.io.IOException; import java.nio.file.Path; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/IpGroupsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/IpGroupsIT.java index 88b8a9fc458..e042e2cbe6c 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/IpGroupsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/IpGroupsIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.authorization.DataverseRole; import java.util.ArrayList; import java.util.List; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/LicensesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/LicensesIT.java index d6bfdb96777..7d5b2469dc0 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/LicensesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/LicensesIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.DataFile; import edu.harvard.iq.dataverse.authorization.providers.builtin.BuiltinAuthenticationProvider; import edu.harvard.iq.dataverse.authorization.providers.oauth2.impl.GitHubOAuth2AP; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/LinkIT.java b/src/test/java/edu/harvard/iq/dataverse/api/LinkIT.java index 9ac2d2cb7e5..28a48dae3d9 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/LinkIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/LinkIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.util.BundleUtil; import java.util.logging.Logger; import static javax.ws.rs.core.Response.Status.CREATED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/MakeDataCountApiIT.java b/src/test/java/edu/harvard/iq/dataverse/api/MakeDataCountApiIT.java index c210d471ce2..a4d857e3b23 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/MakeDataCountApiIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/MakeDataCountApiIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import java.io.File; import java.io.IOException; import static javax.ws.rs.core.Response.Status.CREATED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java b/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java index 05b7a7910ff..d7380436d85 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/MetadataBlocksIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import static javax.ws.rs.core.Response.Status.OK; import org.hamcrest.CoreMatchers; import org.junit.BeforeClass; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/MetricsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/MetricsIT.java index f6478bf379e..e818c5789ba 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/MetricsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/MetricsIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.metrics.MetricsUtil; import static javax.ws.rs.core.Response.Status.BAD_REQUEST; import static javax.ws.rs.core.Response.Status.OK; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/MoveIT.java b/src/test/java/edu/harvard/iq/dataverse/api/MoveIT.java index dfe23c7d80a..b6da7ffc438 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/MoveIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/MoveIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import static com.jayway.restassured.path.json.JsonPath.with; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import static io.restassured.path.json.JsonPath.with; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.authorization.DataverseRole; import java.io.StringReader; import java.util.List; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/NotificationsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/NotificationsIT.java index 09a14e2d6ad..8e9d1e9d9f3 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/NotificationsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/NotificationsIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.util.logging.Logger; import static javax.ws.rs.core.Response.Status.CREATED; import static javax.ws.rs.core.Response.Status.OK; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/PidsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/PidsIT.java index c7ca70e0e1d..86362e8a4eb 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/PidsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/PidsIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import static javax.ws.rs.core.Response.Status.CREATED; import static javax.ws.rs.core.Response.Status.FORBIDDEN; import static javax.ws.rs.core.Response.Status.OK; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/ProvIT.java b/src/test/java/edu/harvard/iq/dataverse/api/ProvIT.java index 52143eb9981..e8845d92ed4 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/ProvIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/ProvIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.util.logging.Logger; import javax.json.Json; import javax.json.JsonArray; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/RemoteStoreIT.java b/src/test/java/edu/harvard/iq/dataverse/api/RemoteStoreIT.java index ae5bc8b7316..4c13b9b3fd8 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/RemoteStoreIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/RemoteStoreIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import javax.json.Json; import javax.json.JsonObjectBuilder; import static javax.ws.rs.core.Response.Status.CREATED; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/RolesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/RolesIT.java index d1e2ffb2426..49859c6fd00 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/RolesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/RolesIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.util.logging.Logger; import static junit.framework.Assert.assertEquals; import static org.hamcrest.CoreMatchers.equalTo; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/S3AccessIT.java b/src/test/java/edu/harvard/iq/dataverse/api/S3AccessIT.java index 29cb6895bba..b682d2172d9 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/S3AccessIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/S3AccessIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.util.logging.Logger; import static javax.ws.rs.core.Response.Status.OK; import static junit.framework.Assert.assertEquals; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/SearchIT.java b/src/test/java/edu/harvard/iq/dataverse/api/SearchIT.java index 61a55a88a3b..4d6a0dd3372 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/SearchIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/SearchIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import java.util.logging.Level; import java.util.logging.Logger; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/SiteMapIT.java b/src/test/java/edu/harvard/iq/dataverse/api/SiteMapIT.java index 723f05d3802..017ad014ffb 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/SiteMapIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/SiteMapIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; +import io.restassured.RestAssured; import org.junit.BeforeClass; import org.junit.Test; -import com.jayway.restassured.response.Response; +import io.restassured.response.Response; public class SiteMapIT { diff --git a/src/test/java/edu/harvard/iq/dataverse/api/StorageSitesIT.java b/src/test/java/edu/harvard/iq/dataverse/api/StorageSitesIT.java index a33d7d60263..9aa14e438bf 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/StorageSitesIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/StorageSitesIT.java @@ -1,7 +1,7 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.locality.StorageSite; import edu.harvard.iq.dataverse.util.SystemConfig; import javax.json.Json; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/SwordIT.java b/src/test/java/edu/harvard/iq/dataverse/api/SwordIT.java index 6c745790359..56e8b45e95e 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/SwordIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/SwordIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.GlobalId; import edu.harvard.iq.dataverse.api.datadeposit.SwordConfigurationImpl; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/TabularIT.java b/src/test/java/edu/harvard/iq/dataverse/api/TabularIT.java index 512080ae569..ba414eb69b2 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/TabularIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/TabularIT.java @@ -1,8 +1,8 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import static edu.harvard.iq.dataverse.api.AccessIT.apiToken; import static edu.harvard.iq.dataverse.api.AccessIT.datasetId; import static edu.harvard.iq.dataverse.api.AccessIT.tabFile3NameRestricted; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/ThumbnailsIT.java b/src/test/java/edu/harvard/iq/dataverse/api/ThumbnailsIT.java index ffa432de63b..c02b116f3b0 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/ThumbnailsIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/ThumbnailsIT.java @@ -1,6 +1,6 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.response.Response; +import io.restassured.response.Response; import org.hamcrest.CoreMatchers; import org.junit.Test; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/UsersIT.java b/src/test/java/edu/harvard/iq/dataverse/api/UsersIT.java index 83dfc5fd889..b080bf8ea49 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/UsersIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/UsersIT.java @@ -1,10 +1,10 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import static com.jayway.restassured.RestAssured.given; -import com.jayway.restassured.http.ContentType; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import static io.restassured.RestAssured.given; +import io.restassured.http.ContentType; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.authorization.DataverseRole; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; import java.util.ArrayList; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/UtilIT.java b/src/test/java/edu/harvard/iq/dataverse/api/UtilIT.java index 12ccaf2caff..e2c11c078a0 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/UtilIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/UtilIT.java @@ -1,9 +1,9 @@ package edu.harvard.iq.dataverse.api; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.http.ContentType; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.http.ContentType; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import java.util.UUID; import java.util.logging.Logger; import javax.json.Json; @@ -20,11 +20,11 @@ import java.time.LocalDateTime; import java.util.logging.Level; import edu.harvard.iq.dataverse.api.datadeposit.SwordConfigurationImpl; -import com.jayway.restassured.path.xml.XmlPath; +import io.restassured.path.xml.XmlPath; import org.apache.commons.lang3.StringUtils; import org.junit.Test; import edu.harvard.iq.dataverse.settings.SettingsServiceBean; -import com.jayway.restassured.specification.RequestSpecification; +import io.restassured.specification.RequestSpecification; import java.util.List; import com.mashape.unirest.http.Unirest; import com.mashape.unirest.http.exceptions.UnirestException; @@ -40,9 +40,9 @@ import org.hamcrest.Description; import org.hamcrest.Matcher; -import static com.jayway.restassured.RestAssured.put; -import static com.jayway.restassured.path.xml.XmlPath.from; -import static com.jayway.restassured.RestAssured.given; +import static io.restassured.RestAssured.put; +import static io.restassured.path.xml.XmlPath.from; +import static io.restassured.RestAssured.given; import edu.harvard.iq.dataverse.DatasetField; import edu.harvard.iq.dataverse.DatasetFieldConstant; import edu.harvard.iq.dataverse.DatasetFieldType; diff --git a/src/test/java/edu/harvard/iq/dataverse/api/filesystem/FileRecordJobIT.java b/src/test/java/edu/harvard/iq/dataverse/api/filesystem/FileRecordJobIT.java index 7b9f7d5c155..133119f1493 100644 --- a/src/test/java/edu/harvard/iq/dataverse/api/filesystem/FileRecordJobIT.java +++ b/src/test/java/edu/harvard/iq/dataverse/api/filesystem/FileRecordJobIT.java @@ -20,10 +20,10 @@ */ import com.fasterxml.jackson.databind.ObjectMapper; -import com.jayway.restassured.RestAssured; -import com.jayway.restassured.http.ContentType; -import com.jayway.restassured.path.json.JsonPath; -import com.jayway.restassured.response.Response; +import io.restassured.RestAssured; +import io.restassured.http.ContentType; +import io.restassured.path.json.JsonPath; +import io.restassured.response.Response; import edu.harvard.iq.dataverse.api.UtilIT; import edu.harvard.iq.dataverse.authorization.DataverseRole; import edu.harvard.iq.dataverse.batch.entities.JobExecutionEntity; @@ -55,7 +55,7 @@ import java.util.Random; import java.util.UUID; -import static com.jayway.restassured.RestAssured.given; +import static io.restassured.RestAssured.given; import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertTrue; import static junit.framework.Assert.fail; diff --git a/src/test/java/edu/harvard/iq/dataverse/export/OpenAireExporterTest.java b/src/test/java/edu/harvard/iq/dataverse/export/OpenAireExporterTest.java index 505496fca7a..3141b36d6c5 100644 --- a/src/test/java/edu/harvard/iq/dataverse/export/OpenAireExporterTest.java +++ b/src/test/java/edu/harvard/iq/dataverse/export/OpenAireExporterTest.java @@ -1,6 +1,5 @@ package edu.harvard.iq.dataverse.export; -import com.jayway.restassured.path.xml.XmlPath; import edu.harvard.iq.dataverse.DatasetVersion; import edu.harvard.iq.dataverse.util.xml.XmlPrinter; import java.io.ByteArrayInputStream; @@ -16,6 +15,8 @@ import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import static junit.framework.Assert.assertEquals; + +import io.restassured.path.xml.XmlPath; import org.junit.Test; import org.xml.sax.ErrorHandler; import org.xml.sax.InputSource; From 56b794d675c68f6d687f9a5b88e6df9bca5f5336 Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 22:35:31 +0100 Subject: [PATCH 6/7] ci(jdk): re-enable Java 17 builds on GitHub #8094 --- .github/workflows/maven_unit_test.yml | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/.github/workflows/maven_unit_test.yml b/.github/workflows/maven_unit_test.yml index e2048f73431..1e5bba3ce1c 100644 --- a/.github/workflows/maven_unit_test.yml +++ b/.github/workflows/maven_unit_test.yml @@ -21,15 +21,10 @@ jobs: jdk: [ '11' ] experimental: [false] status: ["Stable"] - # - # JDK 17 builds disabled due to non-essential fails marking CI jobs as completely failed within - # Github Projects, PR lists etc. This was consensus on Slack #dv-tech. See issue #8094 - # (This is a limitation of how Github is currently handling these things.) - # - #include: - # - jdk: '17' - # experimental: true - # status: "Experimental" + include: + - jdk: '17' + experimental: true + status: "Experimental" continue-on-error: ${{ matrix.experimental }} runs-on: ubuntu-latest steps: From 9ba8d400d916afc4a9c7b0a26d71cee0b6c3aee8 Mon Sep 17 00:00:00 2001 From: Oliver Bertuch Date: Mon, 16 Jan 2023 23:41:21 +0100 Subject: [PATCH 7/7] ci: use Java 17 in docker-aio #8094 - Install Java 17 instead of Java 11 - Install the "ps" util, necessary to create the Solr index --- conf/docker-aio/c8.dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/docker-aio/c8.dockerfile b/conf/docker-aio/c8.dockerfile index 0002464cbf2..ece7ce13c7b 100644 --- a/conf/docker-aio/c8.dockerfile +++ b/conf/docker-aio/c8.dockerfile @@ -5,8 +5,8 @@ RUN dnf -qy module disable postgresql RUN yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm RUN echo "fastestmirror=true" >> /etc/dnf/dnf.conf -RUN yum install -y java-11-openjdk-devel postgresql13-server sudo epel-release unzip curl httpd python2 diffutils -RUN yum install -y jq lsof awscli +RUN yum install -y java-17-openjdk-devel postgresql13-server sudo epel-release unzip curl httpd python2 diffutils +RUN yum install -y jq lsof awscli procps-ng # for older search scripts RUN ln -s /usr/bin/python2 /usr/bin/python