summaryrefslogtreecommitdiff
path: root/spec/frontend/analytics/instance_statistics/utils_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/analytics/instance_statistics/utils_spec.js')
-rw-r--r--spec/frontend/analytics/instance_statistics/utils_spec.js81
1 files changed, 0 insertions, 81 deletions
diff --git a/spec/frontend/analytics/instance_statistics/utils_spec.js b/spec/frontend/analytics/instance_statistics/utils_spec.js
deleted file mode 100644
index 3fd89c7f740..00000000000
--- a/spec/frontend/analytics/instance_statistics/utils_spec.js
+++ /dev/null
@@ -1,81 +0,0 @@
-import {
- getAverageByMonth,
- getEarliestDate,
- generateDataKeys,
-} from '~/analytics/instance_statistics/utils';
-import {
- mockCountsData1,
- mockCountsData2,
- countsMonthlyChartData1,
- countsMonthlyChartData2,
-} from './mock_data';
-
-describe('getAverageByMonth', () => {
- it('collects data into average by months', () => {
- expect(getAverageByMonth(mockCountsData1)).toStrictEqual(countsMonthlyChartData1);
- expect(getAverageByMonth(mockCountsData2)).toStrictEqual(countsMonthlyChartData2);
- });
-
- it('it transforms a data point to the first of the month', () => {
- const item = mockCountsData1[0];
- const firstOfTheMonth = item.recordedAt.replace(/-[0-9]{2}$/, '-01');
- expect(getAverageByMonth([item])).toStrictEqual([[firstOfTheMonth, item.count]]);
- });
-
- it('it uses sane defaults', () => {
- expect(getAverageByMonth()).toStrictEqual([]);
- });
-
- it('it errors when passing null', () => {
- expect(() => {
- getAverageByMonth(null);
- }).toThrow();
- });
-
- describe('when shouldRound = true', () => {
- const options = { shouldRound: true };
-
- it('rounds the averages', () => {
- const roundedData1 = countsMonthlyChartData1.map(([date, avg]) => [date, Math.round(avg)]);
- const roundedData2 = countsMonthlyChartData2.map(([date, avg]) => [date, Math.round(avg)]);
- expect(getAverageByMonth(mockCountsData1, options)).toStrictEqual(roundedData1);
- expect(getAverageByMonth(mockCountsData2, options)).toStrictEqual(roundedData2);
- });
- });
-});
-
-describe('getEarliestDate', () => {
- it('returns the date of the final item in the array', () => {
- expect(getEarliestDate(mockCountsData1)).toBe('2020-06-12');
- });
-
- it('returns null for an empty array', () => {
- expect(getEarliestDate([])).toBeNull();
- });
-
- it("returns null if the array has data but `recordedAt` isn't defined", () => {
- expect(
- getEarliestDate(mockCountsData1.map(({ recordedAt: date, ...rest }) => ({ date, ...rest }))),
- ).toBeNull();
- });
-});
-
-describe('generateDataKeys', () => {
- const fakeQueries = [
- { identifier: 'from' },
- { identifier: 'first' },
- { identifier: 'to' },
- { identifier: 'last' },
- ];
-
- const defaultValue = 'default value';
- const res = generateDataKeys(fakeQueries, defaultValue);
-
- it('extracts each query identifier and sets them as object keys', () => {
- expect(Object.keys(res)).toEqual(['from', 'first', 'to', 'last']);
- });
-
- it('sets every value to the `defaultValue` provided', () => {
- expect(Object.values(res)).toEqual(Array(fakeQueries.length).fill(defaultValue));
- });
-});