picogl.tests.test_texture_renderer

Unit tests for the TextureRenderer class in the PicoGL OpenGL backend.

This module contains a comprehensive suite of unit tests for verifying the correctness, robustness, and interface of the picogl.renderer.texture.TextureRenderer class, which provides specialized texture rendering functionality.

The tests cover:

  • Object initialization and inheritance from ObjectRenderer

  • Texture initialization and loading

  • Path management and resolution

  • UV coordinate handling and inversion

  • Error handling and edge cases

  • Data validation and type conversion

Dependencies:
  • unittest (standard library)

  • unittest.mock.MagicMock for OpenGL function mocking

  • numpy for test data

  • picogl.renderer.texture.TextureRenderer

  • picogl.renderer.meshdata.MeshData

To run the tests:

python -m unittest picogl.tests.test_texture_renderer

Classes

TestTextureRenderer

Test cases for TextureRenderer class.

Module Contents

class picogl.tests.test_texture_renderer.TestTextureRenderer(methodName='runTest')[source]

Bases: unittest.TestCase

Test cases for TextureRenderer class.

setUp()[source]

Set up test fixtures before each test method.

tearDown()[source]

Clean up after each test method.

test_initialization_with_default_parameters()[source]

Test TextureRenderer initialization with default parameters.

test_initialization_with_custom_parameters()[source]

Test TextureRenderer initialization with custom parameters.

test_initialization_with_path_objects()[source]

Test TextureRenderer initialization with Path objects.

test_initialization_with_none_base_dir()[source]

Test TextureRenderer initialization with None base_dir.

test_initialize_textures_with_normal_v_coords()[source]

Test initialize_textures with normal V coordinates.

test_initialize_textures_with_inversed_v_coords()[source]

Test initialize_textures with inversed V coordinates.

test_get_texture_filename()[source]

Test get_texture_filename method.

test_set_texture_filename()[source]

Test set_texture_filename method.

test_set_texture_filename_with_none()[source]

Test set_texture_filename method with None filename.

test_set_resource_path()[source]

Test set_resource_path method.

test_set_resource_path_with_path_object()[source]

Test set_resource_path method with Path object.

test_object_renderer_inheritance()[source]

Test that TextureRenderer inherits from ObjectRenderer.

test_vertex_count_calculation()[source]

Test vertex count calculation in initialization.

test_texture_loading_integration()[source]

Test texture loading integration with TextureLoader.

test_uv_coordinate_inversion_edge_cases()[source]

Test UV coordinate inversion with edge cases.

test_draw_selection_method()[source]

Test _draw_selection method exists and is callable.

test_initialization_with_minimal_mesh_data()[source]

Test initialization with minimal mesh data.

test_path_absolute_conversion()[source]

Test that paths are converted to absolute paths.

test_texture_gl_id_assignment()[source]

Test that texture_gl_id is properly assigned to context.

test_initialization_calls_initialize_textures()[source]

Test that initialization calls initialize_textures.