Skip to content

Commit edf7b28

Browse files
authored
Merge pull request #290 from IQSS/deaccession-reason
Add deaccession reason to version summary
2 parents acede5e + d93b173 commit edf7b28

File tree

2 files changed

+34
-1
lines changed

2 files changed

+34
-1
lines changed

src/datasets/domain/models/DatasetVersionSummaryInfo.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,17 @@ export interface DatasetVersionSummaryInfo {
77
}
88

99
export type DatasetVersionSummary = {
10-
[key: string]: SummaryUpdates | SummaryUpdatesWithFields | FilesSummaryUpdates | boolean
10+
[key: string]:
11+
| SummaryUpdates
12+
| SummaryUpdatesWithFields
13+
| FilesSummaryUpdates
14+
| boolean
15+
| Deaccessioned
16+
}
17+
18+
interface Deaccessioned {
19+
reason: string
20+
url: string
1121
}
1222

1323
interface SummaryUpdates {

test/integration/datasets/DatasetsRepository.test.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1162,6 +1162,29 @@ describe('DatasetsRepository', () => {
11621162
await deletePublishedDatasetViaApi(testDatasetIds.persistentId)
11631163
})
11641164

1165+
test('should return dataset versions correctly after deaccessioned', async () => {
1166+
const testDatasetIds = await createDataset.execute(
1167+
TestConstants.TEST_NEW_DATASET_DTO,
1168+
testDatasetVersionsCollectionAlias
1169+
)
1170+
await publishDataset.execute(testDatasetIds.numericId, VersionUpdateType.MAJOR)
1171+
1172+
await waitForNoLocks(testDatasetIds.numericId, 10)
1173+
1174+
const deaccessionReason = {
1175+
deaccessioned: { reason: 'Test reason.' }
1176+
}
1177+
await deaccessionDatasetViaApi(testDatasetIds.numericId, '1.0')
1178+
1179+
const actual = await sut.getDatasetVersionsSummaries(testDatasetIds.numericId)
1180+
1181+
expect(actual.length).toBeGreaterThan(0)
1182+
expect(actual[0].versionNumber).toBe('1.0')
1183+
expect(actual[0].summary).toStrictEqual(deaccessionReason)
1184+
1185+
await deletePublishedDatasetViaApi(testDatasetIds.persistentId)
1186+
})
1187+
11651188
test('should return dataset versions correctly after 1st publish and metadata fields update', async () => {
11661189
const testDatasetIds = await createDataset.execute(
11671190
TestConstants.TEST_NEW_DATASET_DTO,

0 commit comments

Comments
 (0)