F dot in username
Summary
Adds a very simple User
class and methods for creation, retrieval and deletion. This allows us to test the user creation/deletion of the GRPC API.
The User
class and the methods are only available when the newly introduced "BUILD_ACM" macro is set. The make files and the pipeline has been updated for this.
Focus
The User
class is designed after the delegator/wrapper pattern where UserImpl
is the delegate. The UserImpl
class is a wrapper for protobuf's User
message objects. This might look clumsy at first but it has the advantage that the grpc/protobuf code is encapsuled and hidden in the *.cpp file. This is a first test which demonstrates how we can remove the grpc/protobuf dependency from the headers altogether (which will make it easier to compile the library as a shared library on windows).
Test Environment
- See unit test in test_user
- See integration tests in caosdb-cppinttest!23 (merged)
Check List for the Author
Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines
-
All automated tests pass -
Reference related issues -
Up-to-date CHANGELOG.md (or not necessary) -
Annotations in code (Gitlab comments) - Intent of new code
- Problems with old code
- Why this implementation?
Check List for the Reviewer
-
I understand the intent of this MR -
All automated tests pass -
Up-to-date CHANGELOG.md (or not necessary) -
The test environment setup works and the intended behavior is reproducible in the test environment -
In-code documentation and comments are up-to-date. -
Check: Are there specifications? Are they satisfied?
For further good practices have a look at our review guidelines.