Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tests: Add default coverage settings. #97

Merged

Conversation

costdev
Copy link
Contributor

@costdev costdev commented Nov 2, 2024

Pull Request

What changed?

  • A <coverage> element was added to phpunit.xml.dist.
  • The coverage directory defaults to /tests/coverage.
  • The test cache directory defaults to /tests/cache.
  • The /tests/coverage and /tests/cache directories have been added to .gitignore.
  • Only the main plugin file and "code-only" files in the includes directory are included in coverage reports.
  • includes/autoload.php is excluded from coverage reports.

Why did it change?

Running coverage reports can be cumbersome for experienced and inexperienced users.

This makes it much more convenient to run a coverage report when writing tests to ensure the tests are covering the expected portions of code.

Did you fix any specific issues?

Fixes #96

CERTIFICATION

By opening this pull request, I do agree to abide by
the CODE OF CONDUCT and be bound by the terms
of the Contribution Guidelines in effect on the date and time
of my contribution as proven by the
revision information in GitHub. I also agree that any previous contributions shall be deemed subject to the terms of the
version in effect on the date and time of this pull request, or any future revisions for pull requests I may submit.
Further, I certify that this work is my own, is original, does not violate the intellectual property of any other person
or entity, and I am not violating any license agreements or contracts I have with any person or entity. Finally, I agree
that this code may be licensed under any license deemed appropraite by AspirePress, including but not
limited to open source, closed source, proprietary or custom licenses, and that such license terms neither violate my
rights or my copyright to this code.

@costdev
Copy link
Contributor Author

costdev commented Nov 2, 2024

Running a coverage report:

  • Ensure xDebug is installed and configured.
  • Run XDEBUG_MODE=coverage composer run test.
  • Load http(s)://url_to_plugin_directory/tests/coverage.

Please test these steps to double-check them before considering for merge and before any documentation is created.

