diff --git a/src/datasets/domain/models/Dataset.ts b/src/datasets/domain/models/Dataset.ts index df08277c..51f2c433 100644 --- a/src/datasets/domain/models/Dataset.ts +++ b/src/datasets/domain/models/Dataset.ts @@ -22,6 +22,7 @@ export interface DatasetVersionInfo { createTime: Date lastUpdateTime: Date releaseTime?: Date + deaccessionNote?: string } export enum DatasetVersionState { diff --git a/src/datasets/infra/repositories/transformers/DatasetPayload.ts b/src/datasets/infra/repositories/transformers/DatasetPayload.ts index abbf74f8..6378ac45 100644 --- a/src/datasets/infra/repositories/transformers/DatasetPayload.ts +++ b/src/datasets/infra/repositories/transformers/DatasetPayload.ts @@ -35,6 +35,7 @@ export interface DatasetPayload { disclaimer?: string files: FilePayload[] isPartOf: OwnerNodePayload + deaccessionNote?: string } export interface LicensePayload { diff --git a/src/datasets/infra/repositories/transformers/datasetTransformers.ts b/src/datasets/infra/repositories/transformers/datasetTransformers.ts index a46372e0..e5e88ebd 100644 --- a/src/datasets/infra/repositories/transformers/datasetTransformers.ts +++ b/src/datasets/infra/repositories/transformers/datasetTransformers.ts @@ -233,7 +233,8 @@ export const transformVersionPayloadToDataset = ( state: versionPayload.versionState as DatasetVersionState, createTime: new Date(versionPayload.createTime), lastUpdateTime: new Date(versionPayload.lastUpdateTime), - releaseTime: new Date(versionPayload.releaseTime) + releaseTime: new Date(versionPayload.releaseTime), + deaccessionNote: versionPayload.deaccessionNote }, termsOfUse: { termsOfAccess: { diff --git a/test/integration/datasets/DatasetsRepository.test.ts b/test/integration/datasets/DatasetsRepository.test.ts index 21ae392b..108ad117 100644 --- a/test/integration/datasets/DatasetsRepository.test.ts +++ b/test/integration/datasets/DatasetsRepository.test.ts @@ -1075,6 +1075,7 @@ describe('DatasetsRepository', () => { const dataset = await sut.getDataset(testDatasetIds.numericId, '1.0', true, false) expect(dataset.versionInfo.state).toBe('DEACCESSIONED') + expect(dataset.versionInfo.deaccessionNote).toBe(deaccessionDTO.deaccessionReason) }) test('should return error when dataset is deaccessioned', async () => { diff --git a/test/testHelpers/datasets/datasetHelper.ts b/test/testHelpers/datasets/datasetHelper.ts index b085eac5..bed1fc69 100644 --- a/test/testHelpers/datasets/datasetHelper.ts +++ b/test/testHelpers/datasets/datasetHelper.ts @@ -52,7 +52,8 @@ export const createDatasetModel = ( state: DatasetVersionState.RELEASED, createTime: new Date(DATASET_CREATE_TIME_STR), lastUpdateTime: new Date(DATASET_UPDATE_TIME_STR), - releaseTime: new Date(DATASET_RELEASE_TIME_STR) + releaseTime: new Date(DATASET_RELEASE_TIME_STR), + deaccessionNote: undefined }, termsOfUse: { termsOfAccess: {