feat(nonlinear-static-newton-raphson): step 0 - cli-output-lease-and-derived-names

This commit is contained in:
KOKO\Mimi
2026-08-24 10:42:14 +09:00
parent 41816c8aef
commit fc16ef6221
61 changed files with 10890 additions and 115 deletions
@@ -153,7 +153,8 @@ TEST(B33ReferenceComparison, GeneratesAuthoritativeHdf5AndComparisonEvidence) {
const auto input = reference_directory / "cantilever beam.inp";
const auto output_directory =
binary_root / "reference" / "cantilever-beam-b33";
const auto results = output_directory / "results.h5";
const auto execution_input = output_directory / input.filename();
const auto results = output_directory / "cantilever beam_results.h5";
const auto comparison = output_directory / "comparison.json";
// Only the exact build-local evidence directory is reset; the approved
@@ -173,16 +174,18 @@ TEST(B33ReferenceComparison, GeneratesAuthoritativeHdf5AndComparisonEvidence) {
std::filesystem::path{"cantilever beam reactions.csv"});
EXPECT_EQ(reference_before[3U].relative_path,
std::filesystem::path{"cantilever beam.inp"});
ASSERT_TRUE(std::filesystem::copy_file(input, execution_input, error));
ASSERT_FALSE(error);
fesa::FesaApplication application;
// FesaApplication receives application operands/options; main strips argv[0].
ASSERT_EQ(application.Run({input.string(), "--output", results.string()}), 0);
ASSERT_EQ(application.Run({execution_input.string()}), 0);
ASSERT_TRUE(std::filesystem::is_regular_file(results));
ASSERT_GT(H5Fis_hdf5(results.string().c_str()), 0);
EXPECT_GT(StressRowCount(results), 0U);
auto comparison_result =
fesa::test::ReferenceComparison::Compare(results, reference_directory);
fesa::test::ReferenceComparison::Compare(results, reference_directory,
execution_input);
ASSERT_TRUE(comparison_result.HasValue());
const auto& report = comparison_result.Value();
ASSERT_TRUE(report.passed);
@@ -248,7 +251,9 @@ TEST(B33ReferenceComparison, GeneratesAuthoritativeHdf5AndComparisonEvidence) {
}
std::sort(generated_names.begin(), generated_names.end());
EXPECT_EQ(generated_names,
(std::vector<std::string>{"comparison.json", "results.h5"}));
(std::vector<std::string>{"cantilever beam.inp",
"cantilever beam_results.h5",
"comparison.json"}));
ExpectTreeUnchanged(reference_before, SnapshotTree(reference_directory));
}