m- icon indicating copy to clipboard operation
m- copied to clipboard

Need test coverage

Open jfbrennan opened this issue 3 years ago • 4 comments

Goal is 100% coverage

jfbrennan avatar Sep 08 '20 21:09 jfbrennan

htmx uses sinon and mocha/chai:

https://github.com/bigskysoftware/htmx/tree/master/test

And then mocha-chome for headless testing:

https://github.com/bigskysoftware/htmx/blob/938130040f13eeee55965a54bb8c9f722315d881/package.json#L24

not sure sinon is as useful for you, since htmx has to mock out AJAX

1cg avatar Oct 23 '20 14:10 1cg

👋🏻 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 avatar Aug 10 '21 21:08 JessicaSachs

@JessicaSachs thanks for the suggestion. I like Cypress for e2e. I'll have to check out the ct stuff.

jfbrennan avatar Aug 12 '21 06:08 jfbrennan

@1cg was thinking jest, will have to go take a look at mocha-chrome. Thanks!

jfbrennan avatar Aug 12 '21 06:08 jfbrennan