Put the conditionals *inside* the tests and then skip the test if not applicable, otherwise BATS gives errors.  It does some sort of parsing of the test file I think, so when we had conditionals around stuff like EPEL, it would throw errors on Debian as the test it expected to be defined wasn't actually executed at all.