feat(shell-surface-pressure-load): step 1 - map-pressure-input-contract
This commit is contained in:
@@ -121,3 +121,31 @@ TEST(InpSyntax, ReadsLegacyCantileverWithoutMutation) {
|
||||
EXPECT_EQ(ReadExactBytes(input_path), bytes_before);
|
||||
EXPECT_EQ(std::filesystem::last_write_time(input_path), timestamp_before);
|
||||
}
|
||||
|
||||
TEST(InpSyntax, AcceptsAsciiKeywordContinuationAndPreservesPhysicalSourceLines) {
|
||||
const TemporaryInputFile input{
|
||||
"keyword-continuation",
|
||||
"*SuRfAcE, TYPE=ELEMENT,\r\n"
|
||||
" NAME=Pressure_Surface\r\n"
|
||||
"Instance-A.0010, SPOS\r\n"};
|
||||
|
||||
const auto result = fesa::AbaqusInputReader{}.Read(input.Path());
|
||||
|
||||
ASSERT_TRUE(result.HasValue());
|
||||
ASSERT_EQ(result.Value().blocks.size(), 1U);
|
||||
const auto& block = result.Value().blocks[0];
|
||||
EXPECT_EQ(block.canonical_name, "SURFACE");
|
||||
EXPECT_EQ(block.original_line, "*SuRfAcE, TYPE=ELEMENT,");
|
||||
EXPECT_EQ(block.physical_lines,
|
||||
(std::vector<std::string>{"*SuRfAcE, TYPE=ELEMENT,",
|
||||
" NAME=Pressure_Surface"}));
|
||||
ASSERT_EQ(block.parameters.size(), 2U);
|
||||
EXPECT_EQ(block.parameters[0].name, "TYPE");
|
||||
ASSERT_TRUE(block.parameters[0].value.has_value());
|
||||
EXPECT_EQ(*block.parameters[0].value, "ELEMENT");
|
||||
EXPECT_EQ(block.parameters[1].name, "NAME");
|
||||
ASSERT_TRUE(block.parameters[1].value.has_value());
|
||||
EXPECT_EQ(*block.parameters[1].value, "Pressure_Surface");
|
||||
ASSERT_EQ(block.data.size(), 1U);
|
||||
EXPECT_EQ(block.data[0].location.line, 3U);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user