Presently, Bouncer has a few tests in terms of the admin UI(python tests) and some tests for the database abstraction layer, but there's little testing on the bouncer functionality itself. It's important that QA's automation tests and manual verifications not be the only method of determining whether or not a change has broken Bouncer. This bug is intended to track the discussion and construction of tests to do the following: * Appropriately test the custom code in the Tuxedo admin UI * Appropriately test the bouncer code * Test bouncer's components and custom libraries The scope of work in this involves getting the existing tests running, determining the code coverage and functionality tested, correcting tests that fail due to code changes that were not reflected in the test code, and addition of new tests to the various areas along with the new features.
I've decided to use PHPUnit for this, but getting the dependencies right for packaging PHPUnit is non-trivial. I've decided to go with using PEAR installation of PHPUnit. I've also modified the code to make it testable, the next step being to actually write the tests.
This is completed. There are tests for bouncer. More can stand to be added as the code changes.
Thanks Brandon! This is fantastic news - test coverage ftw. Can you provide an url to the test code? Also what env are the tests running in and how often are they run?
These tests run against the developer code, and aren't part of integration. They're run before every commit.
Bumping to verified per comment and comment 4. Thanks again Brandon. Woot
Tests live in the https://github.com/mozilla/tuxedo repository alongisde the bouncer code.