Commit Graph

409 Commits

Author SHA1 Message Date
Mike Jolley eec9ce5b41 Revert addition of _delete_extra_meta_data
This essentially removes the ability to delete meta which is not great.

@justinshreve you added this in
https://github.com/woothemes/woocommerce/commit/e3b1f6dbc9558bae606fa76e
6941175582a301b7 - can you tell me what problems it was causing you so
we can add a different fix if needed?
2016-08-12 16:41:06 +01:00
Justin Shreve a610c6a804 Update the Customers API to use the WC_Customer CRUD Class
Also:
* Introduces Tests for the Customer REST API
* Fixes a few API and test issues from recent CRUD changes
* Adds some missing billing_ and shipping_ meta data functions to Customer CRUD
2016-08-11 10:30:44 -07:00
Justin Shreve 35cae38aa2 Fix issues from PR review: sanitize/escape fixes in wp-admin, remove modes. 2016-08-09 10:14:47 -07:00
Justin Shreve b198e6d65b Add the ability to see and update system status modes (shipping debug, template debug, uninstall...) 2016-08-09 09:51:30 -07:00
Justin Shreve 9dbd365be8 First pass at system status tools. Fully functioning endpoints for listing tools, listing data about a specific tool, and executing a tool. 2016-08-09 09:51:30 -07:00
Mike Jolley 4ac4bcaa08 Merge branch 'master' into WC-CRUD
# Conflicts:
#	tests/unit-tests/cart/cart.php
2016-08-09 11:08:21 +01:00
Mike Jolley cfe28c9b25 Made WC_Logger pluggable via wc_get_logger function.
Closes #11474
2016-08-08 13:59:23 +01:00
Mike Jolley 1c592b3872 Merge pull request #11208 from woothemes/orders-crud-classes
Orders crud classes
2016-08-05 15:44:15 +01:00
Mike Jolley 152134ed5e Add unit test for #11626 2016-08-05 12:11:35 +01:00
Mike Jolley ccad4d2df3 Merge pull request #11561 from woothemes/add/product-reviews-create-and-update
Add tests, create, update, delete, and batch to the Product Reviews API
2016-08-05 11:16:42 +01:00
Justin Shreve 59a68e11e3 Remove test for number of meta, since we don't delete extra meta bits anymore. The test for content is enough. 2016-08-04 13:17:53 -07:00
Justin Shreve f4353f6aa9 Don't save to the database if we are working with sessions, save to the session when save() is called instead. 2016-08-04 11:39:34 -07:00
Justin Shreve 47c299583d Merge pull request #11618 from woothemes/update/wp-admin-system-status
Update wp-admin's system status page to share backend code with the API
2016-08-04 10:55:19 -07:00
Mike Jolley 8867368b97 Fix unit tests 2016-08-04 17:24:23 +01:00
Mike Jolley 1bc9da3e91 Merge branch 'master' into WC-CRUD
# Conflicts:
#	includes/class-wc-coupon.php
2016-08-04 12:10:04 +01:00
Justin Shreve 8df6ff3c7b Convert wp-admin's system status page to use the same backend code as the API. 2016-08-03 10:50:47 -07:00
Mike Jolley 837e08143b Merge branch 'master' into orders-crud-classes
# Conflicts:
#	includes/abstracts/abstract-wc-order.php
2016-08-03 12:32:27 +01:00
Justin Shreve 7529b0b3e9 Code cleanup 2016-08-02 10:30:43 -07:00
Justin Shreve a305da25ef Add batch support to the product reviews endpoint. 2016-08-02 10:30:43 -07:00
Justin Shreve b8ec255ea8 First pass at a product reviews REST API that supports creating/updating/deleting product reviews. 2016-08-02 10:30:43 -07:00
Justin Shreve 9396c5436b Make sure that the create shipping zone uses the correct permissions function. Also makes sure creating the shipping zone returns 201, with the location of the new entity, like other endpoints. 2016-08-02 10:26:26 -07:00
Justin Shreve 9a03eb4407 Use the new API test base for shipping zone tests. 2016-08-02 10:10:47 -07:00
Justin Shreve 33e0b367ac Add new line at end of files. 2016-08-02 10:10:47 -07:00
Jeff Stieler 105064ad26 Test coverage for getting a single shipping zone method. 2016-08-02 10:10:47 -07:00
Jeff Stieler e007bc1778 Test coverage for all shipping zone methods endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler cdc90f5633 Test coverage for shipping zone method routes. 2016-08-02 10:10:47 -07:00
Jeff Stieler b9a0367cfa Test coverage for update shipping zone locations endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler e5fac4911e Test coverage for requesting shipping zone locations with an invalid ID. 2016-08-02 10:10:47 -07:00
Jeff Stieler 0db15c5328 Add test coverage for shipping zone locations retrieval endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler 9946d028f2 Add “described by” link to shipping zones endpoint response. 2016-08-02 10:10:47 -07:00
Jeff Stieler 9b564b87b1 Add test coverage to single shipping zone retrieval endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler 6a9ba5b9f3 Add test coverage for shipping zone update endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler e037cf661e Add test coverage to shipping zone creation endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler 3492f397d4 Add test coverage for shipping zone schema endpoint. 2016-08-02 10:10:47 -07:00
Jeff Stieler e4ccede35f Test coverage for /shipping/zones.
Covers success, shipping disabled, and insufficient permissions cases.
2016-08-02 10:10:47 -07:00
Jeff Stieler bbe5ffc295 Add helper method to create shipping zones during testing. 2016-08-02 10:10:47 -07:00
Jeff Stieler 2a7e81a809 Initial Shipping Zones unit test coverage, testing route registration. 2016-08-02 10:10:47 -07:00
Justin Shreve 72f01d9c0a Merge pull request #11548 from woothemes/system-status-api
Add system status info REST API endpoint
2016-08-02 10:08:45 -07:00
Fredrik Forsmo 9d07cf59b1 Use long array syntax instead of short array syntax 2016-08-01 18:08:42 +02:00
Fredrik Forsmo 88d8140110 Add tests for `wc_site_is_https`
Add callback url to `wc_site_is_https` test
2016-08-01 14:31:54 +02:00
Mike Jolley e735903c04 Unit tests for wc_add_to_cart_message
For #11563
2016-08-01 11:42:19 +01:00
Justin Shreve 5d95b76e1a Rename the endpoint from system-status to system_status (matches the rest of WC endpoints). 2016-07-27 14:06:14 -07:00
Justin Shreve e436e96654 Add missing textdomains, remove wc_ prefix from a few fields, spacing/coding standard fixes. 2016-07-27 13:59:16 -07:00
Justin Shreve 041b5745b4 Finish system status tests 2016-07-27 12:19:14 -07:00
Justin Shreve 817ed71d2a Test file rename 2016-07-27 10:29:45 -07:00
Justin Shreve 8c682d7510 Test base 2016-07-27 10:29:45 -07:00
Justin Shreve 9adce86239 Use the new REST unit test base class 2016-07-26 14:19:50 -07:00
Justin Shreve 55b37b3338 Rename helper class from 'legacy' to be more descriptive of whats happening. Registering wp-admin settings to the REST API. 2016-07-26 11:27:48 -07:00
Justin Shreve 838c27438e Merge branch 'settings-api' of https://github.com/woothemes/woocommerce into settings-api 2016-07-26 11:11:09 -07:00
Justin Shreve 02915e6056 Rename helper class from 'legacy' to be more descriptive of whats happening. Registering wp-admin settings to the REST API. 2016-07-26 11:08:29 -07:00
Justin Shreve 226fdb870b Misc cleanup of descriptions and some error strings. 2016-07-26 10:24:15 -07:00
Jeff Stieler 2fcb15d9cf Rename WC_Rest_Settings_Groups_Controller to WC_Rest_Settings_Controller. 2016-07-26 10:24:15 -07:00
Jeff Stieler f168f356bc Rename WC_Rest_Settings_Controller to WC_Rest_Settings_Options_Controller. 2016-07-26 10:24:15 -07:00
Jeff Stieler a0f227a17c Add test coverage for all WP_Error-returning cases in the Settings API. 2016-07-26 10:24:15 -07:00
Jeff Stieler 91a86efed9 Add test coverage for register_legacy_settings(). 2016-07-26 10:24:15 -07:00
Jeff Stieler b4eaa12f7a Break “legacy” setting to “new” conversion into it’s own method. 2016-07-26 10:24:15 -07:00
Jeff Stieler 51cae9c441 Add test for register_legacy_group() and coverage annotations. 2016-07-26 10:24:15 -07:00
Jeff Stieler 09f7723457 Add initial test file for WC_Register_Legacy_Settings, with test for constructor. 2016-07-26 10:24:15 -07:00
Jeff Stieler cca2a0ff5e Reuse WC Admin Setting’s save_fields() instead of duplicating code for sanitizing saved values. 2016-07-26 10:24:15 -07:00
Jeff Stieler 83d252b6d3 Remove namespace from Settings API unit test file.
This fails builds on PHP 5.2.x.
2016-07-26 10:24:15 -07:00
Jeff Stieler 95990e32ca Fix unit tests. 2016-07-26 10:24:15 -07:00
Justin Shreve 3de423b5c2 Wrap up settings api 2016-07-26 10:24:15 -07:00
Justin Shreve 5de870bb08 Wrap up settings endpoints for updating, finish tests. 2016-07-26 10:24:15 -07:00
Justin Shreve 46028e0151 Refactor down to two concepts - settings groups and settings. Fix up tests, and start working on returning actual settings and their values. 2016-07-26 10:24:15 -07:00
Justin Shreve 8fee6bd3b9 Add a test for settings groups, make sure any bad keys/values are filtered out, update docs. 2016-07-26 10:24:15 -07:00
Justin Shreve 12aa11d5be Misc cleanup. 2016-07-26 10:24:15 -07:00
Justin Shreve 19d3bc4737 Add a permissions check to the locations endpoints and fill out the tests for them. 2016-07-26 10:24:15 -07:00
Justin Shreve 21b66f94ff More setting location tests. 2016-07-26 10:24:15 -07:00
Justin Shreve 5ee4b5d4dd Add the ability to get data on a single location. 2016-07-26 10:24:15 -07:00
Justin Shreve 11a3c89a2f Make /settings/locations work properly. Add skeleton for tests and add register_routes test. 2016-07-26 10:24:15 -07:00
Justin Shreve a9bb988873 Initial /settings API controller and /settings/locations route. Loads the WP-API and registers our namespace temporarily until WP-API is loaded by WC core. 2016-07-26 10:24:15 -07:00
Manos Psychogyiopoulos 17c6108832 ensure WC_ROUNDING_PRECISION is defined and use it as a low precision boundary in wc_get_rounding_precision() 2016-07-21 12:14:12 +03:00
Justin Shreve 57fd38c1a8 Misc cleanup of descriptions and some error strings. 2016-07-19 11:24:05 -07:00
Jeff Stieler 6f36179fe6 Rename WC_Rest_Settings_Groups_Controller to WC_Rest_Settings_Controller. 2016-07-19 10:41:22 -07:00
Jeff Stieler f56a79c74b Rename WC_Rest_Settings_Controller to WC_Rest_Settings_Options_Controller. 2016-07-19 10:41:22 -07:00
Jeff Stieler cf65ff53c5 Add test coverage for all WP_Error-returning cases in the Settings API. 2016-07-19 10:41:22 -07:00
Jeff Stieler ca15237332 Add test coverage for register_legacy_settings(). 2016-07-19 10:41:22 -07:00
Jeff Stieler 1fc539992c Break “legacy” setting to “new” conversion into it’s own method. 2016-07-19 10:41:22 -07:00
Jeff Stieler 6c53cfa167 Add test for register_legacy_group() and coverage annotations. 2016-07-19 10:41:22 -07:00
Jeff Stieler 3747505d83 Add initial test file for WC_Register_Legacy_Settings, with test for constructor. 2016-07-19 10:41:22 -07:00
Jeff Stieler 1cde743121 Reuse WC Admin Setting’s save_fields() instead of duplicating code for sanitizing saved values. 2016-07-19 10:41:22 -07:00
Jeff Stieler a53040f186 Remove namespace from Settings API unit test file.
This fails builds on PHP 5.2.x.
2016-07-19 10:41:22 -07:00
Jeff Stieler fde3318b41 Fix unit tests. 2016-07-19 10:41:22 -07:00
Justin Shreve 6bb546e11c Wrap up settings api 2016-07-19 10:41:22 -07:00
Justin Shreve 05a2644066 Wrap up settings endpoints for updating, finish tests. 2016-07-19 10:41:22 -07:00
Justin Shreve fa5425109e Refactor down to two concepts - settings groups and settings. Fix up tests, and start working on returning actual settings and their values. 2016-07-19 10:41:22 -07:00
Justin Shreve f425a3735a Add a test for settings groups, make sure any bad keys/values are filtered out, update docs. 2016-07-19 10:41:22 -07:00
Justin Shreve 06e787a26d Misc cleanup. 2016-07-19 10:41:22 -07:00
Justin Shreve 6c2be482ca Add a permissions check to the locations endpoints and fill out the tests for them. 2016-07-19 10:41:22 -07:00
Justin Shreve eb4291f699 More setting location tests. 2016-07-19 10:41:22 -07:00
Justin Shreve 9369d55ff4 Add the ability to get data on a single location. 2016-07-19 10:41:22 -07:00
Justin Shreve c6b0debe26 Make /settings/locations work properly. Add skeleton for tests and add register_routes test. 2016-07-19 10:41:22 -07:00
Justin Shreve fc076eb57e Initial /settings API controller and /settings/locations route. Loads the WP-API and registers our namespace temporarily until WP-API is loaded by WC core. 2016-07-19 10:41:22 -07:00
Claudio Sanches 7778583340 Fixed wrong number of decimal precision, closes #11368 2016-07-11 17:26:54 +02:00
Claudio Sanches 7d9d091767 Fixed mixed tabs and spaces 2016-07-11 16:56:35 +02:00
Claudio Sanches c59a5c0c31 Say hello to woocommerce.com 2016-07-05 19:52:16 -03:00
Claudio Sanches 08f95481e0 Normalize the "Read more" button text, closes #11319 2016-06-30 15:16:26 -03:00
Claudio Sanches 18b1b8c238 Disable empty my account endpoints, closes #11274 2016-06-30 13:58:10 -03:00
Mike Jolley a942cfade8 Make sure page ID is > 0
Closes #11305
2016-06-30 12:23:41 +01:00
Mike Jolley a22859ae32 Abstract unit tests 2016-06-23 15:52:12 +01:00
Mike Jolley 13d293dd25 abstract total unit tests 2016-06-22 17:02:22 +01:00
Mike Jolley 46439ddba5 Refund unit tests 2016-06-22 16:31:05 +01:00
Mike Jolley 9da9d3bf69 Unit test conditional functions 2016-06-22 15:38:28 +01:00
Mike Jolley 9fc3e24647 getter unit tests 2016-06-22 14:28:00 +01:00
Mike Jolley 8287b13cf1 Address and CRUD unit tests 2016-06-22 14:07:42 +01:00
Mike Jolley 9c7abaedcb Fixed unit tests 2016-06-22 12:29:23 +01:00
Claudio Sanches 73c5f91622 Fixed unit tests for account menus 2016-06-14 21:49:32 -03:00
Claudio Sanches 5a1388ee97 [TESTS] For REST API functions 2016-06-13 22:58:45 -03:00
Mike Jolley 78142a8ebb Merge branch 'master' into WC-CRUD
# Conflicts:
#	includes/class-wc-checkout.php
#	includes/class-wc-coupon.php
#	includes/class-wc-customer.php
#	tests/unit-tests/cart/cart.php
#	tests/unit-tests/cart/functions.php
#	tests/unit-tests/coupon/coupon.php
#	woocommerce.php
2016-06-13 15:01:58 +01:00
Mike Jolley 9d220450f0 Fix unit test 2016-06-01 12:39:52 +01:00
Mike Jolley 854793e5ea Fix unit test by using available gateway 2016-05-27 11:29:19 +01:00
Claudio Sanches e39274e753 HTTPS for everybody 2016-05-26 22:48:49 -03:00
Mike Jolley 18b45f55cd @claudiosmweb unregister_shipping_methods didn't unset correctly - this fixes unit tests 2016-05-26 13:03:40 +01:00
Claudio Sanches 1727d043a0 Tests for wc_get_shipping_method_count() 2016-05-25 18:29:38 -03:00
Claudio Sanches d43145d979 Fixed tests for wc_get_account_menu_items()
cc @mikejolley
2016-05-24 19:11:21 -03:00
Mike Jolley a02ac79339 Change range symbol to ... to avoid conflicts with postcodes with hyphens 2016-05-23 17:30:37 +01:00
Mike Jolley e00c3450c5 Discount rounding logic improvements
Instead of rounding the single item discount amount, this rounds the
line to the store DP setting before running tax logic.

