| 1671 | @classmethod |
| 1672 | def setup_classes(cls): |
| 1673 | class User(cls.Comparable): |
| 1674 | def __init__(self, name): |
| 1675 | self.name = name |
| 1676 | |
| 1677 | # o2m -> m2o |
| 1678 | # uselist -> nonuselist |
| 1679 | keywords = association_proxy( |
| 1680 | "user_keywords", |
| 1681 | "keyword", |
| 1682 | creator=lambda k: UserKeyword(keyword=k), |
| 1683 | ) |
| 1684 | |
| 1685 | # m2o -> o2m |
| 1686 | # nonuselist -> uselist |
| 1687 | singular_keywords = association_proxy("singular", "keywords") |
| 1688 | |
| 1689 | # m2o -> scalar |
| 1690 | # nonuselist |
| 1691 | singular_value = association_proxy("singular", "value") |
| 1692 | |
| 1693 | # o2m -> scalar |
| 1694 | singular_collection = association_proxy("user_keywords", "value") |
| 1695 | |
| 1696 | # uselist assoc_proxy -> assoc_proxy -> obj |
| 1697 | common_users = association_proxy("user_keywords", "common_users") |
| 1698 | |
| 1699 | # non uselist assoc_proxy -> assoc_proxy -> obj |
| 1700 | common_singular = association_proxy("singular", "keyword") |
| 1701 | |
| 1702 | # non uselist assoc_proxy -> assoc_proxy -> scalar |
| 1703 | singular_keyword = association_proxy("singular", "keyword") |
| 1704 | |
| 1705 | # uselist assoc_proxy -> assoc_proxy -> scalar |
| 1706 | common_keyword_name = association_proxy( |
| 1707 | "user_keywords", "keyword_name" |
| 1708 | ) |
| 1709 | |
| 1710 | class Keyword(cls.Comparable): |
| 1711 | def __init__(self, keyword): |
nothing calls this directly
no test coverage detected