public async Task ExecutionContextFlowsFromFirstCaller_NoJTF() { var asyncLocal = new Threading.AsyncLocal <string>(); var asyncLazy = new AsyncLazy <int>(delegate { Assert.Equal("expected", asyncLocal.Value); return(Task.FromResult(1)); }); asyncLocal.Value = "expected"; await asyncLazy.GetValueAsync(); }
public async Task ExecutionContextFlowsFromFirstCaller_JTF() { var context = this.InitializeJTCAndSC(); var jtf = context.Factory; var asyncLocal = new Threading.AsyncLocal <string>(); var asyncLazy = new AsyncLazy <int>( delegate { Assert.Equal("expected", asyncLocal.Value); return(Task.FromResult(1)); }, jtf); asyncLocal.Value = "expected"; await asyncLazy.GetValueAsync(); }