@testing-library/react-native
Version:
Simple and complete React Native testing utilities that encourage good testing practices.
31 lines (30 loc) • 1.05 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.validateStringsRenderedWithinText = void 0;
const validateStringsRenderedWithinText = rendererJSON => {
if (!rendererJSON) return;
if (Array.isArray(rendererJSON)) {
rendererJSON.forEach(validateStringsRenderedWithinTextForNode);
return;
}
return validateStringsRenderedWithinTextForNode(rendererJSON);
};
exports.validateStringsRenderedWithinText = validateStringsRenderedWithinText;
const validateStringsRenderedWithinTextForNode = node => {
if (typeof node === 'string') {
return;
}
if (node.type !== 'Text') {
node.children?.forEach(child => {
if (typeof child === 'string') {
throw new Error(`Invariant Violation: Text strings must be rendered within a <Text> component. Detected attempt to render "${child}" string within a <${node.type}> component.`);
}
});
}
if (node.children) {
node.children.forEach(validateStringsRenderedWithinTextForNode);
}
};
//# sourceMappingURL=string-validation.js.map
;