added tests for sequence generator and table sequence pk generator

This commit is contained in:
2026-03-25 15:56:57 +01:00
parent ee8ce62687
commit 3fc08fb7ff
2 changed files with 46 additions and 0 deletions
+25
View File
@@ -1,6 +1,7 @@
#include "catch2/catch_test_macros.hpp"
#include "matador/query/query.hpp"
#include "matador/query/sequence_pk_generator.hpp"
#include "SequenceFixture.hpp"
@@ -34,3 +35,27 @@ TEST_CASE_METHOD(SequenceFixture, "test create and drop sequence", "[sequence][c
.execute(db);
REQUIRE(result.is_ok());
}
TEST_CASE_METHOD(SequenceFixture, "Test nextval and currval through sequence pk generator", "[sequence][nextval][currval]") {
auto result = query::create()
.sequence("person_seq")
.execute(db);
REQUIRE(result.is_ok());
sequences_to_drop.emplace("person_seq");
sequence_pk_generator generator("person_seq");
auto pk_result = generator.next_id(db);
REQUIRE(pk_result.is_ok());
REQUIRE(*pk_result == 1);
pk_result = generator.current_id(db);
REQUIRE(pk_result.is_ok());
REQUIRE(*pk_result == 1);
result = query::drop()
.sequence("person_seq")
.execute(db);
REQUIRE(result.is_ok());
}