Skip to content

Commit 06956b4

Browse files
Added test for get_classes_info
1 parent 615adba commit 06956b4

1 file changed

Lines changed: 37 additions & 0 deletions

File tree

test/test_class_info.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import os
2+
from py_module_info import ModuleInfo
3+
4+
import pytest
5+
6+
7+
@pytest.fixture()
8+
def code_to_test():
9+
code = """
10+
11+
class Foo(A.Test):
12+
13+
def __init__(self, name):
14+
self.name = name
15+
16+
def n():
17+
pass
18+
19+
class Bar():
20+
21+
def a():
22+
print('Hello')
23+
24+
"""
25+
26+
with open("test_test.py", "w") as f:
27+
f.write(code)
28+
29+
yield "test_test.py"
30+
os.remove("test_test.py")
31+
32+
33+
def test_get_classes_info(code_to_test):
34+
35+
m = ModuleInfo(code_to_test)
36+
assert m.get_classes_info() == {'Foo': {'bases': ['A.Test'], 'methods': {'__init__': {'args': ['self', 'name'], 'defaults': [], 'arg_count': 2, 'calls': []}, 'n': {'args': [], 'defaults': [], 'arg_count': 0,
37+
'calls': []}}}, 'Bar': {'bases': [], 'methods': {'a': {'args': [], 'defaults': [], 'arg_count': 0, 'calls': ["print('Hello')"]}}}}

0 commit comments

Comments
 (0)