Skip to content

Commit 36ea6a7

Browse files
committed
added type checks to the tests
Using assert because mypy does not yet support type guards from unittest See python/mypy#5088
1 parent d288ffc commit 36ea6a7

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

tests/test.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ class TestParser(unittest.TestCase):
7272
def test_get_stub_names(self) -> None:
7373
ctx = get_context((3, 5))
7474
names = get_stub_names("simple", search_context=ctx)
75+
assert names is not None
7576
self.assertEqual(
7677
set(names.keys()),
7778
{
@@ -133,13 +134,15 @@ def test_get_stub_names(self) -> None:
133134
# Classes
134135
self.check_nameinfo(names, "Cls", ast.ClassDef, has_child_nodes=True)
135136
cls_names = names["Cls"].child_nodes
137+
assert cls_names is not None
136138
self.assertEqual(set(cls_names.keys()), {"attr", "method"})
137139
self.check_nameinfo(cls_names, "attr", ast.AnnAssign)
138140
self.check_nameinfo(cls_names, "method", ast.FunctionDef)
139141

140142
def test_starimport(self) -> None:
141143
ctx = get_context((3, 5))
142144
names = get_stub_names("starimport", search_context=ctx)
145+
assert names is not None
143146
self.assertEqual(set(names.keys()), {"public"})
144147
self.check_nameinfo(names, "public", typeshed_client.ImportedName)
145148
path = typeshed_client.ModulePath(("imported",))
@@ -157,6 +160,7 @@ def test_dot_import(self) -> None:
157160
):
158161
with self.subTest(mod):
159162
names = get_stub_names(mod, search_context=ctx)
163+
assert names is not None
160164
self.assertEqual(set(names.keys()), {"f", "overloads"})
161165
self.check_nameinfo(names, "f", typeshed_client.ImportedName)
162166
path = typeshed_client.ModulePath(("subdir", "overloads"))
@@ -215,20 +219,25 @@ def check_conditions(
215219
) -> None:
216220
ctx = get_context(version, platform)
217221
info = get_stub_names("conditions", search_context=ctx)
222+
assert info is not None
218223
self.assertEqual(set(info.keys()), names | {"sys"})
219224

220225
def test_top_level_assert(self) -> None:
221226
ctx = get_context((3, 6), "flat")
222227
info = get_stub_names("top_level_assert", search_context=ctx)
228+
assert info is not None
223229
self.assertEqual(set(info.keys()), set())
224230
ctx = get_context((3, 6), "linux")
225231
info = get_stub_names("top_level_assert", search_context=ctx)
232+
assert info is not None
226233
self.assertEqual(set(info.keys()), {"x", "sys"})
227234

228235
def test_overloads(self) -> None:
229236
names = get_stub_names("overloads", search_context=get_context((3, 5)))
237+
assert names is not None
230238
self.assertEqual(set(names.keys()), {"overload", "overloaded", "OverloadClass"})
231239
self.check_nameinfo(names, "overloaded", typeshed_client.OverloadedName)
240+
assert isinstance(names["overloaded"].ast, typeshed_client.OverloadedName)
232241
definitions = names["overloaded"].ast.definitions
233242
self.assertEqual(len(definitions), 2)
234243
for defn in definitions:
@@ -237,6 +246,7 @@ def test_overloads(self) -> None:
237246
classdef = names["OverloadClass"]
238247
self.assertIsInstance(classdef.ast, ast.ClassDef)
239248
children = classdef.child_nodes
249+
assert children is not None
240250
self.assertEqual(set(children.keys()), {"overloaded"})
241251
definitions = children["overloaded"].ast.definitions
242252
self.assertEqual(len(definitions), 2)
@@ -255,6 +265,7 @@ def test_simple(self) -> None:
255265

256266
name_info = typeshed_client.NameInfo("exported", True, mock.ANY)
257267
resolved = res.get_name(path, "exported")
268+
assert isinstance(resolved, typeshed_client.ImportedInfo)
258269
self.assertEqual(resolved, typeshed_client.ImportedInfo(other_path, name_info))
259270
self.assertIsInstance(resolved.info.ast, ast.AnnAssign)
260271

@@ -284,6 +295,7 @@ def test(self) -> None:
284295
for module_name, module_path in typeshed_client.get_all_stub_files(ctx):
285296
with self.subTest(path=module_name):
286297
ast = typeshed_client.get_stub_ast(module_name, search_context=ctx)
298+
assert ast is not None
287299
typeshed_client.parser.parse_ast(ast, ctx, self.fake_path)
288300

289301

0 commit comments

Comments
 (0)