From 225e4f2dbeac5982982fb94eac65ea931c44247a Mon Sep 17 00:00:00 2001 From: JiaLiPassion Date: Sun, 6 Mar 2022 21:11:16 +0900 Subject: [PATCH] feat(core): triggerEventHandler accept optional eventObj (#45279) Close #44724 `DebugNode.triggerEventHandler()` should accept the `eventObj` as an optional parameter. So the user don't have to write code like ``` elem.triggerEventHandler('click', null); ``` PR Close #45279 --- goldens/public-api/core/core.md | 2 +- packages/core/src/debug/debug_node.ts | 2 +- packages/core/test/debug/debug_node_spec.ts | 4 ++-- packages/forms/test/reactive_integration_spec.ts | 6 +++--- packages/forms/test/template_integration_spec.ts | 6 +++--- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/goldens/public-api/core/core.md b/goldens/public-api/core/core.md index 002838082c7..a16b87873a8 100644 --- a/goldens/public-api/core/core.md +++ b/goldens/public-api/core/core.md @@ -320,7 +320,7 @@ export class DebugElement extends DebugNode { get styles(): { [key: string]: string | null; }; - triggerEventHandler(eventName: string, eventObj: any): void; + triggerEventHandler(eventName: string, eventObj?: any): void; } // @public (undocumented) diff --git a/packages/core/src/debug/debug_node.ts b/packages/core/src/debug/debug_node.ts index 4c86a4cfa3f..606edd441d3 100644 --- a/packages/core/src/debug/debug_node.ts +++ b/packages/core/src/debug/debug_node.ts @@ -343,7 +343,7 @@ export class DebugElement extends DebugNode { * * @see [Testing components scenarios](guide/testing-components-scenarios#trigger-event-handler) */ - triggerEventHandler(eventName: string, eventObj: any): void { + triggerEventHandler(eventName: string, eventObj?: any): void { const node = this.nativeNode as any; const invokedListeners: Function[] = []; diff --git a/packages/core/test/debug/debug_node_spec.ts b/packages/core/test/debug/debug_node_spec.ts index 41360e75a6c..c4e3fa78660 100644 --- a/packages/core/test/debug/debug_node_spec.ts +++ b/packages/core/test/debug/debug_node_spec.ts @@ -978,11 +978,11 @@ class TestCmptWithPropInterpolation { const button = fixture.debugElement.query(By.css('button')); expect(() => { - button.triggerEventHandler('click', null); + button.triggerEventHandler('click'); fixture.detectChanges(); }).not.toThrow(); - expect(value).toBeNull(); + expect(value).toBeUndefined(); }); describe('componentInstance on DebugNode', () => { diff --git a/packages/forms/test/reactive_integration_spec.ts b/packages/forms/test/reactive_integration_spec.ts index 8fd3936b532..5bc1feb8f20 100644 --- a/packages/forms/test/reactive_integration_spec.ts +++ b/packages/forms/test/reactive_integration_spec.ts @@ -3458,7 +3458,7 @@ const ValueAccessorB = createControlValueAccessor('[cva-b]'); const inputNativeEl = inputEl.nativeElement; expect(inputNativeEl.value).toEqual('oldValue'); - inputEl.triggerEventHandler('compositionstart', null); + inputEl.triggerEventHandler('compositionstart'); inputNativeEl.value = 'updatedValue'; dispatchEvent(inputNativeEl, 'input'); @@ -3489,7 +3489,7 @@ const ValueAccessorB = createControlValueAccessor('[cva-b]'); const inputNativeEl = inputEl.nativeElement; expect(inputNativeEl.value).toEqual('oldValue'); - inputEl.triggerEventHandler('compositionstart', null); + inputEl.triggerEventHandler('compositionstart'); inputNativeEl.value = 'updatedValue'; dispatchEvent(inputNativeEl, 'input'); @@ -3517,7 +3517,7 @@ const ValueAccessorB = createControlValueAccessor('[cva-b]'); const inputNativeEl = inputEl.nativeElement; expect(inputNativeEl.value).toEqual('oldValue'); - inputEl.triggerEventHandler('compositionstart', null); + inputEl.triggerEventHandler('compositionstart'); inputNativeEl.value = 'updatedValue'; dispatchEvent(inputNativeEl, 'input'); diff --git a/packages/forms/test/template_integration_spec.ts b/packages/forms/test/template_integration_spec.ts index a3c54836cbd..5385d6e9397 100644 --- a/packages/forms/test/template_integration_spec.ts +++ b/packages/forms/test/template_integration_spec.ts @@ -2511,7 +2511,7 @@ import {NgModelCustomComp, NgModelCustomWrapper} from './value_accessor_integrat tick(); expect(inputNativeEl.value).toEqual('oldValue'); - inputEl.triggerEventHandler('compositionstart', null); + inputEl.triggerEventHandler('compositionstart'); inputNativeEl.value = 'updatedValue'; dispatchEvent(inputNativeEl, 'input'); @@ -2546,7 +2546,7 @@ import {NgModelCustomComp, NgModelCustomWrapper} from './value_accessor_integrat tick(); expect(inputNativeEl.value).toEqual('oldValue'); - inputEl.triggerEventHandler('compositionstart', null); + inputEl.triggerEventHandler('compositionstart'); inputNativeEl.value = 'updatedValue'; dispatchEvent(inputNativeEl, 'input'); @@ -2578,7 +2578,7 @@ import {NgModelCustomComp, NgModelCustomWrapper} from './value_accessor_integrat tick(); expect(inputNativeEl.value).toEqual('oldValue'); - inputEl.triggerEventHandler('compositionstart', null); + inputEl.triggerEventHandler('compositionstart'); inputNativeEl.value = 'updatedValue'; dispatchEvent(inputNativeEl, 'input');