1-
2- using Bit . Core . AdminConsole . Entities ;
1+ using Bit . Core . AdminConsole . Entities ;
32using Bit . Core . Entities ;
43using Bit . Core . Enums ;
54using Bit . Core . Repositories ;
@@ -37,7 +36,7 @@ public async Task CreateDefaultCollectionsBulkAsync_ShouldCreateDefaultCollectio
3736 }
3837
3938 [ Theory , DatabaseData ]
40- public async Task CreateDefaultCollectionsBulkAsync_CreatesForNewUsersOnly_AutoFiltersExisting (
39+ public async Task CreateDefaultCollectionsBulkAsync_CreatesForNewUsersOnly_AndIgnoresExistingUsers (
4140 IOrganizationRepository organizationRepository ,
4241 IUserRepository userRepository ,
4342 IOrganizationUserRepository organizationUserRepository ,
@@ -61,20 +60,20 @@ public async Task CreateDefaultCollectionsBulkAsync_CreatesForNewUsersOnly_AutoF
6160 await CreateUserForOrgAsync ( userRepository , organizationUserRepository , organization )
6261 } ;
6362
64- var affectedOrgUsers = newOrganizationUsers . Concat ( arrangedOrganizationUsers ) ;
63+ var affectedOrgUsers = newOrganizationUsers . Concat ( arrangedOrganizationUsers ) . ToList ( ) ;
6564 var affectedOrgUserIds = affectedOrgUsers . Select ( organizationUser => organizationUser . Id ) . ToList ( ) ;
6665
67- // Act - Pass all user IDs, method should auto-filter existing users
66+ // Act
6867 await collectionRepository . CreateDefaultCollectionsBulkAsync ( organization . Id , affectedOrgUserIds , defaultCollectionName ) ;
6968
70- // Assert - All users now have exactly one collection
69+ // Assert
7170 await AssertAllUsersHaveOneDefaultCollectionAsync ( collectionRepository , affectedOrgUsers , organization . Id ) ;
7271
7372 await CleanupAsync ( organizationRepository , userRepository , organization , affectedOrgUsers ) ;
7473 }
7574
7675 [ Theory , DatabaseData ]
77- public async Task CreateDefaultCollectionsBulkAsync_DoesNotCreateDuplicates_WhenUsersAlreadyHaveOne (
76+ public async Task CreateDefaultCollectionsBulkAsync_IgnoresAllExistingUsers (
7877 IOrganizationRepository organizationRepository ,
7978 IUserRepository userRepository ,
8079 IOrganizationUserRepository organizationUserRepository ,
@@ -102,45 +101,6 @@ public async Task CreateDefaultCollectionsBulkAsync_DoesNotCreateDuplicates_When
102101 await CleanupAsync ( organizationRepository , userRepository , organization , resultOrganizationUsers ) ;
103102 }
104103
105- [ Theory , DatabaseData ]
106- public async Task CreateDefaultCollectionsBulkAsync_AutoFilters_WhenMixedUsersProvided (
107- IOrganizationRepository organizationRepository ,
108- IUserRepository userRepository ,
109- IOrganizationUserRepository organizationUserRepository ,
110- ICollectionRepository collectionRepository )
111- {
112- // Arrange
113- var organization = await organizationRepository . CreateTestOrganizationAsync ( ) ;
114-
115- var existingUser = await CreateUserForOrgAsync ( userRepository , organizationUserRepository , organization ) ;
116- var newUser = await CreateUserForOrgAsync ( userRepository , organizationUserRepository , organization ) ;
117- var defaultCollectionName = $ "default-name-{ organization . Id } ";
118-
119- // Create collection for existing user
120- await collectionRepository . CreateDefaultCollectionsBulkAsync ( organization . Id , [ existingUser . Id ] , defaultCollectionName ) ;
121-
122- // Act - Pass both users, method should auto-filter and only create for new user
123- await collectionRepository . CreateDefaultCollectionsBulkAsync (
124- organization . Id ,
125- [ existingUser . Id , newUser . Id ] ,
126- defaultCollectionName ) ;
127-
128- // Assert - Verify existing user still has exactly one collection
129- var existingUserCollections = await collectionRepository . GetManyByUserIdAsync ( existingUser . UserId ! . Value ) ;
130- var existingUserDefaultCollections = existingUserCollections
131- . Where ( c => c . OrganizationId == organization . Id && c . Type == CollectionType . DefaultUserCollection )
132- . ToList ( ) ;
133- Assert . Single ( existingUserDefaultCollections ) ;
134-
135- // Verify new user now has collection (was created)
136- var newUserCollections = await collectionRepository . GetManyByUserIdAsync ( newUser . UserId ! . Value ) ;
137- var newUserDefaultCollection = newUserCollections
138- . SingleOrDefault ( c => c . OrganizationId == organization . Id && c . Type == CollectionType . DefaultUserCollection ) ;
139- Assert . NotNull ( newUserDefaultCollection ) ;
140-
141- await CleanupAsync ( organizationRepository , userRepository , organization , [ existingUser , newUser ] ) ;
142- }
143-
144104 private static async Task CreateUsersWithExistingDefaultCollectionsAsync ( ICollectionRepository collectionRepository ,
145105 Guid organizationId , IEnumerable < Guid > affectedOrgUserIds , string defaultCollectionName ,
146106 OrganizationUser [ ] resultOrganizationUsers )
0 commit comments