Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
This plugin's installer ran successfully
Server metrics [RAM: ▲0.29MB] [CPU: ▼4.72ms] Passed 4 tests
An overview of server-side resources used by Mojito Sinpe
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.79 ▲0.33 | 36.79 ▼11.49 |
Dashboard /wp-admin | 3.63 ▲0.33 | 46.63 ▲1.49 |
Posts /wp-admin/edit.php | 3.68 ▲0.33 | 47.03 ▼4.85 |
Add New Post /wp-admin/post-new.php | 6.15 ▲0.26 | 94.46 ▼1.78 |
Media Library /wp-admin/upload.php | 3.49 ▲0.26 | 36.20 ▼0.75 |
Server storage [IO: ▲2.88MB] [DB: ▲0.00MB] Passed 3 tests
A short overview of filesystem and database impact
This plugin installed successfully
Filesystem: 327 new files
Database: no new tables, 6 new options
New WordPress options |
---|
theysaidso_admin_options |
widget_theysaidso_widget |
widget_recent-comments |
can_compress_scripts |
widget_recent-posts |
db_upgraded |
Browser metrics Passed 4 tests
An overview of browser requirements for Mojito Sinpe
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,811 ▲65 | 13.33 ▼1.13 | 1.68 ▼0.84 | 41.96 ▼5.30 |
Dashboard /wp-admin | 2,220 ▲29 | 4.86 ▲0.01 | 100.40 ▲1.01 | 40.62 ▼2.21 |
Posts /wp-admin/edit.php | 2,106 ▲14 | 1.96 ▼0.17 | 39.61 ▼2.71 | 39.37 ▲1.91 |
Add New Post /wp-admin/post-new.php | 1,379 ▼165 | 17.38 ▼0.83 | 559.81 ▼80.89 | 38.65 ▼12.52 |
Media Library /wp-admin/upload.php | 1,399 ▲11 | 4.29 ▲0.02 | 97.19 ▲1.05 | 40.34 ▼5.13 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.00MB] 75% from 4 tests
🔸 Tests weight: 35 | It is important to correctly uninstall your plugin, without leaving any traces
Please fix the following items
- Zombie WordPress options were found after uninstall: 6 options
- widget_theysaidso_widget
- widget_recent-comments
- widget_recent-posts
- theysaidso_admin_options
- db_upgraded
- can_compress_scripts
Smoke tests 50% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | A smoke test targeting server-side errors
Even though no errors were found, this is by no means an exhaustive test
SRP 0% from 2 tests
🔹 Tests weight: 20 | SRP (Single-Responsibility Principle) - PHP files must act as libraries and never output text or perform any action when accessed directly in a browser
The following issues need your attention
- 4× PHP files output non-empty strings when accessed directly via GET requests:
- > /wp-content/plugins/mojito-sinpe/vendor/mobiledetect/mobiledetectlib/export/exportToJSON.php
- > /wp-content/plugins/mojito-sinpe/public/partials/mojito-sinpe-public-display.php
- > /wp-content/plugins/mojito-sinpe/vendor/mustangostang/spyc/examples/yaml-load.php
- > /wp-content/plugins/mojito-sinpe/vendor/mustangostang/spyc/php4/5to4.php
- 118× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'DeviceDetector\\Parser\\Client\\ClientParserAbstract' not found in wp-content/plugins/mojito-sinpe/vendor/piwik/device-detector/Parser/Client/Browser.php:19
- > PHP Fatal error
Uncaught Error: Class 'Illuminate\\Support\\Facades\\Facade' not found in wp-content/plugins/mojito-sinpe/vendor/hisorange/browser-detect/src/Facade.php:41
- > PHP Fatal error
Uncaught Error: Class 'Jaybizzle\\CrawlerDetect\\Fixtures\\AbstractProvider' not found in wp-content/plugins/mojito-sinpe/vendor/jaybizzle/crawler-detect/src/Fixtures/Headers.php:14
- > PHP Fatal error
Uncaught Error: Class 'DeviceDetector\\Parser\\Client\\ClientParserAbstract' not found in wp-content/plugins/mojito-sinpe/vendor/piwik/device-detector/Parser/Client/MobileApp.php:17
- > PHP Fatal error
Uncaught Error: Class 'hisorange\\BrowserDetect\\Test\\TestCase' not found in wp-content/plugins/mojito-sinpe/vendor/hisorange/browser-detect/tests/Stages/UAParserTest.php:14
- > PHP Fatal error
Uncaught Error: Class 'hisorange\\BrowserDetect\\Exceptions\\Exception' not found in wp-content/plugins/mojito-sinpe/vendor/hisorange/browser-detect/src/Exceptions/RuntimeException.php:5
- > PHP Fatal error
Uncaught Error: Interface 'DeviceDetector\\Cache\\Cache' not found in wp-content/plugins/mojito-sinpe/vendor/piwik/device-detector/Cache/StaticCache.php:18
- > PHP Fatal error
Uncaught Error: Class 'WC_Payment_Gateway' not found in wp-content/plugins/mojito-sinpe/includes/class-mojito-sinpe-gateway.php:21
- > PHP Fatal error
Uncaught Error: Interface 'DeviceDetector\\Cache\\Cache' not found in wp-content/plugins/mojito-sinpe/vendor/piwik/device-detector/Cache/PSR6Bridge.php:7
- > PHP Fatal error
Uncaught Error: Interface 'League\\Pipeline\\PipelineInterface' not found in wp-content/plugins/mojito-sinpe/vendor/league/pipeline/src/Pipeline.php:6
- > 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 96% from 29 tests
readme.txt Passed 16 tests
Often overlooked, readme.txt is one of the most important files in your plugin
7 plugin tags: woocommerce payment, payment, costa rica, woocommerce, multisite...
mojito-sinpe/mojito-sinpe.php 92% from 13 tests
The entry point to "Mojito Sinpe" version 1.0.8 is a PHP file that has certain tags in its header comment area
It is important to fix the following:
- Requires at least: Required version does not match the one declared in readme.txt ("4.6" instead of "5.2")
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | This is an overview of file extensions present in this plugin and a short test that no dangerous files are bundled with this plugin
Success! There were no dangerous files found in this plugin71,188 lines of code in 282 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
YAML | 52 | 4,375 | 3,135 | 47,679 |
PHP | 183 | 2,831 | 7,247 | 20,497 |
Markdown | 19 | 611 | 0 | 1,536 |
JSON | 15 | 0 | 0 | 922 |
PO File | 2 | 92 | 118 | 236 |
XML | 5 | 18 | 13 | 125 |
HTML | 1 | 8 | 1 | 93 |
JavaScript | 1 | 23 | 0 | 57 |
Bourne Shell | 1 | 11 | 0 | 29 |
Dockerfile | 1 | 1 | 2 | 8 |
CSS | 1 | 0 | 4 | 5 |
SVG | 1 | 0 | 0 | 1 |
PHP code Passed 2 tests
This plugin's cyclomatic complexity and code structure detailed below
Although this was not an exhaustive test, there were no cyclomatic complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.41 |
Average class complexity | 9.34 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 263.00 |
Average method complexity | 2.61 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 78.00 |
Code structure | ||
---|---|---|
Namespaces | 28 | |
Interfaces | 13 | |
Traits | 1 | |
Classes | 144 | |
▷ Abstract classes | 14 | 9.72% |
▷ Concrete classes | 130 | 90.28% |
▷ Final classes | 5 | 3.85% |
Methods | 871 | |
▷ Static methods | 114 | 13.09% |
▷ Public methods | 707 | 81.17% |
▷ Protected methods | 85 | 9.76% |
▷ Private methods | 79 | 9.07% |
Functions | 35 | |
▷ Named functions | 12 | 34.29% |
▷ Anonymous functions | 23 | 65.71% |
Constants | 64 | |
▷ Global constants | 3 | 4.69% |
▷ Class constants | 61 | 95.31% |
▷ Public constants | 61 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
6 PNG files occupy 0.02MB with 0.01MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
public/img/sinpe-movil-50x28.png | 0.77KB | 0.25KB | ▼ 67.22% |
public/img/sinpe-movil.png | 9.28KB | 9.68KB | 0.00% |
public/img/sinpe-movil-100x55.png | 1.13KB | 0.47KB | ▼ 58.02% |
public/img/sinpe-movil-300x165.png | 3.26KB | 1.50KB | ▼ 53.98% |
public/img/sinpe-movil-400x220.png | 4.78KB | 2.19KB | ▼ 54.18% |