E.g. if manage_stock property has been changed in the object/local copy of the product while updating it, but the product has not been saved to the db yet, the lookup table update would ignore stock quantity update.
This commit fixes all 1533 PHPCS errors that PHPCBF can fix automatically in the tests/ directory. Before this change there was a total of 3106 PHPCS errors in the WooCommerce repository and now there is 1573 errors.
This commit moves the `dependencies` section in package.json to appear before `devDependencies` as the former is more important than the latter and this seems to be the standard for other package.json files.
This commit moves github-contributors-list in package.json from the `dependencies` section to the `devDependencies` section. This package is used to generate the list of WC contributors for each release and it is not needed to run WC.
This commit updates npm packages to their latest versions:
- chromedriver 2.46.0 → 74.0.0
- husky 1.3.1 → 2.1.0
- node-sass 4.11.0 → 4.12.0
Those three packages are devDependencies and since we are early in the WC 3.7 release cycle this change shouldn't cause any issue. I'm doing this to see if updating the chromedriver package fixes the failing e2e test that is failing on Travis (example of a failure: https://travis-ci.org/woocommerce/woocommerce/jobs/524016366#L829). I'm not able to reproduce this error on my local machine and in the past updating chromedriver fixed failing e2e tests.
PR #23196 added a workaround to `parse_str()` limitation when dealing with full-stops, pluses, and spaces in the parameter key. This workaround involved temporarily replacing those three characters with placeholders before calling `parse_str()` and then replacing back to the original form. This commit fixes a bug in this logic that was replacing back only parameters keys and not parameters values.
For example, if the query string is `?query.parameter=foo.bar`, the resulting <input> field contained `foo{dot}bar`, instead of the expected `foo.bar`.
Allow product object to be passed through, remove cache clearing which is done during save(), and allow the caller to define whether or not an update routine is already in progress.
It is not necessary to use the $message parameter of assertEquals() to output the value of $actual_html, as PHPUnit already output this variable value in case of error.