This commit simplifies WC_Customer_Download() tests by using hardcoded values for customer ID and e-mail instead of touching the database and creating a real customer for each test.
This commit improves WC_Customer_Download_Data_Store::get_downloads() performance by changing the way the SQL query is built. Before this change, this method would get all table fields even when just the permission_id field is returned. Now the method will get from the database only the fields that will be returned. The fields retrieved from the database can be controlled using the parameter `$args['return']`:
- 'objects' (default): all fields are retrieved from the database and an array of WC_Customer_Download objects is returned.
- 'ids': gets and return only permision_ids
- comma separated list of fields (new option added by this commit): gets and return only the required fields. Examples: 'user_email,download_id,order_id' or 'order_id,download_count'.
* Pass through additional args to wc_create_order in test
* Pass extra args to wc_create_order to improve coverage, test WP_Error check of wc_create_order
* wc_get_template_part test
* wc_enqueue_js test
* wc_get_log_file_name test
* wc_get_page_children test
* hash_equals test
* wc_rand_hash test
* wc_transaction_query test
* Fix script test and phpcs stuff
* Fix widget tests
* Move tests to correct file and fix phpcs
* Test for main WooCommerce class
* Check all class instances created from main class.
* Test all constants
* Test for deprecated hook handler classes as well
* Test template path constant
* Check static class instances
* get_cart_item_quantities test
* get_cart_item_quantities & get_cart_contents_weight tests
* check_cart_items test
* Check_cart_item_stock test
* Cart get_cross_sells test
* Cart get_tax_totals test
* WC_Customer_Download_Data_Store tests
This commit adds the exception message thrown when WC_Order::set_billing_email() is called with an invalid message to a test to fix it.
I couldn't find what change in WC codebase broke the test and I'm not sure why it is failing only when running using PHP 5.6:
https://travis-ci.org/woocommerce/woocommerce/jobs/315750242#L600