]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: Readd pool notifications
authorStephan Müller <smueller@suse.com>
Mon, 27 Aug 2018 14:45:22 +0000 (16:45 +0200)
committerStephan Müller <smueller@suse.com>
Tue, 9 Oct 2018 13:56:35 +0000 (15:56 +0200)
As of the merge of cleaner notifications, the notification component was
refactored and move this caused a loss of previously added
notifications.

Fixes: https://tracker.ceph.com/issues/36355
Signed-off-by: Stephan Müller <smueller@suse.com>
src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-manager-message.service.spec.ts [deleted file]
src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-manager-message.service.ts [deleted file]
src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts

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 (file)
index e69de29..0000000
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 (file)
index e69de29..0000000
index af4fb6681ff9b1528731683c2dcd16770ca61175..f2615248eecf2e2d69fc57787c9ab6c3947844bd 100644 (file)
@@ -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;
index 517b0865913fcb640c61e8e283dc18eb20a8eea5..4f42e37be6836af1df45438d24e3200eb652fcf5 100644 (file)
@@ -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;