Files
30-seconds-of-code/test/shuffle.test.js
2018-10-19 20:18:00 +03:00

20 lines
566 B
JavaScript

const expect = require('expect');
const {shuffle} = require('./_30s.js');
test('shuffle is a Function', () => {
expect(shuffle).toBeInstanceOf(Function);
});
const arr = [1, 2, 3, 4, 5, 6];
test('Shuffles the array', () => {
expect(shuffle(arr)).not.toEqual(arr);
});
test('New array contains all original elements', () => {
expect(shuffle(arr).every(x => arr.includes(x))).toBeTruthy();
});
test('Works for empty arrays', () => {
expect(shuffle([])).toEqual([]);
});
test('Works for single-element arrays', () => {
expect(shuffle([1])).toEqual([1]);
});