private async Task <(DateTimeOffset?, string)> GetDateTimeWithGuildTimezone(ICustomCommandContext context, DateTime dateTime, bool hasTimeZoneInfo) { var(utcOffset, timeZoneName) = await GetTimeZoneOffset(context, dateTime); if (hasTimeZoneInfo) { dateTime = dateTime.AddMinutes(utcOffset.TotalMinutes); } else { dateTime = dateTime.AddMinutes(TimeZoneInfo.Local.GetUtcOffset(dateTime).TotalMinutes); } dateTime = DateTime.SpecifyKind(dateTime, DateTimeKind.Unspecified); var dateTimeOffset = new DateTimeOffset(dateTime, utcOffset); return(dateTimeOffset, timeZoneName); }
private async ValueTask <(TimeSpan, string)> GetTimeZoneOffset(ICustomCommandContext context, DateTime dateTime) => await GetGuildTimeZoneOffset(context.BonusGuild)
public void SetUp() { _contextMock = Substitute.For <ICustomCommandContext>(); _serviceProviderMock = Substitute.For <IServiceProvider>(); }