public async Task Complete_TimestampSet_CompletesEvent() { var metadata = new FunctionMetadata(); var evt = new FunctionStartedEvent(Guid.NewGuid(), metadata); evt.Timestamp = DateTime.UtcNow; Assert.False(evt.Completed); // complete immediately (potentially within system timer resolution) evt.Complete(); Assert.True(evt.Completed); evt = new FunctionStartedEvent(Guid.NewGuid(), metadata); evt.Timestamp = DateTime.UtcNow; Assert.False(evt.Completed); // complete after a delay await Task.Delay(250); evt.Complete(); Assert.True(evt.Completed); }
public async Task Complete_StopwatchSet_CompletesEvent() { var metadata = new FunctionMetadata(); var evt = new FunctionStartedEvent(Guid.NewGuid(), metadata); evt.StopWatch = Stopwatch.StartNew(); Assert.False(evt.Completed); // complete immediately (potentially within system timer resolution) evt.Complete(); Assert.True(evt.Completed); Assert.False(evt.StopWatch.IsRunning); evt = new FunctionStartedEvent(Guid.NewGuid(), metadata); evt.StopWatch = Stopwatch.StartNew(); Assert.False(evt.Completed); // complete after a delay await Task.Delay(250); evt.Complete(); Assert.True(evt.Completed); Assert.False(evt.StopWatch.IsRunning); }
public async Task Complete_StopwatchSet_CompletesEvent() { var metadata = new FunctionMetadata(); var evt = new FunctionStartedEvent(Guid.NewGuid(), metadata); evt.StopWatch = ValueStopwatch.StartNew(); Assert.False(evt.Completed); // complete immediately (potentially within system timer resolution) evt.Complete(); Assert.True(evt.Completed); Assert.True(evt.StopWatch.IsActive); // The stopwatch has no state, but has been activated evt = new FunctionStartedEvent(Guid.NewGuid(), metadata); evt.StopWatch = ValueStopwatch.StartNew(); Assert.False(evt.Completed); // complete after a delay await Task.Delay(250); evt.Complete(); Assert.True(evt.Completed); Assert.True(evt.StopWatch.IsActive); // The stopwatch has no state, but has been activated }
internal void FunctionCompleted(FunctionStartedEvent completedEvent) { completedEvent.Complete(); _functionActivityTracker.FunctionCompleted(completedEvent); }