mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-03-30 15:11:38 +00:00
[AB-333] providing some dates as separate instants instead of relying on the member attributes
truncating date to day when displaying the date for export emote stats fixing wrong message when confirming a command and adding missing exception handling
This commit is contained in:
@@ -50,11 +50,15 @@ public class UserInfo extends AbstractConditionableCommand {
|
||||
log.info("Force reloading member {} in guild {} for user info.", memberToShow.getId(), memberToShow.getGuild().getId());
|
||||
return memberService.forceReloadMember(memberToShow).thenCompose(member -> {
|
||||
model.setMemberInfo(member);
|
||||
model.setCreationDate(member.getTimeCreated().toInstant());
|
||||
model.setJoinDate(member.getTimeJoined().toInstant());
|
||||
return self.sendResponse(commandContext, model)
|
||||
.thenApply(aVoid -> CommandResult.fromIgnored());
|
||||
});
|
||||
} else {
|
||||
model.setMemberInfo(memberToShow);
|
||||
model.setCreationDate(memberToShow.getTimeCreated().toInstant());
|
||||
model.setJoinDate(memberToShow.getTimeJoined().toInstant());
|
||||
return self.sendResponse(commandContext, model)
|
||||
.thenApply(aVoid -> CommandResult.fromIgnored());
|
||||
}
|
||||
|
||||
@@ -15,6 +15,8 @@ import org.junit.runner.RunWith;
|
||||
import org.mockito.*;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
@@ -43,6 +45,8 @@ public class UserInfoTest {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
when(noParameters.getAuthor().getGuild()).thenReturn(noParameters.getGuild());
|
||||
when(noParameters.getAuthor().hasTimeJoined()).thenReturn(true);
|
||||
when(noParameters.getAuthor().getTimeJoined()).thenReturn(OffsetDateTime.now());
|
||||
when(noParameters.getAuthor().getTimeCreated()).thenReturn(OffsetDateTime.now());
|
||||
when(self.sendResponse(eq(noParameters),any(UserInfoModel.class))).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(noParameters);
|
||||
verify(self, times(1)).sendResponse(eq(noParameters), modelArgumentCaptor.capture());
|
||||
@@ -56,6 +60,8 @@ public class UserInfoTest {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
when(noParameters.getAuthor().hasTimeJoined()).thenReturn(false);
|
||||
Member loadedAuthor = Mockito.mock(Member.class);
|
||||
when(loadedAuthor.getTimeJoined()).thenReturn(OffsetDateTime.now());
|
||||
when(loadedAuthor.getTimeCreated()).thenReturn(OffsetDateTime.now());
|
||||
when(noParameters.getAuthor().getGuild()).thenReturn(noParameters.getGuild());
|
||||
when(memberService.forceReloadMember(noParameters.getAuthor())).thenReturn(CompletableFuture.completedFuture(loadedAuthor));
|
||||
when(self.sendResponse(eq(noParameters), modelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
@@ -69,6 +75,8 @@ public class UserInfoTest {
|
||||
public void executeTestWithParameterLoadedMember() {
|
||||
Member member = Mockito.mock(Member.class);
|
||||
when(member.hasTimeJoined()).thenReturn(true);
|
||||
when(member.getTimeJoined()).thenReturn(OffsetDateTime.now());
|
||||
when(member.getTimeCreated()).thenReturn(OffsetDateTime.now());
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(self.sendResponse(eq(parameters), modelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
@@ -85,6 +93,8 @@ public class UserInfoTest {
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
Member loadedAuthor = Mockito.mock(Member.class);
|
||||
when(loadedAuthor.getTimeJoined()).thenReturn(OffsetDateTime.now());
|
||||
when(loadedAuthor.getTimeCreated()).thenReturn(OffsetDateTime.now());
|
||||
when(memberService.forceReloadMember(member)).thenReturn(CompletableFuture.completedFuture(loadedAuthor));
|
||||
when(self.sendResponse(eq(parameters), modelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
|
||||
Reference in New Issue
Block a user