Skip to content

feat: migrate to PSR-4, tests, and CI scaffold - #10

Open
richard015ar wants to merge 1 commit into
devfrom
feat/psr4
Open

feat: migrate to PSR-4, tests, and CI scaffold#10
richard015ar wants to merge 1 commit into
devfrom
feat/psr4

Conversation

@richard015ar

Copy link
Copy Markdown
Contributor

Issue: https://github.com/pressbooks/private/issues/2419

Shortcode Handler had no dev tooling at all — no linter, no tests, no CI beyond Crowdin. This adds the standard Pressbooks build setup (Pint + PHPUnit

  • the shared test workflow) so it's held to the same bar as the other plugins, without changing any shortcode behavior.

What changed

  • Adds Laravel Pint (PSR-12) with a pint.json, plus fix / standards composer scripts.
  • Adds a PHPUnit config and a tests/ suite (bootstrap + sanity tests covering the registered shortcodes and two of the handlers).
  • Adds a tests.yml workflow using the shared pb-plugin-tests.yml, plus a Dependabot config and bin/install-wp-tests.sh.
  • Declares php ^8.3 with config.platform.php pinned to 8.3 so the lock stays valid across the CI matrix. The plugin is procedural, so no autoload is added.

How to test

  1. lando composer standards — Pint clean.
  2. lando composer test — all 3 tests pass.
  3. In a book, render [reveal-answer]Show[/reveal-answer][hidden-answer]Answer[/hidden-answer] and confirm the <details> markup.

This plugin had no dev tooling. Add the standard Pressbooks setup:
laravel/pint (PSR-12) with pint.json and fix/standards scripts, a
PHPUnit config plus a tests/ suite (bootstrap + sanity tests covering
the shortcode handlers), .editorconfig, bin/install-wp-tests.sh, a
tests.yml workflow using the shared pb-plugin-tests.yml, and a
dependabot config. Declare php ^8.3 with config.platform.php pinned to
8.3. The plugin is procedural (no classes), so no autoload is added.
@private-packagist

Copy link
Copy Markdown

composer.lock

Package changes

Package Operation From To About
composer/installers add - v2.3.0 view code - License: MIT License

Dev Package changes

Package Operation From To About
doctrine/instantiator add - 2.0.0 view code - License: MIT License
laravel/pint add - v1.30.5 view code - License: MIT License
myclabs/deep-copy add - 1.13.4 view code - License: MIT License
nikic/php-parser add - v5.8.0 view code - License: BSD 3-Clause "New" or "Revised" License
phar-io/manifest add - 2.0.4 view code - License: BSD 3-Clause "New" or "Revised" License
phar-io/version add - 3.2.1 view code - License: BSD 3-Clause "New" or "Revised" License
phpunit/php-code-coverage add - 9.2.32 view code - License: BSD 3-Clause "New" or "Revised" License
phpunit/php-file-iterator add - 3.0.6 view code - License: BSD 3-Clause "New" or "Revised" License
phpunit/php-invoker add - 3.1.1 view code - License: BSD 3-Clause "New" or "Revised" License
phpunit/php-text-template add - 2.0.4 view code - License: BSD 3-Clause "New" or "Revised" License
phpunit/php-timer add - 5.0.3 view code - License: BSD 3-Clause "New" or "Revised" License
phpunit/phpunit add - 9.6.35 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/cli-parser add - 1.0.2 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/code-unit add - 1.0.8 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/code-unit-reverse-lookup add - 2.0.3 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/comparator add - 4.0.10 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/complexity add - 2.0.3 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/diff add - 4.0.6 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/environment add - 5.1.5 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/exporter add - 4.0.8 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/global-state add - 5.0.8 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/lines-of-code add - 1.0.4 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/object-enumerator add - 4.0.4 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/object-reflector add - 2.0.4 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/recursion-context add - 4.0.6 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/resource-operations add - 3.0.4 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/type add - 3.2.1 view code - License: BSD 3-Clause "New" or "Revised" License
sebastian/version add - 3.0.2 view code - License: BSD 3-Clause "New" or "Revised" License
theseer/tokenizer add - 1.3.1 view code - License: BSD 3-Clause "New" or "Revised" License
yoast/phpunit-polyfills add - 1.1.5 view code - License: BSD 3-Clause "New" or "Revised" License

Settings · Docs · Powered by Private Packagist

@codecov-commenter

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants