OXIESEC PANEL
- Current Dir:
/
/
opt
/
.wp-cli
/
packages
/
vendor
/
wp-cli
/
extension-command
/
features
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/06/2025 12:29:47 PM
rwxr-xr-x
📄
extension-install.feature
614 bytes
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-activate.feature
4.56 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-auto-updates-disable.feature
2.92 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-auto-updates-enable.feature
2.86 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-auto-updates-status.feature
4.05 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-deactivate.feature
3.21 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-delete.feature
2.2 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-get.feature
2.03 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-install-github-latest.feature
627 bytes
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-install.feature
8.85 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-list-recently-active.feature
4.13 KB
05/14/2024 01:45:25 PM
rw-r--r--
📄
plugin-list-wporg-status.feature
1.75 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-search.feature
518 bytes
03/20/2024 11:17:26 AM
rw-r--r--
📄
plugin-status.feature
401 bytes
03/20/2024 11:17:26 AM
rw-r--r--
📄
plugin-toggle.feature
1.14 KB
02/24/2025 12:05:14 PM
rw-r--r--
📄
plugin-uninstall.feature
6.03 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin-update.feature
7.69 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
plugin.feature
28.4 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
theme-auto-update-status.feature
4.02 KB
03/20/2024 11:17:26 AM
rw-r--r--
📄
theme-auto-updates-disable.feature
2.82 KB
03/20/2024 11:17:26 AM
rw-r--r--
📄
theme-auto-updates-enable.feature
2.8 KB
03/20/2024 11:17:26 AM
rw-r--r--
📄
theme-delete.feature
3.03 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
theme-install.feature
3.89 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
theme-mod-list.feature
1.07 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
theme-mod.feature
1.91 KB
03/20/2024 11:17:26 AM
rw-r--r--
📄
theme-update.feature
4.35 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
theme.feature
21.32 KB
09/06/2025 12:29:47 PM
rw-r--r--
📄
upgradables.feature
7.69 KB
09/06/2025 12:29:47 PM
rw-r--r--
Editing: plugin-update.feature
Close
Feature: Update WordPress plugins @require-wp-5.2 Scenario: Updating plugin with invalid version shouldn't remove the old version Given a WP install When I run `wp plugin install wordpress-importer --version=0.5 --force` Then STDOUT should not be empty When I run `wp plugin list --name=wordpress-importer --field=update_version` Then STDOUT should not be empty And save STDOUT as {UPDATE_VERSION} When I run `wp plugin list` Then STDOUT should be a table containing rows: | name | status | update | version | update_version | auto_update | | wordpress-importer | inactive | available | 0.5 | {UPDATE_VERSION} | off | When I try `wp plugin update akismet --version=0.5.3` Then STDERR should be: """ Error: Can't find the requested plugin's version 0.5.3 in the WordPress.org plugin repository (HTTP code 404). """ And the return code should be 1 When I run `wp plugin list` Then STDOUT should be a table containing rows: | name | status | update | version | update_version | auto_update | | wordpress-importer | inactive | available | 0.5 | {UPDATE_VERSION} | off | When I run `wp plugin update wordpress-importer` Then STDOUT should not be empty When I run `wp plugin list` Then STDOUT should be a table containing rows: | name | status | update | version | update_version | auto_update | | wordpress-importer | inactive | none | {UPDATE_VERSION} | | off | Scenario: Error when both --minor and --patch are provided Given a WP install When I try `wp plugin update --patch --minor --all` Then STDERR should be: """ Error: --minor and --patch cannot be used together. """ And the return code should be 1 @require-wp-5.2 Scenario: Exclude plugin updates from bulk updates. Given a WP install When I run `wp plugin install wordpress-importer --version=0.5 --force` Then STDOUT should contain: """ Downloading install """ And STDOUT should contain: """ package from https://downloads.wordpress.org/plugin/wordpress-importer.0.5.zip... """ When I run `wp plugin status wordpress-importer` Then STDOUT should contain: """ Update available """ When I run `wp plugin update --all --exclude=wordpress-importer | grep 'Skipped'` Then STDOUT should contain: """ wordpress-importer """ When I run `wp plugin status wordpress-importer` Then STDOUT should contain: """ Update available """ @require-wp-5.2 Scenario: Update a plugin to its latest patch release Given a WP install And I run `wp plugin install --force wordpress-importer --version=0.5` When I run `wp plugin update wordpress-importer --patch` Then STDOUT should contain: """ Success: Updated 1 of 1 plugins. """ When I run `wp plugin get wordpress-importer --field=version` Then STDOUT should be: """ 0.5.2 """ # Akismet currently requires WordPress 5.8 @require-wp-5.8 Scenario: Update a plugin to its latest minor release Given a WP install And I run `wp plugin install --force akismet --version=2.5.4` When I run `wp plugin update akismet --minor` Then STDOUT should contain: """ Success: Updated 1 of 1 plugins. """ When I run `wp plugin get akismet --field=version` Then STDOUT should be: """ 2.6.1 """ @require-wp-5.2 Scenario: Not giving a slug on update should throw an error unless --all given Given a WP install And I run `wp plugin path` And save STDOUT as {PLUGIN_DIR} And an empty {PLUGIN_DIR} directory # No plugins installed. Don't give an error if --all given for BC. When I run `wp plugin update --all` Then STDOUT should be: """ Success: No plugins installed. """ When I run `wp plugin update --version=0.6 --all` Then STDOUT should be: """ Success: No plugins installed. """ # One plugin installed. Given I run `wp plugin install wordpress-importer --version=0.5 --force` When I try `wp plugin update` Then the return code should be 1 And STDERR should be: """ Error: Please specify one or more plugins, or use --all. """ And STDOUT should be empty When I run `wp plugin update --all` Then STDOUT should contain: """ Success: Updated """ When I run the previous command again Then STDOUT should be: """ Success: Plugin already updated. """ # Note: if given version then re-installs. When I run `wp plugin update --version=0.6 --all` Then STDOUT should contain: """ Success: Installed 1 of 1 plugins. """ When I run the previous command again Then STDOUT should contain: """ Success: Installed 1 of 1 plugins. """ # Two plugins installed. Given I run `wp plugin install akismet --version=2.5.4` When I run `wp plugin update --all` Then STDOUT should contain: """ Success: Updated """ When I run the previous command again # BUG: note this message should be plural. Then STDOUT should be: """ Success: Plugin already updated. """ # Using version with all rarely makes sense and should probably error and do nothing. When I try `wp plugin update --version=2.5.4 --all` Then the return code should be 1 And STDOUT should contain: """ Success: Installed 1 of 1 plugins. """ And STDERR should be: """ Error: Can't find the requested plugin's version 2.5.4 in the WordPress.org plugin repository (HTTP code 404). """ # Akismet currently requires WordPress 5.8 @require-wp-5.8 Scenario: Plugin updates that error should not report a success Given a WP install And I run `wp plugin install --force akismet --version=4.0` When I run `chmod -w wp-content/plugins/akismet` And I try `wp plugin update akismet` Then STDERR should contain: """ Error: """ And STDOUT should not contain: """ Success: """ When I run `chmod +w wp-content/plugins/akismet` And I try `wp plugin update akismet` Then STDERR should not contain: """ Error: """ And STDOUT should contain: """ Success: """ # Akismet currently requires WordPress 5.8, so there's a warning because of it. @require-wp-5.8 Scenario: Excluding a missing plugin should not throw an error Given a WP install And I run `wp plugin update --all --exclude=missing-plugin` Then STDERR should be empty And STDOUT should contain: """ Success: """ And the return code should be 0 @require-wp-5.2 Scenario: Updating all plugins with some of them having an invalid version shouldn't report an error Given a WP install And I run `wp plugin delete akismet` When I run `wp plugin install health-check --version=1.5.0` Then STDOUT should not be empty When I run `wp plugin install wordpress-importer --version=0.5` Then STDOUT should not be empty When I run `sed -i.bak 's/Version: .*/Version: 10000/' $(wp plugin path health-check)` Then STDOUT should be empty And the return code should be 0 When I try `wp plugin update --all` Then STDERR should contain: """ Warning: health-check: version higher than expected. """ And STDOUT should not contain: """ Error: Only updated 1 of 1 plugins. """ And STDOUT should contain: """ Success: Updated 1 of 1 plugins (1 skipped). """