Benchmarks
Plugin footprint 83% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Checking the installer triggered no errors
This plugin's installer ran successfully
Server metrics [RAM: ▲0.00MB] [CPU: ▼6.27ms] Passed 4 tests
Server-side resources used by JetRouter
No issues were detected with server-side resource usage
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 3.46 ▲0.00 | 39.25 ▲0.64 |
Dashboard /wp-admin | 3.31 ▲0.00 | 45.72 ▼9.39 |
Posts /wp-admin/edit.php | 3.36 ▲0.00 | 43.61 ▼3.87 |
Add New Post /wp-admin/post-new.php | 5.89 ▲0.00 | 81.91 ▼12.47 |
Media Library /wp-admin/upload.php | 3.23 ▲0.00 | 39.59 ▲4.60 |
Server storage [IO: ▲0.23MB] [DB: ▲0.00MB] Passed 3 tests
How much does this plugin use your filesystem and database?
The plugin installed successfully
Filesystem: 40 new files
Database: no new tables, 6 new options
New WordPress options |
---|
widget_theysaidso_widget |
db_upgraded |
theysaidso_admin_options |
widget_recent-comments |
widget_recent-posts |
can_compress_scripts |
Browser metrics Passed 4 tests
Checking browser requirements for JetRouter
Normal browser usage
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 2,800 ▲43 | 13.29 ▼1.11 | 4.43 ▲2.60 | 42.91 ▲0.22 |
Dashboard /wp-admin | 2,209 ▲21 | 4.85 ▼0.04 | 112.00 ▲6.60 | 41.52 ▲2.02 |
Posts /wp-admin/edit.php | 2,086 ▼0 | 1.99 ▲0.01 | 36.51 ▼0.28 | 31.98 ▼0.65 |
Add New Post /wp-admin/post-new.php | 1,547 ▲14 | 23.43 ▲0.23 | 652.66 ▼23.99 | 56.95 ▲3.03 |
Media Library /wp-admin/upload.php | 1,388 ▲3 | 4.22 ▼0.02 | 91.99 ▼6.01 | 41.49 ▼2.33 |
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
These items require your attention
- This plugin does not fully uninstall, leaving 6 options in the database
- theysaidso_admin_options
- widget_recent-posts
- can_compress_scripts
- widget_recent-comments
- widget_theysaidso_widget
- db_upgraded
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)
Even though no errors were found, this is by no means an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle applies for WordPress plugins as well - please make sure your PHP files perform no actions when accessed directly
Please fix the following items
- 9× PHP files trigger server-side errors or warnings when accessed directly:
- > PHP Fatal error
Uncaught Error: Class 'JetRouter\\RouteParser' not found in wp-content/plugins/jetrouter/src/StaticRouteParser.php:12
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Actor' not found in wp-content/plugins/jetrouter/tests/_support/FunctionalTester.php:19
- > PHP Fatal error
Uncaught Error: Class 'JetRouter\\RouteParser' not found in wp-content/plugins/jetrouter/src/DynamicRouteParser.php:11
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Module' not found in wp-content/plugins/jetrouter/tests/_support/Helper/Acceptance.php:7
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Actor' not found in wp-content/plugins/jetrouter/tests/_support/AcceptanceTester.php:19
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Actor' not found in wp-content/plugins/jetrouter/tests/_support/UnitTester.php:19
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Test\\Unit' not found in wp-content/plugins/jetrouter/tests/unit/RouterTest.php:5
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Module' not found in wp-content/plugins/jetrouter/tests/_support/Helper/Unit.php:7
- > PHP Fatal error
Uncaught Error: Class 'Codeception\\Module' not found in wp-content/plugins/jetrouter/tests/_support/Helper/Functional.php:7
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a smoke test targeting browser errors/issues
There were no browser issues found
Optimizations
Plugin configuration Passed 29 tests
readme.txt Passed 16 tests
You should put a lot of thought into formatting readme.txt as it is used by WordPress.org to prepare the public listing of your plugin
5 plugin tags: http, api, rest, router, routing
jetrouter/jetrouter.php Passed 13 tests
The entry point to "JetRouter" version 0.1.2.1 is a PHP file that has certain tags in its header comment area
50 characters long description:
A lightning fast, easy to use router for WordPress
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | A short glimpse at programming languages used with this plugin and a check that no dangerous files are present
Good job! No executable or dangerous file extensions detected3,059 lines of code in 44 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 34 | 734 | 3,299 | 2,707 |
Markdown | 1 | 103 | 0 | 237 |
YAML | 6 | 6 | 16 | 102 |
JSON | 2 | 0 | 0 | 13 |
SQL | 1 | 0 | 1 | 0 |
PHP code Passed 2 tests
An short overview of logical lines of code, cyclomatic complexity, and other code metrics
There are no cyclomatic complexity problems detected for this plugin
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.21 |
Average class complexity | 6.31 |
▷ Minimum class complexity | 1.00 |
▷ Maximum class complexity | 44.00 |
Average method complexity | 1.56 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 18.00 |
Code structure | ||
---|---|---|
Namespaces | 5 | |
Interfaces | 0 | |
Traits | 3 | |
Classes | 23 | |
▷ Abstract classes | 1 | 4.35% |
▷ Concrete classes | 22 | 95.65% |
▷ Final classes | 0 | 0.00% |
Methods | 276 | |
▷ Static methods | 15 | 5.43% |
▷ Public methods | 235 | 85.14% |
▷ Protected methods | 12 | 4.35% |
▷ Private methods | 29 | 10.51% |
Functions | 53 | |
▷ Named functions | 1 | 1.89% |
▷ Anonymous functions | 52 | 98.11% |
Constants | 10 | |
▷ Global constants | 0 | 0.00% |
▷ Class constants | 10 | 100.00% |
▷ Public constants | 10 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
PNG files should be compressed to save space and minimize bandwidth usage
PNG images were not found in this plugin