@costdev costdev force-pushed the tests/add-default-coverage-settings branch from b1a47c9 to d8bb138 Compare November 2, 2024 11:20
@asirota asirota requested review from chuckadams and namithj November 2, 2024 12:07
@asirota asirota self-assigned this Nov 2, 2024
@asirota asirota added the enhancement New feature or request label Nov 2, 2024
@asirota asirota added this to the Phase 1 milestone Nov 2, 2024
@asirota asirota added testing Unit test suites and process and removed enhancement New feature or request labels Nov 2, 2024
@asirota asirota merged commit ea11ffb into aspirepress:main Nov 3, 2024
2 checks passed
asirota added a commit that referenced this pull request Nov 5, 2024
* Prevent Recursion on certain Host name patterns (#69)

---------

Signed-off-by: Namith Jawahar <[email protected]>

* Playground ready updating into main (#71)

* Update blueprint.json

Switching to default theme of 2022 to support minimum WP Playground support for WordPress version as 5.9.9

Signed-off-by: Namith Jawahar <[email protected]>

* Switching blueprint.json to 2022 theme

Signed-off-by: Alex Sirota <[email protected]>

---------

Signed-off-by: Alex Sirota <[email protected]>
Signed-off-by: Namith Jawahar <[email protected]>

* `Add New Plugin`: Remove 'Featured' and 'Favorites' tabs when API rewrite is enabled. (#80)

* Add class for overriding plugins screens.

* Remove unused tabs when API rewrite is enabled.

* `Add New Theme`: Remove 'Favorites' filter tab when API rewrite is enabled. (#82)

* Add class for overriding themes screens.

* Hide unsupported filters.

* Redirect unsupported filters to `theme-install.php`.

---------

Signed-off-by: Alex Sirota <[email protected]>
Co-authored-by: Alex Sirota <[email protected]>

* Add PHPUnit. (#87)

* Add PHPUnit scaffolding.

* Add Composer files for dependencies and test script.

* Add `.gitignore`.

* Add sample test for `Admin_Settings::get_setting()`.

* Add PHP 8.3 to the test matrix.

* Add `.cache/*` to `.gitignore`.

* Limit testing to PHP 7.4 (minimum) and 8.3 (latest).

* `Plugins Screens`: Initialize in `Controller::__construct()`. (#89)

* `Workflows`: Fix PHP version and add more workflow triggers. (#92)

* Fix PHP version.

* Add `push` and `workflow_dispatch` workflow triggers.

* `Tests`: Ensure options are not set when tests run. (#95)

* Introduce a test constant.

* Don't initialize when the tests are running.

* Use a new object for testing `Admin_Settings::get_setting()`.

* Warning when debug-aspire-update.log doesnt exist (#109)

* `Tests`: Add default coverage settings. (#97)

* Improve I18N Issues Based on version 0.5 (#104)

* Fixes Settings not getting saved when rewrites were turned off (#108)

* Add French Translation (#105)

* I18n fr fr (#113)

* Translations loading fix112 (#114)

* Add French translations. 

* load any available translations with code in the plugin

* #110 (#116)

Fixes #110

* Add nonce verification and sanitize `$_REQUEST/$_GET` values. (#115)

Signed-off-by: Colin Stewart <[email protected]>

* Added German Translation (#111)

* added German translation

* added gitignore for .DS_Store


Signed-off-by: Harikrishnan R <[email protected]>

* Voltron has landed. (#117)

The Voltron has landed. See if you can find where.

* `Admin Settings`: Delete all settings when the plugin is uninstalled. (#118)

* `Admin Settings`: Add multisite-safe deletion of all settings.

* Delete all settings when the plugin is uninstalled.

* add multisite support (#102)

* accidentally deleted (#124)

Fixed typo in code deleted when addressing #102

* Add `.editorconfig`. (#123)

* create zip with each new tagged release (#121)

* create zip with each new tagged release

* update .gitattributes

---------

Signed-off-by: Namith Jawahar <[email protected]>
Signed-off-by: Alex Sirota <[email protected]>
Signed-off-by: Colin Stewart <[email protected]>
Signed-off-by: Harikrishnan R <[email protected]>
Co-authored-by: Namith Jawahar <[email protected]>
Co-authored-by: Colin Stewart <[email protected]>
Co-authored-by: Alex Lion <[email protected]>
Co-authored-by: Sébastien SERRE <[email protected]>
Co-authored-by: Harikrishnan R <[email protected]>
Co-authored-by: Andy Fragen <[email protected]>
asirota added a commit that referenced this pull request Nov 5, 2024
* Prevent Recursion on certain Host name patterns (#69)

---------

Signed-off-by: Namith Jawahar <[email protected]>

* Playground ready updating into main (#71)

* Update blueprint.json

Switching to default theme of 2022 to support minimum WP Playground support for WordPress version as 5.9.9

Signed-off-by: Namith Jawahar <[email protected]>

* Switching blueprint.json to 2022 theme

Signed-off-by: Alex Sirota <[email protected]>

---------

Signed-off-by: Alex Sirota <[email protected]>
Signed-off-by: Namith Jawahar <[email protected]>

* `Add New Plugin`: Remove 'Featured' and 'Favorites' tabs when API rewrite is enabled. (#80)

* Add class for overriding plugins screens.

* Remove unused tabs when API rewrite is enabled.

* `Add New Theme`: Remove 'Favorites' filter tab when API rewrite is enabled. (#82)

* Add class for overriding themes screens.

* Hide unsupported filters.

* Redirect unsupported filters to `theme-install.php`.

---------

Signed-off-by: Alex Sirota <[email protected]>
Co-authored-by: Alex Sirota <[email protected]>

* Add PHPUnit. (#87)

* Add PHPUnit scaffolding.

* Add Composer files for dependencies and test script.

* Add `.gitignore`.

* Add sample test for `Admin_Settings::get_setting()`.

* Add PHP 8.3 to the test matrix.

* Add `.cache/*` to `.gitignore`.

* Limit testing to PHP 7.4 (minimum) and 8.3 (latest).

* `Plugins Screens`: Initialize in `Controller::__construct()`. (#89)

* `Workflows`: Fix PHP version and add more workflow triggers. (#92)

* Fix PHP version.

* Add `push` and `workflow_dispatch` workflow triggers.

* `Tests`: Ensure options are not set when tests run. (#95)

* Introduce a test constant.

* Don't initialize when the tests are running.

* Use a new object for testing `Admin_Settings::get_setting()`.

* Warning when debug-aspire-update.log doesnt exist (#109)

* `Tests`: Add default coverage settings. (#97)

* Improve I18N Issues Based on version 0.5 (#104)

* Fixes Settings not getting saved when rewrites were turned off (#108)

* Add French Translation (#105)

* I18n fr fr (#113)

* Translations loading fix112 (#114)

* Add French translations. 

* load any available translations with code in the plugin

* #110 (#116)

Fixes #110

* Add nonce verification and sanitize `$_REQUEST/$_GET` values. (#115)

Signed-off-by: Colin Stewart <[email protected]>

* Added German Translation (#111)

* added German translation

* added gitignore for .DS_Store


Signed-off-by: Harikrishnan R <[email protected]>

* Voltron has landed. (#117)

The Voltron has landed. See if you can find where.

* `Admin Settings`: Delete all settings when the plugin is uninstalled. (#118)

* `Admin Settings`: Add multisite-safe deletion of all settings.

* Delete all settings when the plugin is uninstalled.

* add multisite support (#102)

* accidentally deleted (#124)

Fixed typo in code deleted when addressing #102

* Add `.editorconfig`. (#123)

* create zip with each new tagged release (#121)

* create zip with each new tagged release

* update .gitattributes

* Cleanup after `.editorconfig` was added to the repository. (#126)

* Add coding standard. (#127)

* Add Coding Standard.

* Add PHPCS cache directory.

* Coding Standards: Apply PHPCBF to codebase.

* Coding Standards: Add GitHub workflow.

---------

Signed-off-by: Alex Sirota <[email protected]>
Co-authored-by: Alex Sirota <[email protected]>

---------

Signed-off-by: Namith Jawahar <[email protected]>
Signed-off-by: Alex Sirota <[email protected]>
Signed-off-by: Colin Stewart <[email protected]>
Signed-off-by: Harikrishnan R <[email protected]>
Co-authored-by: Namith Jawahar <[email protected]>
Co-authored-by: Colin Stewart <[email protected]>
Co-authored-by: Alex Lion <[email protected]>
Co-authored-by: Sébastien SERRE <[email protected]>
Co-authored-by: Harikrishnan R <[email protected]>
Co-authored-by: Andy Fragen <[email protected]>
@costdev costdev deleted the tests/add-default-coverage-settings branch November 12, 2024 01:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
testing Unit test suites and process
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Tests: Add default coverage settings.
3 participants