code: def test_attributes():
      """Test if attribute checks are in place"""
      with TestingCanvas() as c:
          rectpolygon = visuals.Rectangle(
              center=(50, 50, 0),
              height=40.0,
              width=80.0,
              color="red",
              parent=c.scene,
          )
          with raises(ValueError):
              rectpolygon.height = 0
          with raises(ValueError):
              rectpolygon.width = 0
          with raises(ValueError):
              rectpolygon.radius = [10, 0, 5]
          with raises(ValueError):
              rectpolygon.radius = [10.0]
          with raises(ValueError):
              rectpolygon.radius = 21.0
  
imports: from vispy.scene import visuals, transforms
  from vispy.testing import requires_application, TestingCanvas, run_tests_if_main, raises
  from vispy.testing.image_tester import assert_image_approved
label_desc: Use image node_id 4 for calling a global function with example usage: test_attributes() without return types