diff --git a/soft-navigation-heuristics/smoke/tentative/late-url-change.html b/soft-navigation-heuristics/smoke/tentative/late-url-change.html
index 5526eca7d76bca..a626730cc36ae6 100644
--- a/soft-navigation-heuristics/smoke/tentative/late-url-change.html
+++ b/soft-navigation-heuristics/smoke/tentative/late-url-change.html
@@ -14,7 +14,7 @@
const URL = '/late-url-change';
navigateButton.addEventListener("click", async () => {
- content.innerHTML = '
';
+ content.innerHTML = '
';
const entries = await new Promise(resolve => {
new PerformanceObserver((list, observer) => {
@@ -31,6 +31,8 @@
const softNavPromise =
SoftNavigationTestHelper.getPerformanceEntries("soft-navigation");
+ const icpPromise =
+ SoftNavigationTestHelper.getPerformanceEntries("interaction-contentful-paint");
if (test_driver) {
test_driver.click(navigateButton);
@@ -43,5 +45,10 @@
assert_true(
entries[0].name.endsWith(URL),
'Unexpected Soft Navigation URL.');
+
+ const icps = await helper.withTimeoutMessage(
+ icpPromise, 'ICP not detected.', /*timeout=*/ 3000);
+ assert_equals(icps.length, 1, 'Expected exactly one ICP entry.');
+ assert_equals(icps[0].id, 'target', 'Expected ICP candidate to be "target"');
}, 'Soft Navigation Detection supports setting URL after paint');