{"size": 2779, "ext": "js", "max_stars_repo_path": "src/PullAll/PullAll.tests.js", "max_stars_repo_name": "thecodeduck/LBD_lodash", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "src/PullAll/PullAll.tests.js", "max_issues_repo_name": "thecodeduck/LBD_lodash", "max_issues_repo_issues_event_min_datetime": "2018-11-18T16:34:57.000Z", "max_issues_repo_issues_event_max_datetime": "2019-04-02T16:07:25.000Z", "max_forks_repo_path": "src/PullAll/PullAll.tests.js", "max_forks_repo_name": "thecodeduck/LBD_lodash", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": 13, "max_forks_count": null, "avg_line_length": 33.8902439024, "max_line_length": 63, "alphanum_fraction": 0.5937387549}
/* eslint-env mocha */
const PullAll = require('./PullAll.js');
const chai = require('chai');
const _ = require('lodash');

describe('PullAll is equal to _.pullAll', () => {
	it('PullAll is a function', () => {
		chai.assert.isFunction(PullAll, 'PullAll is not a function');
	});
	it('expected input', () => {
		var input = [ [ 0, 1, 2, 3, [ 4 ], 4 ], [ 4, 3 ] ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('expected input with no value', () => {
		var input = [ [ 0, 1, 2, 3, [ 4 ], 4 ] ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('undefined', () => {
		var input = undefined;
		var output = _.pullAll(input);
		chai.assert.deepEqual(PullAll(input), output, 'whoops');
	});
	it('[ undefined ]', () => {
		var input = [ undefined ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(inputCopy);
		chai.assert.deepEqual(PullAll(input), output, 'whoops');
	});
	it('[ [ undefined ], [ undefined ] ]', () => {
		var input = [ [ undefined ], [ undefined ] ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('[ array, array ]', () => {
		var input = [ [ 1, 2, 3 ], [ 5, 6 ] ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('[ array, integer ]', () => {
		var input = [ [ 1, 2, 3 ], 3 ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('[ object, array ]', () => {
		var input = [ { 1: 'a', 2: { 3: 'c' } }, [ 2, 1 ] ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('string', () => {
		var input = 'string';
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(inputCopy);
		chai.assert.deepEqual(PullAll(input), output, 'whoops');
	});
	it('[ string, integer ]', () => {
		var input = [ 'string', 3 ];
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(...inputCopy);
		chai.assert.deepEqual(PullAll(...input), output, 'whoops');
	});
	it('integer', () => {
		var input = 2;
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(inputCopy);
		chai.assert.deepEqual(PullAll(input), output, 'whoops');
	});
	it('object', () => {
		var input = { 0: 1, 1: 2, 2: 3, 3: 4, 4: 5 };
		var inputCopy = _.cloneDeep(input);
		var output = _.pullAll(inputCopy);
		chai.assert.deepEqual(PullAll(input), output, 'whoops');
	});
});
