Files
PINA/tests/test_problem_zoo/test_supervised_problem.py
Dario Coscia 810d215ca0 Modify pina.__init__.py and rm useless .py files
* rm meta.py, plotter.py, writer.py
* modify __init__ file
* modify tests due to __init__ import
2025-03-19 17:46:35 +01:00

32 lines
1.3 KiB
Python

import torch
from pina.problem import AbstractProblem
from pina.condition import InputOutputPointsCondition
from pina.problem.zoo.supervised_problem import SupervisedProblem
from pina.graph import RadiusGraph
def test_constructor():
input_ = torch.rand((100,10))
output_ = torch.rand((100,10))
problem = SupervisedProblem(input_=input_, output_=output_)
assert isinstance(problem, AbstractProblem)
assert hasattr(problem, "conditions")
assert isinstance(problem.conditions, dict)
assert list(problem.conditions.keys()) == ['data']
assert isinstance(problem.conditions['data'], InputOutputPointsCondition)
def test_constructor_graph():
x = torch.rand((20,100,10))
pos = torch.rand((20,100,2))
input_ = RadiusGraph(
x=x, pos=pos, r=.2, build_edge_attr=True
)
output_ = torch.rand((100,10))
problem = SupervisedProblem(input_=input_, output_=output_)
assert isinstance(problem, AbstractProblem)
assert hasattr(problem, "conditions")
assert isinstance(problem.conditions, dict)
assert list(problem.conditions.keys()) == ['data']
assert isinstance(problem.conditions['data'], InputOutputPointsCondition)
assert isinstance(problem.conditions['data'].input_points, list)
assert isinstance(problem.conditions['data'].output_points, torch.Tensor)