#include "catch2/2.0.1/catch.hpp" #include "../../../include/Conf.hpp" using namespace sibs; TEST_CASE("parse config") { SibsConfig sibsConfig(Compiler::GCC, TINYDIR_STRING("tests/src/confTest")); Result result = Config::readFromFile(TINYDIR_STRING("tests/src/confTest/project.conf"), sibsConfig); if(result.isErr()) { fprintf(stderr, "%s", result.getErrMsg().c_str()); exit(1); } REQUIRE(sibsConfig.getPackageName() == "confTest"); REQUIRE(sibsConfig.getPackageType() == PackageType::LIBRARY); REQUIRE(sibsConfig.getPlatforms().size() == 2); REQUIRE(containsPlatform(sibsConfig.getPlatforms(), PLATFORM_LINUX64)); REQUIRE(containsPlatform(sibsConfig.getPlatforms(), PLATFORM_WIN64)); REQUIRE(sibsConfig.getDependencies().size() == 2); const auto &xxhashDependency = sibsConfig.getDependencies()[0]; REQUIRE(xxhashDependency.name == "xxhash"); REQUIRE(xxhashDependency.version == "0.1.0"); const auto &catch2Dependency = sibsConfig.getDependencies()[1]; REQUIRE(catch2Dependency.name == "catch2"); REQUIRE(catch2Dependency.version == "1.0.0"); }