summaryrefslogtreecommitdiff
path: root/tests/functional/r/regression/regression_property_no_member_2641.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/functional/r/regression/regression_property_no_member_2641.py')
-rw-r--r--tests/functional/r/regression/regression_property_no_member_2641.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/functional/r/regression/regression_property_no_member_2641.py b/tests/functional/r/regression/regression_property_no_member_2641.py
new file mode 100644
index 000000000..083f78bdc
--- /dev/null
+++ b/tests/functional/r/regression/regression_property_no_member_2641.py
@@ -0,0 +1,40 @@
+# pylint: disable=missing-docstring,unused-argument,too-few-public-methods
+# https://github.com/PyCQA/pylint/issues/2641
+from abc import ABCMeta, abstractmethod
+
+
+class Person(metaclass=ABCMeta):
+ @abstractmethod
+ def __init__(self, name, age):
+ self.name = name
+ self.age = age
+
+ @property
+ def name(self):
+ return self.__name
+
+ @name.setter
+ def name(self, value):
+ self.__name = value
+
+
+class Myself(Person):
+ def __init__(self, name, age, tel):
+ super().__init__(name, age)
+ self.tel = tel
+
+ @Person.name.setter
+ def name(self, value):
+ super(self.__class__, self.__class__).name.fset(self, "override")
+
+
+class Wife(Person):
+ def __init__(self, name, age, tel):
+ super().__init__(name, age)
+ self.tel = tel
+
+
+ms = Myself("Matheus Saraiva", 36, "988070350")
+wi = Wife("Joice Saraiva", 34, "999923554")
+
+print(wi.name)