diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-manager-message.service.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-manager-message.service.spec.ts deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-manager-message.service.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-manager-message.service.ts deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts index af4fb6681ff..f2615248eec 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts @@ -35,6 +35,7 @@ describe('TaskManagerMessageService', () => { }); describe('defined tasks messages', () => { + let defaultMsg: string; const testMessages = (operation: TaskMessageOperation, involves: string) => { expect(service.getRunningTitle(finishedTask)).toBe(operation.running + ' ' + involves); expect(service.getErrorTitle(finishedTask)).toBe( @@ -62,8 +63,34 @@ describe('TaskManagerMessageService', () => { expect(service.getErrorMessage(finishedTask)).toBe(msg); }; + describe('pool tasks', () => { + beforeEach(() => { + const metadata = { + pool_name: 'somePool' + }; + defaultMsg = `pool '${metadata.pool_name}'`; + finishedTask.metadata = metadata; + }); + + it('tests pool/create messages', () => { + finishedTask.name = 'pool/create'; + testCreate(defaultMsg); + testErrorCode(17, `Name is already used by ${defaultMsg}.`); + }); + + it('tests pool/edit messages', () => { + finishedTask.name = 'pool/edit'; + testUpdate(defaultMsg); + testErrorCode(17, `Name is already used by ${defaultMsg}.`); + }); + + it('tests pool/delete messages', () => { + finishedTask.name = 'pool/delete'; + testDelete(defaultMsg); + }); + }); + describe('rbd tasks', () => { - let defaultMsg: string; let childMsg: string; let destinationMsg: string; let snapMsg: string; diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts index 517b0865913..4f42e37be68 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts @@ -49,6 +49,8 @@ class TaskMessage { providedIn: ServicesModule }) export class TaskMessageService { + constructor() {} + defaultMessage = new TaskMessage( new TaskMessageOperation('Executing', 'execute', 'Executed'), (metadata) => { @@ -74,6 +76,13 @@ export class TaskMessageService { }; messages = { + 'pool/create': new TaskMessage(this.commonOperations.create, this.pool, (metadata) => ({ + '17': `Name is already used by ${this.pool(metadata)}.` + })), + 'pool/edit': new TaskMessage(this.commonOperations.update, this.pool, (metadata) => ({ + '17': `Name is already used by ${this.pool(metadata)}.` + })), + 'pool/delete': new TaskMessage(this.commonOperations.delete, this.pool), 'rbd/create': new TaskMessage(this.commonOperations.create, this.rbd.default, (metadata) => ({ '17': `Name is already used by ${this.rbd.default(metadata)}.` })), @@ -159,7 +168,9 @@ export class TaskMessageService { ) }; - constructor() {} + pool(metadata) { + return `pool '${metadata.pool_name}'`; + } _getTaskTitle(task: Task) { return this.messages[task.name] || this.defaultMessage;