query/test/EntityQueryBuilderTest.cpp

33 lines
820 B
C++

#include <catch2/catch_test_macros.hpp>
#include <matador/sql/connection.hpp>
#include <matador/sql/entity_query_builder.hpp>
#include "models/author.hpp"
#include "models/book.hpp"
struct schiff {
std::string id;
template<typename Operator>
void process(Operator &op)
{
namespace field = matador::utils::access;
field::primary_key(op, "id", id, 255);
}
};
using namespace matador::sql;
TEST_CASE("Create sql query for entity", "[query][entity][builder]") {
connection noop("noop://noop.db");
schema scm("noop");
scm.attach<matador::test::author>("authors");
scm.attach<matador::test::book>("books");
entity_query_builder eqb(17, scm);
auto context = eqb.build<matador::test::book>(noop);
std::cout << "SQL: " << context.value().sql << "\n";
context = eqb.build<schiff>(noop);
}