refactor: add phase1 module scaffold

This commit is contained in:
NINI
2026-05-05 00:35:31 +09:00
parent 90307dc13c
commit 59dcc77a24
31 changed files with 239 additions and 6 deletions
+32
View File
@@ -1,3 +1,15 @@
#include "fesa/Analysis/Analysis.hpp"
#include "fesa/Assembly/Assembly.hpp"
#include "fesa/Boundary/Boundary.hpp"
#include "fesa/Core/Core.hpp"
#include "fesa/Element/Element.hpp"
#include "fesa/IO/IO.hpp"
#include "fesa/Load/Load.hpp"
#include "fesa/Math/Math.hpp"
#include "fesa/Material/Material.hpp"
#include "fesa/Property/Property.hpp"
#include "fesa/Results/Results.hpp"
#include "fesa/Util/Util.hpp"
#include "fesa/fesa.hpp"
#include <array>
@@ -7,6 +19,7 @@
#include <type_traits>
#include <stdexcept>
#include <string>
#include <string_view>
#include <vector>
static_assert(std::is_same_v<fesa::Real, double>, "Real must remain double");
@@ -330,6 +343,25 @@ FESA_TEST(core_types_and_dof_mapping_are_stable) {
FESA_CHECK(!fesa::dofFromAbaqus(7).has_value());
}
FESA_TEST(module_scaffold_headers_are_include_compatible_with_umbrella) {
const auto modules = fesa::architectureModules();
FESA_CHECK(modules.size() == 12);
FESA_CHECK(modules[0] == std::string_view("Analysis"));
FESA_CHECK(modules[1] == std::string_view("Assembly"));
FESA_CHECK(modules[2] == std::string_view("Boundary"));
FESA_CHECK(modules[3] == std::string_view("Core"));
FESA_CHECK(modules[4] == std::string_view("Element"));
FESA_CHECK(modules[5] == std::string_view("IO"));
FESA_CHECK(modules[6] == std::string_view("Load"));
FESA_CHECK(modules[7] == std::string_view("Math"));
FESA_CHECK(modules[8] == std::string_view("Material"));
FESA_CHECK(modules[9] == std::string_view("Property"));
FESA_CHECK(modules[10] == std::string_view("Results"));
FESA_CHECK(modules[11] == std::string_view("Util"));
FESA_CHECK(fesa::umbrellaFacadeHeader() == std::string_view("fesa/fesa.hpp"));
FESA_CHECK(fesa::dofFromAbaqus(1).value() == fesa::Dof::UX);
}
FESA_TEST(parser_accepts_phase1_subset) {
fesa::AbaqusInputParser parser;
auto parsed = parser.parseString(phase1Input());