Skip to content

Commit bf24f49

Browse files
committed
Refactor test data builders for roles and tokens to improve readability and consistency
1 parent d9ab2e3 commit bf24f49

File tree

3 files changed

+103
-150
lines changed

3 files changed

+103
-150
lines changed

src/test/java/com/digitalsanctuary/spring/user/test/builders/RoleTestDataBuilder.java

Lines changed: 20 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,31 @@
66

77
import java.util.HashSet;
88
import java.util.Set;
9+
import java.util.concurrent.atomic.AtomicLong;
910

1011
/**
11-
* Fluent builder for creating test Role entities with sensible defaults.
12-
* This builder simplifies role creation for tests and ensures consistent test data.
13-
*
12+
* Fluent builder for creating test Role entities with sensible defaults. This builder simplifies role creation for tests and ensures consistent test
13+
* data.
14+
*
1415
* Example usage:
16+
*
1517
* <pre>
16-
* Role adminRole = RoleTestDataBuilder.aRole()
17-
* .withName("ROLE_ADMIN")
18-
* .withDescription("Administrator role")
19-
* .withPrivilege("READ_PRIVILEGE")
20-
* .withPrivilege("WRITE_PRIVILEGE")
21-
* .build();
18+
* Role adminRole = RoleTestDataBuilder.aRole().withName("ROLE_ADMIN").withDescription("Administrator role").withPrivilege("READ_PRIVILEGE")
19+
* .withPrivilege("WRITE_PRIVILEGE").build();
2220
* </pre>
2321
*/
2422
public class RoleTestDataBuilder {
25-
23+
2624
private static final AtomicLong idCounter = new AtomicLong(1L);
27-
25+
2826
private Long id;
2927
private String name;
3028
private String description;
3129
private Set<User> users = new HashSet<>();
3230
private Set<Privilege> privileges = new HashSet<>();
3331

3432
private RoleTestDataBuilder() {
35-
this.id = idCounter++;
33+
this.id = idCounter.getAndIncrement();
3634
this.name = "ROLE_USER"; // Default role
3735
this.description = "Default user role";
3836
}
@@ -48,45 +46,30 @@ public static RoleTestDataBuilder aRole() {
4846
* Creates a builder for a default user role.
4947
*/
5048
public static RoleTestDataBuilder aUserRole() {
51-
return new RoleTestDataBuilder()
52-
.withName("ROLE_USER")
53-
.withDescription("Standard user role")
54-
.withPrivilege("READ_PRIVILEGE");
49+
return new RoleTestDataBuilder().withName("ROLE_USER").withDescription("Standard user role").withPrivilege("READ_PRIVILEGE");
5550
}
5651

5752
/**
5853
* Creates a builder for an admin role.
5954
*/
6055
public static RoleTestDataBuilder anAdminRole() {
61-
return new RoleTestDataBuilder()
62-
.withName("ROLE_ADMIN")
63-
.withDescription("Administrator role")
64-
.withPrivilege("READ_PRIVILEGE")
65-
.withPrivilege("WRITE_PRIVILEGE")
66-
.withPrivilege("DELETE_PRIVILEGE")
67-
.withPrivilege("ADMIN_PRIVILEGE");
56+
return new RoleTestDataBuilder().withName("ROLE_ADMIN").withDescription("Administrator role").withPrivilege("READ_PRIVILEGE")
57+
.withPrivilege("WRITE_PRIVILEGE").withPrivilege("DELETE_PRIVILEGE").withPrivilege("ADMIN_PRIVILEGE");
6858
}
6959

7060
/**
7161
* Creates a builder for a moderator role.
7262
*/
7363
public static RoleTestDataBuilder aModeratorRole() {
74-
return new RoleTestDataBuilder()
75-
.withName("ROLE_MODERATOR")
76-
.withDescription("Moderator role")
77-
.withPrivilege("READ_PRIVILEGE")
78-
.withPrivilege("WRITE_PRIVILEGE")
79-
.withPrivilege("MODERATE_PRIVILEGE");
64+
return new RoleTestDataBuilder().withName("ROLE_MODERATOR").withDescription("Moderator role").withPrivilege("READ_PRIVILEGE")
65+
.withPrivilege("WRITE_PRIVILEGE").withPrivilege("MODERATE_PRIVILEGE");
8066
}
8167

8268
/**
8369
* Creates a builder for a guest role.
8470
*/
8571
public static RoleTestDataBuilder aGuestRole() {
86-
return new RoleTestDataBuilder()
87-
.withName("ROLE_GUEST")
88-
.withDescription("Guest role with limited access")
89-
.withPrivilege("READ_PRIVILEGE");
72+
return new RoleTestDataBuilder().withName("ROLE_GUEST").withDescription("Guest role with limited access").withPrivilege("READ_PRIVILEGE");
9073
}
9174

9275
public RoleTestDataBuilder withId(Long id) {
@@ -157,13 +140,12 @@ public Role build() {
157140
role.setDescription(description);
158141
role.setUsers(users);
159142
role.setPrivileges(privileges);
160-
143+
161144
return role;
162145
}
163146

164147
/**
165-
* Builds a set containing the configured role.
166-
* Useful for methods expecting a set of roles.
148+
* Builds a set containing the configured role. Useful for methods expecting a set of roles.
167149
*/
168150
public Set<Role> buildAsSet() {
169151
return Set.of(build());
@@ -173,10 +155,6 @@ public Set<Role> buildAsSet() {
173155
* Creates a standard set of roles (USER, ADMIN, MODERATOR).
174156
*/
175157
public static Set<Role> buildStandardRoles() {
176-
return Set.of(
177-
aUserRole().build(),
178-
anAdminRole().build(),
179-
aModeratorRole().build()
180-
);
158+
return Set.of(aUserRole().build(), anAdminRole().build(), aModeratorRole().build());
181159
}
182-
}
160+
}

0 commit comments

Comments
 (0)