UNPKG

bootstrap-vue

Version:

With more than 85 components, over 45 available plugins, several directives, and 1000+ icons, BootstrapVue provides one of the most comprehensive implementations of the Bootstrap v4 component and grid system available for Vue.js v2.6, complete with extens

67 lines (60 loc) 1.83 kB
import { BvEvent } from './bv-event.class' describe('utils/BvEvent class', () => { it('works', async () => { const event = new BvEvent('foobar') expect(event).toBeInstanceOf(BvEvent) expect(event.type).toBe('foobar') }) it('throws exception if no type given', async () => { let event = null let failed = false try { event = new BvEvent() } catch (e) { failed = true } expect(event).not.toBeInstanceOf(BvEvent) expect(event).toBe(null) expect(failed).toBe(true) }) it('supports cancelable events', async () => { const event = new BvEvent('foobar', { cancelable: true }) expect(event).toBeInstanceOf(BvEvent) expect(event.type).toBe('foobar') expect(event.cancelable).toBe(true) expect(event.defaultPrevented).toBe(false) event.preventDefault() expect(event.defaultPrevented).toBe(true) }) it('supports non cancelable events', async () => { const event = new BvEvent('foobar', { cancelable: false }) expect(event).toBeInstanceOf(BvEvent) expect(event.type).toBe('foobar') expect(event.cancelable).toBe(false) expect(event.defaultPrevented).toBe(false) event.preventDefault() expect(event.defaultPrevented).toBe(false) }) it('supports built in properties', async () => { const event = new BvEvent('foobar', { target: 'baz' }) expect(event).toBeInstanceOf(BvEvent) expect(event.type).toBe('foobar') expect(event.cancelable).toBe(true) expect(event.target).toBe('baz') }) it('supports custom properties', async () => { const event = new BvEvent('foobar', { custom: 123 }) expect(event).toBeInstanceOf(BvEvent) expect(event.type).toBe('foobar') expect(event.cancelable).toBe(true) expect(event.custom).toBe(123) }) })