Skip to content
Snippets Groups Projects
Verified Commit 04d44a2d authored by Timm Fitschen's avatar Timm Fitschen
Browse files

EHN: also add warnings and info messages from IdResponse to entity

parent 7dbabac6
Branches
Tags
1 merge request!4ENH: Allow insertion and deletion of single entities
Pipeline #11062 failed
......@@ -468,7 +468,7 @@ auto ConfigurationManager::InitializeDefaults() -> int { // NOLINT
// find the configuration file...
std::unique_ptr<path> configuration_file_path;
for (const char* const &configuration_file :
for (const char *const &configuration_file :
caosdb::LIBCAOSDB_CONFIGURATION_FILES_PRECEDENCE) {
if (strcmp(configuration_file, "$CAOSDB_CLIENT_CONFIGURATION") == 0) {
// user specified a file via the environment variable
......
......@@ -80,6 +80,9 @@ Entity::Entity() : wrapped(Entity::CreateProtoEntity()) {
Entity::Entity(IdResponse *idResponse) : Entity() {
this->wrapped->set_id(idResponse->id());
this->wrapped->mutable_errors()->Swap(idResponse->mutable_entity_errors());
this->wrapped->mutable_warnings()->Swap(
idResponse->mutable_entity_warnings());
this->wrapped->mutable_infos()->Swap(idResponse->mutable_entity_infos());
}
auto Entity::SetId(const std::string &id) -> void { this->wrapped->set_id(id); }
......
......@@ -101,14 +101,14 @@ TEST(test_entity, test_from_id_response) { // NOLINT
Entity other_ent(&idr_warnings_and_infos);
EXPECT_EQ(entity.GetId(), "other_entity_id");
EXPECT_EQ(entity.GetWarnings().Size(), 1);
EXPECT_EQ(entity.GetWarnings().At(0).GetDescription(), "warning_desc");
EXPECT_EQ(entity.GetWarnings().At(0).GetCode(),
EXPECT_EQ(other_ent.GetId(), "other_entity_id");
EXPECT_EQ(other_ent.GetWarnings().Size(), 1);
EXPECT_EQ(other_ent.GetWarnings().At(0).GetDescription(), "warning_desc");
EXPECT_EQ(other_ent.GetWarnings().At(0).GetCode(),
MessageCode::ENTITY_HAS_NO_PROPERTIES);
EXPECT_EQ(entity.GetInfos().Size(), 1);
EXPECT_EQ(entity.GetInfos().At(0).GetDescription(), "info_desc");
EXPECT_EQ(entity.GetInfos().At(0).GetCode(), MessageCode::UNSPECIFIED);
EXPECT_EQ(other_ent.GetInfos().Size(), 1);
EXPECT_EQ(other_ent.GetInfos().At(0).GetDescription(), "info_desc");
EXPECT_EQ(other_ent.GetInfos().At(0).GetCode(), MessageCode::UNSPECIFIED);
}
} // namespace caosdb::entity
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment