From 8da9fbf64c231dd341df7a40fb0d75e18fa90b53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <henrik@trineo.org> Date: Thu, 19 Aug 2021 09:33:59 +0200 Subject: [PATCH] DOC: comments and ws changes --- test/caosdb_test_utility.h | 20 ++++++------- test/test_ccaosdb.cpp | 38 ++++++++++++------------- test/test_connection.cpp | 26 ++++++++--------- test/test_list_properties.cpp | 6 ++-- test/test_transaction.cpp | 53 ++++++++++++++++++++++++++++------- 5 files changed, 88 insertions(+), 55 deletions(-) diff --git a/test/caosdb_test_utility.h b/test/caosdb_test_utility.h index 4c97c20..4cde3dc 100644 --- a/test/caosdb_test_utility.h +++ b/test/caosdb_test_utility.h @@ -33,16 +33,16 @@ */ #define EXPECT_THROW_MESSAGE(statement, exeption_type, message) \ EXPECT_THROW( \ - try { statement; } catch (const exeption_type &e) { \ - EXPECT_EQ(std::string(e.what()), message); \ - throw; \ - }, \ - exeption_type) + try { statement; } catch (const exeption_type &e) { \ + EXPECT_EQ(std::string(e.what()), message); \ + throw; \ + }, \ + exeption_type) #define ASSERT_THROW_MESSAGE(statement, exeption_type, message) \ ASSERT_THROW( \ - try { statement; } catch (const exeption_type &e) { \ - ASSERT_EQ(std::string(e.what()), message); \ - throw; \ - }, \ - exeption_type) + try { statement; } catch (const exeption_type &e) { \ + ASSERT_EQ(std::string(e.what()), message); \ + throw; \ + }, \ + exeption_type) #endif diff --git a/test/test_ccaosdb.cpp b/test/test_ccaosdb.cpp index dbd5c48..6f8eb10 100644 --- a/test/test_ccaosdb.cpp +++ b/test/test_ccaosdb.cpp @@ -37,7 +37,7 @@ TEST(test_ccaosdb, connection_ssl_authentication_success) { auto major = caosdb_constants_COMPATIBLE_SERVER_VERSION_MAJOR(); auto minor = caosdb_constants_COMPATIBLE_SERVER_VERSION_MINOR(); const auto *const pre_release = - caosdb_constants_COMPATIBLE_SERVER_VERSION_PRE_RELEASE(); + caosdb_constants_COMPATIBLE_SERVER_VERSION_PRE_RELEASE(); EXPECT_EQ(major, version_info.major); EXPECT_EQ(minor, version_info.minor); @@ -48,12 +48,12 @@ TEST(test_ccaosdb, test_count_query) { caosdb_connection_connection connection; int return_code( - caosdb_connection_connection_manager_get_default_connection(&connection)); + caosdb_connection_connection_manager_get_default_connection(&connection)); EXPECT_EQ(return_code, 0); caosdb_transaction_transaction transaction; - return_code = - caosdb_connection_connection_create_transaction(&connection, &transaction); + return_code = caosdb_connection_connection_create_transaction(&connection, + &transaction); EXPECT_EQ(return_code, 0); // COUNT query with an empty result @@ -67,7 +67,7 @@ TEST(test_ccaosdb, test_count_query) { long dummy(-1); // NOLINT long *count = &dummy; // NOLINT return_code = - caosdb_transaction_transaction_get_count_result(&transaction, count); + caosdb_transaction_transaction_get_count_result(&transaction, count); EXPECT_EQ(return_code, 0); EXPECT_EQ(*count, 0); @@ -78,12 +78,12 @@ TEST(test_ccaosdb, test_count_query) { TEST(test_ccaosdb, test_query) { caosdb_connection_connection connection; int return_code( - caosdb_connection_connection_manager_get_default_connection(&connection)); + caosdb_connection_connection_manager_get_default_connection(&connection)); EXPECT_EQ(return_code, 0); caosdb_transaction_transaction transaction; - return_code = - caosdb_connection_connection_create_transaction(&connection, &transaction); + return_code = caosdb_connection_connection_create_transaction(&connection, + &transaction); EXPECT_EQ(return_code, 0); return_code = caosdb_transaction_transaction_query(&transaction, @@ -95,7 +95,7 @@ TEST(test_ccaosdb, test_query) { caosdb_transaction_result_set result_set; return_code = - caosdb_transaction_transaction_get_result_set(&transaction, &result_set); + caosdb_transaction_transaction_get_result_set(&transaction, &result_set); EXPECT_EQ(return_code, 0); int dummy(-1); @@ -111,16 +111,16 @@ TEST(test_ccaosdb, test_query) { TEST(test_ccaosdb, test_single_id_retrieve) { caosdb_connection_connection connection; int return_code( - caosdb_connection_connection_manager_get_default_connection(&connection)); + caosdb_connection_connection_manager_get_default_connection(&connection)); EXPECT_EQ(return_code, 0); caosdb_transaction_transaction transaction; - return_code = - caosdb_connection_connection_create_transaction(&connection, &transaction); + return_code = caosdb_connection_connection_create_transaction(&connection, + &transaction); EXPECT_EQ(return_code, 0); return_code = - caosdb_transaction_transaction_retrieve_by_id(&transaction, "21"); + caosdb_transaction_transaction_retrieve_by_id(&transaction, "21"); EXPECT_EQ(return_code, caosdb::StatusCode::GO_ON); return_code = caosdb_transaction_transaction_execute(&transaction); @@ -128,7 +128,7 @@ TEST(test_ccaosdb, test_single_id_retrieve) { caosdb_transaction_result_set result_set; return_code = - caosdb_transaction_transaction_get_result_set(&transaction, &result_set); + caosdb_transaction_transaction_get_result_set(&transaction, &result_set); EXPECT_EQ(return_code, 0); int dummy(-1); @@ -157,17 +157,17 @@ TEST(test_ccaosdb, test_single_id_retrieve) { TEST(test_ccaosdb, test_multi_id_retrieve) { caosdb_connection_connection connection; int return_code( - caosdb_connection_connection_manager_get_default_connection(&connection)); + caosdb_connection_connection_manager_get_default_connection(&connection)); EXPECT_EQ(return_code, 0); caosdb_transaction_transaction transaction; - return_code = - caosdb_connection_connection_create_transaction(&connection, &transaction); + return_code = caosdb_connection_connection_create_transaction(&connection, + &transaction); EXPECT_EQ(return_code, 0); const char *ids[] = {"20", "21", "22"}; // NOLINT return_code = - caosdb_transaction_transaction_retrieve_by_ids(&transaction, ids, 3); + caosdb_transaction_transaction_retrieve_by_ids(&transaction, ids, 3); EXPECT_EQ(return_code, caosdb::StatusCode::GO_ON); return_code = caosdb_transaction_transaction_execute(&transaction); @@ -176,7 +176,7 @@ TEST(test_ccaosdb, test_multi_id_retrieve) { caosdb_transaction_result_set result_set; return_code = - caosdb_transaction_transaction_get_result_set(&transaction, &result_set); + caosdb_transaction_transaction_get_result_set(&transaction, &result_set); EXPECT_EQ(return_code, 0); int dummy(-1); diff --git a/test/test_connection.cpp b/test/test_connection.cpp index 678035b..6f27f23 100644 --- a/test/test_connection.cpp +++ b/test/test_connection.cpp @@ -62,10 +62,10 @@ TEST(test_connection, connect_somehost_42347_fails) { TEST(test_connection, connection_insecure_authentication_error_anonymous) { const auto *port_str = - caosdb::utility::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTP", "8080"); + caosdb::utility::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTP", "8080"); auto port = std::stoi(port_str); const auto *const host = - caosdb::utility::get_env_var("CAOSDB_SERVER_HOST", "localhost"); + caosdb::utility::get_env_var("CAOSDB_SERVER_HOST", "localhost"); auto config = InsecureConnectionConfiguration(host, port); auto connection = Connection(config); @@ -75,12 +75,12 @@ TEST(test_connection, connection_insecure_authentication_error_anonymous) { TEST(test_connection, connection_ssl_authentication_error_anonymous) { const auto *port_str = - caosdb::utility::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTPS", "8443"); + caosdb::utility::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTPS", "8443"); auto port = std::stoi(port_str); const auto *const host = - caosdb::utility::get_env_var("CAOSDB_SERVER_HOST", "localhost"); + caosdb::utility::get_env_var("CAOSDB_SERVER_HOST", "localhost"); const auto path = - caosdb::utility::get_env_var("CAOSDB_SERVER_CERT", std::string()); + caosdb::utility::get_env_var("CAOSDB_SERVER_CERT", std::string()); auto cert = PemFileCertificateProvider(path); auto config = TlsConnectionConfiguration(host, port, cert); @@ -94,12 +94,12 @@ TEST(test_connection, connection_ssl_authentication_error_anonymous) { TEST(test_connection, connection_ssl_authentication_error_wrong_credentials) { const auto *port_str = - caosdb::utility::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTPS", "8443"); + caosdb::utility::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTPS", "8443"); auto port = std::stoi(port_str); const auto *const host = - caosdb::utility::get_env_var("CAOSDB_SERVER_HOST", "localhost"); + caosdb::utility::get_env_var("CAOSDB_SERVER_HOST", "localhost"); const auto path = - caosdb::utility::get_env_var("CAOSDB_SERVER_CERT", std::string()); + caosdb::utility::get_env_var("CAOSDB_SERVER_CERT", std::string()); const auto *const user = "not-a-user-23461237"; const auto *const password = "very-c-cred"; @@ -109,10 +109,10 @@ TEST(test_connection, connection_ssl_authentication_error_wrong_credentials) { auto connection = Connection(config); EXPECT_THROW_MESSAGE( - connection.RetrieveVersionInfo(), AuthenticationError, - "The attempt to execute this transaction has not been executed at all " - "because the authentication did not succeed. Original error: " - "Authentication failed. Username or password wrong."); + connection.RetrieveVersionInfo(), AuthenticationError, + "The attempt to execute this transaction has not been executed at all " + "because the authentication did not succeed. Original error: " + "Authentication failed. Username or password wrong."); } TEST(test_connection, connection_ssl_authentication_success) { @@ -121,7 +121,7 @@ TEST(test_connection, connection_ssl_authentication_success) { auto major = caosdb::COMPATIBLE_SERVER_VERSION_MAJOR; auto minor = caosdb::COMPATIBLE_SERVER_VERSION_MINOR; const auto pre_release = - std::string(caosdb::COMPATIBLE_SERVER_VERSION_PRE_RELEASE); + std::string(caosdb::COMPATIBLE_SERVER_VERSION_PRE_RELEASE); const auto &v_info = connection->RetrieveVersionInfo(); EXPECT_EQ(major, v_info.GetMajor()); diff --git a/test/test_list_properties.cpp b/test/test_list_properties.cpp index 83581bc..fdbd352 100644 --- a/test/test_list_properties.cpp +++ b/test/test_list_properties.cpp @@ -40,7 +40,7 @@ protected: void TearDown() override { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); auto query_transaction(connection->CreateTransaction()); query_transaction->Query("FIND ENTITY WITH id > 99"); query_transaction->Execute(); @@ -56,7 +56,7 @@ protected: TEST_F(test_list_properties, insert_list_of_text) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); auto insertion_prop(connection->CreateTransaction()); @@ -65,7 +65,7 @@ TEST_F(test_list_properties, insert_list_of_text) { abstract_list_property.SetName("TestProp"); abstract_list_property.SetDataType(DataType::ListOf(AtomicDataType::TEXT)); abstract_list_property.SetValue( - std::vector<std::string>{"item1", "item2", "item3"}); + std::vector<std::string>{"item1", "item2", "item3"}); insertion_prop->InsertEntity(&abstract_list_property); std::cout << "response " << insertion_prop->ResponseToString(); diff --git a/test/test_transaction.cpp b/test/test_transaction.cpp index b3323cc..8ee82fb 100644 --- a/test/test_transaction.cpp +++ b/test/test_transaction.cpp @@ -197,7 +197,12 @@ TEST_F(test_transaction, insert_delete) { EXPECT_FALSE(deleted_entity.HasErrors()); } +/* + * Insert a Record with a parent, retrieve and delete it again + */ TEST_F(test_transaction, insert_delete_with_parent) { + // same as in insert_without_delete + // until marked END SAME const auto &connection = caosdb::connection::ConnectionManager::GetDefaultConnection(); @@ -218,8 +223,9 @@ TEST_F(test_transaction, insert_delete_with_parent) { const auto &insert_result_set = insert_transaction->GetResultSet(); const auto &inserted_rt = insert_result_set.at(0); + // END SAME - // insert Record with parent + // create Record with parent Entity rec; rec.SetRole(Role::RECORD); rec.SetName("TestRec"); @@ -229,6 +235,7 @@ TEST_F(test_transaction, insert_delete_with_parent) { parent.SetId(inserted_rt.GetId()); rec.AppendParent(parent); + // insert Record auto rec_transaction(connection->CreateTransaction()); rec_transaction->InsertEntity(&rec); rec_transaction->ExecuteAsynchronously(); @@ -244,6 +251,7 @@ TEST_F(test_transaction, insert_delete_with_parent) { EXPECT_FALSE(inserted_rec.GetId().empty()); + // retrieve inserted Record auto retrieve_transaction(connection->CreateTransaction()); retrieve_transaction->RetrieveById(inserted_rec.GetId()); @@ -257,11 +265,13 @@ TEST_F(test_transaction, insert_delete_with_parent) { const auto &retrieve_result_set = retrieve_transaction->GetResultSet(); const auto &retrieved_rec = retrieve_result_set.at(0); + // compare retrieved record with the one that was inserted EXPECT_EQ(retrieved_rec.GetName(), rec.GetName()); EXPECT_EQ(retrieved_rec.GetParents().size(), 1); EXPECT_EQ(retrieved_rec.GetParents().at(0).GetId(), inserted_rt.GetId()); EXPECT_EQ(retrieved_rec.GetParents().at(0).GetName(), rt.GetName()); + // delete the inserted record again auto rec_deletion(connection->CreateTransaction()); rec_deletion->DeleteById(retrieved_rec.GetId()); @@ -272,6 +282,7 @@ TEST_F(test_transaction, insert_delete_with_parent) { ASSERT_TRUE(rec_delete_status.IsTerminated()); ASSERT_FALSE(rec_delete_status.IsError()); + // delete the record type again auto rt_deletion(connection->CreateTransaction()); rt_deletion->DeleteById(inserted_rt.GetId()); @@ -283,9 +294,12 @@ TEST_F(test_transaction, insert_delete_with_parent) { ASSERT_FALSE(rt_delete_status.IsError()); } +/* + * insert a property, record type with that property and a record with it + */ TEST_F(test_transaction, insert_delete_with_property) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); // Create and insert property Entity prop_ent; @@ -387,7 +401,7 @@ TEST_F(test_transaction, insert_delete_with_property) { const auto &inserted_rec = rec_result_set.at(0); EXPECT_FALSE(inserted_rec.GetId().empty()); - // Retrieve the record and verify paretn and property + // Retrieve the record and verify parent and property auto rec_retrieval(connection->CreateTransaction()); rec_retrieval->RetrieveById(inserted_rec.GetId()); rec_retrieval->ExecuteAsynchronously(); @@ -416,9 +430,12 @@ TEST_F(test_transaction, insert_delete_with_property) { EXPECT_EQ(retrieved_prop_rec.GetValue(), prop_rec.GetValue()); } +/* + * test retrieving multiple entities at once + */ TEST_F(test_transaction, test_multi_retrieve) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); auto transaction(connection->CreateTransaction()); @@ -447,9 +464,12 @@ TEST_F(test_transaction, test_multi_retrieve) { MessageCode::ENTITY_DOES_NOT_EXIST); } +/* + * test insert, then update and then delete a RecordType + */ TEST_F(test_transaction, insert_update_delete) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); // INSERT auto insert_transaction(connection->CreateTransaction()); @@ -512,9 +532,12 @@ TEST_F(test_transaction, insert_update_delete) { EXPECT_FALSE(deleted_entity.HasErrors()); } +/* + * test insert a RecordType and then submit a find and a count query + */ TEST_F(test_transaction, test_query) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); auto insert_transaction(connection->CreateTransaction()); @@ -554,9 +577,13 @@ TEST_F(test_transaction, test_query) { EXPECT_EQ(count_query_trans->GetCountResult(), 1); } +/* + * insert three recordtypes and the submit multiple queries in different + * combinations + */ TEST_F(test_transaction, test_query_with_retrieve) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); // rt1 Entity rt1; @@ -666,9 +693,12 @@ TEST_F(test_transaction, test_query_with_retrieve) { EXPECT_EQ(count_and_retrieve->GetCountResult(), 3); } +/* + * create a file object and upload it + */ TEST_F(test_transaction, test_file_upload) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); Entity file; file.SetRole(Role::FILE); @@ -700,9 +730,12 @@ TEST_F(test_transaction, test_file_upload) { EXPECT_EQ(count_query->GetCountResult(), 1); } +/* + * create a file object, upload and then download it + */ TEST_F(test_transaction, test_file_up_n_download) { const auto &connection = - caosdb::connection::ConnectionManager::GetDefaultConnection(); + caosdb::connection::ConnectionManager::GetDefaultConnection(); Entity file; file.SetRole(Role::FILE); @@ -721,7 +754,7 @@ TEST_F(test_transaction, test_file_up_n_download) { auto download_transaction(connection->CreateTransaction()); download_transaction->RetrieveAndDownloadFilesById( - inserted_file.GetId(), test_download_file_1.string()); + inserted_file.GetId(), test_download_file_1.string()); download_transaction->ExecuteAsynchronously(); ASSERT_EQ(download_transaction->WaitForIt().GetCode(), StatusCode::SUCCESS); -- GitLab