This patch fixes state matcher by checking if the subject is a callable. Under hhvm, callables will pass the first condition of support for state matcher, which causes the matcher to attempt to call an isCallable method on the callable itself. This is not the wanted behaviour, the beCallable should be picked up for support by the scalar matcher, and this is not happening because is_object returns true in the state matcher under hhvm. With this patch this is no longer the case and phpspec will work as expected under hhvm.
Added a valid JUnit Formatter
Self-merging following conversation with @marcelloduarte - we agreed we wanted this for 2.0
Added "time", "tests", "failures" and "broken" attributes
Added "time", "failures", "errors" and "skipped" attributes
Escaped exception trace and message to avoid messing junit xml
Although it does not handle advanced data, it is JUnit xsd compliant!
Change spec and add new scenarios.
Implemented class name validator for describe command