Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- var app = function() {
- var flatten = function(arr) {
- return arr.reduce(function(flat, toFlatten) {
- return flat.concat(Array.isArray(toFlatten) ? flatten(toFlatten) : toFlatten);
- }, []);
- };
- var testsuite = function(suitename, testData) {
- var results = {
- total: testData.length,
- passed: 0
- };
- testData.forEach(function(pair) {
- var result = flatten(pair.input);
- if (result.toString() === pair.expected.toString()) {
- results.passed++;
- }
- });
- console.log('Suite: ' + suitename + ', Total: ' + results.total + ', Passed: ' + results.passed);
- };
- var testData = [{
- input: [
- [1, 2, 3],
- [4, 5]
- ],
- expected: [1, 2, 3, 4, 5]
- }, {
- input: [
- [1, 2, [3]], 4
- ],
- expected: [1, 2, 3, 4]
- }, {
- input: [
- [1],
- [2, 3, [4, [5, 6], 7, 8]],
- [9]
- ],
- expected: [1, 2, 3, 4, 5, 6, 7, 8, 9]
- }];
- testsuite('Test suite', testData);
- }();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement