]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/cephfs/cephfs-chart/cephfs-chart.component.spec.ts
import ceph 14.2.5
[ceph.git] / ceph / src / pybind / mgr / dashboard / frontend / src / app / ceph / cephfs / cephfs-chart / cephfs-chart.component.spec.ts
index 8a173162b87fcc70573490c54d74721fdcccee39..97fdcef4eeafea17693a2c7c58a455b09150e294 100644 (file)
@@ -9,6 +9,8 @@ describe('CephfsChartComponent', () => {
   let component: CephfsChartComponent;
   let fixture: ComponentFixture<CephfsChartComponent>;
 
+  const counter = [[0, 15], [5, 15], [10, 25], [15, 50]];
+
   configureTestBed({
     imports: [ChartsModule],
     declarations: [CephfsChartComponent]
@@ -17,10 +19,58 @@ describe('CephfsChartComponent', () => {
   beforeEach(() => {
     fixture = TestBed.createComponent(CephfsChartComponent);
     component = fixture.componentInstance;
+    component.mdsCounter = {
+      'mds_server.handle_client_request': counter,
+      'mds_mem.ino': counter,
+      name: 'a'
+    };
     fixture.detectChanges();
   });
 
   it('should create', () => {
     expect(component).toBeTruthy();
   });
+
+  it('completed the chart', () => {
+    const lhs = component.chart.datasets[0].data;
+    expect(lhs.length).toBe(3);
+    expect(lhs).toEqual([
+      {
+        x: 5000,
+        y: 15
+      },
+      {
+        x: 10000,
+        y: 25
+      },
+      {
+        x: 15000,
+        y: 50
+      }
+    ]);
+
+    const rhs = component.chart.datasets[1].data;
+    expect(rhs.length).toBe(3);
+    expect(rhs).toEqual([
+      {
+        x: 5000,
+        y: 0
+      },
+      {
+        x: 10000,
+        y: 2
+      },
+      {
+        x: 15000,
+        y: 5
+      }
+    ]);
+  });
+
+  it('should force angular to update the chart datasets array in order to update the graph', () => {
+    const oldDatasets = component.chart.datasets;
+    component.ngOnChanges();
+    expect(oldDatasets).toEqual(component.chart.datasets);
+    expect(oldDatasets).not.toBe(component.chart.datasets);
+  });
 });