From b432ca196ea55fa4263bb530566c63d7ad8263c8 Mon Sep 17 00:00:00 2001 From: florian <f.spreckelsen@inidscale.com> Date: Fri, 13 Aug 2021 12:51:38 +0200 Subject: [PATCH] ENH: Add OTHER_CLIENT_ERROR to EXTERN C interface --- include/ccaosdb.h | 6 ++++++ src/ccaosdb.cpp | 4 ++++ test/test_ccaosdb.cpp | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/include/ccaosdb.h b/include/ccaosdb.h index 1ab0a8a..4597690 100644 --- a/include/ccaosdb.h +++ b/include/ccaosdb.h @@ -52,6 +52,12 @@ int caosdb_constants_COMPATIBLE_SERVER_VERSION_PATCH(); */ const char *caosdb_constants_COMPATIBLE_SERVER_VERSION_PRE_RELEASE(); +/** + * Return the status code reserved for errors in clients wrapping this + * interface. + */ +int caosdb_status_code_OTHER_CLIENT_ERROR(); + /** * A wrapper of the C++ Connection class. * diff --git a/src/ccaosdb.cpp b/src/ccaosdb.cpp index b104c30..e42d04b 100644 --- a/src/ccaosdb.cpp +++ b/src/ccaosdb.cpp @@ -164,6 +164,10 @@ const char *caosdb_constants_COMPATIBLE_SERVER_VERSION_PRE_RELEASE() { return caosdb::COMPATIBLE_SERVER_VERSION_PRE_RELEASE; } +int caosdb_status_code_OTHER_CLIENT_ERROR() { + return caosdb::StatusCode::OTHER_CLIENT_ERROR; +} + const char *caosdb_utility_get_env_var(const char *name, const char *fallback) { return caosdb::utility::get_env_var(name, fallback); } diff --git a/test/test_ccaosdb.cpp b/test/test_ccaosdb.cpp index 4bdc6a9..1009cc5 100644 --- a/test/test_ccaosdb.cpp +++ b/test/test_ccaosdb.cpp @@ -50,6 +50,11 @@ TEST_F(test_ccaosdb, test_get_env_var) { EXPECT_EQ("fall-back", some_var); } +TEST_F(test_ccaosdb, test_other_client_error) { + EXPECT_EQ(caosdb_status_code_OTHER_CLIENT_ERROR(), + caosdb::StatusCode::OTHER_CLIENT_ERROR); +} + TEST_F(test_ccaosdb, test_get_default_connection) { caosdb_connection_connection out; -- GitLab