Test the original method as well
MODIFY
WalletWasabi.Tests/Helpers/WabiSabiFactory.cs
WalletWasabi.Tests/Helpers/WabiSabiFactory.cs
@@ -299,12 +299,9 @@ public static class WabiSabiFactory
TimeSpan.Zero,
TimeSpan.Zero);
- mock.Setup(m => m.GetScheduledDates(It.IsAny<int>(), It.IsAny<DateTimeOffset>(), It.IsAny<TimeSpan?>()))
- .Returns((int howMany, DateTimeOffset endTime, TimeSpan maximumRequestDelay) =>
- {
- var now = DateTimeOffset.UtcNow;
- return Enumerable.Repeat(now, howMany).ToImmutableList();
- });
+ mock.Setup(m => m.GetScheduledDates(It.IsAny<int>(), It.IsAny<DateTimeOffset>(), It.IsNotIn<TimeSpan?>(TimeSpan.FromSeconds(1))))
+ .Returns((int howMany, DateTimeOffset endTime, TimeSpan maximumRequestDelay) => mock.Object.GetScheduledDates(howMany, endTime, TimeSpan.FromSeconds(1)));
+
mock.CallBase = true;
return mock.Object;

MODIFY
WalletWasabi/WabiSabi/Client/CoinJoinClient.cs
WalletWasabi/WabiSabi/Client/CoinJoinClient.cs
@@ -201,7 +201,7 @@ public class CoinJoinClient
// Output registration.
Logger.LogDebug($"Round ({roundState.Id}): Output registration started - it will end in: {outputRegistrationEndTime - DateTimeOffset.UtcNow:hh\\:mm\\:ss}");
- var outputRegistrationScheduledDates = GetScheduledDates(outputTxOuts.Count(), outputRegistrationEndTime);
+ var outputRegistrationScheduledDates = GetScheduledDates(outputTxOuts.Count(), outputRegistrationEndTime, MaximumRequestDelay);
await scheduler.StartOutputRegistrationsAsync(outputTxOuts, bobClient, KeyChain, outputRegistrationScheduledDates, cancellationToken).ConfigureAwait(false);
Logger.LogDebug($"Round ({roundState.Id}): Outputs({outputTxOuts.Count()}) successfully registered.");
@@ -276,7 +276,7 @@ public class CoinJoinClient
Logger.LogDebug($"Round ({roundState.Id}): Input registration started, it will end in {remainingTimeForRegistration:hh\\:mm\\:ss}.");
- var scheduledDates = GetScheduledDates(smartCoins.Count(), roundState.InputRegistrationEnd, MaximumRequestDelay);
+ var scheduledDates = GetScheduledDates(smartCoins.Count(), roundState.InputRegistrationEnd);
// Creates scheduled tasks (tasks that wait until the specified date/time and then perform the real registration)
var aliceClients = smartCoins.Zip(

Test the original method as well