1 #define BOOST_TEST_DYN_LINK
2 #include <boost/test/unit_test.hpp>
8 #include <boost/filesystem.hpp>
15 BOOST_AUTO_TEST_SUITE(QueryPluginTest)
26 auto cp = [&](std::string _filename) {
29 fs::path src =
"tests/unit/App" / filename;
30 BOOST_REQUIRE(fs::exists(src));
33 fs::create_directories(dest);
34 BOOST_REQUIRE(fs::exists(dest));
36 fs::copy_file(src, dest / filename, fs::copy_option::overwrite_if_exists);
37 BOOST_REQUIRE(fs::exists(dest / filename));
46 cp(
"TestConfigname.hh");
47 cp(
"TestConfigname.cc");
52 auto check = [&](std::string str) {
57 BOOST_CHECK(
check(R
"(ccasm select -h)"));
59 BOOST_CHECK(check(R"(ccasm select --set-on)"));
61 BOOST_CHECK(check(R"(ccasm query -h p)"));
63 BOOST_CHECK(check(R"(ccasm query -k test_comp_n)"));
65 BOOST_CHECK(check(R"(ccasm query -k 'test_comp_n(Zr)')"));
67 BOOST_CHECK(check(R"(ccasm query -k 'test_comp_n(O)')"));
69 BOOST_CHECK(check(R"(ccasm query -k 'test_configname')"));
73 BOOST_AUTO_TEST_SUITE_END()
Data structure holding basic CASM command info.
const DirectoryStructure & dir() const
void check_composition() override
Check "casm composition".
void refresh(bool read_settings=false, bool read_composition=false, bool read_chem_ref=false, bool read_configs=false, bool clear_clex=false)
Reload PrimClex data from settings.
fs::path root_dir() const
Return casm project directory path.
PrimClex is the top-level data structure for a CASM project.
BOOST_AUTO_TEST_CASE(Test1)
bool check(std::string test, const jsonParser &expected, const jsonParser &calculated, fs::path test_cases_path, bool quiet, double tol=0.0)
Check expected JSON vs calculated JSON using BOOST_CHECK_EQUAL.
void check_enum() override
Check "ccasm enum".
fs::path query_plugins() const
Return enumerators plugin dir.
virtual void check_init()
Check project initialization.
A Configuration represents the values of all degrees of freedom in a Supercell.
int casm_api(const CommandArgs &args)
Executes CASM commands specified by args.