Refactor test cases for improved readability and consistency
- Updated test functions in various test files to enhance code clarity by formatting long lines and improving indentation. - Adjusted assertions to use multi-line formatting for better readability. - Added new test cases for theme settings API to ensure proper functionality. - Ensured consistent use of line breaks and spacing across test files for uniformity.
This commit is contained in:
@@ -7,6 +7,7 @@ from typing import Dict, Mapping
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from models.application_setting import ApplicationSetting
|
||||
from models.theme_setting import ThemeSetting # Import ThemeSetting model
|
||||
|
||||
CSS_COLOR_CATEGORY = "theme"
|
||||
CSS_COLOR_VALUE_TYPE = "color"
|
||||
@@ -92,7 +93,9 @@ def get_css_color_settings(db: Session) -> Dict[str, str]:
|
||||
return values
|
||||
|
||||
|
||||
def update_css_color_settings(db: Session, updates: Mapping[str, str]) -> Dict[str, str]:
|
||||
def update_css_color_settings(
|
||||
db: Session, updates: Mapping[str, str]
|
||||
) -> Dict[str, str]:
|
||||
"""Persist provided CSS color overrides and return the final values."""
|
||||
|
||||
if not updates:
|
||||
@@ -176,8 +179,10 @@ def _validate_functional_color(value: str) -> None:
|
||||
|
||||
def _ensure_component_count(value: str, expected: int) -> None:
|
||||
if not value.endswith(")"):
|
||||
raise ValueError("Color function expressions must end with a closing parenthesis")
|
||||
inner = value[value.index("(") + 1 : -1]
|
||||
raise ValueError(
|
||||
"Color function expressions must end with a closing parenthesis"
|
||||
)
|
||||
inner = value[value.index("(") + 1: -1]
|
||||
parts = [segment.strip() for segment in inner.split(",")]
|
||||
if len(parts) != expected:
|
||||
raise ValueError(
|
||||
@@ -206,3 +211,20 @@ def list_css_env_override_rows(
|
||||
}
|
||||
)
|
||||
return rows
|
||||
|
||||
|
||||
def save_theme_settings(db: Session, theme_data: dict):
|
||||
theme = db.query(ThemeSetting).first() or ThemeSetting()
|
||||
for key, value in theme_data.items():
|
||||
setattr(theme, key, value)
|
||||
db.add(theme)
|
||||
db.commit()
|
||||
db.refresh(theme)
|
||||
return theme
|
||||
|
||||
|
||||
def get_theme_settings(db: Session):
|
||||
theme = db.query(ThemeSetting).first()
|
||||
if theme:
|
||||
return {c.name: getattr(theme, c.name) for c in theme.__table__.columns}
|
||||
return {}
|
||||
|
||||
Reference in New Issue
Block a user