testing VTK wrappers
This commit is contained in:
parent
2f52165e0a
commit
6ef7410e5a
|
@ -72,7 +72,7 @@ class VTK:
|
|||
connectivity : numpy.ndarray of np.dtype = int
|
||||
Cell connectivity (0-based), first dimension determines #Cells, second dimension determines #Nodes/Cell.
|
||||
cell_type : str
|
||||
Name of the vtk.vtkCell subclass. Tested for TRIANGLE, QUAD, and HEXAHEDRON.
|
||||
Name of the vtk.vtkCell subclass. Tested for TRIANGLE, QUAD, TETRA, and HEXAHEDRON.
|
||||
|
||||
"""
|
||||
vtk_nodes = vtk.vtkPoints()
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
import os
|
||||
import sys
|
||||
|
||||
import pytest
|
||||
import numpy as np
|
||||
|
||||
from damask import VTK
|
||||
|
||||
@pytest.fixture
|
||||
def reference_dir(reference_dir_base):
|
||||
"""Directory containing reference results."""
|
||||
return os.path.join(reference_dir_base,'Result')
|
||||
|
||||
class TestVTK:
|
||||
|
||||
def test_rectilinearGrid(self,tmp_path):
|
||||
grid = np.random.randint(5,10,3)*2
|
||||
size = np.random.random(3) + 1.0
|
||||
origin = np.random.random(3)
|
||||
v = VTK.from_rectilinearGrid(grid,size,origin)
|
||||
s = v.__repr__()
|
||||
v.write(os.path.join(tmp_path,'rectilinearGrid'))
|
||||
v = VTK.from_file(os.path.join(tmp_path,'rectilinearGrid.vtr'))
|
||||
assert(s == v.__repr__())
|
||||
|
||||
def test_polyData(self,tmp_path):
|
||||
points = np.random.rand(3,100)
|
||||
v = VTK.from_polyData(points)
|
||||
s = v.__repr__()
|
||||
v.write(os.path.join(tmp_path,'polyData'))
|
||||
v = VTK.from_file(os.path.join(tmp_path,'polyData.vtp'))
|
||||
assert(s == v.__repr__())
|
||||
|
||||
@pytest.mark.parametrize('cell_type,n',[
|
||||
('VTK_hexahedron',8),
|
||||
('TETRA',4),
|
||||
('quad',4),
|
||||
('VTK_TRIANGLE',3)
|
||||
]
|
||||
)
|
||||
def test_unstructuredGrid(self,tmp_path,cell_type,n):
|
||||
nodes = np.random.rand(n,3)
|
||||
connectivity = np.random.choice(np.arange(n),n,False).reshape(-1,n)
|
||||
v = VTK.from_unstructuredGrid(nodes,connectivity,cell_type)
|
||||
s = v.__repr__()
|
||||
v.write(os.path.join(tmp_path,'unstructuredGrid'))
|
||||
v = VTK.from_file(os.path.join(tmp_path,'unstructuredGrid.vtu'))
|
||||
assert(s == v.__repr__())
|
Loading…
Reference in New Issue