From 2193c37dfd0d2db169b178f792c945fb1e563dbb Mon Sep 17 00:00:00 2001 From: xiaodong2008 Date: Mon, 17 Jun 2024 15:17:15 +0800 Subject: [PATCH 1/3] test(runtime-vapor): add unit test for config.performance --- .../__tests__/apiCreateVaporApp.spec.ts | 33 +++++++++++++++++++ packages/runtime-vapor/src/profiling.ts | 2 +- 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts b/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts index f783ef33a..d0d091352 100644 --- a/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts +++ b/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts @@ -12,6 +12,7 @@ import { resolveDirective, withDirectives, } from '../src' +import { perf } from '../src/profiling' import { warn } from '../src/warning' import { makeRender } from './_utils' @@ -310,4 +311,36 @@ describe('api: createVaporApp', () => { ).toHaveBeenWarned() }) }) + + describe('config.performance', () => { + test('with performance enabled', () => { + const { app, mount } = define({ + setup() { + return document.createTextNode(`hello`) + }, + }).create() + + app.config.performance = true + perf.clearMeasures() + + mount() + + expect(perf.getEntries().length).toBeGreaterThan(0) + }) + + test('with performance disabled', () => { + const { app, mount } = define({ + setup() { + return document.createTextNode(`hello`) + }, + }).create() + + app.config.performance = false + perf.clearMeasures() + + mount() + + expect(perf.getEntries().length).toBe(0) + }) + }) }) diff --git a/packages/runtime-vapor/src/profiling.ts b/packages/runtime-vapor/src/profiling.ts index 3caae0a67..39e5785be 100644 --- a/packages/runtime-vapor/src/profiling.ts +++ b/packages/runtime-vapor/src/profiling.ts @@ -6,7 +6,7 @@ import { import { devtoolsPerfEnd, devtoolsPerfStart } from './devtools' let supported: boolean -let perf: Performance +export let perf: Performance export function startMeasure( instance: ComponentInternalInstance, From 113a575bc59acc321c3013bcef8a3b9d000dd5fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=89=E5=92=B2=E6=99=BA=E5=AD=90=20Kevin=20Deng?= Date: Tue, 18 Jun 2024 00:16:50 +0800 Subject: [PATCH 2/3] refactor --- .../__tests__/apiCreateVaporApp.spec.ts | 15 ++++++--------- packages/runtime-vapor/src/profiling.ts | 2 +- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts b/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts index d0d091352..8115a8a12 100644 --- a/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts +++ b/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts @@ -12,7 +12,6 @@ import { resolveDirective, withDirectives, } from '../src' -import { perf } from '../src/profiling' import { warn } from '../src/warning' import { makeRender } from './_utils' @@ -313,6 +312,10 @@ describe('api: createVaporApp', () => { }) describe('config.performance', () => { + afterEach(() => { + window.performance.clearMeasures() + }) + test('with performance enabled', () => { const { app, mount } = define({ setup() { @@ -321,11 +324,8 @@ describe('api: createVaporApp', () => { }).create() app.config.performance = true - perf.clearMeasures() - mount() - - expect(perf.getEntries().length).toBeGreaterThan(0) + expect(window.performance.getEntries()).lengthOf(2) }) test('with performance disabled', () => { @@ -336,11 +336,8 @@ describe('api: createVaporApp', () => { }).create() app.config.performance = false - perf.clearMeasures() - mount() - - expect(perf.getEntries().length).toBe(0) + expect(window.performance.getEntries()).lengthOf(0) }) }) }) diff --git a/packages/runtime-vapor/src/profiling.ts b/packages/runtime-vapor/src/profiling.ts index 39e5785be..3caae0a67 100644 --- a/packages/runtime-vapor/src/profiling.ts +++ b/packages/runtime-vapor/src/profiling.ts @@ -6,7 +6,7 @@ import { import { devtoolsPerfEnd, devtoolsPerfStart } from './devtools' let supported: boolean -export let perf: Performance +let perf: Performance export function startMeasure( instance: ComponentInternalInstance, From 8e1c9e23ab24d12c6e86699dfb4eff6162a3a85c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=89=E5=92=B2=E6=99=BA=E5=AD=90=20Kevin=20Deng?= Date: Tue, 18 Jun 2024 00:18:03 +0800 Subject: [PATCH 3/3] cleanup --- .../__tests__/apiCreateVaporApp.spec.ts | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts b/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts index 8115a8a12..9109d5b87 100644 --- a/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts +++ b/packages/runtime-vapor/__tests__/apiCreateVaporApp.spec.ts @@ -317,11 +317,7 @@ describe('api: createVaporApp', () => { }) test('with performance enabled', () => { - const { app, mount } = define({ - setup() { - return document.createTextNode(`hello`) - }, - }).create() + const { app, mount } = define({}).create() app.config.performance = true mount() @@ -329,11 +325,7 @@ describe('api: createVaporApp', () => { }) test('with performance disabled', () => { - const { app, mount } = define({ - setup() { - return document.createTextNode(`hello`) - }, - }).create() + const { app, mount } = define({}).create() app.config.performance = false mount()