Update action extension hooks and unit tests.

Review Request #12775 — Created Jan. 9, 2023 and submitted — Latest diff uploaded

Information

Review Board
release-6.x

Reviewers

This is the final change for the new actions framework, covering the
extension hooks and unit tests.

I've repurposed the old ActionHook (which was just used as a generic
base class) to be the new entry point for actions. This simply takes a
list of BaseAction instances and handles registering and unregistering
as appropriate.

The old legacy action hooks have been updated to translate the
dictionary definitions into BaseAction instances, which are then passed
upward to the ActionHook base class. These are all now treated as
deprecated, and will warn appropriately.

This also fixes up a variety of issues discovered with the unit tests.

  • Built an extension that used all of the hooks, both the modern and
    legacy. Saw that everything worked appropriately.
  • Ran python unit tests.
  • Ran js-tests.
  • Built codebase and manual documentation and checked all related
    pages for content and spelling.

Commits

Files