mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
test(accumulate): add test suite for accumulate function (#15159)
* refactor(typo): remove typo 'be' * test(accumulate): add test suite for accumulate function
This commit is contained in:
committed by
Christoph Nakazawa
parent
a187e9b5e4
commit
d61da93878
@@ -0,0 +1,49 @@
|
||||
/**
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*
|
||||
* @emails react-core
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
let accumulate;
|
||||
|
||||
describe('accumulate', () => {
|
||||
beforeEach(() => {
|
||||
accumulate = require('events/accumulate').default;
|
||||
});
|
||||
|
||||
it('throws if the second item is null', () => {
|
||||
expect(function() {
|
||||
accumulate([], null);
|
||||
}).toThrowError(
|
||||
'accumulate(...): Accumulated items must not be null or undefined.',
|
||||
);
|
||||
});
|
||||
|
||||
it('return second item if first item is null', () => {
|
||||
const a = [];
|
||||
expect(accumulate(null, a)).toBe(a);
|
||||
});
|
||||
|
||||
it('return concatenation of items if first item is an array', () => {
|
||||
const a = ['hello'];
|
||||
const b = 'world';
|
||||
expect(accumulate(a, b)).toEqual(['hello', 'world']);
|
||||
});
|
||||
|
||||
it('return concatenation of items if second item is an array', () => {
|
||||
const a = 'hello';
|
||||
const b = ['world'];
|
||||
expect(accumulate(a, b)).toEqual(['hello', 'world']);
|
||||
});
|
||||
|
||||
it('return an array containing both items if neither item is an array', () => {
|
||||
const a = 'hello';
|
||||
const b = 'world';
|
||||
expect(accumulate(a, b)).toEqual(['hello', 'world']);
|
||||
});
|
||||
});
|
||||
@@ -22,7 +22,7 @@ function accumulate<T>(
|
||||
): T | Array<T> {
|
||||
invariant(
|
||||
next != null,
|
||||
'accumulate(...): Accumulated items must be not be null or undefined.',
|
||||
'accumulate(...): Accumulated items must not be null or undefined.',
|
||||
);
|
||||
|
||||
if (current == null) {
|
||||
|
||||
Reference in New Issue
Block a user