fixed session tests
This commit is contained in:
@@ -108,7 +108,10 @@ utils::result<sql::query_result<sql::record>, utils::error> session::fetch_all(c
|
||||
if (!res) {
|
||||
return utils::failure(res.err());
|
||||
}
|
||||
return utils::ok(sql::query_result<sql::record>{std::move(*res)});
|
||||
const auto prototype = res.value()->prototype();
|
||||
return utils::ok(sql::query_result<sql::record>{std::move(*res), [prototype] {
|
||||
return sql::detail::create_prototype<sql::record>(prototype);
|
||||
}});
|
||||
}
|
||||
|
||||
utils::result<size_t, utils::error> session::execute(const std::string &sql) const {
|
||||
|
||||
@@ -53,7 +53,10 @@ utils::result<std::optional<sql::record>, utils::error> fetchable_query::fetch_o
|
||||
return utils::failure(result.err());
|
||||
}
|
||||
|
||||
sql::query_result<sql::record> records(std::move(*result));
|
||||
const auto prototype = result.value()->prototype();
|
||||
sql::query_result<sql::record> records(std::move(*result), [prototype] {
|
||||
return detail::create_prototype(prototype);
|
||||
});
|
||||
auto first = records.begin();
|
||||
if (first == records.end()) {
|
||||
return utils::ok(std::optional<sql::record>{std::nullopt});
|
||||
|
||||
@@ -61,7 +61,10 @@ utils::result<query_result<record>, utils::error> statement::fetch() const {
|
||||
return utils::failure(result.err());
|
||||
}
|
||||
// logger_.info(statement_->query_.sql);
|
||||
return utils::ok(query_result<record>{std::move(*result)});
|
||||
const auto prototype = result.value()->prototype();
|
||||
return utils::ok(query_result<record>(std::move(*result), [prototype] {
|
||||
return detail::create_prototype<record>(prototype);
|
||||
}));
|
||||
}
|
||||
|
||||
utils::result<std::optional<record>, utils::error> statement::fetch_one() const {
|
||||
@@ -71,7 +74,10 @@ utils::result<std::optional<record>, utils::error> statement::fetch_one() const
|
||||
return utils::failure(result.err());
|
||||
}
|
||||
|
||||
query_result<record> records(std::move(*result));
|
||||
const auto prototype = result.value()->prototype();
|
||||
query_result<record> records(std::move(*result), [prototype] {
|
||||
return sql::detail::create_prototype<record>(prototype);
|
||||
});
|
||||
auto first = records.begin();
|
||||
if (first == records.end()) {
|
||||
return utils::ok(std::optional<record>{std::nullopt});
|
||||
|
||||
Reference in New Issue
Block a user