record refactoring

This commit is contained in:
2024-03-17 16:32:08 +01:00
parent 9a02abacea
commit 12919ba372
21 changed files with 390 additions and 118 deletions
+5 -3
View File
@@ -9,6 +9,8 @@ using namespace matador::sql;
TEST_CASE("Load backend", "[backend provider]") {
auto path = matador::utils::os::getenv("MATADOR_BACKENDS_PATH");
REQUIRE(!path.empty());
if (path.back() != '\\') {
path.push_back('\\');
}
@@ -16,8 +18,8 @@ TEST_CASE("Load backend", "[backend provider]") {
REQUIRE(!path.empty());
connection_info ci{};
const auto &d = backend_provider::instance().connection_dialect("sqlite");
auto *connection = backend_provider::instance().create_connection("sqlite", ci);
const auto &d = backend_provider::instance().connection_dialect("noop");
auto *connection = backend_provider::instance().create_connection("noop", ci);
REQUIRE(connection != nullptr);
backend_provider::instance().destroy_connection("sqlite", connection);
backend_provider::instance().destroy_connection("noop", connection);
}
+1 -1
View File
@@ -14,7 +14,7 @@ include(Catch)
add_executable(tests
QueryBuilderTest.cpp
RecordTest.cpp
TableDefinitionTest.cpp
ConnectionPoolTest.cpp
BackendProviderTest.cpp
models/product.hpp
+1 -1
View File
@@ -37,7 +37,7 @@ TEST_CASE("Field test", "[field]") {
REQUIRE(bool_val.has_value());
REQUIRE(bool_val.value());
f = sql::field("name", utils::blob{ 7,8,6,5,4,3 }, 1);
f = sql::field("name", utils::blob{ 7,8,6,5,4,3 }, 0, 1);
REQUIRE(f.index() == 1);
REQUIRE(!f.is_null());
REQUIRE(!f.is_integer());
@@ -1,26 +1,26 @@
#include <catch2/catch_test_macros.hpp>
#include <matador/sql/record.hpp>
#include <matador/sql/table_definition.hpp>
#include <list>
using namespace matador::sql;
TEST_CASE("Create record", "[record]") {
record rec({
table_definition def({
make_pk_column<unsigned long>("id"),
make_column<std::string>("name", 255),
make_column<std::string>("color", 255)
});
REQUIRE(rec.size() == 3);
REQUIRE(def.size() == 3);
std::list<std::string> expected_columns = {"id", "name", "color"};
for(const auto &col : expected_columns) {
REQUIRE(rec.find(col) != rec.end());
REQUIRE(def.find(col) != def.end());
}
for(const auto& col : rec) {
for(const auto& col : def) {
expected_columns.remove(col.name());
}
@@ -28,7 +28,7 @@ TEST_CASE("Create record", "[record]") {
}
TEST_CASE("Append to record", "[record]") {
record rec;
table_definition rec;
rec.append(make_pk_column<unsigned long>("id"));
rec.append<std::string>("name", 255);