/// <summary> /// Roslyn can be a little bit slow to warm up, which can cause lag when the /// user first starts typing / evaluating code. Do the warm up in a background /// thread beforehand to improve the user experience. /// </summary> private Task BackgroundInitializationAsync() { const string initializationCode = @"using System; Console.WriteLine(""Hello""); ""World"""; return(Task.WhenAll( replServices.HighlightAsync(Guid.Empty, initializationCode), replServices.CompleteCodeAsync(Guid.Empty, initializationCode, initializationCode.Length), replServices.AppendEvaluationAsync(Guid.Empty, initializationCode, new NullLogger()) )); }
public async Task RunIntegrationSession(string path) { var submissions = await ReadSubmissions(path); for (int i = 0; i < submissions.Count; i++) { var submission = submissions[i]; var result = await replServices.AppendEvaluationAsync(Guid.NewGuid(), submission.FormattedInput, new NullLogger()); Assert.Equal(submission.Exception, result.Exception); Assert.Equal(submission.Result, result.Result); Assert.Equal(submission.StandardOutput, result.StandardOutput); } }