column, placeholder and column_value generator progress

This commit is contained in:
Sascha Kühl
2025-11-12 15:53:03 +01:00
parent 9e76203bc9
commit 1c5b2b21b0
16 changed files with 93 additions and 236 deletions
+6 -4
View File
@@ -1,6 +1,7 @@
#include <catch2/catch_test_macros.hpp>
#include "matador/sql/column_generator.hpp"
#include "matador/query/generator.hpp"
#include "matador/object/repository.hpp"
#include "../test/models/product.hpp"
@@ -10,6 +11,7 @@
#include "matador/sql/table.hpp"
using namespace matador::sql;
using namespace matador::query;
using namespace matador::object;
TEST_CASE("Generate columns from object", "[column][generator]") {
@@ -18,7 +20,7 @@ TEST_CASE("Generate columns from object", "[column][generator]") {
auto result = s.attach<product>("product");
REQUIRE( result );
auto columns = column_generator::generate<product>(s);
auto columns = generator::columns<product>(s);
const std::vector<std::string> expected_columns = {
"product_name",
@@ -49,7 +51,7 @@ TEST_CASE("Generate columns for object with has many relation", "[column][genera
.and_then( [&s] { return s.attach<order>("order"); } );
REQUIRE(result);
auto columns = column_generator::generate<order>(s);
auto columns = generator::columns<order>(s, generator::column_generator_options::GenerateAlias);
const auto order_table = std::make_shared<table>("order");
const auto order_details_table = std::make_shared<table>("order_details");
@@ -99,7 +101,7 @@ TEST_CASE("Generate columns for object with eager foreign key relation", "[colum
{ authors_table, "distinguished", "c08" },
{ books_table, "published_in", "c09" }
};
auto columns = column_generator::generate<book>(s);
auto columns = generator::columns<book>(s, generator::column_generator_options::GenerateAlias);
REQUIRE(!columns.empty());
REQUIRE(columns.size() == expected_columns.size());