
      scrollendPromise = createScrollendPromiseForTarget(t, targetDiv, 700, false);
    }

    testInfo.target[testInfo.attribute] = 200;

    await scrollendPromise;
    assert_false(invalid_scrollend_arrived, "Scrollend should not fire to target that has not scrolled");

    assert_equals(testInfo.target[testInfo.attribute], 200,
                  testInfo.target.tagName + "." + testInfo.attribute + " " + testInfo.behavior);
  }

  scroll_attr_change_variants.forEach((testInfo) => {
    subsetTestByKey(t