# Test GalleryStatestate = GalleryState( view_mode=ViewMode.LIST, current_page=2, active_types=[FileType.IMAGE, FileType.VIDEO], selected_paths=["/path/to/file.jpg"])# Test serializationdata = state.to_dict()assert data["view_mode"] =="list"assert data["current_page"] ==2assert"image"in data["active_types"]# Test deserializationrestored = GalleryState.from_dict(data)assert restored.view_mode == ViewMode.LISTassert restored.current_page ==2assert FileType.IMAGE in restored.active_typesprint("GalleryState tests passed!")
GalleryState tests passed!
Handler Functions
Individual handler functions for gallery actions.
Router Initialization
Create and configure the APIRouter with all gallery routes.
init_router
def init_router( config:GalleryConfig, # Gallery configuration files_getter:Callable, # Function to get files mounter:DirectoryMounter, # File URL mounter state_getter:Callable, # Function to get current state state_setter:Callable, # Function to save state route_prefix:str='/gallery', # Route prefix for all gallery routes callbacks:Optional=None, # Optional callbacks)->APIRouter: # Configured APIRouter with all gallery routes
Initialize and return an APIRouter with all gallery routes.
[DirectoryMounter] Warning: Directory does not exist: t
[DirectoryMounter] Warning: Directory does not exist: m
[DirectoryMounter] Warning: Directory does not exist: p
[DirectoryMounter] Warning: Directory does not exist: t
[DirectoryMounter] Warning: Directory does not exist: m
[DirectoryMounter] Warning: Directory does not exist: p
[DirectoryMounter] Warning: Directory does not exist: u
[DirectoryMounter] Warning: Directory does not exist: i
[DirectoryMounter] Warning: Directory does not exist: a
[DirectoryMounter] Warning: Directory does not exist: w
[DirectoryMounter] Warning: Directory does not exist: c
[DirectoryMounter] Warning: Directory does not exist: l
[DirectoryMounter] Warning: Directory does not exist: e
[DirectoryMounter] Warning: Directory does not exist: o
Router initialization tests passed!