Improved

Template tests render with the site's own view helpers

Every test that renders a template now uses one shared Twig environment with the site's real formatting, Help, time zone and settings registry helpers.

TwigRenderer now registers its Twig functions in two groups. addViewHelpers() has the functions, filters and globals that depend only on their arguments, configuration and files. addRequestFunctions() has the ones that read the signed-in person, the session, the database or the request. Template tests build their environment with tests/Support/TemplateTwig.php, which uses the real view helpers and one stand-in for each request function. The helper fails, naming the function, when TwigRenderer has a request function without a stand-in.

Before, 27 tests built their own Twig environment and copied or faked these functions. Several fakes printed amounts as CAD 91.80, a format the site never shows, and their tests checked for it. Those tests now check the amounts the pages show. Internal change; nothing changes for members.