code: def test_property_decorator_baseclass(self):
      # see #1620
      base = BaseClass()
      self.assertEqual(base.spam, 5)
      self.assertEqual(base._spam, 5)
      base.spam = 10
      self.assertEqual(base.spam, 10)
      self.assertEqual(base._spam, 10)
      delattr(base, "spam")
      self.assertTrue(not hasattr(base, "spam"))
      self.assertTrue(not hasattr(base, "_spam"))
      base.spam = 20
      self.assertEqual(base.spam, 20)
      self.assertEqual(base._spam, 20)
  
imports: import abc
  import sys
  import unittest
  from types import DynamicClassAttribute
label_desc: Use image node_id 1 for calling the PropertyTests obj's underlying member method code with example usage: obj.test_property_decorator_baseclass() without return types