1 import numpy
2
3 from glitter import EnumConstant
4 from glitter.contexts import context_manager
5
7 value = getattr(context, name)
8 try:
9 if isinstance(value, EnumConstant):
10 if name in ("draw_buffer", "read_buffer"):
11 return
12 valid_values = value._enum._reverse_dict.values()
13 for value in valid_values:
14 setattr(context, name, value)
15 assert numpy.all(getattr(context, name) == value), "property %s is broken" % name
16 else:
17 if type(value) is float:
18 value *= 0.5
19 setattr(context, name, value)
20 assert numpy.all(getattr(context, name) == value), "property %s is broken" % name
21 value += 0.5
22 setattr(context, name, value)
23 assert numpy.all(getattr(context, name) == value), "property %s is broken" % name
24 except AttributeError:
25 pass
26
33