Skip to content

Commit b2e20c4

Browse files
committed
change delete dataset to datasetDraft
1 parent de41b3d commit b2e20c4

File tree

7 files changed

+21
-19
lines changed

7 files changed

+21
-19
lines changed

docs/useCases.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ The different use cases currently available in the package are classified below,
3939
- [Update a Dataset](#update-a-dataset)
4040
- [Publish a Dataset](#publish-a-dataset)
4141
- [Deaccession a Dataset](#deaccession-a-dataset)
42-
- [Delete a Dataset](#delete-a-dataset)
42+
- [Delete a Draft Dataset](#delete-a-draft-dataset)
4343
- [Files](#Files)
4444
- [Files read use cases](#files-read-use-cases)
4545
- [Get a File](#get-a-file)
@@ -845,21 +845,23 @@ Delete a Draft Dataset, given its identifier.
845845
##### Example call:
846846

847847
```typescript
848-
import { deleteDataset } from '@iqss/dataverse-client-javascript'
848+
import { deleteDatasetDraft } from '@iqss/dataverse-client-javascript'
849849

850850
/* ... */
851851

852852
const datasetId = 1
853853

854-
deletedataset.execute(datasetId)
854+
deleteDatasetDraft.execute(datasetId)
855855

856856
/* ... */
857857
```
858858

859-
_See [use case](../src/datasets/domain/useCases/DeleteDataset.ts) implementation_.
859+
_See [use case](../src/datasets/domain/useCases/DeleteDatasetDraft.ts) implementation_.
860860

861861
The `datasetId` parameter is a number for numeric identifiers or string for persistent identifiers.
862862

863+
If you try to delete a dataset without draft version, you will get a not found error.
864+
863865
#### Get Download Count of a Dataset
864866

865867
Total number of downloads requested for a dataset, given a dataset numeric identifier,

src/datasets/domain/repositories/IDatasetsRepository.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,5 +60,5 @@ export interface IDatasetsRepository {
6060
includeMDC?: boolean
6161
): Promise<DatasetDownloadCount>
6262
getDatasetVersionsSummaries(datasetId: number | string): Promise<DatasetVersionSummaryInfo[]>
63-
deleteDataset(datasetId: number | string): Promise<void>
63+
deleteDatasetDraft(datasetId: number | string): Promise<void>
6464
}

src/datasets/domain/useCases/DeleteDataset.ts renamed to src/datasets/domain/useCases/DeleteDatasetDraft.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { UseCase } from '../../../core/domain/useCases/UseCase'
22
import { IDatasetsRepository } from '../repositories/IDatasetsRepository'
33

4-
export class DeleteDataset implements UseCase<void> {
4+
export class DeleteDatasetDraft implements UseCase<void> {
55
private datasetsRepository: IDatasetsRepository
66

77
constructor(datasetsRepository: IDatasetsRepository) {
@@ -14,6 +14,6 @@ export class DeleteDataset implements UseCase<void> {
1414
* @param {number | string} [datasetId] - The dataset identifier, which can be a string (for persistent identifiers), or a number (for numeric identifiers).
1515
*/
1616
async execute(datasetId: number | string): Promise<void> {
17-
return this.datasetsRepository.deleteDataset(datasetId)
17+
return this.datasetsRepository.deleteDatasetDraft(datasetId)
1818
}
1919
}

src/datasets/infra/repositories/DatasetsRepository.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ export class DatasetsRepository extends ApiRepository implements IDatasetsReposi
278278
})
279279
}
280280

281-
public async deleteDataset(datasetId: string | number): Promise<void> {
281+
public async deleteDatasetDraft(datasetId: string | number): Promise<void> {
282282
return this.doDelete(
283283
this.buildApiEndpoint(this.datasetsResourceName, 'versions/:draft', datasetId)
284284
)

test/functional/datasets/DeleteDataset.test.ts renamed to test/functional/datasets/DeleteDatasetDraft.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { createDataset, deleteDataset } from '../../../src/datasets'
1+
import { createDataset, deleteDatasetDraft } from '../../../src/datasets'
22
import { ApiConfig, WriteError } from '../../../src'
33
import { TestConstants } from '../../testHelpers/TestConstants'
44
import { DataverseApiAuthMechanism } from '../../../src/core/infra/repositories/ApiConfig'
@@ -53,12 +53,12 @@ describe('execute', () => {
5353
test('should delete a dataset when it is draft successfully', async () => {
5454
const createdDatasetIdentifiers = await createDataset.execute(testDataset)
5555

56-
const actual = await deleteDataset.execute(createdDatasetIdentifiers.numericId)
56+
const actual = await deleteDatasetDraft.execute(createdDatasetIdentifiers.numericId)
5757

5858
expect(actual).toBeUndefined()
5959
})
6060

6161
test('should throw an error when the dataset id is incorrect', async () => {
62-
await expect(deleteDataset.execute(1111)).rejects.toBeInstanceOf(WriteError)
62+
await expect(deleteDatasetDraft.execute(1111)).rejects.toBeInstanceOf(WriteError)
6363
})
6464
})

test/integration/datasets/DatasetsRepository.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1337,13 +1337,13 @@ describe('DatasetsRepository', () => {
13371337
})
13381338
})
13391339

1340-
describe('deleteDataset', () => {
1340+
describe('deleteDatasetDraft', () => {
13411341
test('should delete a draft dataset', async () => {
13421342
const testDatasetIds = await createDataset.execute(TestConstants.TEST_NEW_DATASET_DTO)
13431343

13441344
await waitForNoLocks(testDatasetIds.numericId, 10)
13451345

1346-
const actual = await sut.deleteDataset(testDatasetIds.numericId)
1346+
const actual = await sut.deleteDatasetDraft(testDatasetIds.numericId)
13471347

13481348
expect(actual).toBeUndefined()
13491349

@@ -1361,7 +1361,7 @@ describe('DatasetsRepository', () => {
13611361
`[404] Dataset with ID ${nonExistentTestDatasetId} not found.`
13621362
)
13631363

1364-
await expect(sut.deleteDataset(nonExistentTestDatasetId)).rejects.toThrow(expectedError)
1364+
await expect(sut.deleteDatasetDraft(nonExistentTestDatasetId)).rejects.toThrow(expectedError)
13651365
})
13661366
})
13671367
})

test/unit/datasets/DeleteDataset.test.ts renamed to test/unit/datasets/DeleteDatasetDraft.test.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
import { DeleteDataset } from '../../../src/datasets/domain/useCases/DeleteDataset'
1+
import { DeleteDatasetDraft } from '../../../src/datasets/domain/useCases/DeleteDatasetDraft'
22
import { IDatasetsRepository } from '../../../src/datasets/domain/repositories/IDatasetsRepository'
33
import { WriteError } from '../../../src'
44

55
describe('execute', () => {
66
test('should return undefined on delete success', async () => {
77
const datasetsRepositoryStub: IDatasetsRepository = {} as IDatasetsRepository
8-
datasetsRepositoryStub.deleteDataset = jest.fn().mockResolvedValue(undefined)
9-
const sut = new DeleteDataset(datasetsRepositoryStub)
8+
datasetsRepositoryStub.deleteDatasetDraft = jest.fn().mockResolvedValue(undefined)
9+
const sut = new DeleteDatasetDraft(datasetsRepositoryStub)
1010

1111
const actual = await sut.execute(1)
1212
expect(actual).toEqual(undefined)
1313
})
1414

1515
test('should return error result on delete error', async () => {
1616
const datasetsRepositoryStub: IDatasetsRepository = {} as IDatasetsRepository
17-
datasetsRepositoryStub.deleteDataset = jest.fn().mockRejectedValue(new WriteError())
18-
const sut = new DeleteDataset(datasetsRepositoryStub)
17+
datasetsRepositoryStub.deleteDatasetDraft = jest.fn().mockRejectedValue(new WriteError())
18+
const sut = new DeleteDatasetDraft(datasetsRepositoryStub)
1919

2020
const nonExistentDatasetId = 111
2121
await expect(sut.execute(nonExistentDatasetId)).rejects.toThrow(WriteError)

0 commit comments

Comments
 (0)