From de6a284fc2c78f55a401820c29ca241889588051 Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Tue, 3 Aug 2021 19:43:12 +0200 Subject: [PATCH] TST: fix insert_delete_with_parents test --- test/test_transaction.cpp | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/test/test_transaction.cpp b/test/test_transaction.cpp index b94ffa9..3aa75e7 100644 --- a/test/test_transaction.cpp +++ b/test/test_transaction.cpp @@ -27,7 +27,7 @@ #include "gtest/gtest-message.h" // for Message #include "gtest/gtest-test-part.h" // for TestPartResult, SuiteApiResolver #include "gtest/gtest_pred_impl.h" // for Test, EXPECT_EQ, AssertionResult -#include <iostream> // for endl, basic_ostream, cout +#include <iostream> // for endl, basic_ostream, cout #include <memory> // for unique_ptr, allocator, __shar... #include <string> // for string @@ -172,7 +172,7 @@ TEST(test_transaction, insert_delete_with_parent) { // NOLINT rec.SetName("TestRec"); Parent parent; - parent.SetName(inserted_rt.GetName()); + parent.SetName(rt.GetName()); parent.SetId(inserted_rt.GetId()); rec.AppendParent(parent); @@ -183,24 +183,38 @@ TEST(test_transaction, insert_delete_with_parent) { // NOLINT auto rec_insert_status = rec_transaction->WaitForIt(); ASSERT_TRUE(rec_insert_status.IsTerminated()); - std::cout << rec.ToString() << std::endl; - std::cout << rec_insert_status.GetCode() << std::endl; ASSERT_FALSE(rec_insert_status.IsError()); const auto &rec_result_set = dynamic_cast<const UniqueResult &>(rec_transaction->GetResultSet()); const auto &inserted_rec = rec_result_set.GetEntity(); - std::cout << inserted_rec.ToString() << std::endl; - - EXPECT_EQ(inserted_rec.GetName(), rec.GetName()); - EXPECT_EQ(inserted_rec.GetParents().Size(), 1); - EXPECT_EQ(inserted_rec.GetParents().At(0).GetId(), inserted_rt.GetId()); - EXPECT_EQ(inserted_rec.GetParents().At(0).GetName(), inserted_rt.GetName()); + + EXPECT_FALSE(inserted_rec.GetId().empty()); + + auto retrieve_transaction(connection->CreateTransaction()); + retrieve_transaction->RetrieveById(inserted_rec.GetId()); + + retrieve_transaction->ExecuteAsynchronously(); + + auto rec_retrieve_status = retrieve_transaction->WaitForIt(); + + ASSERT_TRUE(rec_retrieve_status.IsTerminated()); + ASSERT_FALSE(rec_retrieve_status.IsError()); + + const auto &retrieve_result_set = + dynamic_cast<const UniqueResult &>(retrieve_transaction->GetResultSet()); + const auto &retrieved_rec = retrieve_result_set.GetEntity(); + std::cout << retrieved_rec.ToString() << std::endl; + + 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()); auto rec_deletion(connection->CreateTransaction()); - rec_deletion->DeleteById(inserted_rec.GetId()); + rec_deletion->DeleteById(retrieved_rec.GetId()); rec_deletion->ExecuteAsynchronously(); auto rec_delete_status = rec_deletion->WaitForIt(); -- GitLab