ngMocks.trigger
ngMocks.trigger
provides a simple interface which allows to trigger all the variety of events and to customize their properties.
Common events
For example, a focus event can be triggered like that:
const el = ngMocks.find('input');
ngMocks.trigger(el, 'focus');
ngMocks.trigger(el, 'blur');
ngMocks.trigger(el, 'mouseleave', {
x: 1,
y: 2,
});
or simply with selectors which are supported by ngMocks.find
.
ngMocks.trigger('input[name="address"]', 'focus');
ngMocks.trigger(['name', 'address'], 'blur');
Key combinations
In order to simulate shot keys and test their handlers,
for example, Control+Shift+Z
:
const el = ngMocks.find('input');
ngMocks.trigger(el, 'keydown.control.shift.z');
ngMocks.trigger(el, 'keyup.meta.s');
Custom events
Instead of the name of an event, an event object can be passed.
In order to create an event object ngMocks.event
can be used.
const el = ngMocks.find('input');
const event = new CustomEvent('my-event');
ngMocks.trigger(el, event);