MCPcopy Index your code
hub / github.com/RustPython/RustPython / SymtableTest

Class SymtableTest

Lib/test/test_symtable.py:180–555  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

178
179
180class SymtableTest(unittest.TestCase):
181
182 top = symtable.symtable(TEST_CODE, "?", "exec")
183 # These correspond to scopes in TEST_CODE
184 Mine = find_block(top, "Mine")
185
186 a_method = find_block(Mine, "a_method")
187 spam = find_block(top, "spam")
188 internal = find_block(spam, "internal")
189 other_internal = find_block(spam, "other_internal")
190 foo = find_block(top, "foo")
191 Alias = find_block(top, "Alias")
192 GenericAlias = find_block(top, "GenericAlias")
193 # XXX: RUSTPYTHON
194 # GenericAlias_inner = find_block(GenericAlias, "GenericAlias")
195 generic_spam = find_block(top, "generic_spam")
196 # XXX: RUSTPYTHON
197 # generic_spam_inner = find_block(generic_spam, "generic_spam")
198 GenericMine = find_block(top, "GenericMine")
199 # XXX: RUSTPYTHON
200 # GenericMine_inner = find_block(GenericMine, "GenericMine")
201 # XXX: RUSTPYTHON
202 # T = find_block(GenericMine, "T")
203 # XXX: RUSTPYTHON
204 # U = find_block(GenericMine, "U")
205
206 @unittest.expectedFailure # TODO: RUSTPYTHON
207 def test_type(self):
208 self.assertEqual(self.top.get_type(), "module")
209 self.assertEqual(self.Mine.get_type(), "class")
210 self.assertEqual(self.a_method.get_type(), "function")
211 self.assertEqual(self.spam.get_type(), "function")
212 self.assertEqual(self.internal.get_type(), "function")
213 self.assertEqual(self.foo.get_type(), "function")
214 self.assertEqual(self.Alias.get_type(), "type alias")
215 self.assertEqual(self.GenericAlias.get_type(), "type parameters")
216 self.assertEqual(self.GenericAlias_inner.get_type(), "type alias")
217 self.assertEqual(self.generic_spam.get_type(), "type parameters")
218 self.assertEqual(self.generic_spam_inner.get_type(), "function")
219 self.assertEqual(self.GenericMine.get_type(), "type parameters")
220 self.assertEqual(self.GenericMine_inner.get_type(), "class")
221 self.assertEqual(self.T.get_type(), "type variable")
222 self.assertEqual(self.U.get_type(), "type variable")
223
224 @unittest.expectedFailure # TODO: RUSTPYTHON
225 def test_id(self):
226 self.assertGreater(self.top.get_id(), 0)
227 self.assertGreater(self.Mine.get_id(), 0)
228 self.assertGreater(self.a_method.get_id(), 0)
229 self.assertGreater(self.spam.get_id(), 0)
230 self.assertGreater(self.internal.get_id(), 0)
231 self.assertGreater(self.foo.get_id(), 0)
232 self.assertGreater(self.Alias.get_id(), 0)
233 self.assertGreater(self.GenericAlias.get_id(), 0)
234 self.assertGreater(self.generic_spam.get_id(), 0)
235 self.assertGreater(self.GenericMine.get_id(), 0)
236
237 def test_optimized(self):

Callers

nothing calls this directly

Calls 1

find_blockFunction · 0.85

Tested by

no test coverage detected