Skip to content

Commit a7ce426

Browse files
SONARPY-2363 Document no issue on S1172 when inheriting from annotated class member (#2175)
1 parent 7119dc6 commit a7ce426

File tree

3 files changed

+17
-1
lines changed

3 files changed

+17
-1
lines changed

python-checks/src/test/resources/checks/unusedFunctionParameter/unusedFunctionParameter.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,3 +201,12 @@ class FakeMetaclass(type):
201201
class ClassWithFakeMetaClass(metaclass=FakeMetaclass):
202202
def execute(self, name):
203203
print("Execute")
204+
205+
206+
from typing import Callable
207+
class LocalClassWithAnnotatedMember:
208+
my_member: Callable[[str, int],str]
209+
210+
class LocalClassChild(LocalClassWithAnnotatedMember):
211+
def my_member(self, param, other_param): # OK, respecting contract defined in parent
212+
print("Execute")

python-checks/src/test/resources/checks/unusedFunctionParameter/unusedFunctionParameterImport.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from unusedFunctionParameterImported import ImportedParent, ParentWithDuplicatedParent
1+
from unusedFunctionParameterImported import ImportedParent, ParentWithDuplicatedParent, MyClassWithAnnotatedMember
22

33
class ChildFromImported(ImportedParent):
44

@@ -16,3 +16,6 @@ class ChildFromDuplicated(ParentWithDuplicatedParent):
1616
def do_something(self, a): # FN SONARPY-1829 ChildFromDuplicated has an unresolved type hierarchy, because of the duplicated parent classes
1717
return compute()
1818

19+
class MyChild(MyClassWithAnnotatedMember):
20+
def my_member(self, param, other_param): # OK, respecting contract defined in parent
21+
return compute()

python-checks/src/test/resources/checks/unusedFunctionParameter/unusedFunctionParameterImported.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,7 @@ class DuplicatedParent:
1010

1111
class ParentWithDuplicatedParent(DuplicatedParent):
1212
...
13+
14+
from typing import Callable
15+
class MyClassWithAnnotatedMember:
16+
my_member: Callable[[str, int],str]

0 commit comments

Comments
 (0)