using Xunit; namespace RioJoy.Core.Tests.Feedback; internal static class FeedbackWait { /// Poll until holds, failing at the deadline. public static async Task For(Func condition, int timeoutMs = 5000) { var deadline = DateTime.UtcNow.AddMilliseconds(timeoutMs); while (!condition()) { Assert.True(DateTime.UtcNow < deadline, "condition not reached in time"); await Task.Delay(10); } } }