# #region test_models [TYPE Module] [C:1] [SEMANTICS test, model, sqlalchemy, unit]
# @BRIEF Unit tests for data models
# @LAYER Domain
# @RELATION BINDS_TO -> [ModelsPackage]
from pathlib import Path
import sys

# Add src to path
sys.path.append(str(Path(__file__).parent.parent.parent.parent / "src"))
from src.core.config_models import Environment
from src.core.logger import belief_scope


# #region test_environment_model [TYPE Function]
# @RELATION BINDS_TO -> test_models
# @BRIEF Tests that Environment model correctly stores values.
# @PRE  Environment class is available.
# @POST  Values are verified.
def test_environment_model():
    with belief_scope("test_environment_model"):
        env = Environment(
            id="test-id",
            name="test-env",
            url="http://localhost:8088/api/v1",
            username="admin",
            password="password",
        )
        assert env.id == "test-id"
        assert env.name == "test-env"
        assert env.url == "http://localhost:8088/api/v1"
# #endregion test_environment_model
# #endregion test_models
