test_winprops.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. from panda3d.core import WindowProperties
  2. import pytest
  3. def test_winprops_ctor():
  4. props = WindowProperties()
  5. assert not props.is_any_specified()
  6. def test_winprops_copy_ctor():
  7. props = WindowProperties()
  8. props.set_size(1, 2)
  9. props2 = WindowProperties(props)
  10. assert props == props2
  11. assert props2.get_size() == (1, 2)
  12. with pytest.raises(TypeError):
  13. WindowProperties(None)
  14. def test_winprops_ctor_kwargs():
  15. props = WindowProperties(size=(1, 2), origin=3)
  16. assert props.has_size()
  17. assert props.get_size() == (1, 2)
  18. assert props.has_origin()
  19. assert props.get_origin() == (3, 3)
  20. # Invalid property should throw
  21. with pytest.raises(TypeError):
  22. WindowProperties(swallow_type="african")
  23. # Invalid value should throw
  24. with pytest.raises(TypeError):
  25. WindowProperties(size="invalid")
  26. def test_winprops_size_staticmethod():
  27. props = WindowProperties.size(1, 2)
  28. assert props.has_size()
  29. assert props.get_size() == (1, 2)
  30. props = WindowProperties.size((1, 2))
  31. assert props.has_size()
  32. assert props.get_size() == (1, 2)
  33. def test_winprops_size_property():
  34. props = WindowProperties()
  35. # Test get
  36. props.set_size(1, 2)
  37. assert props.size == (1, 2)
  38. # Test has
  39. props.clear_size()
  40. assert props.size is None
  41. # Test set
  42. props.size = (4, 5)
  43. assert props.get_size() == (4, 5)
  44. # Test clear
  45. props.size = None
  46. assert not props.has_size()
  47. def test_winprops_maximized_property():
  48. props = WindowProperties()
  49. # Test get
  50. props.set_maximized(True)
  51. assert props.maximized == True
  52. # Test has
  53. props.clear_maximized()
  54. assert props.maximized is None
  55. # Test set
  56. props.maximized = True
  57. assert props.get_maximized() == True
  58. # Test clear
  59. props.maximized = None
  60. assert not props.has_maximized()