From 49903b4537f09498be038aac8bf9e89f5fddabd9 Mon Sep 17 00:00:00 2001
From: Timm Fitschen <t.fitschen@indiscale.com>
Date: Wed, 7 Jul 2021 00:46:04 +0200
Subject: [PATCH] WIP: retrieve simple entity

---
 conanfile.txt            |  2 +-
 test/test_connection.cpp | 22 ++++++++++++++++++++--
 2 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/conanfile.txt b/conanfile.txt
index dad1ce5..6e14d47 100644
--- a/conanfile.txt
+++ b/conanfile.txt
@@ -1,5 +1,5 @@
 [requires]
-caosdb/0.0.3
+caosdb/0.0.4
 gtest/1.11.0
 
 [generators]
diff --git a/test/test_connection.cpp b/test/test_connection.cpp
index e912186..40fd4d4 100644
--- a/test/test_connection.cpp
+++ b/test/test_connection.cpp
@@ -53,7 +53,23 @@ TEST(test_connection, connect_somehost_42347_fails) {
   EXPECT_THROW(connection.getVersionInfo(), ConnectionError);
 }
 
-TEST(test_connection, connection_insecure_authentication_error) {
+TEST(test_connection, connection_insecure_authentication_error_wrong_credentials) {
+  auto port_str = caosdb::utils::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTP", "8080");
+  auto port = std::stoi(port_str);
+  const auto host = caosdb::utils::get_env_var("CAOSDB_SERVER_HOST", "localhost");
+
+  const auto *const user = "not-a-user-23461237";
+  const auto *const password = "very-c-cred";
+
+  auto auth = std::make_shared<PlainPasswordAuthenticator>(user, password);
+  auto config = std::make_shared<InsecureCaosDBConnectionConfig>(host, port, auth);
+  auto connection = CaosDBConnection(config);
+
+  EXPECT_THROW(connection.getVersionInfo(), AuthenticationError);
+}
+
+
+TEST(test_connection, connection_insecure_authentication_error_anonymous) {
   auto port_str = caosdb::utils::get_env_var("CAOSDB_SERVER_GRPC_PORT_HTTP", "8080");
   auto port = std::stoi(port_str);
   const auto host = caosdb::utils::get_env_var("CAOSDB_SERVER_HOST", "localhost");
@@ -103,15 +119,17 @@ TEST(test_connection, connection_ssl_authentication_success) {
 
   auto major = 0;
   auto minor = 5;
+  const auto *const pre_release = "GRPC004";
 
   auto auth = std::make_shared<PlainPasswordAuthenticator>(user, password);
   auto ssloptions = std::make_shared<PemFileCACertProvider>(path);
   auto config = std::make_shared<SslCaosDBConnectionConfig>(host, port, ssloptions, auth);
   auto connection = CaosDBConnection(config);
 
-  auto v_info = connection.getVersionInfo();
+  auto v_info = connection.GetVersionInfo();
   EXPECT_EQ(major, v_info->GetMajor());
   EXPECT_EQ(minor, v_info->GetMinor());
+  EXPECT_EQ(pre_release, v_info->GetPreRelease());
 }
 
 } //namespace caosdb::connection
-- 
GitLab