Page MenuHomePhabricator

VueTest Improvements
Open, Needs TriagePublic5 Estimated Story Points

Description

This task is a WIP container for some of the improvements we know we need to make in the VueTest extension (a custom MW extension that DST maintains; this is used by us for testing purposes but never deployed into production). This task may be broken down into smaller tasks as needed.

Some improvements (complete list TBD):

  • Improve the layout of Codex demos and ensure that they are responsive, correctly adapt to skins, etc
  • Streamline the workflow for Visual Regression Testing of Codex using this extension (particularly during new Codex releases)
  • Reconsider the current approach to testing experimental components; should we externalize the Codex dependency instead of embedding it from upstream (which would mean losing the ability to showcase experimental components here), or do we need to figure out how to do both of these things?
  • Can we improve the current git submodule approach for demoing non-published versions of Codex?

Event Timeline

One major potential improvement we've discussed is changing VueTest to use the externalized version of Codex, rather than using an embedded version. Components should be able to just `require( '@wikimedia/codex' ). This would mean that VueTest uses the version of Codex inside MediaWiki, which would keep it in sync with core and prevent us from having to update Codex in VueTest itself.

One major potential improvement we've discussed is changing VueTest to use the externalized version of Codex, rather than using an embedded version. Components should be able to just `require( '@wikimedia/codex' ). This would mean that VueTest uses the version of Codex inside MediaWiki, which would keep it in sync with core and prevent us from having to update Codex in VueTest itself.

We were doing this in the past, but we wanted to include on-wiki demos for experimental components (like the initial Dialog component while it was being developed) – this necessitated embedding our own version of Codex separate from the MW-provided build.

Now that Dialog has been released, it would be easy enough to change this *back* (there are currently no experimental components upstream). Maybe we don't anticipate any future cases where we really want to test experimental components inside MW before they are released.

I guess the alternative would be to support both, either within VueTest or in separate extensions. But I'm not sure if that's worth it

egardner renamed this task from [EPIC] VueTest Improvements to VueTest Improvements.Feb 14 2023, 10:13 PM
egardner removed a project: Epic.
egardner updated the task description. (Show Details)
egardner set the point value for this task to 5.
egardner raised the priority of this task from High to Needs Triage.Oct 2 2023, 9:15 PM
egardner moved this task from Needs Refinement to Backlog on the Design-System-Team board.