Added the _c operator

This commit is contained in:
Dr. Patrick Urbanke
2025-05-06 05:13:06 +02:00
parent cfb4f4e0ef
commit b02dfe4f80
12 changed files with 188 additions and 30 deletions
+1 -1
View File
@@ -33,7 +33,7 @@ TEST(sqlite, test_limit) {
using namespace sqlgen;
const auto query =
sqlgen::read<std::vector<Person>> | order_by(col<"age">) | limit(2);
sqlgen::read<std::vector<Person>> | order_by("age"_c) | limit(2);
const auto people2 = query(conn).value();
+1 -1
View File
@@ -33,7 +33,7 @@ TEST(sqlite, test_order_by) {
using namespace sqlgen;
const auto query = sqlgen::read<std::vector<Person>> |
order_by(col<"age">, col<"first_name">.desc());
order_by("age"_c, "first_name"_c.desc());
const auto people2 = query(conn).value();
+4 -5
View File
@@ -32,15 +32,14 @@ TEST(sqlite, test_where) {
using namespace sqlgen;
const auto query =
sqlgen::read<std::vector<Person>> |
where(col<"first_name"> != col<"last_name"> or col<"id"> != col<"age">) |
order_by(col<"age">, col<"first_name">.desc());
const auto query = sqlgen::read<std::vector<Person>> |
where("age"_c < 18 and "first_name"_c != "Hugo") |
order_by("age"_c);
const auto people2 = query(conn).value();
const std::string expected =
R"([{"id":3,"first_name":"Maggie","last_name":"Simpson","age":0},{"id":2,"first_name":"Lisa","last_name":"Simpson","age":8},{"id":4,"first_name":"Hugo","last_name":"Simpson","age":10},{"id":1,"first_name":"Bart","last_name":"Simpson","age":10},{"id":0,"first_name":"Homer","last_name":"Simpson","age":45}])";
R"([{"id":3,"first_name":"Maggie","last_name":"Simpson","age":0},{"id":2,"first_name":"Lisa","last_name":"Simpson","age":8},{"id":1,"first_name":"Bart","last_name":"Simpson","age":10}])";
EXPECT_EQ(rfl::json::write(people2), expected);
}