schema node analyze progress
This commit is contained in:
@@ -12,7 +12,8 @@ add_executable(CoreTests
|
||||
utils/FieldAttributeTest.cpp
|
||||
utils/VersionTest.cpp
|
||||
utils/StringTest.cpp
|
||||
object/ColumnDefinitionGeneratorTest.cpp
|
||||
object/AttributeDefinitionGeneratorTest.cpp
|
||||
object/PrimaryKeyResolverTest.cpp
|
||||
object/SchemaTest.cpp
|
||||
)
|
||||
|
||||
|
||||
+5
@@ -12,6 +12,11 @@ using namespace matador::utils;
|
||||
TEST_CASE("Generate column definitions from object", "[column][definition][generator]") {
|
||||
schema repo("main");
|
||||
|
||||
auto result = repo.attach<matador::test::product>("products")
|
||||
.and_then([&repo] { return repo.attach<matador::test::supplier>("supplier"); })
|
||||
.and_then([&repo] { return repo.attach<matador::test::category>("categories"); });
|
||||
REQUIRE(result);
|
||||
|
||||
auto columns = attribute_definition_generator::generate<matador::test::product>(repo);
|
||||
|
||||
const std::vector expected_columns = {
|
||||
@@ -0,0 +1,22 @@
|
||||
#include <catch2/catch_test_macros.hpp>
|
||||
|
||||
#include "matador/object/primary_key_resolver.hpp"
|
||||
|
||||
#include "../test/models/book.hpp"
|
||||
#include "../test/models/product.hpp"
|
||||
|
||||
TEST_CASE("Test primary key resolver", "[PrimaryKeyResolver]") {
|
||||
using namespace matador;
|
||||
|
||||
object::primary_key_resolver resolver;
|
||||
|
||||
auto pk_info = resolver.resolve<test::book>();
|
||||
|
||||
REQUIRE(pk_info.pk_column_name == "id");
|
||||
REQUIRE(pk_info.pk.is_integer());
|
||||
|
||||
pk_info = resolver.resolve<test::product>();
|
||||
|
||||
REQUIRE(pk_info.pk_column_name == "product_name");
|
||||
REQUIRE(pk_info.pk.is_varchar());
|
||||
}
|
||||
Reference in New Issue
Block a user