Active
Project:
RefreshLess
Version:
2.x-dev
Component:
Code
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
13 Nov 2023 at 06:10 UTC
Updated:
16 Mar 2025 at 18:55 UTC
Jump to comment: Most recent
Overview of automated tests, supporting code, progress in implementing each, and listing of what we aim to test.
For old discussion from the 8.x-1.x days that has some useful ideas: #2708615: Test coverage
✅ = Done
⏳ = In progress/partially complete
❌ = Not started yet
user/login local tabs; more TBD)user/login, admin/config/system/site-information, etc.FunctionalJavascript test for additive aggregation to verify that different combinations of libraries result in just one instance of each while navigating using Turbo.Functional test (as opposed to FunctionalJavascript), or we could try a FunctionalJavascript test where we disable Turbo Drive so that can get a more accurate picture of all the other JavaScript coping well with this.Note that these will require patching core in CI. Now patching in CI so that part is solved.
Drupal\Tests\page_cache\Functional\PageCacheTest.drupalSettings updating (see #3397370: Turbo: Improve drupalSettings updating):
MutationObserver-based implementation used to fail on this so this is to ensure it continues to remain fixed (see issue above)drupalSettings.ajax have Turbo disabled, allowing Drupal core to handle them.use-ajax-submit class have Turbo disabled, allowing Drupal core to handle themTurboDrupalSettings throws an exception when attempting to update, i.e. it can't find a new drupalSettings JSON in a response.\refreshless_turbo_requirements() success and failure states; will probably need moving logic out of function and into classes that don't hard code the paths so we can mock the various conditions; see the package_validator_classes branch.Drupal\refreshless_turbo\Value\RefreshlessRequestBecause I'm tired of having these tabs open all the time, lolol:
Drupal\FunctionalJavascriptTests\JSWebAssert - we extend this via TurboWebDriverAssert
Comments
Comment #7
ambient.impactExpanded issue summary with list of things to test and related issues. Also emoji.
Comment #8
ambient.impactExpanded navigation tests into nested list.
Comment #9
ambient.impactAdded form submission test nested list.
Comment #10
ambient.impactAdded link to
Drupal\FunctionalJavascriptTests\JSWebAssertComment #11
ambient.impactAdded link to #3397370: Turbo: Improve drupalSettings updating
Comment #12
ambient.impactExpanded
drupalSettingsupdating list item with nested list.Comment #14
ambient.impactAdded
\refreshless_turbo_requirements()list item.Comment #15
ambient.impactChanged ⌛️ emoji to ⏳ as the former is a finished hourglass while the latter is what we want: an in-progress hourglass.
Comment #16
ambient.impactAdded CSS and JS aggregation list items.
Comment #17
ambient.impactAdded list item for page cache request policy.
Comment #18
ambient.impactAdded item for
Drupal\refreshless_turbo\Value\RefreshlessRequest.Comment #19
ambient.impactComment #20
ambient.impactAdded #3478106: Turbo: Drupal messages are lost if Turbo does a full reload.
Comment #21
ambient.impactAdded item for #3399243: Turbo: Tracking issue of core and contrib behaviours that need fixes to correctly detach and then attach.
Comment #24
ambient.impactUpdated the status of a bunch of items and rewrote a few things to reflect current state of various fixes.
Comment #27
ambient.impactMarking #3478106: Turbo: Drupal messages are lost if Turbo does a full reload item as completed.
Comment #30
ambient.impactUpdated summary to reflect that we now have core patching in CI.
Comment #34
ambient.impactMarking CSS specificity item partially complete.
Comment #40
ambient.impactComment #59
ambient.impactAdded failure states list item.
Comment #60
ambient.impactAdded Mink and Ajax testing links.