Open jfbrennan opened 4 years ago
htmx uses sinon and mocha/chai:
https://github.com/bigskysoftware/htmx/tree/master/test
And then mocha-chome for headless testing:
not sure sinon is as useful for you, since htmx has to mock out AJAX
👋🏻 I highly suggest using Cypress Component Testing. I'm the maintainer and I'm happy to help you out. Right now we have framework-specific bindings, but writing a wrapper for vanilla JS is about ~120 lines by leveraging @cypress/mount-utils
.
Happy to publish it under Cypress's official namespace if you'd like to send me a PR or an isolated repository.
Cypress CT is a great solution for your a11y-focused library because we actually test in the web, and we have a lot of support for detecting if things are rendered vs visually hidden or clickable. There are things you simply cannot test with jest, etc.
Technically, you could think of it as "Mocha + Chrome", but with a driver that mimics usage more realistically than a programmatic .trigger('click')
is able to do. Happy to chat in Discord.
@JessicaSachs thanks for the suggestion. I like Cypress for e2e. I'll have to check out the ct stuff.
@1cg was thinking jest, will have to go take a look at mocha-chrome. Thanks!
Goal is 100% coverage