Files
PINA/tests/test_problem_zoo/test_advection.py
2025-09-22 15:05:28 +02:00

20 lines
649 B
Python

import pytest
from pina.problem.zoo import AdvectionProblem
from pina.problem import SpatialProblem, TimeDependentProblem
@pytest.mark.parametrize("c", [1.5, 3])
def test_constructor(c):
problem = AdvectionProblem(c=c)
problem.discretise_domain(n=10, mode="random", domains="all")
assert problem.are_all_domains_discretised
assert isinstance(problem, SpatialProblem)
assert isinstance(problem, TimeDependentProblem)
assert hasattr(problem, "conditions")
assert isinstance(problem.conditions, dict)
# Should fail if c is not a float or int
with pytest.raises(ValueError):
AdvectionProblem(c="invalid")