Go to file
Scott Taylor 535ae26afd Fix several esoteric errors related to AJAX unit tests for comments:
* `wp_ajax_get_comments()` relies on the `$post_id` global - even though `$_POST['p']` is passed to every action in the test methods. If `$post_id` is still lingering in between tests and doesn't match `p` in the request, the cap check might pass while the queries for comments will blow up. I added `unset( $GLOBALS['post_id'] )` to `Tests_Ajax_GetComments::setUp()`.
* If the global `$post_id` is empty, but `$_REQUEST['p']` is not, `$post_id` is now set to `absint( $_REQUEST['p'] )` and sanity-checked in `wp_ajax_get_comments()`.
* `map_meta_cap()` always assumes that `get_comment()` succeeds when checking for the `edit_comment` cap. It doesn't. I added sanity checks in a few places where it will break early if `get_post()` or `get_comment()` are empty.
* `wp_update_comment()` always assumes `get_comment()` succeeds. It doesn't. I added a check for empty.

All AJAX unit tests run and pass in debug mode. All general unit tests pass against these changes.

Fixes #25282.



git-svn-id: https://develop.svn.wordpress.org/trunk@25438 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-14 18:35:43 +00:00
src Fix several esoteric errors related to AJAX unit tests for comments: 2013-09-14 18:35:43 +00:00
tests Fix several esoteric errors related to AJAX unit tests for comments: 2013-09-14 18:35:43 +00:00
tools/i18n Remove lingering instances of call time pass-by-reference, limited to instances of callable - use $this instead of &$this. 2013-09-05 16:33:50 +00:00
.gitignore Move wp-config-sample.php to the root of develop.svn. 2013-08-29 20:45:17 +00:00
Gruntfile.js Use matchdep for Grunt tasks. 2013-09-04 20:50:29 +00:00
package.json Use matchdep for Grunt tasks. 2013-09-04 20:50:29 +00:00
phpunit.xml.dist Move PHPUnit tests into a tests/phpunit directory. 2013-08-29 18:39:34 +00:00
wp-config-sample.php Move wp-config-sample.php to the root of develop.svn. 2013-08-29 20:45:17 +00:00
wp-tests-config-sample.php Change DB_NAME in wp-tests-config-sample.php to be something other than the placeholder in wp-config-sample.php. 2013-09-03 23:59:26 +00:00