To answer the question "How do we test a theming library?", there is an area of testing known as Visual regression/Perceptual diff testing. I wrote an article a while back which should be enlightening:
http://twolfson.com/2014-02-25-visual-regression-testing-in-travis-ci
The tl;dr of it is, log into application, navigate pages, take screenshots, compare screenshots to expected screenshots. Since the time of writing there have been some more testing libraries created, e.g. gemini, which is what I use at work (although with a mod for full page screenshots):
https://github.com/bem/gemini
We should be able to reuse the BrowserStack harness from gmusic.js to handle all the authentication and navigation.
For the interim, we should still have CI set up that only runs linting (so there's some test infrastructure).
To answer the question "How do we test a theming library?", there is an area of testing known as Visual regression/Perceptual diff testing. I wrote an article a while back which should be enlightening:
http://twolfson.com/2014-02-25-visual-regression-testing-in-travis-ci
The tl;dr of it is, log into application, navigate pages, take screenshots, compare screenshots to expected screenshots. Since the time of writing there have been some more testing libraries created, e.g. gemini, which is what I use at work (although with a mod for full page screenshots):
https://github.com/bem/gemini
We should be able to reuse the BrowserStack harness from
gmusic.jsto handle all the authentication and navigation.For the interim, we should still have CI set up that only runs linting (so there's some test infrastructure).