You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
836 B
TypeScript
25 lines
836 B
TypeScript
1 year ago
|
import { RenderResult } from '@testing-library/react';
|
||
|
import * as prettier from 'prettier';
|
||
|
import { enableLogRedirect } from './stubbing';
|
||
|
|
||
|
const printHTMLElement = async (element: HTMLElement) => {
|
||
|
if (!window.log || !enableLogRedirect) {
|
||
|
throw Error('window.log is not defined. Have you turned on enableLogRedirect?');
|
||
|
}
|
||
|
|
||
|
return window.log.debug(
|
||
|
`\nRender Result:\n${await prettier.format(element.outerHTML, { parser: 'html' })}\n`
|
||
|
);
|
||
|
};
|
||
|
const printRenderResult = async (result: RenderResult) => {
|
||
|
if (!window.log || !enableLogRedirect) {
|
||
|
throw Error('window.log is not defined. Have you turned on enableLogRedirect?');
|
||
|
}
|
||
|
|
||
|
return window.log.debug(
|
||
|
`\nHTML Element:\n${await prettier.format(result.baseElement.outerHTML, { parser: 'html' })}\n`
|
||
|
);
|
||
|
};
|
||
|
|
||
|
export { printHTMLElement, printRenderResult };
|