Add type annotations and improve test coverage

This commit is contained in:
Gabriel Luiz Freitas Almeida 2024-04-01 13:33:52 -03:00
commit 45233df8c9

View file

@ -1,4 +1,9 @@
from datetime import datetime
import pytest import pytest
from sqlalchemy import func
from sqlmodel import select
from langflow.graph.graph.base import Graph from langflow.graph.graph.base import Graph
from langflow.graph.schema import RunOutputs from langflow.graph.schema import RunOutputs
from langflow.initial_setup.setup import ( from langflow.initial_setup.setup import (
@ -10,8 +15,6 @@ from langflow.initial_setup.setup import (
from langflow.memory import delete_messages from langflow.memory import delete_messages
from langflow.services.database.models.flow.model import Flow from langflow.services.database.models.flow.model import Flow
from langflow.services.deps import session_scope from langflow.services.deps import session_scope
from sqlalchemy import func
from sqlmodel import select
def test_load_starter_projects(): def test_load_starter_projects():
@ -22,9 +25,23 @@ def test_load_starter_projects():
def test_get_project_data(): def test_get_project_data():
projects = load_starter_projects() projects = load_starter_projects()
for project in projects: for _, project in projects:
data = get_project_data(project) (
assert all(d is not None for d in data), f"Project {project} data is None" project_name,
project_description,
project_is_component,
updated_at_datetime,
project_data,
project_icon,
project_icon_bg_color,
) = get_project_data(project)
assert isinstance(project_name, str)
assert isinstance(project_description, str)
assert isinstance(project_is_component, bool)
assert isinstance(updated_at_datetime, datetime)
assert isinstance(project_data, dict)
assert isinstance(project_icon, str) or project_icon is None
assert isinstance(project_icon_bg_color, str) or project_icon_bg_color is None
def test_create_or_update_starter_projects(client): def test_create_or_update_starter_projects(client):