• 
      

    Add unit tests for @spina, and fix various issues that were found.

    Review Request #12918 — Created March 24, 2023 and submitted — Latest diff uploaded

    Information

    Spina
    master

    Reviewers

    This change adds unit tests that cover the @spina decorator, 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.

    • __spinaOptions wasn't marked readonly (fixing this required adding a
      new MutableSpinaClass so class prep could set this option).

    • __spinaOptions was always duplicated, wasting memory, since we
      weren't checking for emptiness correctly.

    • automergeAttrs retained attributes that were skipped.

    • Wrong names for classes could be used.

    • __super__ wasn't read-only.

    Unit tests pass.

    Commits

    Files