This PR fills some gaps in code coverage for the VSM unit tests. Primarily in the RenderedViewState property wrapper and its projected value. It does this by consolidating and reorganizing unit tests around their respective public protocols. Using a default unit test case subclass, we can achieve the same test coverage for all public APIs for the StateContainer to ensure that all calls are forwarded correctly and that no inherited behavior is accidentally lost.
While it's a bit unconventional to have unit test base classes that contain actual tests, this approach ensures unit testing consistency between all public VSM APIs.
This PR also contains some minor fixes and tweaks, including one "spelling-only" breaking change for the debounced version of the observe(_ nextState...) function.
Description
This PR fills some gaps in code coverage for the VSM unit tests. Primarily in the RenderedViewState property wrapper and its projected value. It does this by consolidating and reorganizing unit tests around their respective public protocols. Using a default unit test case subclass, we can achieve the same test coverage for all public APIs for the StateContainer to ensure that all calls are forwarded correctly and that no inherited behavior is accidentally lost.
While it's a bit unconventional to have unit test base classes that contain actual tests, this approach ensures unit testing consistency between all public VSM APIs.
This PR also contains some minor fixes and tweaks, including one "spelling-only" breaking change for the debounced version of the
observe(_ nextState...)
function.Type of Change
Checklist