Fixes #10963
Also works with #10573

Includes unit tests
2016-05-23 16:56:31 +01:00
Mike Jolley 26db1bb52b Add test case for #10963 2016-05-23 16:23:51 +01:00
Mike Jolley 83857de24d Fix tax label test 2016-05-16 12:00:03 +01:00
Mike Jolley 57ec0246d5 $ unit test 2016-05-16 11:38:22 +01:00
Mike Jolley 87e9ccd343 Fixed wc_price unit test 2016-05-16 11:14:31 +01:00
Claudio Sanches 63b39e7a74 Fixed tests for WC_Tests_Install::test_in_plugin_update_message 2016-05-10 14:47:38 -03:00
Mike Jolley 0fb69be938 Unit test update - ranges do not expand 2016-04-22 18:04:04 +01:00
Claudio Sanches cfedab0d74 Added Bitcoin/BTC currency
@mikejolley
2016-04-18 20:28:04 -03:00
Claudio Sanches 71aa29d144 Added new 109 currencies
@mikejolley
2016-04-18 20:21:14 -03:00
Claudio Sanches b99fbe560a Fixed tests for currencies 2016-04-05 15:31:15 -05:00
Mike Jolley 17d11d76ce Tests failing due to missing SERVER_NAME 2016-03-23 15:35:06 +00:00
Mike Jolley 495aac2df1 Remove backslash 2016-03-23 14:28:45 +00:00
Mike Jolley 2fec0f425a Remove namespaces from tests for 5.2 support 2016-03-23 12:14:13 +00:00
Mike Jolley d4521df9d3 Fix zone test 2016-03-23 11:35:15 +00:00
Mike Jolley 8d76396eaf Merge pull request #10588 from justinshreve/payment-tokens-wc-data
Convert WC_Payment_Tokens to use the new WC_Data
2016-03-22 14:14:29 +00:00
Justin Shreve 1d35fd6d73 Convert WC_Payment_Tokens (and CC/eCheck tokens) to use the new WC_Data and meta handling code. 2016-03-21 11:06:17 -07:00
Justin Shreve 705213d4f5 Move meta_id into the _meta_data array instead of trying to use them as array keys.
This is so we can just use PHP's keys, instead of trying to add new meta and guess an avaible key.
2016-03-18 12:24:35 -07:00
Mike Jolley 1238a37124 Merge pull request #10576 from justinshreve/coupon-crud
Coupon CRUD
2016-03-18 11:12:32 +00:00
Justin Shreve e65ab6adec start transfering things to billing_ prefix 2016-03-17 12:39:29 -07:00
Justin Shreve 15e37ab66a Add meta handling to WC_Customer and fix some missing code with first and last name. 2016-03-17 12:03:23 -07:00
Justin Shreve 7f0e0c8f0c Finish proper integetration with WC_Data's meta methods. 2016-03-17 11:14:15 -07:00
Justin Shreve 0f1f6dddd1 Finish customer crud tests 2016-03-17 09:41:12 -07:00
Justin Shreve 8dbe673c89 Fix loading meta fields that are not address fields. Add some tests related to CRUD, and add stubs for the rest of the tests we will add. 2016-03-17 09:41:12 -07:00
Justin Shreve aa590f3845 Implement remaining customer get/setters, and start on tests. 2016-03-17 09:41:12 -07:00
Justin Shreve eb22c8b57d Initial start of WC_Customer CRUD refactor, start moving some logic to legacy class, implement WC_Data, and finally a functioning read() that works with passed DB customer info AND sessions. 2016-03-17 09:41:12 -07:00
Justin Shreve f65c9305bf Update WC_Coupon to use the new WC_Data class and meta methods. 2016-03-17 09:38:56 -07:00
Justin Shreve 90b9192c0c Combine standard getters and setters into one test to reduce code. 2016-03-17 09:19:29 -07:00
Justin Shreve 60085e582a Fix some comments/spacing issues. 2016-03-17 09:19:29 -07:00
Justin Shreve f973b9d122 Make some improvements to metadata. Don't return [0] array, allow setting custom meta with a WC_Coupon method. Fix up some tests. 2016-03-17 09:19:29 -07:00
Justin Shreve 69973d520e Update version strings 2016-03-17 09:19:28 -07:00
Justin Shreve 57f918fb03 Add Coupon REST API tests to verify nothing breaks API wise -- full set of tests even though we are just changing GET endpoints (increases test coverage) 2016-03-17 09:19:28 -07:00
Justin Shreve 0268a67c4b Address a few of the feedback items from the PR:
* Switch all coupon fields to _data
* Move coupon custom fields to _meta_data
* Shorten the 'yes' -> true checks
* Add a test for getting custom fields
2016-03-17 09:19:28 -07:00
Justin Shreve 50e1bc7117 Add tests for the getter/setter methods 2016-03-17 09:19:28 -07:00
Justin Shreve 7a0c8d146b Add the ability to create coupons via code (so things like Points & Rewards will still work). 2016-03-17 09:19:27 -07:00