Commit 700ae637 authored by Filipa Lacerda's avatar Filipa Lacerda

Moves utility function into CE

parent 31353188
...@@ -80,3 +80,22 @@ export function numberToHumanSize(size) { ...@@ -80,3 +80,22 @@ export function numberToHumanSize(size) {
} }
return `${bytesToGiB(size).toFixed(2)} GiB`; return `${bytesToGiB(size).toFixed(2)} GiB`;
} }
/**
* A simple method that returns the value of a + b
* It seems unessesary, but when combined with a reducer it
* adds up all the values in an array.
*
* e.g. `[1, 2, 3, 4, 5].reduce(sum) // => 15`
*
* @param {Float} a
* @param {Float} b
* @example
* // return 15
* [1, 2, 3, 4, 5].reduce(sum);
*
* // returns 6
* Object.values([{a: 1, b: 2, c: 3].reduce(sum);
* @returns {Float} The summed value
*/
export const sum = (a = 0, b = 0) => a + b;
---
title: Moves EE util into the CE file
merge_request: 25680
author:
type: other
...@@ -4,6 +4,7 @@ import { ...@@ -4,6 +4,7 @@ import {
bytesToMiB, bytesToMiB,
bytesToGiB, bytesToGiB,
numberToHumanSize, numberToHumanSize,
sum,
} from '~/lib/utils/number_utils'; } from '~/lib/utils/number_utils';
describe('Number Utils', () => { describe('Number Utils', () => {
...@@ -87,4 +88,14 @@ describe('Number Utils', () => { ...@@ -87,4 +88,14 @@ describe('Number Utils', () => {
expect(numberToHumanSize(10737418240)).toEqual('10.00 GiB'); expect(numberToHumanSize(10737418240)).toEqual('10.00 GiB');
}); });
}); });
describe('sum', () => {
it('should add up two values', () => {
expect(sum(1, 2)).toEqual(3);
});
it('should add up all the values in an array when passed to a reducer', () => {
expect([1, 2, 3, 4, 5].reduce(sum)).toEqual(15);
});
});
}); });
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment