Misleading Code Coverage Reports for Switch Statements

I was recently investigating the code coverage of theĀ map_meta_cap() function in WordPress’ core unit test suite — particularly the large switch statement contained within the function. I was surprised to see that the coverage was higher than I was expecting, because I know for a fact that several meta capabilities aren’t tested.

It turns out there is a subtle code coverage reporting issue for switch statements that allow multiple conditions to trigger one action.

Continue reading “Misleading Code Coverage Reports for Switch Statements”