Files refuse to be loaded directly
Every PHP file in the plugin now exits if it is reached outside WordPress.
Nothing about the plugin changes when it runs normally; this closes the door on
a file being requested straight from the browser.
Behind the scenes
Adding those guards revealed that a large part of the test suite had been
passing without running. The tests load plugin files directly, so the new guard
stopped them before their first check, and the runner could not tell a test that
passed from one that never started. It can now, and one test that had gone stale
was repaired.





