Browse Source

move getAverage to util

Aakansha Doshi 4 years ago
parent
commit
85b8050cc5
2 changed files with 8 additions and 5 deletions
  1. 3 5
      src/networkStats.ts
  2. 5 0
      src/utils.ts

+ 3 - 5
src/networkStats.ts

@@ -1,3 +1,5 @@
+import { getAverage } from "./utils";
+
 const IMAGE_URL = `${process.env.REACT_APP_SOCKET_SERVER_URL}/test256.png`;
 const IMAGE_SIZE_BITS = 141978 * 8;
 const AVERAGE_MAX = 4;
@@ -11,10 +13,6 @@ const pushSpeed = (speed: number): void => {
   }
 };
 
-const getAverageSpeed = (): number => {
-  return speedHistory.reduce((a, b) => a + b) / speedHistory.length;
-};
-
 const getSpeedBits = (
   imageSize: number,
   startTime: number,
@@ -35,7 +33,7 @@ const processImage = (): Promise<number> => {
       endTime = new Date().getTime();
       const speed = getSpeedBits(IMAGE_SIZE_BITS, startTime, endTime);
       pushSpeed(speed);
-      resolve(getAverageSpeed());
+      resolve(getAverage(speedHistory));
     };
 
     image.onerror = () => {

+ 5 - 0
src/utils.ts

@@ -386,6 +386,11 @@ export const formatTime = (mseconds: number): string => {
     ? `${mseconds} ms`
     : `${(mseconds / 1000).toFixed(1)} s`;
 };
+
+export const getAverage = (arr: Array<number>): number => {
+  return arr.reduce((sum, currentVal) => sum + currentVal) / arr.length;
+};
+
 // Adapted from https://github.com/Modernizr/Modernizr/blob/master/feature-detects/emoji.js
 export const supportsEmoji = () => {
   const canvas = document.createElement("canvas");