From 23fa270a747c35d65aeeba691599ed6b21b501f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Kundr=C3=A1t?= Date: Tue, 29 Oct 2024 15:15:52 +0100 Subject: [PATCH 01/20] error handling changes in upstream sysrepo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Organization: Wires Upstream commit 396e331e4634a417420a71ad723567b42d75c443 removed these extra error entries. Change-Id: Ifeda21194db7b7f7fdae8b6ae13c1e2d1f6b8d3d Signed-off-by: Mattias Walström --- CMakeLists.txt | 2 +- tests/subscriptions.cpp | 16 ++++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index eb5f900..1eb625f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,7 +28,7 @@ option(WITH_EXAMPLES "Build examples" ON) find_package(PkgConfig) pkg_check_modules(LIBYANG_CPP REQUIRED libyang-cpp>=3 IMPORTED_TARGET) -pkg_check_modules(SYSREPO REQUIRED sysrepo>=2.11.7 IMPORTED_TARGET) +pkg_check_modules(SYSREPO REQUIRED sysrepo>=2.12.0 IMPORTED_TARGET) set(SYSREPO_CPP_PKG_VERSION "3") include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) diff --git a/tests/subscriptions.cpp b/tests/subscriptions.cpp index 0e14fc0..36fd61c 100644 --- a/tests/subscriptions.cpp +++ b/tests/subscriptions.cpp @@ -494,11 +494,11 @@ TEST_CASE("subscriptions") sess.applyChanges(); } catch (const sysrepo::ErrorWithCode&) { auto errors = sess.getErrors(); - REQUIRE(errors.size() == 2); - REQUIRE(errors.at(0).errorMessage == message); - REQUIRE(errors.at(0).code == sysrepo::ErrorCode::OperationFailed); - REQUIRE(errors.at(1).errorMessage == "User callback failed."); - REQUIRE(errors.at(1).code == sysrepo::ErrorCode::CallbackFailed); + REQUIRE(errors.size() == 1); + REQUIRE(errors.at(0) == sysrepo::ErrorInfo{ + .code = sysrepo::ErrorCode::OperationFailed, + .errorMessage = message + }); } // The callback does not fail the second time. @@ -548,15 +548,11 @@ TEST_CASE("subscriptions") sess.setItem("/test_module:leafInt32", "123"); REQUIRE_THROWS_AS(sess.applyChanges(), sysrepo::ErrorWithCode); auto errors = sess.getErrors(); - REQUIRE(errors.size() == 2); + REQUIRE(errors.size() == 1); REQUIRE(errors.at(0) == sysrepo::ErrorInfo{ .code = sysrepo::ErrorCode::OperationFailed, .errorMessage = "Test callback failure.", }); - REQUIRE(errors.at(1) == sysrepo::ErrorInfo{ - .code = sysrepo::ErrorCode::CallbackFailed, - .errorMessage = "User callback failed." - }); auto ncErrors = sess.getNetconfErrors(); REQUIRE(ncErrors.size() == 1); REQUIRE(ncErrors.front() == errToSet); -- 2.43.0