#include #include "matador/query/generator.hpp" #include "matador/query/table_column.hpp" #include "../../models/airplane.hpp" #include "../../models/flight.hpp" using namespace matador::utils; using namespace matador::query; using namespace matador::test; TEST_CASE("Test placeholder generator", "[generator][placeholder]") { REQUIRE(generator::placeholders() == std::vector{_, _, _}); } TEST_CASE("Test column value generator", "[generator][column_value]") { // SECTION("Test column value generator for simple table") { // const airplane a380{1, "Airbus", "A380"}; // const auto pairs = generator::column_value_pairs(a380); // const std::vector expected_result{ // { "id", 1U }, // { "brand", std::string{"Airbus"} }, // { "model", std::string{"A380"} } // }; // REQUIRE(pairs.size() == 3); // REQUIRE(pairs == expected_result); // } // // SECTION("Test column value generator for table with foreign key") { // // } } // TEST_CASE("Test column generator", "[generator][column]") { // SECTION("Test column generator for simple table") { // const std::vector expected_columns { // column("id"), // column("brand"), // column("model"), // }; // const auto result = generator::columns(); // REQUIRE(result.size() == expected_columns.size()); // auto it = result.begin(); // for (const auto& c : expected_columns) { // REQUIRE(c.equals( *it++)); // } // } // }