Adding mouse unit tests and allowing any number of buttons