Skip to content

Commit 351cffc

Browse files
authored
Merge pull request #268 from IQSS/rollback-branch
Manually revert last 3 commits
2 parents 46d5c42 + 9c002c8 commit 351cffc

File tree

11 files changed

+38
-327
lines changed

11 files changed

+38
-327
lines changed

src/datasets/domain/models/DatasetVersionInfo.ts

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

src/datasets/domain/repositories/IDatasetsRepository.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import { DatasetDTO } from '../dtos/DatasetDTO'
77
import { DatasetDeaccessionDTO } from '../dtos/DatasetDeaccessionDTO'
88
import { MetadataBlock } from '../../../metadataBlocks'
99
import { DatasetVersionDiff } from '../models/DatasetVersionDiff'
10-
import { DatasetVersionInfo } from '../models/DatasetVersionInfo'
1110

1211
export interface IDatasetsRepository {
1312
getDataset(
@@ -52,5 +51,4 @@ export interface IDatasetsRepository {
5251
datasetVersionId: string,
5352
deaccessionDTO: DatasetDeaccessionDTO
5453
): Promise<void>
55-
getDatasetVersions(datasetId: number | string): Promise<DatasetVersionInfo[]>
5654
}

src/datasets/domain/useCases/GetDatasetVersions.ts

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

src/datasets/index.ts

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import { PublishDataset } from './domain/useCases/PublishDataset'
1717
import { UpdateDataset } from './domain/useCases/UpdateDataset'
1818
import { GetDatasetVersionDiff } from './domain/useCases/GetDatasetVersionDiff'
1919
import { DeaccessionDataset } from './domain/useCases/DeaccessionDataset'
20-
import { GetDatasetVersions } from './domain/useCases/GetDatasetVersions'
2120

2221
const datasetsRepository = new DatasetsRepository()
2322

@@ -49,7 +48,6 @@ const updateDataset = new UpdateDataset(
4948
datasetResourceValidator
5049
)
5150
const deaccessionDataset = new DeaccessionDataset(datasetsRepository)
52-
const getDatasetVersions = new GetDatasetVersions(datasetsRepository)
5351

5452
export {
5553
getDataset,
@@ -64,8 +62,7 @@ export {
6462
publishDataset,
6563
createDataset,
6664
updateDataset,
67-
deaccessionDataset,
68-
getDatasetVersions
65+
deaccessionDataset
6966
}
7067
export { DatasetNotNumberedVersion } from './domain/models/DatasetNotNumberedVersion'
7168
export { DatasetUserPermissions } from './domain/models/DatasetUserPermissions'

src/datasets/infra/repositories/DatasetsRepository.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import { transformDatasetLocksResponseToDatasetLocks } from './transformers/data
1818
import { transformDatasetPreviewsResponseToDatasetPreviewSubset } from './transformers/datasetPreviewsTransformers'
1919
import { DatasetVersionDiff } from '../../domain/models/DatasetVersionDiff'
2020
import { transformDatasetVersionDiffResponseToDatasetVersionDiff } from './transformers/datasetVersionDiffTransformers'
21-
import { DatasetVersionInfo } from '../../domain/models/DatasetVersionInfo'
2221

2322
export interface GetAllDatasetPreviewsQueryParams {
2423
per_page?: number
@@ -236,15 +235,4 @@ export class DatasetsRepository extends ApiRepository implements IDatasetsReposi
236235
throw error
237236
})
238237
}
239-
240-
public async getDatasetVersions(datasetId: string | number): Promise<DatasetVersionInfo[]> {
241-
return this.doGet(
242-
this.buildApiEndpoint(this.datasetsResourceName, 'versions/compareSummary', datasetId),
243-
true
244-
)
245-
.then((response) => response.data.data)
246-
.catch((error) => {
247-
throw error
248-
})
249-
}
250238
}

test/environment/.env

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
POSTGRES_VERSION=13
22
DATAVERSE_DB_USER=dataverse
33
SOLR_VERSION=9.3.0
4-
DATAVERSE_IMAGE_REGISTRY=ghcr.io
5-
DATAVERSE_IMAGE_TAG=11188-version-difference-summary
4+
DATAVERSE_IMAGE_REGISTRY=docker.io
5+
DATAVERSE_IMAGE_TAG=unstable
66
DATAVERSE_BOOTSTRAP_TIMEOUT=5m

test/integration/datasets/DatasetsRepository.test.ts

