FEM: unit tests, solver framework, separate tests for each solver

This commit is contained in:
Bernd Hahnebach
2019-09-27 08:27:35 +02:00
parent 91224df805
commit b8287fd42b
2 changed files with 23 additions and 9 deletions

View File

@@ -153,7 +153,8 @@ gf()
./bin/FreeCADCmd --run-test "femtest.app.test_result.TestResult.test_stress_principal_reinforced"
./bin/FreeCADCmd --run-test "femtest.app.test_result.TestResult.test_rho"
./bin/FreeCADCmd --run-test "femtest.app.test_result.TestResult.test_disp_abs"
./bin/FreeCADCmd --run-test "femtest.app.test_solverframework.TestSolverFrameWork.test_solver_framework"
./bin/FreeCADCmd --run-test "femtest.app.test_solverframework.TestSolverFrameWork.test_solver_calculix"
./bin/FreeCADCmd --run-test "femtest.app.test_solverframework.TestSolverFrameWork.test_solver_elmer"
# to get all command to start FreeCAD from build dir on Linux
@@ -252,7 +253,10 @@ import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.app.test_result.TestResult.test_disp_abs"))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.app.test_solverframework.TestSolverFrameWork.test_solver_framework"))
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.app.test_solverframework.TestSolverFrameWork.test_solver_calculix"))
import unittest
unittest.TextTestRunner().run(unittest.TestLoader().loadTestsFromName("femtest.app.test_solverframework.TestSolverFrameWork.test_solver_elmer"))
# open files from FEM test suite source code

View File

@@ -65,10 +65,10 @@ class TestSolverFrameWork(unittest.TestCase):
))
# ********************************************************************************************
def test_solver_framework(
def test_solver_calculix(
self
):
fcc_print("\n--------------- Start of FEM tests solver frame work ---------------")
fcc_print("\n--------------- Start of FEM tests solver framework solver CalculiX ------")
# set up the static analysis example
from femexamples import boxanalysis as box
@@ -106,6 +106,20 @@ class TestSolverFrameWork(unittest.TestCase):
ret = testtools.compare_inp_files(infile_given, inpfile_totest)
self.assertFalse(ret, "ccxtools write_inp_file test failed.\n{}".format(ret))
save_fc_file = solverframework_analysis_dir + static_base_name + ".FCStd"
fcc_print("Save FreeCAD file for static2 analysis to {}...".format(save_fc_file))
self.active_doc.saveAs(save_fc_file)
fcc_print("\n--------------- End of FEM tests solver framework solver CalculiX --------")
# ********************************************************************************************
def test_solver_elmer(
self
):
fcc_print("\n--------------- Start of FEM tests solver framework solver Elmer ------")
# TODO set up example
'''
# use solver frame work elmer solver
# elmer solver object
@@ -174,11 +188,7 @@ class TestSolverFrameWork(unittest.TestCase):
self.assertFalse(ret, "GMSH geo write file test failed.\n{}".format(ret))
'''
save_fc_file = solverframework_analysis_dir + static_base_name + ".FCStd"
fcc_print("Save FreeCAD file for static2 analysis to {}...".format(save_fc_file))
self.active_doc.saveAs(save_fc_file)
fcc_print("--------------- End of FEM tests solver frame work ---------------")
fcc_print("\n--------------- End of FEM tests solver framework solver Elmer --------")
# ********************************************************************************************
def tearDown(