Benchmarks
Plugin footprint 48% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | The install procedure must perform silently
Install script ran successfully
Server metrics [RAM: ▲1.01MB] [CPU: ▲15.14ms] Passed 4 tests
This is a short check of server-side resources used by MoceanAPI SendSMS
Server-side resource usage in normal parameters
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 4.41 ▲0.94 | 53.10 ▲14.73 |
Dashboard /wp-admin | 4.37 ▲1.07 | 1,368.14 ▲1,318.23 |
Posts /wp-admin/edit.php | 4.41 ▲1.06 | 75.48 ▲24.14 |
Add New Post /wp-admin/post-new.php | 6.88 ▲0.99 | 99.79 ▲4.36 |
Media Library /wp-admin/upload.php | 4.28 ▲1.05 | 52.78 ▲17.33 |
Scheduled Actions /wp-admin/tools.php?page=action-scheduler | 4.44 | 68.70 |
/wp-admin/admin.php?page=moceansms-download-file | 4.25 | 45.39 |
MoceanAPI SMS Settings /wp-admin/options-general.php?page=moceansms-woocoommerce-setting | 4.65 | 53.16 |
Freemius Debug [v.2.4.3] /wp-admin/admin.php?page=freemius | 4.61 | 50.53 |
Server storage [IO: ▲5.42MB] [DB: ▲0.01MB] Passed 3 tests
Filesystem and database footprint
This plugin was installed successfully
Filesystem: 402 new files
Database: 5 new tables, 25 new options
New tables |
---|
wp_actionscheduler_logs |
wp_actionscheduler_claims |
wp_actionscheduler_actions |
wp_actionscheduler_groups |
moceansms_wc_send_sms_outbox |
New WordPress options |
---|
moceansms_admin_setting |
moceansms_smsoutbox_setting |
schema-ActionScheduler_LoggerSchema |
widget_theysaidso_widget |
widget_recent-comments |
moceansms_multivendor_setting |
fs_accounts |
action_scheduler_hybrid_store_demarkation |
widget_recent-posts |
db_upgraded |
... |
Browser metrics Passed 4 tests
This is an overview of browser requirements for MoceanAPI SendSMS
Minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,022 ▲261 | 14.63 ▲0.25 | 1.74 ▼0.01 | 31.17 ▼11.56 |
Dashboard /wp-admin | 2,425 ▲251 | 6.42 ▲0.79 | 113.61 ▲24.15 | 42.45 ▼4.40 |
Posts /wp-admin/edit.php | 2,318 ▲218 | 3.57 ▲1.56 | 52.38 ▲13.18 | 36.35 ▼1.25 |
Add New Post /wp-admin/post-new.php | 1,573 ▲47 | 18.36 ▼4.73 | 640.29 ▲7.59 | 44.72 ▼21.98 |
Media Library /wp-admin/upload.php | 1,457 ▲60 | 4.37 ▲0.20 | 81.92 ▼25.39 | 48.14 ▲2.04 |
Scheduled Actions /wp-admin/tools.php?page=action-scheduler | 1,557 | 3.54 | 40.57 | 33.11 |
/wp-admin/admin.php?page=moceansms-download-file | 697 | 1.68 | 9.77 | 22.91 |
MoceanAPI SMS Settings /wp-admin/options-general.php?page=moceansms-woocoommerce-setting | 1,199 | 3.29 | 42.56 | 85.07 |
Freemius Debug [v.2.4.3] /wp-admin/admin.php?page=freemius | 1,268 | 3.28 | 43.77 | 25.64 |
Uninstaller [IO: ▲0.00MB] [DB: ▲0.01MB] 25% from 4 tests
🔸 Tests weight: 35 | The uninstall procedure must remove all plugin files and extra database tables
These items require your attention
- Uninstall procedure had uncaught errors
- > Notice in wp-content/plugins/moceanapi-sendsms/lib/freemius/includes/class-freemius.php+8575
Undefined property: stdClass::$plugins
- The uninstall procedure failed, leaving 5 tables in the database
- wp_actionscheduler_claims
- moceansms_wc_send_sms_outbox
- wp_actionscheduler_actions
- wp_actionscheduler_groups
- wp_actionscheduler_logs
- Zombie WordPress options were found after uninstall: 23 options
- db_upgraded
- moceansms_admin_setting
- can_compress_scripts
- fs_debug_mode
- moceansms_help_setting
- schema-ActionScheduler_LoggerSchema
- fs_gdpr
- fs_active_plugins
- widget_theysaidso_widget
- widget_recent-comments
- ...
Smoke tests 75% from 4 tests
Server-side errors Passed 1 test
🔹 Test weight: 20 | Just a short smoke test targeting errors on the server (in the Apache logs)
Everything seems fine, however this is by no means an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | A shallow check of the single-responsibility principle; PHP files should perform no action - including output of placeholder text - and trigger no errors when accessed directly
Please fix the following items
- 114× PHP files trigger server errors when accessed directly (only 10 are shown):
- > PHP Fatal error
Uncaught Error: Class 'Abstract_Moceansms_Multivendor' not found in wp-content/plugins/moceanapi-sendsms/includes/multivendor/managers/class-moceanapi-multivendor-wc-marketplace-manager.php:9
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_Action' not found in wp-content/plugins/moceanapi-sendsms/lib/action-scheduler/classes/actions/ActionScheduler_NullAction.php:6
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_PluginInterface' not found in wp-content/plugins/moceanapi-sendsms/includes/plugins/MoceanARMemberLite.php:3
- > PHP Warning
Use of undefined constant ABSPATH - assumed 'ABSPATH' (this will throw an Error in a future version of PHP) in wp-content/plugins/moceanapi-sendsms/lib/action-scheduler/classes/abstracts/ActionScheduler_Abstract_ListTable.php on line 4
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_UnitTestCase' not found in wp-content/plugins/moceanapi-sendsms/lib/action-scheduler/tests/phpunit/helpers/ActionScheduler_Compatibility_Test.php:5
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_Register_Interface' not found in wp-content/plugins/moceanapi-sendsms/includes/class-moceansms-woocommerce-widget.php:9
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_Store' not found in wp-content/plugins/moceanapi-sendsms/lib/action-scheduler/classes/data-stores/ActionScheduler_HybridStore.php:15
- > PHP Fatal error
Uncaught Error: Class 'ActionScheduler_UnitTestCase' not found in wp-content/plugins/moceanapi-sendsms/lib/action-scheduler/tests/phpunit/migration/BatchFetcher_Test.php:10
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_PluginInterface' not found in wp-content/plugins/moceanapi-sendsms/includes/plugins/MoceanFATService.php:3
- > PHP Fatal error
Uncaught Error: Interface 'Moceansms_PluginInterface' not found in wp-content/plugins/moceanapi-sendsms/includes/plugins/MoceanGroundhoggCRM.php:3
- > 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
Don't ignore readme.txt as it is the file that instructs WordPress.org on how to present your plugin to the world
6 plugin tags: sms, moceanapi, mocean, send sms, messaging...
moceanapi-sendsms/moceansms-woocommerce.php 92% from 13 tests
The main file in "MoceanAPI SendSMS" v. 1.4.8 serves as a complement to information provided in readme.txt and as the entry point to the plugin
You should first fix the following items:
- Main file name: The principal plugin file should be the same as the plugin slug ("moceanapi-sendsms.php" instead of "moceansms-woocommerce.php")
Code Analysis 97% from 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short check of programming languages and file extensions; no executable files are allowed
Good job! No executable or dangerous file extensions detected64,306 lines of code in 338 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 288 | 11,332 | 22,403 | 49,921 |
CSS | 13 | 1 | 27 | 9,119 |
JSON | 7 | 0 | 0 | 3,450 |
Markdown | 12 | 432 | 0 | 844 |
JavaScript | 6 | 89 | 95 | 484 |
Bourne Shell | 1 | 23 | 11 | 147 |
YAML | 4 | 15 | 6 | 111 |
XML | 3 | 8 | 3 | 91 |
HTML | 2 | 8 | 0 | 52 |
Sass | 1 | 10 | 0 | 47 |
SVG | 1 | 0 | 0 | 40 |
PHP code 50% from 2 tests
This is a very shot review of cyclomatic complexity and code structure
It is recommended to fix the following
- Please reduce cyclomatic complexity of classes to less than 1000 (currently 2,910)
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.45 |
Average class complexity | 28.14 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 2,910.00 |
Average method complexity | 3.39 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 86.00 |
Code structure | ||
---|---|---|
Namespaces | 9 | |
Interfaces | 7 | |
Traits | 0 | |
Classes | 207 | |
▷ Abstract classes | 20 | 9.66% |
▷ Concrete classes | 187 | 90.34% |
▷ Final classes | 0 | 0.00% |
Methods | 2,517 | |
▷ Static methods | 288 | 11.44% |
▷ Public methods | 1,873 | 74.41% |
▷ Protected methods | 186 | 7.39% |
▷ Private methods | 458 | 18.20% |
Functions | 142 | |
▷ Named functions | 119 | 83.80% |
▷ Anonymous functions | 23 | 16.20% |
Constants | 164 | |
▷ Global constants | 106 | 64.63% |
▷ Class constants | 58 | 35.37% |
▷ Public constants | 58 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
Often times overlooked, PNG files can occupy unnecessary space in your plugin
9 PNG files occupy 0.04MB with 0.02MB in potential savings
Potential savings
Compression of 5 random PNG files using pngquant | |||
---|---|---|---|
File | Size - original | Size - compressed | Savings |
lib/action-scheduler/docs/favicon-16x16.png | 0.39KB | 0.38KB | ▼ 3.02% |
lib/freemius/assets/img/theme-icon.png | 10.97KB | 5.78KB | ▼ 47.37% |
lib/freemius/assets/img/moceansms-order-sms-notification-for-woocommerce.png | 1.78KB | 1.19KB | ▼ 33.33% |
lib/action-scheduler/docs/favicon-32x32.png | 1.16KB | 0.71KB | ▼ 39.02% |
lib/action-scheduler/docs/android-chrome-192x192.png | 6.77KB | 2.46KB | ▼ 63.68% |