Skip to content

Commit

Permalink
👷 🐛 fix missed status update
Browse files Browse the repository at this point in the history
  • Loading branch information
ebullient committed Feb 12, 2025
1 parent 08cacb3 commit db214c3
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ public GitHubUser(JsonObject jsonObject) {

@Override
public String toString() {
return "GitHubUser [login=" + login + ", id=" + id + ", nodeId=" + nodeId + ", name=" + name + ", roles=" + roles + "]";
return "GitHubUser [login=%s, id=%s, nodeId=%s, roles=%s]"
.formatted(login, id, nodeId, roles);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ MemberStatus refreshStatus(AppContextService ctx, Set<String> roles, MemberStatu
null, null);
roles.add(MEMBER_ROLE);
}
if (newStatus == MemberStatus.UNKNOWN && !roles.isEmpty()) {
if (!roles.isEmpty()) {
List<MemberStatus> status = roles.stream()
.map(r -> ctx.getStatusForRole(r))
.sorted()
Expand Down Expand Up @@ -190,7 +190,8 @@ public ApiResponse toResponse() {

@Override
public String toString() {
return "CommonhausUser [login=" + login + ", id=" + id + ", sha=" + sha + ", conflict=" + conflict + "]";
return "CommonhausUser [login=%s, id=%s, sha=%s, conflict=%s, status=%s]"
.formatted(login, id, sha, conflict, status());
}

private String now() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import org.commonhaus.automation.admin.api.MemberApplicationProcess.ApplicationPost;
import org.commonhaus.automation.admin.api.MemberAttestationResource.AttestationPost;
import org.commonhaus.automation.admin.data.CommonhausUser;
import org.commonhaus.automation.admin.data.CommonhausUserData;
import org.commonhaus.automation.admin.data.CommonhausUserData.Attestation;
import org.commonhaus.automation.admin.data.MemberStatus;
import org.commonhaus.automation.admin.github.AppContextService;
Expand Down Expand Up @@ -257,6 +258,32 @@ void testGetCommonhausUser() throws Exception {
assertThat(mailbox.getMailsSentTo("[email protected]")).hasSize(0);
}

@Test
void testGetCommonhausUserStatus() throws Exception {

setUserManagementConfig(ctx);
ctx.getStatusForRole("sponsor");

CommonhausUser user = new CommonhausUser.Builder()
.withId(12345)
.withData(new CommonhausUserData())
.build();

assertThat(user.status()).isEqualTo(MemberStatus.UNKNOWN);

Set<String> roles = Set.of("sponsor");
boolean update = user.statusUpdateRequired(ctx, roles);
assertThat(update).isTrue();
user.updateMemberStatus(ctx, roles);
assertThat(user.status()).isEqualTo(MemberStatus.SPONSOR);

roles = Set.of("sponsor", "member", "egc");
update = user.statusUpdateRequired(ctx, roles);
assertThat(update).isTrue();
user.updateMemberStatus(ctx, roles);
assertThat(user.status()).isEqualTo(MemberStatus.COMMITTEE);
}

@Test
@TestSecurity(user = botLogin)
@OidcSecurity(userinfo = {
Expand Down

0 comments on commit db214c3

Please sign in to comment.