Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of Changes
The following changes were made in response to the changes in GROUP-21 Group Sync Service. Reasons vary from updating common classes to ensure consistency, all the way to updating business logic based on bugs found and lacking features.
Updated Configuration
Mainly updated the names of Spring Cloud Functions. Before, their names were tied to their action (e.g. handleGroupCreateRequests vs. the now groupCreateRequests). Now they are tied to their topic. This was done since the name needed to be the same for the corresponding supplier functions in Group Sync.
Updated Group Demo Loader to Follow Event Flow
This was supposed to be done in an earlier issue. It's absence was noticed during the creation of Group Sync when Group Create Requests were not being sent when the demo loader created groups. It is now going through the event flow as initially intended.
Updated Business Logic
Testing in Group Sync revealed that we were missing some business logic to prevent unintended behavior for groups and members. The following business rules have been enforced and are subject to change in the future:
Additional Info / Concerns
Acceptance tests were meant to be the same between Group Service and Group Sync. While the scenarios technically achieve the same thing, Group Sync is more readable. In the future, an attempt should be made to synchronize the two. Perhaps this can be considered when we have a more robust acceptance testing strategy (see the PR for Group Sync issue GROUP-21 for more details).