Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
Installer ran successfully
Server metrics [RAM: ▲0.13MB] [CPU: ▼0.60ms] Passed 4 tests
An overview of server-side resources used by Mootapay For Woocommerce
Normal server usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.60 ▲0.14 | 39.60 ▼3.59 |
Dashboard /wp-admin | 3.44 ▲0.13 | 44.21 ▼3.21 |
Posts /wp-admin/edit.php | 3.55 ▲0.19 | 46.76 ▲1.67 |
Add New Post /wp-admin/post-new.php | 6.02 ▲0.13 | 92.05 ▲5.72 |
Media Library /wp-admin/upload.php | 3.36 ▲0.13 | 38.03 ▲2.72 |
Server storage [IO: ▲2.73MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
The plugin installed successfully
Filesystem: 441 new files
Database: no new tables, 6 new options
New WordPress options |
---|
widget_recent-posts |
widget_theysaidso_widget |
theysaidso_admin_options |
can_compress_scripts |
db_upgraded |
widget_recent-comments |
Browser metrics Passed 4 tests
An overview of browser requirements for Mootapay For Woocommerce
This plugin renders optimally with no browser resource issues detected
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,815 ▲58 | 14.48 ▼0.32 | 1.74 ▼0.65 | 43.66 ▼1.90 |
Dashboard /wp-admin | 2,216 ▲28 | 4.84 ▼1.05 | 97.80 ▼9.45 | 40.67 ▼4.36 |
Posts /wp-admin/edit.php | 2,105 ▲16 | 2.03 ▲0.02 | 40.53 ▲5.59 | 37.04 ▲4.49 |
Add New Post /wp-admin/post-new.php | 1,522 ▲3 | 17.62 ▼5.53 | 638.94 ▼52.15 | 60.72 ▲2.35 |
Media Library /wp-admin/upload.php | 1,395 ▲4 | 4.27 ▲0.07 | 99.54 ▼1.25 | 46.24 ▲2.23 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | All plugins must uninstall correctly, removing their source code and extra database tables they might have created
It is recommended to fix the following
- Zombie WordPress options were found after uninstall: 6 options
- widget_theysaidso_widget
- widget_recent-comments
- theysaidso_admin_options
- can_compress_scripts
- db_upgraded
- widget_recent-posts
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A shallow check that no server-side errors were triggered
Everything seems fine, however this is by no means an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | It is important to ensure that your PHP files perform no action when accessed directly, respecting the single-responsibility principle
Please fix the following
- 156× GET requests to PHP files trigger server-side errors or Error 500 responses (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit\\Framework\\TestCase' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/tightenco/collect/tests/Support/SupportCarbonTest.php:11
- > PHP Fatal error
Uncaught Error: Interface 'Psr\\Http\\Message\\MessageInterface' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/psr/http-message/src/RequestInterface.php:24
- > PHP Fatal error
Uncaught Error: Class 'Spatie\\DataTransferObject\\DataTransferObject' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/mootaco/moota-php-sdk/src/DTO/Auth/ScopesData.php:7
- > PHP Fatal error
Uncaught Error: Class 'Spatie\\DataTransferObject\\DataTransferObject' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/mootaco/moota-php-sdk/src/DTO/User/UserUpdateData.php:9
- > PHP Fatal error
Uncaught Error: Class 'Spatie\\DataTransferObject\\DataTransferObject' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/mootaco/moota-php-sdk/src/DTO/Mutation/MutationUpdateTaggingData.php:7
- > PHP Fatal error
Uncaught Error: Class 'Symfony\\Component\\Finder\\Finder' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/spatie/data-transfer-object/.php-cs-fixer.dist.php:3
- > PHP Fatal error
Trait 'Illuminate\\Support\\Traits\\Macroable' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/kitetail/zttp/src/Zttp.php on line 264
- > PHP Fatal error
Uncaught Error: Class 'PHPUnit\\Framework\\TestCase' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/tightenco/collect/tests/Support/SupportCollectionTest.php:16
- > PHP Fatal error
require(): Failed opening required 'wp-content/plugins/mootapay-for-woocommerce/vendor/tightenco/collect/stubs/tests/../vendor/autoload.php' (include_path='.:/usr/share/php') in wp-content/plugins/mootapay-for-woocommerce/vendor/tightenco/collect/stubs/tests/bootstrap.php on line 3
- > PHP Fatal error
Uncaught Error: Interface 'Psr\\Http\\Message\\StreamInterface' not found in wp-content/plugins/mootapay-for-woocommerce/vendor/guzzlehttp/psr7/src/LazyOpenStream.php:13
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the browser (console and network errors and warnings)
No browser errors were detected
Optimizations
Plugin configuration 90% from 29 tests
readme.txt 94% from 16 tests
It's important to format your readme.txt file correctly as it is parsed for the public listing of your plugin
Please fix the following attributes:
- Screenshots: Add an image for screenshot #1 (/assets/mootapay-checkout.png)
mootapay-for-woocommerce/mootapay-woocommerce.php 85% from 13 tests
The main PHP script in "Mootapay For Woocommerce" version 2.0.3 is automatically included on every request by WordPress
Please make the necessary changes and fix the following:
- Main file name: Even though not officially enforced, the main plugin file should be the same as the plugin slug ("mootapay-for-woocommerce.php" instead of "mootapay-woocommerce.php")
- Text Domain: You no longer need to specify the text domain since WordPress 4.6; it must be the same as the plugin slug
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | Executable files are considered dangerous and should not be included with any WordPress plugin
There were no executable files found in this plugin53,856 lines of code in 418 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 317 | 5,925 | 9,289 | 46,299 |
Markdown | 28 | 1,670 | 0 | 4,886 |
JSON | 55 | 2 | 0 | 2,007 |
Bourne Shell | 1 | 85 | 73 | 245 |
YAML | 11 | 50 | 3 | 192 |
CSS | 2 | 6 | 0 | 167 |
XML | 2 | 0 | 0 | 40 |
Dockerfile | 1 | 8 | 0 | 10 |
JavaScript | 1 | 0 | 0 | 10 |
PHP code 50% from 2 tests
This is a short overview of cyclomatic complexity and code structure for this plugin
It is recommended to fix the following
- Method cyclomatic complexity should be reduced to less than 100 (currently 179)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.39 |
Average class complexity | 12.12 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 179.00 |
Average method complexity | 2.81 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 179.00 |
Code structure | ||
---|---|---|
Namespaces | 64 | |
Interfaces | 25 | |
Traits | 4 | |
Classes | 255 | |
▷ Abstract classes | 3 | 1.18% |
▷ Concrete classes | 252 | 98.82% |
▷ Final classes | 32 | 12.70% |
Methods | 1,810 | |
▷ Static methods | 420 | 23.20% |
▷ Public methods | 1,576 | 87.07% |
▷ Protected methods | 34 | 1.88% |
▷ Private methods | 200 | 11.05% |
Functions | 475 | |
▷ Named functions | 170 | 35.79% |
▷ Anonymous functions | 305 | 64.21% |
Constants | 294 | |
▷ Global constants | 82 | 27.89% |
▷ Class constants | 212 | 72.11% |
▷ Public constants | 192 | 90.57% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
4 PNG files occupy 0.36MB with 0.18MB in potential savings
Potential savings
Compression of 4 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
assets/mootapay-checkout.png | 133.54KB | 47.89KB | ▼ 64.13% |
vendor/mootaco/moota-php-sdk/tests/Mocking/img/moota-php-sdk.png | 195.27KB | 59.72KB | ▼ 69.42% |
vendor/tightenco/collect/collect-logo.png | 17.89KB | 16.65KB | ▼ 6.92% |
vendor/mootaco/moota-php-sdk/tests/Mocking/img/logo-icon.png | 18.84KB | 6.58KB | ▼ 65.07% |