When running unit tests with useDomApiRenderer: false, the VdomHelper.update() method incorrectly moves the className property of a vdom object into the attributes object of the resulting vnode.
According to the Neo.vdom.VNode class definition, className should be a top-level property on the vnode and should not be part of the attributes object.
This was discovered while converting the VdomHelper Siesta test to Playwright. The Playwright test test/playwright/unit/VdomHelper.spec.mjs currently has assertions that are adjusted to expect this buggy behavior to allow the test suite to pass.
Acceptance Criteria
- Investigate
VdomHelper.update() and identify why className is being misplaced when useDomApiRenderer is false.
- Correct the logic to ensure
className is handled as a top-level vnode property.
- Update the assertions in
test/playwright/unit/VdomHelper.spec.mjs to reflect the correct behavior.
When running unit tests with
useDomApiRenderer: false, theVdomHelper.update()method incorrectly moves theclassNameproperty of avdomobject into theattributesobject of the resultingvnode.According to the
Neo.vdom.VNodeclass definition,classNameshould be a top-level property on thevnodeand should not be part of theattributesobject.This was discovered while converting the
VdomHelperSiesta test to Playwright. The Playwright testtest/playwright/unit/VdomHelper.spec.mjscurrently has assertions that are adjusted to expect this buggy behavior to allow the test suite to pass.Acceptance Criteria
VdomHelper.update()and identify whyclassNameis being misplaced whenuseDomApiRendererisfalse.classNameis handled as a top-levelvnodeproperty.test/playwright/unit/VdomHelper.spec.mjsto reflect the correct behavior.