/
githubmirror
/
preact
Обзор
Документация
Войти
/
githubmirror
/
preact
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
compat/test/browser/createElement.test.jsx
46 строк
1 KB
Ryan Christian
test: Switch tests to use `.jsx` file extension (#4925)
29 сен 2025, 16:58
Не верифицирован
29 сен 2025, 16:58
8e3e4ce
Код
Авторство
О чём код?
import { createElement, render } from 'preact/compat'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { getSymbol } from './testUtils'; describe('compat createElement()', () => { /** @type {HTMLDivElement} */ let scratch; beforeEach(() => { scratch = setupScratch(); }); afterEach(() => { teardown(scratch); }); it('should normalize vnodes', () => { let vnode = ( <div a="b"> <a>t</a> </div> ); const $$typeof = getSymbol('react.element', 0xeac7); expect(vnode).to.have.property('$$typeof', $$typeof); expect(vnode).to.have.property('type', 'div'); expect(vnode).to.have.property('props').that.is.an('object'); expect(vnode.props).to.have.property('children'); expect(vnode.props.children).to.have.property('$$typeof', $$typeof); expect(vnode.props.children).to.have.property('type', 'a'); expect(vnode.props.children).to.have.property('props').that.is.an('object'); expect(vnode.props.children.props).to.eql({ children: 't' }); }); it('should not normalize text nodes', () => { // @ts-expect-error String.prototype.capFLetter = function () { return this.charAt(0).toUpperCase() + this.slice(1); }; let vnode = <div>hi buddy</div>; render(vnode, scratch); expect(scratch.innerHTML).to.equal('<div>hi buddy</div>'); }); });