=== Yuva Testing Utilities ===
Contributors: theyuvarajs
Tags: testing, developer tools, woocommerce, utilities, staging
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.2.6
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Developer and tester toolkit for WordPress and WooCommerce. Fast, lightweight tools inside the admin for common local and staging tasks.

== Description ==

Yuva Testing Utilities is built for developers and testers who want quick, lightweight tools inside the WordPress admin — no bloat, no complicated setup.

Best used in **local** or **staging** environments where you frequently test emails, checkout flows, or need to clean up database content without touching production.

**Modules:**

* **Emails** — Configure SMTP, log and preview outgoing emails, send test emails.
* **Auto-Fill** — Fill the WooCommerce checkout with random user data on every click. Supports classic and Blocks checkout.
* **Downloader** — Download any installed plugin or theme as a .zip, or fetch the WooCommerce sample products CSV.
* **Database** — Inspect and clean up post types, database options, post meta, and user meta.
* **Test Data** — Generate and delete test users, WooCommerce orders, and coupons.
* **Tools** — Manage transients, view and trigger cron jobs, tail log files, inspect PHP constants, and view server info.

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/yuva-testing-utilities/`
2. Activate the plugin from **Plugins → Installed Plugins**
3. Open **Tools → Testing Utilities**

== Frequently Asked Questions ==

= Is this plugin meant for production? =

It can run on production but is primarily designed for **development and staging** environments.

= Does this plugin send any data externally? =

Only two modules make external requests: **Auto-Fill** calls RandomUser.me to fetch placeholder user data, and **Test Data** fetches the WooCommerce sample products CSV from GitHub when generating test products. No personal or site data is sent.

= Why does the plugin require WordPress 6.2? =

The plugin uses the `%i` (identifier) placeholder in `$wpdb->prepare()`, introduced in WordPress 6.2, to safely parameterise table and column names.

== Changelog ==

= 1.2.6 =
* Update - Supported Coupon code prefix option.
* Update - Now generated test data ID's are clickable to edit page.
* Fix - Compatibility with minimum php 7.4.

= 1.2.4 =
* Renamed Cleanup module to Database; added User Meta tab.
* Added Test Data module with generators for users, WooCommerce orders, products, and coupons.
* Fixed Auto-Fill not populating fields on WooCommerce Checkout Blocks.

= 1.2.3 =
* Added Downloader module.
* Added Developer Tools module (transients, cron viewer, log viewer, user generator).
* Added SMTP migration for legacy flat option keys.

= 1.2.0 =
* Added email logging.

= 1.1.0 =
* Added cleanup tools.
* Moved Testing Utilities menu under Tools.

= 1.0.0 =
* Initial release.

== Upgrade Notice ==

= 1.2.6 =
Compatibility with minimum php 7.4. Safe to update.

== External services ==

* **RandomUser.me** (`https://randomuser.me/api/`) — used by Auto-Fill to generate random placeholder user data. No personal or site data is sent.
* **GitHub / WooCommerce** (`https://raw.githubusercontent.com/woocommerce/woocommerce/`) — used by Downloader and Test Data to fetch the WooCommerce sample products CSV on demand.
