Benchmarks
Plugin footprint 30% from 16 tests
Installer Passed 1 test
🔺 Critical test (weight: 50) | Verifying that this plugin installs correctly without errors
The plugin installed successfully, without throwing any errors or notices
Server metrics [RAM: ▲0.05MB] [CPU: ▼143.88ms] Passed 4 tests
Analyzing server-side resources used by Ringo Event Calendar
This plugin has minimal impact on server resources
Page | Memory (MB) | CPU Time (ms) |
---|---|---|
Home / | 2.89 ▲0.17 | 42.92 ▲18.02 |
Dashboard /wp-admin | 3.11 ▲0.05 | 57.71 ▲4.29 |
Posts /wp-admin/edit.php | 3.16 ▲0.06 | 46.10 ▼16.40 |
Add New Post /wp-admin/post-new.php | 5.47 ▲0.04 | 96.37 ▼565.15 |
Media Library /wp-admin/upload.php | 3.05 ▲0.05 | 38.47 ▲1.75 |
Add New /wp-admin/post-new.php?post_type=lafrec_event | 3.18 | 54.56 |
All Event /wp-admin/edit.php?post_type=lafrec_event | 3.10 | 40.44 |
Event Category /wp-admin/edit-tags.php?taxonomy=lafrec_category&post_type=lafrec_event | 3.05 | 36.27 |
Server storage [IO: ▲0.15MB] [DB: ▲0.01MB] Passed 3 tests
Analyzing filesystem and database footprints of this plugin
This plugin installed successfully
Filesystem: 37 new files
Database: 1 new table, 2 new options
New tables |
---|
wp_lafrec_schedules |
New WordPress options |
---|
lafrec_options |
widget_lafrec_schedule_list |
Browser metrics Passed 4 tests
An overview of browser requirements for Ringo Event Calendar
This plugin has a minimal impact on browser resources
Page | Nodes | Memory (MB) | Script (ms) | Layout (ms) |
---|---|---|---|---|
Home / | 3,752 ▲180 | 15.74 ▼0.01 | 10.85 ▲0.03 | 50.47 ▼3.10 |
Dashboard /wp-admin | 3,007 ▲76 | 6.10 ▲0.05 | 150.55 ▼55.06 | 128.44 ▼33.93 |
Posts /wp-admin/edit.php | 2,779 ▲40 | 2.73 ▲0.01 | 69.86 ▼12.94 | 96.38 ▼11.15 |
Add New Post /wp-admin/post-new.php | 1,652 ▼31 | 21.66 ▲2.91 | 285.39 ▼119.09 | 106.31 ▼11.76 |
Media Library /wp-admin/upload.php | 1,850 ▲102 | 5.04 ▲0.04 | 161.68 ▼2.41 | 130.05 ▲3.94 |
Add New /wp-admin/post-new.php?post_type=lafrec_event | 3,358 | 9.20 | 238.24 | 178.03 |
All Event /wp-admin/edit.php?post_type=lafrec_event | 1,446 | 2.63 | 67.28 | 85.49 |
Event Category /wp-admin/edit-tags.php?taxonomy=lafrec_category&post_type=lafrec_event | 1,779 | 2.38 | 64.88 | 90.55 |
Uninstaller [IO: ▲0.15MB] [DB: ▲0.01MB] 0% from 4 tests
🔸 Tests weight: 35 | Checking the uninstaller removed all traces of the plugin
Please fix the following itemsZombie tables detected upon uninstall: 1 table This plugin does not fully uninstall, leaving 3 options in the database
- This plugin did not uninstall without warnings or errors
- > Notice in wp-content/plugins/ringo-event-calendar/ringo-event-calendar.php+44
Constant LAFREC_VERSION already defined
- Incomplete uninstall procedure, leaving 37 files (0.15MB) in the plugin directory
- (new file) admin/includes/meta-boxes.php
- (new file) css/style.css
- (new file) admin/includes/ajax-actions.php
- (new file) bin/install-wp-tests.sh
- (new file) css/jquery.timepicker.css
- (new file) images/spinner-2x.gif
- (new file) admin/includes/upgrade.php
- (new file) admin/includes/template.php
- (new file) admin/includes/event.php
- (new file) css/admin.css
- ...
- wp_lafrec_schedules
- recovery_mode_email_last_sent
- lafrec_options
- widget_lafrec_schedule_list
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 everything seems fine, this is not an exhaustive test
SRP 50% from 2 tests
🔹 Tests weight: 20 | The single-responsibility principle: PHP files have to remain inert when accessed directly, throwing no errors and performing no actions
Almost there! Just fix the following items
- 3× PHP files trigger errors when accessed directly with GET requests:
- > PHP Fatal error
Uncaught Error: Call to a member function get_days() on null in wp-content/plugins/ringo-event-calendar/lafrec-templates/calendar.php:1
- > PHP Fatal error
Uncaught Error: Class 'WP_Widget' not found in wp-content/plugins/ringo-event-calendar/includes/widgets/class-lafrec-widget-schedule-list.php:14
- > PHP Notice
Undefined variable: calendar in wp-content/plugins/ringo-event-calendar/lafrec-templates/calendar.php on line 1
- > PHP Fatal error
User-side errors Passed 1 test
🔹 Test weight: 20 | This is a shallow check for browser errors
There were no browser issues found
Optimizations
Plugin configuration 97% from 29 tests
readme.txt 94% from 16 tests
The readme.txt file is undoubtedly the most important file in your plugin, preparing it for public listing on WordPress.org
These attributes need to be fixed:
- Screenshots: These screenshots have no corresponding images in /assets: #1 (Events overview.), #2 (Event schedules setting.), #3 (Public calendar.)
ringo-event-calendar/ringo-event-calendar.php Passed 13 tests
Analyzing the main PHP file in "Ringo Event Calendar" version 0.4.0
87 characters long description:
Ringo is simple event calendar that originally designed for the wedding hall web sites.
Code Analysis Passed 3 tests
File types Passed 1 test
🔸 Test weight: 35 | An overview of files in this plugin; executable files are not allowed
No dangerous file extensions were detected3,025 lines of code in 32 files:
Language | Files | Blank lines | Comment lines | Lines of code |
---|---|---|---|---|
PHP | 24 | 359 | 581 | 1,491 |
JavaScript | 3 | 270 | 81 | 1,081 |
PO File | 1 | 70 | 72 | 185 |
CSS | 3 | 39 | 0 | 174 |
Bourne Shell | 1 | 20 | 6 | 94 |
PHP code Passed 2 tests
Analyzing logical lines of code, cyclomatic complexity, and other code metrics
Although this was not an exhaustive test, there were no cyclomatic complexity issues detected
Cyclomatic complexity | |
---|---|
Average complexity per logical line of code | 0.21 |
Average class complexity | 5.50 |
▷ Minimum class complexity | 3.00 |
▷ Maximum class complexity | 11.00 |
Average method complexity | 1.78 |
▷ Minimum method complexity | 1.00 |
▷ Maximum method complexity | 6.00 |
Code structure | ||
---|---|---|
Namespaces | 0 | |
Interfaces | 0 | |
Traits | 0 | |
Classes | 4 | |
▷ Abstract classes | 0 | 0.00% |
▷ Concrete classes | 4 | 100.00% |
▷ Final classes | 0 | 0.00% |
Methods | 23 | |
▷ Static methods | 0 | 0.00% |
▷ Public methods | 19 | 82.61% |
▷ Protected methods | 0 | 0.00% |
▷ Private methods | 4 | 17.39% |
Functions | 47 | |
▷ Named functions | 47 | 100.00% |
▷ Anonymous functions | 0 | 0.00% |
Constants | 15 | |
▷ Global constants | 8 | 53.33% |
▷ Class constants | 7 | 46.67% |
▷ Public constants | 7 | 100.00% |
Plugin size Passed 2 tests
Image compression Passed 2 tests
All PNG images should be compressed to minimize bandwidth usage for end users
PNG images were not found in this plugin