Lines changed: 4 additions & 198 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@ import {
77
deleteUnpublishedDatasetViaApi,
88
waitForDatasetsIndexedInSolr,
99
deletePublishedDatasetViaApi,
10-
deaccessionDatasetViaApi,
11-
createDatasetLicenseModel
10+
deaccessionDatasetViaApi
1211
} from '../../testHelpers/datasets/datasetHelper'
1312
import { ReadError } from '../../../src/core/domain/repositories/ReadError'
1413
import {
@@ -19,8 +18,7 @@ import {
1918
createDataset,
2019
CreatedDatasetIdentifiers,
2120
DatasetDTO,
22-
DatasetDeaccessionDTO,
23-
publishDataset
21+
DatasetDeaccessionDTO
2422
} from '../../../src/datasets'
2523
import { ApiConfig, WriteError } from '../../../src'
2624
import { DataverseApiAuthMechanism } from '../../../src/core/infra/repositories/ApiConfig'
@@ -33,23 +31,9 @@ import {
3331
import {
3432
createCollectionViaApi,
3533
deleteCollectionViaApi,
36-
publishCollectionViaApi,
37-
ROOT_COLLECTION_ALIAS,
38-
setStorageDriverViaApi
34+
ROOT_COLLECTION_ALIAS
3935
} from '../../testHelpers/collections/collectionHelper'
40-
import {
41-
calculateBlobChecksum,
42-
createSinglepartFileBlob,
43-
testTextFile1Name,
44-
uploadFileViaApi
45-
} from '../../testHelpers/files/filesHelper'
46-
import {
47-
DatasetVersionSummary,
48-
SummaryStringValues
49-
} from '../../../src/datasets/domain/models/DatasetVersionInfo'
50-
import { FilesRepository } from '../../../src/files/infra/repositories/FilesRepository'
51-
import { DirectUploadClient } from '../../../src/files/infra/clients/DirectUploadClient'
52-
import { createTestFileUploadDestination } from '../../testHelpers/files/fileUploadDestinationHelper'
36+
import { testTextFile1Name, uploadFileViaApi } from '../../testHelpers/files/filesHelper'
5337

5438
const TEST_DIFF_DATASET_DTO: DatasetDTO = {
5539
license: {
@@ -95,9 +79,6 @@ describe('DatasetsRepository', () => {
9579
const sut: DatasetsRepository = new DatasetsRepository()
9680
const nonExistentTestDatasetId = 100
9781

98-
const filesRepositorySut = new FilesRepository()
99-
const directUploadSut: DirectUploadClient = new DirectUploadClient(filesRepositorySut)
100-
10182
beforeAll(async () => {
10283
ApiConfig.init(
10384
TestConstants.TEST_API_URL,
@@ -944,179 +925,4 @@ describe('DatasetsRepository', () => {
944925
).rejects.toBeInstanceOf(WriteError)
945926
})
946927
})
947-
948-
describe('getDatasetVersions', () => {
949-
const testDatasetVersionsCollectionAlias = 'testDatasetVersionsCollection'
950-
951-
beforeAll(async () => {
952-
await createCollectionViaApi(testDatasetVersionsCollectionAlias)
953-
await publishCollectionViaApi(testDatasetVersionsCollectionAlias)
954-
await setStorageDriverViaApi(testDatasetVersionsCollectionAlias, 'LocalStack')
955-
})
956-
957-
afterAll(async () => {
958-
await deleteCollectionViaApi(testDatasetVersionsCollectionAlias)
959-
})
960-
961-
test('should return dataset versions when dataset exists', async () => {
962-
const testDatasetIds = await createDataset.execute(
963-
TestConstants.TEST_NEW_DATASET_DTO,
964-
testDatasetVersionsCollectionAlias
965-
)
966-
967-
const actual = await sut.getDatasetVersions(testDatasetIds.numericId)
968-
969-
expect(actual.length).toBeGreaterThan(0)
970-
expect(actual[0].versionNumber).toBe('DRAFT')
971-
expect(actual[0].summary).toBe(SummaryStringValues.firstDraft)
972-
973-
await deleteUnpublishedDatasetViaApi(testDatasetIds.numericId)
974-
})
975-
976-
test('should return dataset versions correctly after first publish', async () => {
977-
const testDatasetIds = await createDataset.execute(
978-
TestConstants.TEST_NEW_DATASET_DTO,
979-
testDatasetVersionsCollectionAlias
980-
)
981-
await publishDataset.execute(testDatasetIds.numericId, VersionUpdateType.MAJOR)
982-
983-
await waitForNoLocks(testDatasetIds.numericId, 10)
984-
985-
const actual = await sut.getDatasetVersions(testDatasetIds.numericId)
986-
987-
expect(actual.length).toBeGreaterThan(0)
988-
expect(actual[0].versionNumber).toBe('1.0')
989-
expect(actual[0].summary).toBe(SummaryStringValues.firstPublished)
990-
991-
await deletePublishedDatasetViaApi(testDatasetIds.persistentId)
992-
})
993-
994-
test('should return dataset versions correctly after 1st publish and metadata fields update', async () => {
995-
const testDatasetIds = await createDataset.execute(
996-
TestConstants.TEST_NEW_DATASET_DTO,
997-
testDatasetVersionsCollectionAlias
998-
)
999-
await publishDataset.execute(testDatasetIds.numericId, VersionUpdateType.MAJOR)
1000-
1001-
await waitForNoLocks(testDatasetIds.numericId, 10)
1002-
1003-
const metadataBlocksRepository = new MetadataBlocksRepository()
1004-
const citationMetadataBlock = await metadataBlocksRepository.getMetadataBlockByName(
1005-
'citation'
1006-
)
1007-
1008-
await sut.updateDataset(
1009-
testDatasetIds.numericId,
1010-
{
1011-
license: createDatasetLicenseModel(true),
1012-
metadataBlockValues: [
1013-
{
1014-
name: 'citation',
1015-
fields: {
1016-
title: 'Updated Dataset Title'
1017-
}
1018-
}
1019-
]
1020-
},
1021-
[citationMetadataBlock]
1022-
)
1023-
1024-
const actual = await sut.getDatasetVersions(testDatasetIds.numericId)
1025-
1026-
expect(actual.length).toEqual(2)
1027-
1028-
expect(actual[0].versionNumber).toBe('DRAFT')
1029-
expect(actual[0].summary).toMatchObject<DatasetVersionSummary>({
1030-
'Citation Metadata': {
1031-
Title: {
1032-
added: 0,
1033-
deleted: 0,
1034-
changed: 1
1035-
}
1036-
},
1037-
files: {
1038-
added: 0,
1039-
removed: 0,
1040-
replaced: 0,
1041-
changedFileMetaData: 0,
1042-
changedVariableMetadata: 0
1043-
},
1044-
termsAccessChanged: false
1045-
})
1046-
1047-
expect(actual[1].versionNumber).toBe('1.0')
1048-
expect(actual[1].summary).toBe(SummaryStringValues.firstPublished)
1049-
1050-
await deletePublishedDatasetViaApi(testDatasetIds.persistentId)
1051-
})
1052-
1053-
test('should return correct files summary', async () => {
1054-
const testDatasetIds = await createDataset.execute(
1055-
TestConstants.TEST_NEW_DATASET_DTO,
1056-
testDatasetVersionsCollectionAlias
1057-
)
1058-
await publishDataset.execute(testDatasetIds.numericId, VersionUpdateType.MAJOR)
1059-
1060-
await waitForNoLocks(testDatasetIds.numericId, 10)
1061-
1062-
const singlepartFile = await createSinglepartFileBlob()
1063-
1064-
const destination = await createTestFileUploadDestination(
1065-
singlepartFile,
1066-
testDatasetIds.numericId
1067-
)
1068-
1069-
const actualStorageId = await directUploadSut.uploadFile(
1070-
testDatasetIds.numericId,
1071-
singlepartFile,
1072-
jest.fn(),
1073-
new AbortController(),
1074-
destination
1075-
)
1076-
1077-
const fileArrayBuffer = await singlepartFile.arrayBuffer()
1078-
const fileBuffer = Buffer.from(fileArrayBuffer)
1079-
1080-
const uploadedFileDTO = {
1081-
fileName: singlepartFile.name,
1082-
storageId: actualStorageId,
1083-
checksumType: 'md5',
1084-
checksumValue: calculateBlobChecksum(fileBuffer, 'md5'),
1085-
mimeType: singlepartFile.type
1086-
}
1087-
1088-
await filesRepositorySut.addUploadedFilesToDataset(testDatasetIds.numericId, [
1089-
uploadedFileDTO
1090-
])
1091-
1092-
const actual = await sut.getDatasetVersions(testDatasetIds.numericId)
1093-
1094-
expect(actual.length).toEqual(2)
1095-
1096-
expect(actual[0].versionNumber).toBe('DRAFT')
1097-
expect(actual[0].summary).toMatchObject<DatasetVersionSummary>({
1098-
files: {
1099-
added: 1,
1100-
removed: 0,
1101-
replaced: 0,
1102-
changedFileMetaData: 0,
1103-
changedVariableMetadata: 0
1104-
},
1105-
termsAccessChanged: false
1106-
})
1107-
1108-
expect(actual[1].versionNumber).toBe('1.0')
1109-
expect(actual[1].summary).toBe(SummaryStringValues.firstPublished)
1110-
1111-
await deletePublishedDatasetViaApi(testDatasetIds.persistentId)
1112-
})
1113-
1114-
test('should return error when dataset does not exist', async () => {
1115-
const expectedError = new ReadError(
1116-
`[404] Dataset with ID ${nonExistentTestDatasetId} not found.`
1117-
)
1118-
1119-
await expect(sut.getDatasetVersions(nonExistentTestDatasetId)).rejects.toThrow(expectedError)
1120-
})
1121-
})
1122928
})

0 commit comments

Comments
 (0)