| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 142c735 commit 00a3916
14 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,6 +1,6 @@ | |||
| 1 | - import type { ModuleMocker } from '@vitest/mocker/browser' | ||
| 2 | 1 | import type { CancelReason } from '@vitest/runner' | |
| 3 | 2 | import type { BirpcReturn } from 'birpc' | |
| 3 | + import type { ModuleMocker } from 'vitest/internal/browser' | ||
| 4 | 4 | import type { WebSocketBrowserEvents, WebSocketBrowserHandlers } from '../node/types' | |
| 5 | 5 | import type { IframeOrchestrator } from './orchestrator' | |
| 6 | 6 | import { createBirpc } from 'birpc' | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,7 +1,6 @@ | |||
| 1 | 1 | import type { GlobalChannelIncomingEvent, IframeChannelIncomingEvent, IframeChannelOutgoingEvent, IframeViewportDoneEvent, IframeViewportFailEvent } from '@vitest/browser/client' | |
| 2 | 2 | import type { BrowserTesterOptions, SerializedConfig } from 'vitest' | |
| 3 | 3 | import { channel, client, globalChannel } from '@vitest/browser/client' | |
| 4 | - import { generateHash } from '@vitest/runner/utils' | ||
| 5 | 4 | import { relative } from 'pathe' | |
| 6 | 5 | import { getUiAPI } from './ui' | |
| 7 | 6 | import { getBrowserState, getConfig } from './utils' | |
@@ -297,6 +296,20 @@ function generateFileId(file: string) { | |||
| 297 | 296 | return generateHash(`${path}${project}`) | |
| 298 | 297 | } | |
| 299 | 298 | ||
| 299 | + // importing this from @vitest/runner bring it the whole runner | ||
| 300 | + function generateHash(str: string): string { | ||
| 301 | + let hash = 0 | ||
| 302 | + if (str.length === 0) { | ||
| 303 | + return `${hash}` | ||
| 304 | + } | ||
| 305 | + for (let i = 0; i < str.length; i++) { | ||
| 306 | + const char = str.charCodeAt(i) | ||
| 307 | + hash = (hash << 5) - hash + char | ||
| 308 | + hash = hash & hash // Convert to 32bit integer | ||
| 309 | + } | ||
| 310 | + return `${hash}` | ||
| 311 | + } | ||
| 312 | + | ||
| 300 | 313 | async function setIframeViewport( | |
| 301 | 314 | iframe: HTMLIFrameElement, | |
| 302 | 315 | width: number, | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - import { ModuleMocker } from '@vitest/mocker/browser' | ||
| 1 | + import { ModuleMocker } from 'vitest/internal/browser' | ||
| 2 | 2 | import { getBrowserState } from '../utils' | |
| 3 | 3 | ||
| 4 | 4 | export class VitestBrowserClientMocker extends ModuleMocker { | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -5,14 +5,16 @@ import type { VitestBrowserClientMocker } from './mocker' | |||
| 5 | 5 | import { globalChannel, onCancel } from '@vitest/browser/client' | |
| 6 | 6 | import { page, userEvent } from '@vitest/browser/context' | |
| 7 | 7 | import { | |
| 8 | + createStackString, | ||
| 8 | 9 | loadDiffConfig, | |
| 9 | 10 | loadSnapshotSerializers, | |
| 11 | + NodeBenchmarkRunner, | ||
| 10 | 12 | originalPositionFor, | |
| 13 | + parseStacktrace, | ||
| 11 | 14 | takeCoverageInsideWorker, | |
| 12 | 15 | TraceMap, | |
| 16 | + VitestTestRunner, | ||
| 13 | 17 | } from 'vitest/internal/browser' | |
| 14 | - import { NodeBenchmarkRunner, VitestTestRunner } from 'vitest/runners' | ||
| 15 | - import { createStackString, parseStacktrace } from '../../../../utils/src/source-map' | ||
| 16 | 18 | import { executor, getWorkerState } from '../utils' | |
| 17 | 19 | import { rpc } from './rpc' | |
| 18 | 20 | import { VitestBrowserSnapshotEnvironment } from './snapshot' | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -19,9 +19,11 @@ import { createSafeRpc } from './rpc' | |||
| 19 | 19 | import { browserHashMap, initiateRunner } from './runner' | |
| 20 | 20 | import { CommandsManager } from './utils' | |
| 21 | 21 | ||
| 22 | + const now = performance.now.bind(performance) | ||
| 23 | + | ||
| 22 | 24 | const debugVar = getConfig().env.VITEST_BROWSER_DEBUG | |
| 23 | 25 | const debug = debugVar && debugVar !== 'false' | |
| 24 | - ? (...args: unknown[]) => client.rpc.debug?.(...args.map(String)) | ||
| 26 | + ? (...args: unknown[]) => client.rpc.debug(...args.map(String)) | ||
| 25 | 27 | : undefined | |
| 26 | 28 | ||
| 27 | 29 | channel.addEventListener('message', async (e) => { | |
@@ -142,7 +144,7 @@ async function prepareTestEnvironment(options: PrepareOptions) { | |||
| 142 | 144 | }) | |
| 143 | 145 | } | |
| 144 | 146 | ||
| 145 | - state.durations.prepare = performance.now() - options.startTime | ||
| 147 | + state.durations.prepare = options.startTime - now() | ||
| 146 | 148 | ||
| 147 | 149 | return { | |
| 148 | 150 | runner, | |
@@ -194,15 +196,15 @@ interface PrepareOptions { | |||
| 194 | 196 | } | |
| 195 | 197 | ||
| 196 | 198 | async function prepare(options: PrepareOptions) { | |
| 199 | + // fetch('file://non-existing-1').catch(() => {}) | ||
| 197 | 200 | preparedData = await prepareTestEnvironment(options) | |
| 201 | + // fetch('file://non-existing-2').catch(() => {}) | ||
| 198 | 202 | ||
| 199 | 203 | // page is reloading | |
| 200 | 204 | debug?.('runner resolved successfully') | |
| 201 | 205 | ||
| 202 | 206 | const { config, state } = preparedData | |
| 203 | 207 | ||
| 204 | - state.durations.prepare = performance.now() - state.durations.prepare | ||
| 205 | - | ||
| 206 | 208 | debug?.('prepare time', state.durations.prepare, 'ms') | |
| 207 | 209 | ||
| 208 | 210 | await Promise.all([ | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -188,32 +188,12 @@ export default (parentServer: ParentBrowserProject, base = '/'): Plugin[] => { | |||
| 188 | 188 | ...(project.config.snapshotSerializers || []), | |
| 189 | 189 | ] | |
| 190 | 190 | ||
| 191 | - const exclude = [ | ||
| 192 | - 'vitest', | ||
| 193 | - 'vitest/internal/browser', | ||
| 194 | - 'vitest/runners', | ||
| 195 | - '@vitest/browser', | ||
| 196 | - '@vitest/browser/client', | ||
| 197 | - '@vitest/utils', | ||
| 198 | - '@vitest/utils/source-map', | ||
| 199 | - '@vitest/runner', | ||
| 200 | - '@vitest/spy', | ||
| 201 | - '@vitest/utils/error', | ||
| 202 | - '@vitest/snapshot', | ||
| 203 | - '@vitest/expect', | ||
| 204 | - 'std-env', | ||
| 205 | - 'tinybench', | ||
| 206 | - 'tinyspy', | ||
| 207 | - 'tinyrainbow', | ||
| 208 | - 'pathe', | ||
| 209 | - 'msw', | ||
| 210 | - 'msw/browser', | ||
| 211 | - ] | ||
| 212 | - | ||
| 213 | 191 | if (typeof project.config.diff === 'string') { | |
| 214 | 192 | entries.push(project.config.diff) | |
| 215 | 193 | } | |
| 216 | 194 | ||
| 195 | + const exclude: string[] = [] | ||
| 196 | + | ||
| 217 | 197 | if (parentServer.vitest.coverageProvider) { | |
| 218 | 198 | const coverage = parentServer.vitest.config.coverage | |
| 219 | 199 | const provider = coverage.provider | |
@@ -237,6 +217,8 @@ export default (parentServer: ParentBrowserProject, base = '/'): Plugin[] => { | |||
| 237 | 217 | } | |
| 238 | 218 | ||
| 239 | 219 | const include = [ | |
| 220 | + 'vitest', | ||
| 221 | + 'vitest/internal/browser', | ||
| 240 | 222 | 'vitest > expect-type', | |
| 241 | 223 | 'vitest > @vitest/snapshot > magic-string', | |
| 242 | 224 | 'vitest > chai', | |
@@ -275,7 +257,7 @@ export default (parentServer: ParentBrowserProject, base = '/'): Plugin[] => { | |||
| 275 | 257 | }, | |
| 276 | 258 | optimizeDeps: { | |
| 277 | 259 | entries, | |
| 278 | - exclude, | ||
| 260 | + // exclude, | ||
| 279 | 261 | include, | |
| 280 | 262 | }, | |
| 281 | 263 | } | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -67,6 +67,7 @@ | |||
| 67 | 67 | }, | |
| 68 | 68 | "dependencies": { | |
| 69 | 69 | "@vitest/spy": "workspace:*", | |
| 70 | + "@vitest/utils": "workspace:*", | ||
| 70 | 71 | "estree-walker": "^3.0.3", | |
| 71 | 72 | "magic-string": "catalog:" | |
| 72 | 73 | }, | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -23,6 +23,7 @@ const external = [ | |||
| 23 | 23 | ...Object.keys(pkg.dependencies || {}), | |
| 24 | 24 | ...Object.keys(pkg.peerDependencies || {}), | |
| 25 | 25 | /^msw/, | |
| 26 | + '@vitest/utils/source-map', | ||
| 26 | 27 | ] | |
| 27 | 28 | ||
| 28 | 29 | const dtsUtils = createDtsUtils() | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,3 +1,6 @@ | |||
| 1 | + import { fileURLToPath } from 'node:url' | ||
| 2 | + import { resolve } from 'pathe' | ||
| 3 | + | ||
| 1 | 4 | export { createManualModuleSource } from '../utils' | |
| 2 | 5 | export { automockModule, automockPlugin } from './automockPlugin' | |
| 3 | 6 | export type { AutomockPluginOptions } from './automockPlugin' | |
@@ -15,3 +18,6 @@ export type { | |||
| 15 | 18 | ServerMockResolution, | |
| 16 | 19 | ServerResolverOptions, | |
| 17 | 20 | } from './resolver' | |
| 21 | + | ||
| 22 | + const pkgRoot = resolve(fileURLToPath(import.meta.url), '../..') | ||
| 23 | + export const distRoot: string = resolve(pkgRoot, 'dist') | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -24,10 +24,6 @@ | |||
| 24 | 24 | "types": "./dist/diff.d.ts", | |
| 25 | 25 | "default": "./dist/diff.js" | |
| 26 | 26 | }, | |
| 27 | - "./ast": { | ||
| 28 | - "types": "./dist/ast.d.ts", | ||
| 29 | - "default": "./dist/ast.js" | ||
| 30 | - }, | ||
| 31 | 27 | "./error": { | |
| 32 | 28 | "types": "./dist/error.d.ts", | |
| 33 | 29 | "default": "./dist/error.js" | |
| Back | FazBrowse Home | New Git URL |
0 commit comments