Added allEqual + tests
This commit is contained in:
14
snippets/allEqual.md
Normal file
14
snippets/allEqual.md
Normal file
@ -0,0 +1,14 @@
|
||||
### allEqual
|
||||
|
||||
Check if all elements are equal
|
||||
|
||||
Use `Array.every()` to check if all the elements of the array are the same as the first one.
|
||||
|
||||
```js
|
||||
const allEqual = arr => arr.every(val => val === arr[0]);
|
||||
```
|
||||
|
||||
```js
|
||||
allEqual([1, 2, 3, 4, 5, 6]); // false
|
||||
allEqual([1, 1, 1, 1]); // true
|
||||
```
|
||||
2
test/allEqual/allEqual.js
Normal file
2
test/allEqual/allEqual.js
Normal file
@ -0,0 +1,2 @@
|
||||
const allEqual = arr => arr.every(val => val === arr[0]);
|
||||
module.exports = allEqual;
|
||||
38
test/allEqual/allEqual.test.js
Normal file
38
test/allEqual/allEqual.test.js
Normal file
@ -0,0 +1,38 @@
|
||||
const expect = require('expect');
|
||||
const allEqual = require('./allEqual.js');
|
||||
|
||||
test('allEqual is a Function', () => {
|
||||
expect(allEqual).toBeInstanceOf(Function);
|
||||
});
|
||||
|
||||
test('Truthy numbers', () => {
|
||||
expect(allEqual([4, 4, 4])).toBeTruthy();
|
||||
});
|
||||
|
||||
test('Falsy numbers', () => {
|
||||
expect(allEqual([4, 3.999, 4])).toBeFalsy();
|
||||
});
|
||||
|
||||
test('Truthy strings', () => {
|
||||
expect(allEqual(['lorem', 'lorem', 'lorem'])).toBeTruthy();
|
||||
});
|
||||
|
||||
test('Falsy numbers', () => {
|
||||
expect(allEqual(['lorem', 'ipsum', 'dolore'])).toBeFalsy();
|
||||
});
|
||||
|
||||
test('Truthy trues', () => {
|
||||
expect(allEqual([true, true, true])).toBeTruthy();
|
||||
});
|
||||
|
||||
test('Truthy falses', () => {
|
||||
expect(allEqual([false, false, false])).toBeTruthy();
|
||||
});
|
||||
|
||||
test('Falsy trues', () => {
|
||||
expect(allEqual([true, true, false])).toBeFalsy();
|
||||
});
|
||||
|
||||
test('Falsy falses', () => {
|
||||
expect(allEqual([false, false, true])).toBeFalsy();
|
||||
});
|
||||
Reference in New Issue
Block a user