aka “WordPress, you suck in the most Open Source way.”
Listening to my wife deal with plugin conflicts, inconsistent and poorly-explained structural changes in decimal upgrades of WordPress, and generally being upset about what broke and how to fix it since she “upgraded” to the latest WP.
Somebody who want to, should do this: Create a real, executable, comprehensive set of unit and functional tests for all of WordPress The whole damned thing. In PHP because that’s what it’s written in. With what the “open developer” community thinks of as complete test coverage.
And the same for every goddamned plugin. Pardon me: you lazy, stupid, uncommunicative cowboys. I don’t care if you’re saving the world by working “for free” and making the whole thing “better” with every “improvement”: the results are a black box to anybody who can’t read your mind, or glance at your opaque “elegant” code and see in a moment what you mean.
Some of us are stupid.
I want every speck of code, annotated and verifiable with a useful test harness. And if you don’t do it, then dammit somebody who isn’t you ought to.
And take phpUnit, or some equivalent simple solution, and stick it in a damned WP plugin.
I’m seeing a simple list of tests, in a table organized by function name or class or module of the software—whatever you want—and a simple descriptive name, a link to dive down into the code of the test, and a red or green indicator sitting there to show whether the test passed or not.
And so you install WP clean for an empty new blog with pristine un-munged plugins, OOTB, and you go to the TEST plugin page, and you click “run” and you get all green boxes.
Or if you upgrade from an earlier version, you have all your wonky content and maybe some legacy plugins, and you go to the TEST plugin page, and you click “run” and you get some RED boxes.
And of course, at that point, you know what you broke and potentially how to fix it.
Or am I missing the accompanying unit tests in WP? Are they in some .php file I can’t quite put my finger on?
I’m old; maybe it’s my eyes. That must be it.
or glance at your opaque “elegant” code and see in a moment what you mean.
They don’t have any idea, either. This is from taxonomy.php