From acb7f511f931be780019e13b8dce7e2a6dce7117 Mon Sep 17 00:00:00 2001 From: juancwu Date: Sat, 11 Apr 2026 15:41:56 +0000 Subject: [PATCH] chore: remove old space service method to ensure personal space --- internal/service/space.go | 20 -------------------- internal/service/space_test.go | 19 ------------------- 2 files changed, 39 deletions(-) diff --git a/internal/service/space.go b/internal/service/space.go index 6b0ca49..8e2d48b 100644 --- a/internal/service/space.go +++ b/internal/service/space.go @@ -43,25 +43,6 @@ func (s *SpaceService) CreateSpace(name string, ownerID string) (*model.Space, e 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. func (s *SpaceService) GetSpacesForUser(userID string) ([]*model.Space, error) { spaces, err := s.spaceRepo.ByUserID(userID) @@ -111,7 +92,6 @@ func (s *SpaceService) UpdateSpaceName(spaceID, name string) error { return s.spaceRepo.UpdateName(spaceID, name) } - // DeleteSpace permanently deletes a space and all its associated data. func (s *SpaceService) DeleteSpace(spaceID string) error { return s.spaceRepo.Delete(spaceID) diff --git a/internal/service/space_test.go b/internal/service/space_test.go index 0d63598..88eb73f 100644 --- a/internal/service/space_test.go +++ b/internal/service/space_test.go @@ -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) { testutil.ForEachDB(t, func(t *testing.T, dbi testutil.DBInfo) { spaceRepo := repository.NewSpaceRepository(dbi.DB)