diff --git a/arcade/__init__.py b/arcade/__init__.py index 49889c148..1634a6cfd 100644 --- a/arcade/__init__.py +++ b/arcade/__init__.py @@ -350,7 +350,6 @@ def configure_logging(level: Optional[int] = None): 'Camera', 'SimpleCamera', 'Color', - 'DEFAULT_FONT_NAMES', 'EasingData', 'EmitBurst', 'EmitController', @@ -521,6 +520,7 @@ def configure_logging(level: Optional[int] = None): 'isometric_grid_to_screen', 'lerp', 'lerp_vec', + 'lerp_angle', 'load_animated_gif', 'load_font', 'load_sound', diff --git a/arcade/gl/types.py b/arcade/gl/types.py index 348056822..adaf05e27 100644 --- a/arcade/gl/types.py +++ b/arcade/gl/types.py @@ -214,7 +214,6 @@ def __init__( normalized: Optional[Iterable[str]] = None, instanced: bool = False, ): - #: The :py:class:`~arcade.gl.Buffer` this description object describes self.buffer = buffer # type: Buffer #: List of string attributes @@ -222,13 +221,13 @@ def __init__( #: List of normalized attributes self.normalized = set() if normalized is None else set(normalized) #: Instanced flag (bool) - self.instanced = instanced # type: bool + self.instanced: bool = instanced #: Formats of each attribute - self.formats = [] # type: List[AttribFormat] + self.formats: List[AttribFormat] = [] #: The byte stride of the buffer - self.stride = -1 # type: int + self.stride: int = -1 #: Number of vertices in the buffer - self.num_vertices = -1 # type: int + self.num_vertices: int = -1 if not isinstance(buffer, Buffer): raise ValueError("buffer parameter must be an arcade.gl.Buffer") diff --git a/tests/unit2/test_arcade.py b/tests/unit2/test_arcade.py index df3f0c07e..e64c08291 100644 --- a/tests/unit2/test_arcade.py +++ b/tests/unit2/test_arcade.py @@ -1,5 +1,27 @@ +from types import ModuleType +from copy import copy import logging import arcade +from arcade import * + + +def test_import(): + """Compare arcade.__all__ to the actual module contents""" + import arcade + global_names = set(k for k in globals() if not k.startswith('_')) + arcade_names = set(k for k in arcade.__dict__ if not k.startswith('_')) + + # Get the common members + common = global_names.intersection(arcade_names) + remaining = arcade_names - common + for name in copy(remaining): + attr = getattr(arcade, name) + if type(attr) is ModuleType: + remaining.remove(name) + elif not attr.__module__.startswith('arcade.'): + remaining.remove(name) + + assert len(remaining) == 0 def test_logging():