Skip to content

Commit 8ec5721

Browse files
committed
Also use parametrize for readonly, readwrite (as suggested by @rainwoodman)
1 parent fc77747 commit 8ec5721

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

tests/test_class_sh_property.py

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,25 +67,21 @@ def test_shp(m_attr):
6767
],
6868
)
6969
@pytest.mark.parametrize("m_attr", ("m_mptr", "m_cptr"))
70-
def test_ptr(field_type, num_default, outer_type, m_attr):
71-
m_attr_readonly = m_attr + "_readonly"
72-
m_attr_readwrite = m_attr + "_readwrite"
70+
@pytest.mark.parametrize("r_kind", ("_readonly", "_readwrite"))
71+
def test_ptr(field_type, num_default, outer_type, m_attr, r_kind):
72+
m_attr_r_kind = m_attr + r_kind
7373
outer = outer_type()
74-
assert getattr(outer, m_attr_readonly) is None
75-
assert getattr(outer, m_attr_readwrite) is None
74+
assert getattr(outer, m_attr_r_kind) is None
7675
field = field_type()
7776
assert field.num == num_default
78-
setattr(outer, m_attr_readwrite, field)
79-
assert getattr(outer, m_attr_readonly).num == num_default
80-
assert getattr(outer, m_attr_readwrite).num == num_default
77+
setattr(outer, m_attr + "_readwrite", field)
78+
assert getattr(outer, m_attr_r_kind).num == num_default
8179
field.num = 76
82-
assert getattr(outer, m_attr_readonly).num == 76
83-
assert getattr(outer, m_attr_readwrite).num == 76
80+
assert getattr(outer, m_attr_r_kind).num == 76
8481
# Change to -88 or -99 to demonstrate Undefined Behavior (dangling pointer).
8582
if num_default == 88 and m_attr == "m_mptr":
8683
del field
87-
assert getattr(outer, m_attr_readonly).num == 76
88-
assert getattr(outer, m_attr_readwrite).num == 76
84+
assert getattr(outer, m_attr_r_kind).num == 76
8985

9086

9187
@pytest.mark.parametrize("m_attr_readwrite", ("m_uqmp_readwrite", "m_uqcp_readwrite"))

0 commit comments

Comments
 (0)