| 86 | |
| 87 | |
| 88 | def test_simple_schema(): |
| 89 | code = """ |
| 90 | class ActionAPI(object): |
| 91 | schema = {"properties": {"action": {}}} |
| 92 | """ |
| 93 | |
| 94 | res = parse(code) |
| 95 | |
| 96 | assert isinstance(res, nodes.Module) |
| 97 | |
| 98 | class_node: nodes.ClassDef = res.body[0] |
| 99 | assert isinstance(class_node, nodes.ClassDef) |
| 100 | |
| 101 | # action property added |
| 102 | assert "schema" in class_node.locals |
| 103 | assert "action" in class_node.locals |
| 104 | assert isinstance(class_node.locals["action"][0], nodes.AssignName) |
| 105 | assert class_node.locals["action"][0].name == "action" |
| 106 | |
| 107 | |
| 108 | def test_copied_schema(): |