From f4eb9d197ec9e4a6310e96eec0f0b0122d1cd9be Mon Sep 17 00:00:00 2001 From: Jimmy Lai Date: Thu, 17 Oct 2019 13:47:24 -0700 Subject: [PATCH] [metadata] make QualifiedNameProvider typing more specific --- libcst/metadata/scope_provider.py | 6 ++---- libcst/metadata/tests/test_qualified_name_provider.py | 10 ++-------- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/libcst/metadata/scope_provider.py b/libcst/metadata/scope_provider.py index 2055f223..073dd5df 100644 --- a/libcst/metadata/scope_provider.py +++ b/libcst/metadata/scope_provider.py @@ -858,14 +858,12 @@ class QualifiedNameVisitor(cst.CSTVisitor): if scope: self.provider.set_metadata(node, scope.get_qualified_names_for(node)) else: - self.provider.set_metadata(node, {}) + self.provider.set_metadata(node, set()) super().on_visit(node) return True -class QualifiedNameProvider( - BatchableMetadataProvider[Optional[Collection[QualifiedName]]] -): +class QualifiedNameProvider(BatchableMetadataProvider[Collection[QualifiedName]]): """ Compute possible qualified names of a variable CSTNode (extends `PEP-3155 `_). diff --git a/libcst/metadata/tests/test_qualified_name_provider.py b/libcst/metadata/tests/test_qualified_name_provider.py index fd82910a..4952dd54 100644 --- a/libcst/metadata/tests/test_qualified_name_provider.py +++ b/libcst/metadata/tests/test_qualified_name_provider.py @@ -6,7 +6,7 @@ # pyre-strict from textwrap import dedent -from typing import Collection, Mapping, Tuple, cast +from typing import Collection, Mapping, Tuple import libcst as cst from libcst import ensure_type @@ -23,13 +23,7 @@ def get_qualified_name_metadata_provider( module_str: str ) -> Tuple[cst.Module, Mapping[cst.CSTNode, Collection[QualifiedName]]]: wrapper = MetadataWrapper(cst.parse_module(dedent(module_str))) - return ( - wrapper.module, - cast( - Mapping[cst.CSTNode, Collection[QualifiedName]], - wrapper.resolve(QualifiedNameProvider), - ), # we're sure every node has an associated scope - ) + return wrapper.module, wrapper.resolve(QualifiedNameProvider) class ScopeProviderTest(UnitTest):