private static async Task CompleteSuccessfully(IBackgroundWorkload <int, string> grain, int value) { // Act await grain.StartAsync(value); var result = await WaitForResultAsync(grain); // Assert result.Should().BeEquivalentTo(new Completed <string>($"Long running task with value {value} is completed")); }
private static async Task <IResult> WaitForResultAsync(IBackgroundWorkload <int, string> grain) { IResult?result = null; while (result == null || result is Started) { result = await grain.GetResultAsync(); } return(result); }