Add unit tests for @spina, and fix various issues that were found.
Review Request #12918 — Created March 24, 2023 and submitted — Latest diff uploaded
This change adds unit tests that cover the
@spinadecorator, testing
all options and behaviors.While working on this, the following issues were found and fixed:
-
Instances created from a Spina class were lacking the typing to access
Spina state and methods. -
__spinaOptionswasn't marked readonly (fixing this required adding a
newMutableSpinaClassso class prep could set this option). -
__spinaOptionswas always duplicated, wasting memory, since we
weren't checking for emptiness correctly. -
automergeAttrsretained attributes that were skipped. -
Wrong names for classes could be used.
-
__super__wasn't read-only.
Unit tests pass.