From f8e332a205082959f6b205c21f3ec3cab8383053 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9B=D0=B5=D0=BE=D0=BD=D0=B8=D0=B4=20=D0=AE=D1=80=D1=8C?= =?UTF-8?q?=D0=B5=D0=B2=20=28Leonid=20Yuriev=29?= Date: Sat, 22 Mar 2025 19:06:13 +0300 Subject: [PATCH] =?UTF-8?q?mdbx-test:=20=D1=80=D0=B0=D1=81=D1=88=D0=B8?= =?UTF-8?q?=D1=80=D0=B5=D0=BD=D0=B8=D0=B5=20extra/cursor-closing.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/extra/cursor_closing.c++ | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/extra/cursor_closing.c++ b/test/extra/cursor_closing.c++ index 24633560..4bd4b7ca 100644 --- a/test/extra/cursor_closing.c++ +++ b/test/extra/cursor_closing.c++ @@ -332,6 +332,27 @@ bool case1(mdbx::env env) { //-------------------------------------------------------------------------------------------- +bool case2(mdbx::env env) { + bool ok = true; + + auto txn = env.start_write(); + auto dbi = txn.create_map("case2", mdbx::key_mode::usual, mdbx::value_mode::single); + txn.commit_embark_read(); + auto cursor1 = txn.open_cursor(dbi); + auto cursor2 = txn.open_cursor(0); + cursor1.move(mdbx::cursor::next, false); + cursor2.move(mdbx::cursor::next, false); + txn.commit_embark_read(); + cursor2.bind(txn, dbi); + cursor1.bind(txn, 0); + cursor1.move(mdbx::cursor::last, false); + cursor2.move(mdbx::cursor::last, false); + + return ok; +} + +//-------------------------------------------------------------------------------------------- + int doit() { mdbx::path db_filename = "test-cursor-closing"; mdbx::env::remove(db_filename); @@ -341,6 +362,7 @@ int doit() { bool ok = case0(env); ok = case1(env) && ok; + ok = case2(env) && ok; if (ok) { std::cout << "OK\n";