Skip to content

Commit feb76b5

Browse files
committed
Extend test_abc to include abstract properties
1 parent 6bd22e2 commit feb76b5

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

tests/cloudpickle_test.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1184,6 +1184,11 @@ def some_classmethod(cls):
11841184
def some_staticmethod():
11851185
"""A staticmethod"""
11861186

1187+
@property
1188+
@abc.abstractmethod
1189+
def some_property():
1190+
"""A property"""
1191+
11871192
class ConcreteClass(AbstractClass):
11881193
def some_method(self):
11891194
return 'it works!'
@@ -1197,6 +1202,10 @@ def some_classmethod(cls):
11971202
def some_staticmethod():
11981203
return 'it works!'
11991204

1205+
@property
1206+
def some_property(self):
1207+
return 'it works!'
1208+
12001209
# This abstract class is locally defined so we can safely register
12011210
# tuple in it to verify the unpickled class also register tuple.
12021211
AbstractClass.register(tuple)
@@ -1218,6 +1227,9 @@ def some_staticmethod():
12181227

12191228
self.assertEqual(depickled_class().some_staticmethod(), 'it works!')
12201229
self.assertEqual(depickled_instance.some_staticmethod(), 'it works!')
1230+
1231+
self.assertEqual(depickled_class().some_property, 'it works!')
1232+
self.assertEqual(depickled_instance.some_property, 'it works!')
12211233
self.assertRaises(TypeError, depickled_base)
12221234

12231235
class DepickledBaseSubclass(depickled_base):
@@ -1233,6 +1245,10 @@ def some_classmethod(cls):
12331245
def some_staticmethod():
12341246
return 'it works for realz!'
12351247

1248+
@property
1249+
def some_property():
1250+
return 'it works for realz!'
1251+
12361252
self.assertEqual(DepickledBaseSubclass().some_method(),
12371253
'it works for realz!')
12381254

@@ -1261,7 +1277,7 @@ def some_staticmethod():
12611277

12621278
@abc.abstractproperty
12631279
def some_property(self):
1264-
"""A staticmethod"""
1280+
"""A property"""
12651281

12661282
class ConcreteClass(AbstractClass):
12671283
def some_method(self):

0 commit comments

Comments
 (0)