]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/formatter.service.spec.ts
update ceph source to reef 18.2.0
[ceph.git] / ceph / src / pybind / mgr / dashboard / frontend / src / app / shared / services / formatter.service.spec.ts
index 359c6028a593874996351c274d980f7b18b276f2..c5f13d9eb6fcc917456e1d85c082ebd3b05e0874 100644 (file)
@@ -55,6 +55,28 @@ describe('FormatterService', () => {
     });
   });
 
+  describe('formatNumberFromTo', () => {
+    const formats = ['B', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'];
+    const formats2 = ['ns', 'μs', 'ms', 's'];
+
+    it('should test some values and data units', () => {
+      expect(service.formatNumberFromTo('0.1', 'B', 'TiB', 1024, formats)).toBe('0 TiB');
+      expect(service.formatNumberFromTo('1024', 'B', 'KiB', 1024, formats)).toBe('1 KiB');
+      expect(service.formatNumberFromTo(1000, 'mib', 'gib', 1024, formats, 3)).toBe('0.977 gib');
+      expect(service.formatNumberFromTo(1024, 'GiB', 'MiB', 1024, formats)).toBe('1048576 MiB');
+      expect(
+        service.formatNumberFromTo(23.45678 * Math.pow(1024, 3), 'B', 'GiB', 1024, formats)
+      ).toBe('23.5 GiB');
+      expect(
+        service.formatNumberFromTo(23.45678 * Math.pow(1024, 3), 'B', 'GiB', 1024, formats, 2)
+      ).toBe('23.46 GiB');
+
+      expect(service.formatNumberFromTo('128', 'ns', 'ms', 1000, formats2)).toBe('0 ms');
+      expect(service.formatNumberFromTo(128, 'ns', 'ms', 1000, formats2, 4)).toBe('0.0001 ms');
+      expect(service.formatNumberFromTo(20, 's', 'ms', 1000, formats2, 4)).toBe('20000 ms');
+    });
+  });
+
   describe('toBytes', () => {
     it('should not convert wrong values', () => {
       expect(service.toBytes('10xyz')).toBeNull();