unit test
This commit is contained in:
committed by
GitHub
parent
7b4c33630d
commit
ccd6eeb8af
@ -746,3 +746,44 @@ TEST(DihedralStyle, numdiff)
|
|||||||
cleanup_lammps(lmp, test_config);
|
cleanup_lammps(lmp, test_config);
|
||||||
if (!verbose) ::testing::internal::GetCapturedStdout();
|
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(DihedralStyle, extract)
|
||||||
|
{
|
||||||
|
if (test_config.skip_tests.count(test_info_->name())) GTEST_SKIP();
|
||||||
|
|
||||||
|
LAMMPS::argv args = {"DihedralStyle", "-log", "none", "-echo", "screen", "-nocite"};
|
||||||
|
|
||||||
|
if (!verbose) ::testing::internal::CaptureStdout();
|
||||||
|
LAMMPS *lmp = nullptr;
|
||||||
|
try {
|
||||||
|
lmp = init_lammps(args, test_config, true);
|
||||||
|
} catch (std::exception &e) {
|
||||||
|
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||||
|
FAIL() << e.what();
|
||||||
|
}
|
||||||
|
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||||
|
|
||||||
|
if (!lmp) {
|
||||||
|
std::cerr << "One or more prerequisite styles are not available "
|
||||||
|
"in this LAMMPS configuration:\n";
|
||||||
|
for (auto prerequisite : test_config.prerequisites) {
|
||||||
|
std::cerr << prerequisite.first << "_style " << prerequisite.second << "\n";
|
||||||
|
}
|
||||||
|
GTEST_SKIP();
|
||||||
|
}
|
||||||
|
|
||||||
|
auto *dihedral = lmp->force->dihedral;
|
||||||
|
void *ptr = nullptr;
|
||||||
|
int dim = 0;
|
||||||
|
for (auto extract : test_config.extract) {
|
||||||
|
ptr = dihedral->extract(extract.first.c_str(), dim);
|
||||||
|
EXPECT_NE(ptr, nullptr);
|
||||||
|
EXPECT_EQ(dim, extract.second);
|
||||||
|
}
|
||||||
|
ptr = dihedral->extract("does_not_exist", dim);
|
||||||
|
EXPECT_EQ(ptr, nullptr);
|
||||||
|
|
||||||
|
if (!verbose) ::testing::internal::CaptureStdout();
|
||||||
|
cleanup_lammps(lmp, test_config);
|
||||||
|
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user