describe('Core htmx extension tests', function() { beforeEach(function() { this.server = makeServer() clearWorkArea() }) afterEach(function() { this.server.restore() clearWorkArea() }) it('should support event cancellation by returning false', function() { htmx.defineExtension('ext-prevent-request', { onEvent: function(name, evt) { if (name === 'htmx:beforeRequest') { return false } } }) this.server.respondWith('GET', '/test', 'clicked!') var div = make('
Click Me!
') div.click() this.server.respond() div.innerHTML.should.equal('Click Me!') }) it('should support event cancellation with preventDefault', function() { htmx.defineExtension('ext-prevent-request', { onEvent: function(name, evt) { if (name === 'htmx:beforeRequest') { evt.preventDefault() } } }) this.server.respondWith('GET', '/test', 'clicked!') var div = make('
Click Me!
') div.click() this.server.respond() div.innerHTML.should.equal('Click Me!') }) })