๐Ÿ“ฆ ljharb / repo-report

๐Ÿ“„ listMetrics.js ยท 32 lines
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32'use strict';

const test = require('tape');

const getMetrics = require('../../src/metrics');
const {
	listMetrics,
} = require('../../src/utils');

const metrics = getMetrics(['Repository', 'Access', 'DefBranch', 'isPrivate']);

test('listMetrics', (t) => {
	t.test('returns array of metric names', (st) => {
		const result = listMetrics(metrics);
		const expectedResults = ['Repository', 'Access', 'DefBranch', 'isPrivate'];
		st.deepEqual(result, expectedResults);

		st.end();
	});

	t.test('returns correct data structure', (st) => {
		const result = listMetrics(metrics);
		st.ok(Array.isArray(result), 'should return an array');
		st.equal(result.length, 4, 'should return correct number of items');
		st.ok(result.every((name) => typeof name === 'string'), 'all items should be strings');

		st.end();
	});

	t.end();
});