facebook/hhvm — pull request #1516 by Rican7 (2014-01-08 08:03:35+00:00)
Title: Add Klein to framework test runner

This PR adds [klein][klein-repo] to the framework test runner script mentioned in the [hhvm.com article][hhvm-blog-article].

Klein is a popular routing library (with hints of a micro-framework) with [100% code coverage][100-percent-code-coverage] via PHPUnit. Its actively developed and is compatible with 100% passing tests in PHP 5.3, 5.4, and 5.5.

Currently, its [failing a few tests][a4e9c21-travis-ci-hhvm-build] that have to do with PHPUnit's [Data Providers][phpunit-data-providers]. It seems that the keys in the provided data arrays are being stripped for some reason.

Also, tests relating to sessions and/or tests run in isolated processes seem to be failing also. I'm not sure on how HHVM operates in this manner.

Finally, it seems as if there is an inconsistency between HHVM and PHP's UTF-8 behaviors with the `htmlentities()` function, as a test using that [method][escape-htmlentities-method] is returning data without UTF-8 characters being escaped.

Please let me know if/how I can help further in fixing any of these issues on my end.

[klein-repo]: https://github.com/chriso/klein.php
[hhvm-blog-article]: http://www.hhvm.com/blog/2813/we-are-the-98-5-and-the-16
[100-percent-code-coverage]: http://reports.dev.metroserve.me/klein-a4e9c21-code-coverage/
[a4e9c21-travis-ci-hhvm-build]: https://travis-ci.org/chriso/klein.php/jobs/16573803
[phpunit-data-providers]: http://phpunit.de/manual/3.7/en/writing-tests-for-phpunit.html#writing-tests-for-phpunit.data-providers
[escape-htmlentities-method]: https://github.com/chriso/klein.php/blob/a4e9c2110933c600b3498b5b42ac9804f9f05a62/src/Klein/ServiceProvider.php#L251