Skip to content

Commit

Permalink
[refactor] Utils: simplify renderedDive
Browse files Browse the repository at this point in the history
  • Loading branch information
ljharb committed Dec 13, 2018
1 parent 7a08723 commit eb745b7
Showing 1 changed file with 9 additions and 31 deletions.
40 changes: 9 additions & 31 deletions packages/enzyme/src/Utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -357,38 +357,16 @@ export function isEmptyValue(renderedValue) {
}

export function renderedDive(nodes) {
let isEmptyRender = true;

function dive(renderedNodes) {
const isList = Array.isArray(renderedNodes) && renderedNodes.length > 0;
if (isList) {
renderedNodes.some((n) => {
if (n) {
if (has(n, 'rendered')) {
dive(n.rendered);
} else if (!isEmptyValue(n.rendered)) {
isEmptyRender = false;
}
} else if (!isEmptyValue(n)) {
isEmptyRender = false;
}
if (isEmptyValue(nodes)) {
return true;
}

return !isEmptyRender;
});
} else if (!isEmptyValue(renderedNodes)) {
if (has(renderedNodes, 'rendered')) {
dive(renderedNodes.rendered);
} else if (has(renderedNodes, 'rendered') && !isEmptyValue(renderedNodes.rendered)) {
isEmptyRender = false;
} else if (!has(renderedNodes, 'rendered') && !isEmptyValue(renderedNodes)) {
isEmptyRender = false;
} else {
dive(renderedNodes.rendered);
}
return [].concat(nodes).every((n) => {
if (n) {
const { rendered } = n;
return isEmptyValue(rendered) || renderedDive(rendered);
}

return isEmptyRender;
}

return dive(nodes);
return isEmptyValue(n);
});
}

0 comments on commit eb745b7

Please sign in to comment.