chore: remove old space service method to ensure personal space
This commit is contained in:
parent
fec29bcc0e
commit
acb7f511f9
2 changed files with 0 additions and 39 deletions
|
|
@ -43,25 +43,6 @@ func (s *SpaceService) CreateSpace(name string, ownerID string) (*model.Space, e
|
||||||
return space, nil
|
return space, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// EnsurePersonalSpace creates a "Personal Space" for a user if one doesn't exist.
|
|
||||||
func (s *SpaceService) EnsurePersonalSpace(user *model.User) (*model.Space, error) {
|
|
||||||
spaces, err := s.spaceRepo.ByUserID(user.ID)
|
|
||||||
if err != nil {
|
|
||||||
return nil, fmt.Errorf("failed to get user spaces: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check if a personal space already exists.
|
|
||||||
// We identify it by the user being the owner and the name being the default.
|
|
||||||
for _, space := range spaces {
|
|
||||||
if space.OwnerID == user.ID && space.Name == PersonalSpaceName {
|
|
||||||
return space, nil // Personal space already exists
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// If no personal space, create one.
|
|
||||||
return s.CreateSpace(PersonalSpaceName, user.ID)
|
|
||||||
}
|
|
||||||
|
|
||||||
// GetSpacesForUser returns all spaces a user is a member of.
|
// GetSpacesForUser returns all spaces a user is a member of.
|
||||||
func (s *SpaceService) GetSpacesForUser(userID string) ([]*model.Space, error) {
|
func (s *SpaceService) GetSpacesForUser(userID string) ([]*model.Space, error) {
|
||||||
spaces, err := s.spaceRepo.ByUserID(userID)
|
spaces, err := s.spaceRepo.ByUserID(userID)
|
||||||
|
|
@ -111,7 +92,6 @@ func (s *SpaceService) UpdateSpaceName(spaceID, name string) error {
|
||||||
return s.spaceRepo.UpdateName(spaceID, name)
|
return s.spaceRepo.UpdateName(spaceID, name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// DeleteSpace permanently deletes a space and all its associated data.
|
// DeleteSpace permanently deletes a space and all its associated data.
|
||||||
func (s *SpaceService) DeleteSpace(spaceID string) error {
|
func (s *SpaceService) DeleteSpace(spaceID string) error {
|
||||||
return s.spaceRepo.Delete(spaceID)
|
return s.spaceRepo.Delete(spaceID)
|
||||||
|
|
|
||||||
|
|
@ -38,25 +38,6 @@ func TestSpaceService_CreateSpace_EmptyName(t *testing.T) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestSpaceService_EnsurePersonalSpace(t *testing.T) {
|
|
||||||
testutil.ForEachDB(t, func(t *testing.T, dbi testutil.DBInfo) {
|
|
||||||
spaceRepo := repository.NewSpaceRepository(dbi.DB)
|
|
||||||
svc := NewSpaceService(spaceRepo)
|
|
||||||
|
|
||||||
user := testutil.CreateTestUser(t, dbi.DB, "personal@example.com", nil)
|
|
||||||
|
|
||||||
// First call creates the personal space
|
|
||||||
space1, err := svc.EnsurePersonalSpace(user)
|
|
||||||
require.NoError(t, err)
|
|
||||||
assert.Equal(t, PersonalSpaceName, space1.Name)
|
|
||||||
|
|
||||||
// Second call returns the same space (idempotent)
|
|
||||||
space2, err := svc.EnsurePersonalSpace(user)
|
|
||||||
require.NoError(t, err)
|
|
||||||
assert.Equal(t, space1.ID, space2.ID)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestSpaceService_GetSpacesForUser(t *testing.T) {
|
func TestSpaceService_GetSpacesForUser(t *testing.T) {
|
||||||
testutil.ForEachDB(t, func(t *testing.T, dbi testutil.DBInfo) {
|
testutil.ForEachDB(t, func(t *testing.T, dbi testutil.DBInfo) {
|
||||||
spaceRepo := repository.NewSpaceRepository(dbi.DB)
|
spaceRepo := repository.NewSpaceRepository(dbi.DB)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue