diff --git a/compat/test/browser/Children.test.js b/compat/test/browser/Children.test.jsx similarity index 100% rename from compat/test/browser/Children.test.js rename to compat/test/browser/Children.test.jsx diff --git a/compat/test/browser/PureComponent.test.js b/compat/test/browser/PureComponent.test.jsx similarity index 100% rename from compat/test/browser/PureComponent.test.js rename to compat/test/browser/PureComponent.test.jsx diff --git a/compat/test/browser/cloneElement.test.js b/compat/test/browser/cloneElement.test.jsx similarity index 97% rename from compat/test/browser/cloneElement.test.js rename to compat/test/browser/cloneElement.test.jsx index 924c968c62..8e5c920ab8 100644 --- a/compat/test/browser/cloneElement.test.js +++ b/compat/test/browser/cloneElement.test.jsx @@ -1,5 +1,5 @@ import { createElement as preactH } from 'preact'; -import React, { createElement, render, cloneElement } from 'preact/compat'; +import { createElement, render, cloneElement } from 'preact/compat'; import { setupScratch, teardown } from '../../../test/_util/helpers'; describe('compat cloneElement', () => { diff --git a/compat/test/browser/compat.options.test.js b/compat/test/browser/compat.options.test.jsx similarity index 99% rename from compat/test/browser/compat.options.test.js rename to compat/test/browser/compat.options.test.jsx index 3b3ed87ed8..067805442b 100644 --- a/compat/test/browser/compat.options.test.js +++ b/compat/test/browser/compat.options.test.jsx @@ -1,5 +1,5 @@ import { vnodeSpy, eventSpy } from '../../../test/_util/optionSpies'; -import React, { +import { createElement, render, Component, diff --git a/compat/test/browser/component.test.js b/compat/test/browser/component.test.jsx similarity index 100% rename from compat/test/browser/component.test.js rename to compat/test/browser/component.test.jsx diff --git a/compat/test/browser/componentDidCatch.test.js b/compat/test/browser/componentDidCatch.test.jsx similarity index 93% rename from compat/test/browser/componentDidCatch.test.js rename to compat/test/browser/componentDidCatch.test.jsx index abfeccae19..075ce30786 100644 --- a/compat/test/browser/componentDidCatch.test.js +++ b/compat/test/browser/componentDidCatch.test.jsx @@ -1,4 +1,4 @@ -import React, { render, Component } from 'preact/compat'; +import { createElement, render, Component } from 'preact/compat'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { act } from 'preact/test-utils'; diff --git a/compat/test/browser/context.test.js b/compat/test/browser/context.test.jsx similarity index 96% rename from compat/test/browser/context.test.js rename to compat/test/browser/context.test.jsx index 35046c88e5..00bf308285 100644 --- a/compat/test/browser/context.test.js +++ b/compat/test/browser/context.test.jsx @@ -1,8 +1,9 @@ import { setupRerender } from 'preact/test-utils'; import { setupScratch, teardown } from '../../../test/_util/helpers'; -import React, { +import { render, createElement, + Fragment, createContext, Component, useState, @@ -45,7 +46,7 @@ describe('components', () => { } /** - * @extends {React.Component<{children: any}, {location: string}>} + * @extends {Component<{children: any}, {location: string}>} */ class Router extends Component { constructor(props) { @@ -70,7 +71,7 @@ describe('components', () => { } /** - * @extends {React.Component<{children: any}>} + * @extends {Component<{children: any}>} */ class Route extends Component { render() { diff --git a/compat/test/browser/createElement.test.js b/compat/test/browser/createElement.test.jsx similarity index 95% rename from compat/test/browser/createElement.test.js rename to compat/test/browser/createElement.test.jsx index 97e948635c..4eeb1f5156 100644 --- a/compat/test/browser/createElement.test.js +++ b/compat/test/browser/createElement.test.jsx @@ -1,4 +1,4 @@ -import React, { createElement, render } from 'preact/compat'; +import { createElement, render } from 'preact/compat'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { getSymbol } from './testUtils'; diff --git a/compat/test/browser/createFactory.test.js b/compat/test/browser/createFactory.test.jsx similarity index 89% rename from compat/test/browser/createFactory.test.js rename to compat/test/browser/createFactory.test.jsx index 8d4f929465..6769fa7c91 100644 --- a/compat/test/browser/createFactory.test.js +++ b/compat/test/browser/createFactory.test.jsx @@ -1,4 +1,4 @@ -import React, { render, createElement, createFactory } from 'preact/compat'; +import { render, createElement, createFactory } from 'preact/compat'; import { setupScratch, teardown } from '../../../test/_util/helpers'; describe('createFactory', () => { diff --git a/compat/test/browser/events.test.js b/compat/test/browser/events.test.jsx similarity index 99% rename from compat/test/browser/events.test.js rename to compat/test/browser/events.test.jsx index 9ec78b3757..92fa1166b6 100644 --- a/compat/test/browser/events.test.js +++ b/compat/test/browser/events.test.jsx @@ -6,7 +6,7 @@ import { supportsPassiveEvents } from '../../../test/_util/helpers'; -import React, { createElement } from 'preact/compat'; +import { createElement } from 'preact/compat'; import { vi } from 'vitest'; describe('preact/compat events', () => { diff --git a/compat/test/browser/findDOMNode.test.js b/compat/test/browser/findDOMNode.test.jsx similarity index 100% rename from compat/test/browser/findDOMNode.test.js rename to compat/test/browser/findDOMNode.test.jsx diff --git a/compat/test/browser/forwardRef.test.js b/compat/test/browser/forwardRef.test.jsx similarity index 99% rename from compat/test/browser/forwardRef.test.js rename to compat/test/browser/forwardRef.test.jsx index 259eb7f989..0a3578ca94 100644 --- a/compat/test/browser/forwardRef.test.js +++ b/compat/test/browser/forwardRef.test.jsx @@ -1,4 +1,4 @@ -import React, { +import { createElement, render, createRef, diff --git a/compat/test/browser/hooks.test.js b/compat/test/browser/hooks.test.jsx similarity index 99% rename from compat/test/browser/hooks.test.js rename to compat/test/browser/hooks.test.jsx index d6d08adeeb..f984a7b382 100644 --- a/compat/test/browser/hooks.test.js +++ b/compat/test/browser/hooks.test.jsx @@ -1,5 +1,5 @@ import { createContext } from 'preact'; -import React, { +import { createElement, useDeferredValue, useInsertionEffect, diff --git a/compat/test/browser/hydrate.test.js b/compat/test/browser/hydrate.test.jsx similarity index 93% rename from compat/test/browser/hydrate.test.js rename to compat/test/browser/hydrate.test.jsx index a11d3d38b4..25706d0870 100644 --- a/compat/test/browser/hydrate.test.js +++ b/compat/test/browser/hydrate.test.jsx @@ -1,4 +1,4 @@ -import React, { hydrate } from 'preact/compat'; +import { createElement, hydrate } from 'preact/compat'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { vi } from 'vitest'; diff --git a/compat/test/browser/isMemo.test.js b/compat/test/browser/isMemo.test.jsx similarity index 100% rename from compat/test/browser/isMemo.test.js rename to compat/test/browser/isMemo.test.jsx diff --git a/compat/test/browser/memo.test.js b/compat/test/browser/memo.test.jsx similarity index 100% rename from compat/test/browser/memo.test.js rename to compat/test/browser/memo.test.jsx diff --git a/compat/test/browser/portals.test.js b/compat/test/browser/portals.test.jsx similarity index 100% rename from compat/test/browser/portals.test.js rename to compat/test/browser/portals.test.jsx diff --git a/compat/test/browser/render.test.js b/compat/test/browser/render.test.jsx similarity index 100% rename from compat/test/browser/render.test.js rename to compat/test/browser/render.test.jsx diff --git a/compat/test/browser/select.test.js b/compat/test/browser/select.test.jsx similarity index 92% rename from compat/test/browser/select.test.js rename to compat/test/browser/select.test.jsx index bf8c9b97ee..318eadb9b6 100644 --- a/compat/test/browser/select.test.js +++ b/compat/test/browser/select.test.jsx @@ -1,5 +1,5 @@ import { setupScratch, teardown } from '../../../test/_util/helpers'; -import React, { createElement, render } from 'preact/compat'; +import { createElement, render } from 'preact/compat'; describe('Select', () => { let scratch; diff --git a/compat/test/browser/suspense-hydration.test.js b/compat/test/browser/suspense-hydration.test.jsx similarity index 100% rename from compat/test/browser/suspense-hydration.test.js rename to compat/test/browser/suspense-hydration.test.jsx diff --git a/compat/test/browser/suspense.test.js b/compat/test/browser/suspense.test.jsx similarity index 100% rename from compat/test/browser/suspense.test.js rename to compat/test/browser/suspense.test.jsx diff --git a/compat/test/browser/svg.test.js b/compat/test/browser/svg.test.jsx similarity index 100% rename from compat/test/browser/svg.test.js rename to compat/test/browser/svg.test.jsx diff --git a/compat/test/browser/textarea.test.js b/compat/test/browser/textarea.test.jsx similarity index 96% rename from compat/test/browser/textarea.test.js rename to compat/test/browser/textarea.test.jsx index d7306a0a40..8a7df4b31b 100644 --- a/compat/test/browser/textarea.test.js +++ b/compat/test/browser/textarea.test.jsx @@ -1,4 +1,4 @@ -import React, { render, hydrate, useState } from 'preact/compat'; +import React, { createElement, render, hydrate, useState } from 'preact/compat'; import ReactDOMServer from 'preact/compat/server'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { act } from 'preact/test-utils'; diff --git a/compat/test/browser/unmountComponentAtNode.test.js b/compat/test/browser/unmountComponentAtNode.test.jsx similarity index 100% rename from compat/test/browser/unmountComponentAtNode.test.js rename to compat/test/browser/unmountComponentAtNode.test.jsx diff --git a/compat/test/browser/useSyncExternalStore.test.js b/compat/test/browser/useSyncExternalStore.test.jsx similarity index 100% rename from compat/test/browser/useSyncExternalStore.test.js rename to compat/test/browser/useSyncExternalStore.test.jsx diff --git a/debug/test/browser/component-stack-2.test.js b/debug/test/browser/component-stack-2.test.jsx similarity index 97% rename from debug/test/browser/component-stack-2.test.js rename to debug/test/browser/component-stack-2.test.jsx index 0cf88d1a9c..aa2634f7a1 100644 --- a/debug/test/browser/component-stack-2.test.js +++ b/debug/test/browser/component-stack-2.test.jsx @@ -3,8 +3,6 @@ import 'preact/debug'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - // This test is not part of component-stack.test.js to avoid it being // transpiled with '@babel/plugin-transform-react-jsx-source' enabled. diff --git a/debug/test/browser/component-stack.test.js b/debug/test/browser/component-stack.test.jsx similarity index 98% rename from debug/test/browser/component-stack.test.js rename to debug/test/browser/component-stack.test.jsx index 5486566c17..8473203362 100644 --- a/debug/test/browser/component-stack.test.js +++ b/debug/test/browser/component-stack.test.jsx @@ -3,8 +3,6 @@ import 'preact/debug'; import { vi } from 'vitest'; import { setupScratch, teardown } from '../../../test/_util/helpers'; -/** @jsx createElement */ - describe('component stack', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/debug/test/browser/debug-compat.test.js b/debug/test/browser/debug-compat.test.jsx similarity index 98% rename from debug/test/browser/debug-compat.test.js rename to debug/test/browser/debug-compat.test.jsx index 244e61f9d2..9394aa384c 100644 --- a/debug/test/browser/debug-compat.test.js +++ b/debug/test/browser/debug-compat.test.jsx @@ -10,7 +10,6 @@ import { forwardRef, createPortal } from 'preact/compat'; import { vi } from 'vitest'; const h = createElement; -/** @jsx createElement */ describe('debug compat', () => { let scratch; diff --git a/debug/test/browser/debug-hooks.test.js b/debug/test/browser/debug-hooks.test.jsx similarity index 98% rename from debug/test/browser/debug-hooks.test.js rename to debug/test/browser/debug-hooks.test.jsx index 698bc430d0..a34fc53a3e 100644 --- a/debug/test/browser/debug-hooks.test.js +++ b/debug/test/browser/debug-hooks.test.jsx @@ -5,8 +5,6 @@ import { act } from 'preact/test-utils'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('debug with hooks', () => { let scratch; let errors = []; diff --git a/debug/test/browser/debug-suspense.test.js b/debug/test/browser/debug-suspense.test.jsx similarity index 99% rename from debug/test/browser/debug-suspense.test.js rename to debug/test/browser/debug-suspense.test.jsx index 2368beb482..18c7c53e19 100644 --- a/debug/test/browser/debug-suspense.test.js +++ b/debug/test/browser/debug-suspense.test.jsx @@ -8,8 +8,6 @@ import { } from '../../../test/_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('debug with suspense', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/debug/test/browser/debug.options.test.js b/debug/test/browser/debug.options.test.jsx similarity index 99% rename from debug/test/browser/debug.options.test.js rename to debug/test/browser/debug.options.test.jsx index 6c8f9eed9f..6d5ddb8c99 100644 --- a/debug/test/browser/debug.options.test.js +++ b/debug/test/browser/debug.options.test.jsx @@ -14,8 +14,6 @@ import 'preact/debug'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('debug options', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/debug/test/browser/debug.test.js b/debug/test/browser/debug.test.jsx similarity index 99% rename from debug/test/browser/debug.test.js rename to debug/test/browser/debug.test.jsx index f70434ec93..50cfaad4e1 100644 --- a/debug/test/browser/debug.test.js +++ b/debug/test/browser/debug.test.jsx @@ -14,7 +14,6 @@ import { setupRerender } from 'preact/test-utils'; import { vi } from 'vitest'; const h = createElement; -/** @jsx createElement */ describe('debug', () => { /** @type {HTMLDivElement} */ diff --git a/debug/test/browser/serializeVNode.test.js b/debug/test/browser/serializeVNode.test.jsx similarity index 98% rename from debug/test/browser/serializeVNode.test.js rename to debug/test/browser/serializeVNode.test.jsx index f8c851527f..dd04080037 100644 --- a/debug/test/browser/serializeVNode.test.js +++ b/debug/test/browser/serializeVNode.test.jsx @@ -1,8 +1,6 @@ import { createElement, Component } from 'preact'; import { serializeVNode } from '../../src/debug'; -/** @jsx createElement */ - describe('serializeVNode', () => { it("should prefer a function component's displayName", () => { function Foo() { diff --git a/debug/test/browser/validateHookArgs.test.js b/debug/test/browser/validateHookArgs.test.jsx similarity index 98% rename from debug/test/browser/validateHookArgs.test.js rename to debug/test/browser/validateHookArgs.test.jsx index 1c1b6c9d54..a9af5ed619 100644 --- a/debug/test/browser/validateHookArgs.test.js +++ b/debug/test/browser/validateHookArgs.test.jsx @@ -12,8 +12,6 @@ import { setupScratch, teardown } from '../../../test/_util/helpers'; import 'preact/debug'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Hook argument validation', () => { /** * @param {string} name diff --git a/devtools/test/browser/addHookName.test.js b/devtools/test/browser/addHookName.test.jsx similarity index 97% rename from devtools/test/browser/addHookName.test.js rename to devtools/test/browser/addHookName.test.jsx index fee3405483..1af4a7620e 100644 --- a/devtools/test/browser/addHookName.test.js +++ b/devtools/test/browser/addHookName.test.jsx @@ -4,8 +4,6 @@ import { useState } from 'preact/hooks'; import { addHookName } from 'preact/devtools'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('addHookName', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/combinations.test.js b/hooks/test/browser/combinations.test.jsx similarity index 99% rename from hooks/test/browser/combinations.test.js rename to hooks/test/browser/combinations.test.jsx index 3bcb51e986..ed12de26df 100644 --- a/hooks/test/browser/combinations.test.js +++ b/hooks/test/browser/combinations.test.jsx @@ -13,8 +13,6 @@ import { import { scheduleEffectAssert } from '../_util/useEffectUtil'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('combinations', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/componentDidCatch.test.js b/hooks/test/browser/componentDidCatch.test.jsx similarity index 97% rename from hooks/test/browser/componentDidCatch.test.js rename to hooks/test/browser/componentDidCatch.test.jsx index bcf8f5c263..4a44f6e79c 100644 --- a/hooks/test/browser/componentDidCatch.test.js +++ b/hooks/test/browser/componentDidCatch.test.jsx @@ -3,8 +3,6 @@ import { act } from 'preact/test-utils'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { useEffect } from 'preact/hooks'; -/** @jsx createElement */ - describe('errorInfo', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/errorBoundary.test.js b/hooks/test/browser/errorBoundary.test.jsx similarity index 99% rename from hooks/test/browser/errorBoundary.test.js rename to hooks/test/browser/errorBoundary.test.jsx index 366686ec3f..76dc38e411 100644 --- a/hooks/test/browser/errorBoundary.test.js +++ b/hooks/test/browser/errorBoundary.test.jsx @@ -4,8 +4,6 @@ import { useErrorBoundary, useLayoutEffect, useState } from 'preact/hooks'; import { setupRerender } from 'preact/test-utils'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('errorBoundary', () => { /** @type {HTMLDivElement} */ let scratch, rerender; diff --git a/hooks/test/browser/hooks.options.test.js b/hooks/test/browser/hooks.options.test.jsx similarity index 99% rename from hooks/test/browser/hooks.options.test.js rename to hooks/test/browser/hooks.options.test.jsx index 56924a3644..43fc2527f2 100644 --- a/hooks/test/browser/hooks.options.test.js +++ b/hooks/test/browser/hooks.options.test.jsx @@ -22,8 +22,6 @@ import { } from 'preact/hooks'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('hook options', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useCallback.test.js b/hooks/test/browser/useCallback.test.jsx similarity index 97% rename from hooks/test/browser/useCallback.test.js rename to hooks/test/browser/useCallback.test.jsx index 151fed9af2..0782a9244d 100644 --- a/hooks/test/browser/useCallback.test.js +++ b/hooks/test/browser/useCallback.test.jsx @@ -2,8 +2,6 @@ import { createElement, render } from 'preact'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { useCallback } from 'preact/hooks'; -/** @jsx createElement */ - describe('useCallback', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useContext.test.js b/hooks/test/browser/useContext.test.jsx similarity index 99% rename from hooks/test/browser/useContext.test.js rename to hooks/test/browser/useContext.test.jsx index b1f6726c69..473b52ebcd 100644 --- a/hooks/test/browser/useContext.test.js +++ b/hooks/test/browser/useContext.test.jsx @@ -4,8 +4,6 @@ import { setupScratch, teardown } from '../../../test/_util/helpers'; import { useContext, useEffect, useState } from 'preact/hooks'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('useContext', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useDebugValue.test.js b/hooks/test/browser/useDebugValue.test.jsx similarity index 98% rename from hooks/test/browser/useDebugValue.test.js rename to hooks/test/browser/useDebugValue.test.jsx index 51e3d162b2..3d0109c352 100644 --- a/hooks/test/browser/useDebugValue.test.js +++ b/hooks/test/browser/useDebugValue.test.jsx @@ -3,8 +3,6 @@ import { setupScratch, teardown } from '../../../test/_util/helpers'; import { useDebugValue, useState } from 'preact/hooks'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('useDebugValue', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useEffect.test.js b/hooks/test/browser/useEffect.test.jsx similarity index 99% rename from hooks/test/browser/useEffect.test.js rename to hooks/test/browser/useEffect.test.jsx index f0347b08ba..726cbf6bd9 100644 --- a/hooks/test/browser/useEffect.test.js +++ b/hooks/test/browser/useEffect.test.jsx @@ -6,8 +6,6 @@ import { useEffectAssertions } from './useEffectAssertions'; import { scheduleEffectAssert } from '../_util/useEffectUtil'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('useEffect', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useEffectAssertions.js b/hooks/test/browser/useEffectAssertions.jsx similarity index 99% rename from hooks/test/browser/useEffectAssertions.js rename to hooks/test/browser/useEffectAssertions.jsx index 95c87bc2bb..fdb2713601 100644 --- a/hooks/test/browser/useEffectAssertions.js +++ b/hooks/test/browser/useEffectAssertions.jsx @@ -3,8 +3,6 @@ import { createElement, render } from 'preact'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - // Common behaviors between all effect hooks export function useEffectAssertions(useEffect, scheduleEffectAssert) { /** @type {HTMLDivElement} */ diff --git a/hooks/test/browser/useId.test.js b/hooks/test/browser/useId.test.jsx similarity index 99% rename from hooks/test/browser/useId.test.js rename to hooks/test/browser/useId.test.jsx index ff1fa8487d..3697cdff41 100644 --- a/hooks/test/browser/useId.test.js +++ b/hooks/test/browser/useId.test.jsx @@ -4,8 +4,6 @@ import { setupRerender } from 'preact/test-utils'; import { render as rts } from 'preact-render-to-string'; import { setupScratch, teardown } from '../../../test/_util/helpers'; -/** @jsx createElement */ - describe('useId', () => { /** @type {HTMLDivElement} */ let scratch, rerender; diff --git a/hooks/test/browser/useImperativeHandle.test.js b/hooks/test/browser/useImperativeHandle.test.jsx similarity index 99% rename from hooks/test/browser/useImperativeHandle.test.js rename to hooks/test/browser/useImperativeHandle.test.jsx index 36ec351414..feee5b4277 100644 --- a/hooks/test/browser/useImperativeHandle.test.js +++ b/hooks/test/browser/useImperativeHandle.test.jsx @@ -4,8 +4,6 @@ import { useImperativeHandle, useRef, useState } from 'preact/hooks'; import { setupRerender } from 'preact/test-utils'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('useImperativeHandle', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useLayoutEffect.test.js b/hooks/test/browser/useLayoutEffect.test.jsx similarity index 99% rename from hooks/test/browser/useLayoutEffect.test.js rename to hooks/test/browser/useLayoutEffect.test.jsx index 82fcd2850c..2bc1b53881 100644 --- a/hooks/test/browser/useLayoutEffect.test.js +++ b/hooks/test/browser/useLayoutEffect.test.jsx @@ -9,8 +9,6 @@ import { useEffectAssertions } from './useEffectAssertions'; import { useLayoutEffect, useRef, useState } from 'preact/hooks'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('useLayoutEffect', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useMemo.test.js b/hooks/test/browser/useMemo.test.jsx similarity index 99% rename from hooks/test/browser/useMemo.test.js rename to hooks/test/browser/useMemo.test.jsx index 3265b56340..c552156727 100644 --- a/hooks/test/browser/useMemo.test.js +++ b/hooks/test/browser/useMemo.test.jsx @@ -4,8 +4,6 @@ import { useMemo, useState } from 'preact/hooks'; import { act } from 'preact/test-utils'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('useMemo', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useReducer.test.js b/hooks/test/browser/useReducer.test.jsx similarity index 99% rename from hooks/test/browser/useReducer.test.js rename to hooks/test/browser/useReducer.test.jsx index 410805b766..c8578bf18a 100644 --- a/hooks/test/browser/useReducer.test.js +++ b/hooks/test/browser/useReducer.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, createContext } from 'preact'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { useReducer, useEffect, useContext } from 'preact/hooks'; -/** @jsx createElement */ - describe('useReducer', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useRef.test.js b/hooks/test/browser/useRef.test.jsx similarity index 97% rename from hooks/test/browser/useRef.test.js rename to hooks/test/browser/useRef.test.jsx index 7d7a657292..bbc4293cdc 100644 --- a/hooks/test/browser/useRef.test.js +++ b/hooks/test/browser/useRef.test.jsx @@ -2,8 +2,6 @@ import { createElement, render } from 'preact'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { useRef } from 'preact/hooks'; -/** @jsx createElement */ - describe('useRef', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/hooks/test/browser/useState.test.js b/hooks/test/browser/useState.test.jsx similarity index 99% rename from hooks/test/browser/useState.test.js rename to hooks/test/browser/useState.test.jsx index 4d391c209d..d37c572dbd 100644 --- a/hooks/test/browser/useState.test.js +++ b/hooks/test/browser/useState.test.jsx @@ -4,8 +4,6 @@ import { vi } from 'vitest'; import { useState, useContext, useEffect } from 'preact/hooks'; import { setupScratch, teardown } from '../../../test/_util/helpers'; -/** @jsx createElement */ - describe('useState', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/jsconfig-lint.json b/jsconfig-lint.json index 8102dbe98d..0658e4649d 100644 --- a/jsconfig-lint.json +++ b/jsconfig-lint.json @@ -3,7 +3,7 @@ "compilerOptions": { "skipLibCheck": true, "noEmit": true, - "typeRoots": ["./node_modules/@types", "./types"] + "typeRoots": ["./node_modules/@types", "./node_modules", "./types"] }, "include": [ "src/**/*", diff --git a/jsconfig.json b/jsconfig.json index 1be014c6a6..cc72eb92ea 100644 --- a/jsconfig.json +++ b/jsconfig.json @@ -14,7 +14,8 @@ }, "target": "es5", "noEmit": true, - "skipLibCheck": false + "skipLibCheck": false, + "types": ["vitest/globals"] }, "exclude": ["**/node_modules/**", "**/dist/**", "coverage", "demo"] } diff --git a/test-utils/test/shared/act.test.js b/test-utils/test/shared/act.test.jsx similarity index 99% rename from test-utils/test/shared/act.test.js rename to test-utils/test/shared/act.test.jsx index fafc60b470..3ff88e3857 100644 --- a/test-utils/test/shared/act.test.js +++ b/test-utils/test/shared/act.test.jsx @@ -4,8 +4,6 @@ import { act } from 'preact/test-utils'; import { setupScratch, teardown } from '../../../test/_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - // IE11 doesn't support `new Event()` function createEvent(name) { if (typeof Event == 'function') return new Event(name); diff --git a/test-utils/test/shared/rerender.test.js b/test-utils/test/shared/rerender.test.jsx similarity index 98% rename from test-utils/test/shared/rerender.test.js rename to test-utils/test/shared/rerender.test.jsx index 26a9147a4c..beb9372674 100644 --- a/test-utils/test/shared/rerender.test.js +++ b/test-utils/test/shared/rerender.test.jsx @@ -2,8 +2,6 @@ import { options, createElement, render, Component } from 'preact'; import { teardown, setupRerender } from 'preact/test-utils'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('setupRerender & teardown', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/_util/helpers.js b/test/_util/helpers.jsx similarity index 100% rename from test/_util/helpers.js rename to test/_util/helpers.jsx diff --git a/test/browser/cloneElement.test.js b/test/browser/cloneElement.test.jsx similarity index 99% rename from test/browser/cloneElement.test.js rename to test/browser/cloneElement.test.jsx index fb8d3367c5..e2380cef9c 100644 --- a/test/browser/cloneElement.test.js +++ b/test/browser/cloneElement.test.jsx @@ -1,7 +1,5 @@ import { createElement, cloneElement, createRef } from 'preact'; -/** @jsx createElement */ - describe('cloneElement', () => { it('should clone components', () => { function Comp() {} diff --git a/test/browser/components.test.js b/test/browser/components.test.jsx similarity index 99% rename from test/browser/components.test.js rename to test/browser/components.test.jsx index 84a40e01c0..479bbba12d 100644 --- a/test/browser/components.test.js +++ b/test/browser/components.test.jsx @@ -10,7 +10,6 @@ import { } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ const h = createElement; function getAttributes(node) { diff --git a/test/browser/context.test.js b/test/browser/context.test.jsx similarity index 99% rename from test/browser/context.test.js rename to test/browser/context.test.jsx index d4fa4b3e81..7450288fe5 100644 --- a/test/browser/context.test.js +++ b/test/browser/context.test.jsx @@ -2,8 +2,6 @@ import { createElement, render, Component, Fragment } from 'preact'; import { setupScratch, teardown } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('context', () => { let scratch; diff --git a/test/browser/createContext.test.js b/test/browser/createContext.test.jsx similarity index 99% rename from test/browser/createContext.test.js rename to test/browser/createContext.test.jsx index 84090b6dea..92fa44acce 100644 --- a/test/browser/createContext.test.js +++ b/test/browser/createContext.test.jsx @@ -9,8 +9,6 @@ import { import { setupScratch, teardown } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('createContext', () => { let scratch; let rerender; diff --git a/test/browser/customBuiltInElements.test.js b/test/browser/customBuiltInElements.test.jsx similarity index 96% rename from test/browser/customBuiltInElements.test.js rename to test/browser/customBuiltInElements.test.jsx index d5a9f32bfc..b9e73d27c3 100644 --- a/test/browser/customBuiltInElements.test.js +++ b/test/browser/customBuiltInElements.test.jsx @@ -2,8 +2,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - const runSuite = typeof customElements == 'undefined' ? xdescribe : describe; runSuite('customised built-in elements', () => { diff --git a/test/browser/events.test.js b/test/browser/events.test.jsx similarity index 99% rename from test/browser/events.test.js rename to test/browser/events.test.jsx index 621e99c26e..456b645c51 100644 --- a/test/browser/events.test.js +++ b/test/browser/events.test.jsx @@ -6,8 +6,6 @@ import { } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('event handling', () => { let scratch, proto; diff --git a/test/browser/focus.test.js b/test/browser/focus.test.jsx similarity index 99% rename from test/browser/focus.test.js rename to test/browser/focus.test.jsx index a3b35343ee..23656a0d86 100644 --- a/test/browser/focus.test.js +++ b/test/browser/focus.test.jsx @@ -3,7 +3,6 @@ import { createElement, render, Component, Fragment, hydrate } from 'preact'; import { setupScratch, teardown } from '../_util/helpers'; import { div, span, input as inputStr, h1, h2 } from '../_util/dom'; -/** @jsx createElement */ /* eslint-disable react/jsx-boolean-value */ describe('focus', () => { diff --git a/test/browser/fragments.test.js b/test/browser/fragments.test.jsx similarity index 99% rename from test/browser/fragments.test.js rename to test/browser/fragments.test.jsx index 783adf3b89..946303be8e 100644 --- a/test/browser/fragments.test.js +++ b/test/browser/fragments.test.jsx @@ -10,7 +10,6 @@ import { setupScratch, teardown } from '../_util/helpers'; import { span, div, ul, ol, li, section } from '../_util/dom'; import { logCall, clearLog, getLog } from '../_util/logCall'; -/** @jsx createElement */ /* eslint-disable react/jsx-boolean-value */ describe('Fragment', () => { diff --git a/test/browser/getDomSibling.test.js b/test/browser/getDomSibling.test.jsx similarity index 99% rename from test/browser/getDomSibling.test.js rename to test/browser/getDomSibling.test.jsx index 66a6aa8921..919b28e562 100644 --- a/test/browser/getDomSibling.test.js +++ b/test/browser/getDomSibling.test.jsx @@ -2,8 +2,6 @@ import { createElement, render, Fragment } from '../../src/'; import { getDomSibling } from '../../src/component'; import { setupScratch, teardown } from '../_util/helpers'; -/** @jsx createElement */ - describe('getDomSibling', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/hydrate.test.js b/test/browser/hydrate.test.jsx similarity index 99% rename from test/browser/hydrate.test.js rename to test/browser/hydrate.test.jsx index 896ee6f455..9e7a334a92 100644 --- a/test/browser/hydrate.test.js +++ b/test/browser/hydrate.test.jsx @@ -12,8 +12,6 @@ import { ul, li, div } from '../_util/dom'; import { logCall, clearLog, getLog } from '../_util/logCall'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('hydrate()', () => { /** @type {HTMLElement} */ let scratch; diff --git a/test/browser/keys.test.js b/test/browser/keys.test.jsx similarity index 99% rename from test/browser/keys.test.js rename to test/browser/keys.test.jsx index 3a5594fbf3..3550352242 100644 --- a/test/browser/keys.test.js +++ b/test/browser/keys.test.jsx @@ -5,8 +5,6 @@ import { logCall, clearLog, getLog } from '../_util/logCall'; import { div } from '../_util/dom'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('keys', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/componentDidCatch.test.js b/test/browser/lifecycles/componentDidCatch.test.jsx similarity index 99% rename from test/browser/lifecycles/componentDidCatch.test.js rename to test/browser/lifecycles/componentDidCatch.test.jsx index 4b0349210a..1b80002388 100644 --- a/test/browser/lifecycles/componentDidCatch.test.js +++ b/test/browser/lifecycles/componentDidCatch.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component, Fragment } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi, expect } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /* eslint-disable react/display-name */ diff --git a/test/browser/lifecycles/componentDidMount.test.js b/test/browser/lifecycles/componentDidMount.test.jsx similarity index 98% rename from test/browser/lifecycles/componentDidMount.test.js rename to test/browser/lifecycles/componentDidMount.test.jsx index 52ec460e11..72717ccf59 100644 --- a/test/browser/lifecycles/componentDidMount.test.js +++ b/test/browser/lifecycles/componentDidMount.test.jsx @@ -3,8 +3,6 @@ import { setupRerender } from 'preact/test-utils'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/componentDidUpdate.test.js b/test/browser/lifecycles/componentDidUpdate.test.jsx similarity index 99% rename from test/browser/lifecycles/componentDidUpdate.test.js rename to test/browser/lifecycles/componentDidUpdate.test.jsx index 5b0f9e7d5c..b733d4cb95 100644 --- a/test/browser/lifecycles/componentDidUpdate.test.js +++ b/test/browser/lifecycles/componentDidUpdate.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/componentWillMount.test.js b/test/browser/lifecycles/componentWillMount.test.jsx similarity index 98% rename from test/browser/lifecycles/componentWillMount.test.js rename to test/browser/lifecycles/componentWillMount.test.jsx index 4e85032ee7..a17bb5c429 100644 --- a/test/browser/lifecycles/componentWillMount.test.js +++ b/test/browser/lifecycles/componentWillMount.test.jsx @@ -2,8 +2,6 @@ import { createElement, render, Component } from 'preact'; import { setupRerender } from 'preact/test-utils'; import { setupScratch, teardown } from '../../_util/helpers'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/componentWillReceiveProps.test.js b/test/browser/lifecycles/componentWillReceiveProps.test.jsx similarity index 99% rename from test/browser/lifecycles/componentWillReceiveProps.test.js rename to test/browser/lifecycles/componentWillReceiveProps.test.jsx index 7c5f7d171a..d65b408d8a 100644 --- a/test/browser/lifecycles/componentWillReceiveProps.test.js +++ b/test/browser/lifecycles/componentWillReceiveProps.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/componentWillUnmount.test.js b/test/browser/lifecycles/componentWillUnmount.test.jsx similarity index 98% rename from test/browser/lifecycles/componentWillUnmount.test.js rename to test/browser/lifecycles/componentWillUnmount.test.jsx index 5ba6bc08f5..ebd6f44ec1 100644 --- a/test/browser/lifecycles/componentWillUnmount.test.js +++ b/test/browser/lifecycles/componentWillUnmount.test.jsx @@ -2,8 +2,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/componentWillUpdate.test.js b/test/browser/lifecycles/componentWillUpdate.test.jsx similarity index 98% rename from test/browser/lifecycles/componentWillUpdate.test.js rename to test/browser/lifecycles/componentWillUpdate.test.jsx index ec13781e7d..2e328a2ada 100644 --- a/test/browser/lifecycles/componentWillUpdate.test.js +++ b/test/browser/lifecycles/componentWillUpdate.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/getDerivedStateFromError.test.js b/test/browser/lifecycles/getDerivedStateFromError.test.jsx similarity index 99% rename from test/browser/lifecycles/getDerivedStateFromError.test.js rename to test/browser/lifecycles/getDerivedStateFromError.test.jsx index 541911923c..4c3b7d6118 100644 --- a/test/browser/lifecycles/getDerivedStateFromError.test.js +++ b/test/browser/lifecycles/getDerivedStateFromError.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /* eslint-disable react/display-name */ diff --git a/test/browser/lifecycles/getDerivedStateFromProps.test.js b/test/browser/lifecycles/getDerivedStateFromProps.test.jsx similarity index 99% rename from test/browser/lifecycles/getDerivedStateFromProps.test.js rename to test/browser/lifecycles/getDerivedStateFromProps.test.jsx index 3b199dddc0..1507fa5773 100644 --- a/test/browser/lifecycles/getDerivedStateFromProps.test.js +++ b/test/browser/lifecycles/getDerivedStateFromProps.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/getSnapshotBeforeUpdate.test.js b/test/browser/lifecycles/getSnapshotBeforeUpdate.test.jsx similarity index 99% rename from test/browser/lifecycles/getSnapshotBeforeUpdate.test.js rename to test/browser/lifecycles/getSnapshotBeforeUpdate.test.jsx index 645424bee9..7504e3600d 100644 --- a/test/browser/lifecycles/getSnapshotBeforeUpdate.test.js +++ b/test/browser/lifecycles/getSnapshotBeforeUpdate.test.jsx @@ -2,8 +2,6 @@ import { setupRerender } from 'preact/test-utils'; import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/lifecycle.test.js b/test/browser/lifecycles/lifecycle.test.jsx similarity index 99% rename from test/browser/lifecycles/lifecycle.test.js rename to test/browser/lifecycles/lifecycle.test.jsx index 5c5977330d..165a8a3699 100644 --- a/test/browser/lifecycles/lifecycle.test.js +++ b/test/browser/lifecycles/lifecycle.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/lifecycles/shouldComponentUpdate.test.js b/test/browser/lifecycles/shouldComponentUpdate.test.jsx similarity index 99% rename from test/browser/lifecycles/shouldComponentUpdate.test.js rename to test/browser/lifecycles/shouldComponentUpdate.test.jsx index a96e6ca630..3ecd7e8ad3 100644 --- a/test/browser/lifecycles/shouldComponentUpdate.test.js +++ b/test/browser/lifecycles/shouldComponentUpdate.test.jsx @@ -4,8 +4,6 @@ import { vi } from 'vitest'; import { setupScratch, teardown } from '../../_util/helpers'; import { logCall, getLog, clearLog } from '../../_util/logCall'; -/** @jsx createElement */ - describe('Lifecycle methods', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/mathml.test.js b/test/browser/mathml.test.jsx similarity index 98% rename from test/browser/mathml.test.js rename to test/browser/mathml.test.jsx index 92e2bb6bcf..79439f4016 100644 --- a/test/browser/mathml.test.js +++ b/test/browser/mathml.test.jsx @@ -2,8 +2,6 @@ import { createElement, Component, render } from 'preact'; import { setupRerender } from 'preact/test-utils'; import { setupScratch, teardown } from '../_util/helpers'; -/** @jsx createElement */ - describe('mathml', () => { let scratch; diff --git a/test/browser/placeholders.test.js b/test/browser/placeholders.test.jsx similarity index 99% rename from test/browser/placeholders.test.js rename to test/browser/placeholders.test.jsx index 9571288fe4..f2f5cf3f09 100644 --- a/test/browser/placeholders.test.js +++ b/test/browser/placeholders.test.jsx @@ -5,8 +5,6 @@ import { logCall, clearLog, getLog } from '../_util/logCall'; import { div } from '../_util/dom'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('null placeholders', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/browser/refs.test.js b/test/browser/refs.test.jsx similarity index 99% rename from test/browser/refs.test.js rename to test/browser/refs.test.jsx index 52ec8ab182..5b42406b4f 100644 --- a/test/browser/refs.test.js +++ b/test/browser/refs.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component, createRef, Fragment } from 'preact'; import { setupScratch, teardown } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - // gives call count and argument errors names (otherwise sinon just uses "spy"): let spy = (name, ...args) => { let spy = vi.fn(...args); diff --git a/test/browser/render.test.js b/test/browser/render.test.jsx similarity index 99% rename from test/browser/render.test.js rename to test/browser/render.test.jsx index f7272a1369..0139661726 100644 --- a/test/browser/render.test.js +++ b/test/browser/render.test.jsx @@ -15,8 +15,6 @@ import { clearLog, getLog, logCall } from '../_util/logCall'; import { useState } from 'preact/hooks'; import { expect, vi } from 'vitest'; -/** @jsx createElement */ - function getAttributes(node) { let attrs = {}; for (let i = node.attributes.length; i--; ) { diff --git a/test/browser/select.test.js b/test/browser/select.test.jsx similarity index 98% rename from test/browser/select.test.js rename to test/browser/select.test.jsx index 74b08ce570..3c1e4aac29 100644 --- a/test/browser/select.test.js +++ b/test/browser/select.test.jsx @@ -1,8 +1,6 @@ import { createElement, render } from 'preact'; import { setupScratch, teardown } from '../_util/helpers'; -/** @jsx createElement */ - describe('Select', () => { let scratch; diff --git a/test/browser/spec.test.js b/test/browser/spec.test.jsx similarity index 98% rename from test/browser/spec.test.js rename to test/browser/spec.test.jsx index 34c2a2ffff..d14800128d 100644 --- a/test/browser/spec.test.js +++ b/test/browser/spec.test.jsx @@ -3,8 +3,6 @@ import { createElement, render, Component } from 'preact'; import { setupScratch, teardown } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('Component spec', () => { let scratch, rerender; diff --git a/test/browser/style.test.js b/test/browser/style.test.jsx similarity index 99% rename from test/browser/style.test.js rename to test/browser/style.test.jsx index 6192482a6a..b341407b93 100644 --- a/test/browser/style.test.js +++ b/test/browser/style.test.jsx @@ -2,8 +2,6 @@ import { createElement, render } from 'preact'; import { setupScratch, teardown, sortCss } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('style attribute', () => { /** @type {HTMLElement} */ let scratch; diff --git a/test/browser/svg.test.js b/test/browser/svg.test.jsx similarity index 99% rename from test/browser/svg.test.js rename to test/browser/svg.test.jsx index 21c6bfc277..dd5ccb74a2 100644 --- a/test/browser/svg.test.js +++ b/test/browser/svg.test.jsx @@ -3,8 +3,6 @@ import { setupRerender } from 'preact/test-utils'; import { setupScratch, teardown, sortAttributes } from '../_util/helpers'; import { vi } from 'vitest'; -/** @jsx createElement */ - describe('svg', () => { let scratch; diff --git a/test/browser/toChildArray.test.js b/test/browser/toChildArray.test.jsx similarity index 99% rename from test/browser/toChildArray.test.js rename to test/browser/toChildArray.test.jsx index d1cb950992..cf7560f6d1 100644 --- a/test/browser/toChildArray.test.js +++ b/test/browser/toChildArray.test.jsx @@ -6,8 +6,6 @@ import { mixedArrayHTML } from '../_util/helpers'; -/** @jsx createElement */ - describe('toChildArray', () => { /** @type {HTMLDivElement} */ let scratch; diff --git a/test/shared/createContext.test.js b/test/shared/createContext.test.jsx similarity index 97% rename from test/shared/createContext.test.js rename to test/shared/createContext.test.jsx index a7ce72bca9..39f961f070 100644 --- a/test/shared/createContext.test.js +++ b/test/shared/createContext.test.jsx @@ -1,7 +1,6 @@ import { createElement, createContext } from '../../src/index'; import { expect } from 'chai'; -/** @jsx createElement */ /* eslint-env browser */ describe('createContext', () => { diff --git a/test/shared/createElement.test.js b/test/shared/createElement.test.jsx similarity index 99% rename from test/shared/createElement.test.js rename to test/shared/createElement.test.jsx index 449068b6cb..cf4b0ae2a5 100644 --- a/test/shared/createElement.test.js +++ b/test/shared/createElement.test.jsx @@ -2,7 +2,6 @@ import { createElement } from '../../src/index'; import { expect } from 'chai'; const h = createElement; -/** @jsx createElement */ /*eslint-env browser */ // const buildVNode = (nodeName, attributes, children=[]) => ({ diff --git a/test/shared/isValidElementTests.js b/test/shared/isValidElementTests.jsx similarity index 95% rename from test/shared/isValidElementTests.js rename to test/shared/isValidElementTests.jsx index d0e86b50c5..f8b1a04369 100644 --- a/test/shared/isValidElementTests.js +++ b/test/shared/isValidElementTests.jsx @@ -1,4 +1,5 @@ -/** @jsx createElement */ +// @jsxRuntime classic +// @jsx createElement export function isValidElementTests( expect, diff --git a/vitest.config.mjs b/vitest.config.mjs index 91d23b422d..c61a399c94 100644 --- a/vitest.config.mjs +++ b/vitest.config.mjs @@ -1,6 +1,5 @@ import { defineConfig } from 'vitest/config'; import { transformAsync } from '@babel/core'; -import fs from 'node:fs/promises'; import { readFileSync } from 'node:fs'; import path from 'node:path'; @@ -137,11 +136,11 @@ export default defineConfig({ }, esbuild: { loader: 'jsx', - include: /.*\.js$/, + include: /.*\.jsx$/, exclude: ['node_nodules'], jsx: 'transform', - jsxImportSource: 'preact', - jsxDev: true + jsxFactory: 'createElement', + jsxFragment: 'Fragment', }, plugins: [ { @@ -167,7 +166,7 @@ export default defineConfig({ } ] ], - include: ['**/src/**/*.js', '**/test/**/*.js'] + include: ['**/src/**/*.js', '**/test/**/*.js', '**/test/**/*.jsx'], }); return { @@ -193,19 +192,6 @@ export default defineConfig({ ], esbuildOptions: { alias, - plugins: [ - { - name: 'load-js-files-as-jsx', - setup(build) { - build.onLoad({ filter: /.*\.js$/ }, async args => { - return { - loader: 'jsx', - contents: await fs.readFile(args.path, 'utf8') - }; - }); - } - } - ] } }, test: { @@ -241,15 +227,15 @@ export default defineConfig({ { extends: true, test: { - include: ['./test/{shared,node,ts}/**/*.test.js'] + include: ['./test/{shared,node,ts}/**/*.test.js?(x)'] } }, { extends: true, test: { include: [ - '{debug,devtools,hooks,compat,test-utils,jsx-runtime}/test/{browser,shared}/**/*.test.js', - './test/{browser,shared}/**/*.test.js' + '{debug,devtools,hooks,compat,test-utils,jsx-runtime}/test/{browser,shared}/**/*.test.js?(x)', + './test/{browser,shared}/**/*.test.js?(x)' ], setupFiles: ['./vitest.setup.js'], // dangerouslyIgnoreUnhandledErrors: true,