MCPcopy Create free account
hub / github.com/ipython/ipython / test_info

Function test_info

IPython/core/tests/test_oinspect.py:168–199  ·  view source on GitHub ↗

Check that Inspector.info fills out various fields as expected.

()

Source from the content-addressed store, hash-verified

166#-----------------------------------------------------------------------------
167
168def test_info():
169 "Check that Inspector.info fills out various fields as expected."
170 i = inspector.info(Call, oname='Call')
171 nt.assert_equal(i['type_name'], 'type')
172 expted_class = str(type(type)) # <class 'type'> (Python 3) or <type 'type'>
173 nt.assert_equal(i['base_class'], expted_class)
174 nt.assert_regex(i['string_form'], "<class 'IPython.core.tests.test_oinspect.Call'( at 0x[0-9a-f]{1,9})?>")
175 fname = __file__
176 if fname.endswith(".pyc"):
177 fname = fname[:-1]
178 # case-insensitive comparison needed on some filesystems
179 # e.g. Windows:
180 nt.assert_equal(i['file'].lower(), compress_user(fname).lower())
181 nt.assert_equal(i['definition'], None)
182 nt.assert_equal(i['docstring'], Call.__doc__)
183 nt.assert_equal(i['source'], None)
184 nt.assert_true(i['isclass'])
185 nt.assert_equal(i['init_definition'], "Call(x, y=1)")
186 nt.assert_equal(i['init_docstring'], Call.__init__.__doc__)
187
188 i = inspector.info(Call, detail_level=1)
189 nt.assert_not_equal(i['source'], None)
190 nt.assert_equal(i['docstring'], None)
191
192 c = Call(1)
193 c.__doc__ = "Modified instance docstring"
194 i = inspector.info(c)
195 nt.assert_equal(i['type_name'], 'Call')
196 nt.assert_equal(i['docstring'], "Modified instance docstring")
197 nt.assert_equal(i['class_docstring'], Call.__doc__)
198 nt.assert_equal(i['init_docstring'], Call.__init__.__doc__)
199 nt.assert_equal(i['call_docstring'], Call.__call__.__doc__)
200
201def test_class_signature():
202 info = inspector.info(HasSignature, 'HasSignature')

Callers

nothing calls this directly

Calls 3

compress_userFunction · 0.90
CallClass · 0.85
infoMethod · 0.80

Tested by

no test coverage detected